Commit Graph

544 Commits

Author SHA1 Message Date
Marius Stanciu f03d6bfda4 - added a new package to be installed in Linux to make available the black theme for FlatCAM beta
- moved all the 'share' resources (icons) to the 'assets/resources' folder
- some more fixes to problems generated by latest changes in the open handlers
- modified the make_freezed.py script for the new location of the icons
- added a fix for the ConnectionRefusedError in Linux that is issued when first running after a FlatCAM crash
2020-04-28 17:23:49 +03:00
Marius Stanciu eed7e3d620 - some minor changes in the Python version detection
- added a new Tcl Command named SetPath which will set a path to be used by the Tcl commands. Once set will serve as a fallback path in case that the files fail to be opened first time. It will be persistent, saved in preferences.
- added the GUI for the new Open Example in the FIle -> Scripting menu.
- I am modifying all the open ... handlers to add a parameter that will flag if the method was launched from Tcl Shell. This way if the method will fail to open the filename (which include the path) it will try to open from a set fallback path.
- fixed issue #406, bug introduced recently (leftover changes).
- modified the ImportSVG Tcl command name to OpenSVG (open_svg alias)
- added a new Tcl command named OpenDXF (open_dxf alias)
- fixed some errors in Scripting features
- added a new Tcl command named GetPath as a convenient way to get the current default path stored in App.defaults['global_tcl_path']
2020-04-28 14:37:34 +03:00
Marius Stanciu fe2d232f60 - minor changes
- moved the ObjectCollection class to the flatcamObjects folder where it belongs
2020-04-27 14:05:40 +03:00
Marius Stanciu 3ec666edbb - replaced the testing if instance of FlatCAMObj with testing the obj.kind attribute
- removed the import of the whole FlatCAMApp file only for the usage of GracefulException
- remove the import of FlatCAMApp and used alternate ways
- optimized the imports in some files
- moved the Bookmarksmanager and ToolDB classes into their own files
- solved some bugs that were not so visible in the Editors and HPGL parser
2020-04-27 10:03:22 +03:00
Marius Stanciu 61020e3624 - finished the moving of all Tcl Shell stuff out of the FlatCAAMApp class to flatcamTools.ToolShell class
- updated the requirements.txt file to request that the Shapely package needs to be at least version 1.7.0 as it is needed in the latest versions of FlatCAM beta
- some TOOD cleanups
- minor changes
2020-04-27 06:55:08 +03:00
Marius Stanciu 527dcf6270 - added possibility to save as text file the content in Tcl Shell browser window when clicking the Save log context menu entry 2020-04-24 08:12:21 +03:00
Marius Stanciu 7df7e17569 - some message strings cleanup 2020-04-24 07:23:14 +03:00
Marius Stanciu 26dd29e7dd - the status bar messages that are echoed in the Tcl Shell will no longer have all text colored but only the identifier 2020-04-24 06:59:49 +03:00
Marius Stanciu b569fa1748 - added a new menu entry in the context menu of the Tcl Shell: 'Save Log' which will save the content of the Tcl Shell browser window to a file 2020-04-24 04:51:55 +03:00
Marius Stanciu 495650fc73 - remove some method declaration with type hints that work only in Python > 3.8 2020-04-23 03:41:58 +03:00
Marius Stanciu 32ff35b4ff - fixed the Tcl command Plot_All that malfunctioned if there were any FlatCAM scripts (or FlatCAM documents) open
- updated the shortcuts list
2020-04-23 03:34:09 +03:00
Marius Stanciu 3735753a93 - fixed the Tcl Command Help to work as expected; made the text of the commands to be colored in Red color and bold
- added a 'Close' menu entry in the Tcl Shell context menu that will close (hide) the Tcl Shell Dock widget
- on launching the Tcl Shell the Edit line will take focus immediately
- in App.on_mouse_move_over_plot() method no longer will be done a setFocus() on every move, only when it is needed
2020-04-23 02:07:55 +03:00
Marius Stanciu a1499158c2 - refactored some of the code in the App class and created a new Tcl Command named Help 2020-04-22 23:00:54 +03:00
Marius Stanciu f690c2b09d - added a new feature, project auto-saving controlled from Edit -> Preferences -> General -> APP. Preferences -> Enable Auto Save checkbox 2020-04-22 01:19:49 +03:00
Marius Stanciu 3c291f259e - fixed a bug in loading objects by drag&drop into the Project Tab where only one object in the selection was loaded 2020-04-20 12:02:01 +03:00
Marius Stanciu dc1a198235 - added ability to use line width when adding shapes for both Legacy and OpenGL graphic engines
- added the linewidth=2 parameter for the Tool Distance utility geometry
- fixed a selection issue in Legacy graphic mode for single click
2020-04-20 04:18:12 +03:00
Marius Stanciu ecf61fdf6d - made the Grid icon in the status bar clickable and it will toggle the snap to grid function 2020-04-20 00:57:13 +03:00
Marius Stanciu 5a5a18ef43 - some PEP8 changes in Geometry Editor and other minor changes 2020-04-20 00:12:58 +03:00
Marius Stanciu 2dfcdc95e4 - fixed more issues (new) in NCC Tool
- added a new layout named 'minimal'
2020-04-19 22:22:19 +03:00
Marius Stanciu 49fa926d50 - fixed a bug that did not allow to edit GUI elements of type FCDoubleSpinner if it contained the percent symbol
- some small optimizations in the GUI of Cutout Tool
2020-04-19 04:41:58 +03:00
Marius Stanciu 4c196f6bae - the Show Shell in Edit -> Preferences will now toggle the Tcl shell based on the current status of the Tcl Shell
- updated the Tcl command Isolate help for follow parameter
2020-04-13 20:44:51 +03:00
Marius Stanciu abce81d802 - fixed issue #394 - the saveDialog in Linux did not added the selected extension
- fixed issue #389 - in previous commits
- fixed issue #391 - in previous commits
2020-04-11 02:55:32 +03:00
Marius Stanciu 418ebd6606 - minor changes in GUI (Save locations in Menu -> File) and the key shortcuts 2020-04-11 01:51:43 +03:00
Marius Stanciu d80de538e3 - modified all CTRL+ with Ctrl+ and all ALT+ with Alt+ and all SHIFT+ with Shift+. Fixed issue #387. 2020-04-09 05:16:48 +03:00
Marius Stanciu d14e5d9445 - fixed a bug in handling the UP/DOWN key shortcuts that caused a crash when no object was selected in the Project Tab; also made sure that the said keys are handled only for the Project Tab 2020-04-06 20:52:00 +03:00
Marius Stanciu 69b39e2937 - added key shortcuts (arrow up/down) that will select the objects in the Project tab if the focus is in that tab 2020-04-06 06:28:55 +03:00
Marius Stanciu 8a2ed1c726 - some changes in the Geometry UI 2020-04-06 01:56:38 +03:00
Marius Stanciu b53c1c403a - fix for contextual menus on canvas when using PyQt versions > 5.12.1
- decision on which mouse button to use for panning is done now once when setting the plotcanvas
2020-04-05 16:32:16 +03:00
Marius Stanciu 3d39916b5f - minor changes to increase compatibility with Python 3.8 2020-04-01 18:45:20 +03:00
Marius Stanciu 1ca650e883 - modified the new database to accept data from NCC and Paint Tools 2020-03-29 14:22:11 +03:00
Marius Stanciu 22f74edfab - added to Paint and NCC Tool a feature that allow polygon area selection when the reference is selected as Area Selection
- in Paint Tool and NCC Tool added ability to use Escape Tool to cancel Area Selection and for Paint Tool to cancel Polygon Selection
2020-03-20 13:25:14 +02:00
Marius Stanciu e6917ba1ab - fixed Properties Tool due of recent changes to the FCTree widget 2020-03-13 15:43:26 +02:00
Marius Stanciu 1a06ce6a2d - working on the new database
- fix a bug in the TextInputTool in FlatCAM Geometry Editor that crashed the sw when some fonts are not loaded correctly
2020-03-12 18:20:22 +02:00
Marius Stanciu 15ee54d057 - updated all the FlatCAM Tools and the Gerber UI FCComboBoxes to update the box value with the latest object loaded in the App
- some fixes in the NCC Tool
- modified some strings
2020-03-04 00:27:51 +02:00
Marius Stanciu 0477a9860a - added property that allow the FCComboBox to update the view with the last item loaded; updated the app to use this property 2020-03-02 06:17:18 +02:00
Marius Stanciu bac37865e9 - updated the UI in Geometry Editor 2020-03-01 20:40:07 +02:00
Marius Stanciu 77e01825c2 - wip on the new tools database 2020-03-01 01:55:35 +02:00
Marius Stanciu 70d3895799 - working on a new type of database 2020-03-01 00:52:24 +02:00
Marius Stanciu acc61d460b - fixed error in CutOut Tool when trying to create a FreeFrom Cutout out of a Gerber object with the Convex Shape checked 2020-02-29 22:21:09 +02:00
Marius Stanciu 2c7dff5dbe - compacted the NCC Tool UI by replacing some Radio buttons with Combo boxes due of too many elements 2020-02-29 19:05:00 +02:00
Marius Stanciu 84570bf6fe - some tooltip changes 2020-02-26 05:00:23 +02:00
Marius Stanciu 8a6ada1984 - added a new parameter named 'End Move X,Y' for the Geometry and Excellon objects. Adding a tuple of coordinates in this field will control the X,Y position of the final move; not entering a value there will cause not to make an end move 2020-02-26 04:43:54 +02:00
Marius Stanciu a2c0244e18 - in Paint Tool replaced the Selection radio with a combobox GUI element that is more compact 2020-02-20 05:14:48 +02:00
Marius Stanciu a9c6db73bf - when multiple tools are selected in Excellon UI and parameters are modified it will applied to all selected
- in Excellon UI, Paint Tool and NCC Tool finished the "Apply parameters to all tools" functionality
- updated Paint Tool and NCC Tool in the UI functionality
2020-02-18 04:12:23 +02:00
Marius Stanciu 7292a30b9e - fixed some issues realted to the usage of the new confirmation message in FlatCAM Tools
- made sure that the FlatCAM Tools UI initialization is done only in set_tool_ui() method and not in the constructor
2020-02-17 14:27:45 +02:00
Marius Stanciu 1e9232aeaa - updated the Excellon UI to hold data for each tool
- in Excellon UI removed the tools table column for Offset Z and used the UI form parameter
- updated the Excellon Editor to add for each tool a 'data' dictionary
- updated all FlatCAM tools to use the new confirmation message that show if the entered value is within range or outside
2020-02-17 04:43:01 +02:00
Marius Stanciu 64912949c6 - modified the Paint Tool UI 2020-02-16 03:11:46 +02:00
Marius Stanciu 49c82a3e33 - added the Preferences entries for the Gerber Invert Tool 2020-02-15 03:41:11 +02:00
Marius Stanciu 9fc2ba8ffd - added a new FlatCAM Tool: Gerber Invert Tool. It will invert the copper features in a Gerber file: where is copper there will be empty and where is empty it will be copper 2020-02-14 17:08:06 +02:00
Marius Stanciu 6926b5be65 - adjusted the UI for Excellon and Geometry objects 2020-02-14 05:07:11 +02:00
Marius Stanciu 7c9c390ac3 - finished Punch Gerber Tool
- minor PEP8 changes
2020-02-13 21:06:10 +02:00
Marius Stanciu d33505096c - modified the Excellon GCode generation so now it can use multi depth drilling; modified the preprocessors to show the number of passes 2020-02-08 22:38:08 +02:00
Marius Stanciu 48029da52b - added a new preprocessor file for using laser on a Marlin motion controller but with the laser connected to one of the FAN pins, named 'Marlin_laser_use_FAN_pin' 2020-02-08 20:38:51 +02:00
Marius Stanciu 9911402c95 - added a new preprocessor for using laser on a Marlin 3D printer named 'Marlin_laser'
- modified the Geometry UI when using laser preprocessors
2020-02-08 18:01:32 +02:00
Marius Stanciu 23a1495c32 - fixed the preprocessors with 'laser' in the name to use the spindle direction set in the Preferences
- increased the upper limit for feedrates by an order of magnitude
2020-02-03 14:46:39 +02:00
Marius Stanciu 10d4ed512b - modified Spinbox and DoubleSpinbox Custom UI elements such that they issue a warning status message when the typed value is out of range 2020-02-03 02:18:28 +02:00
Marius Stanciu 31c0cd0952 - small changes in Gerber UI
- in Geometry Editor make sure that after an edit is finished (correctly or forced) the QTree in the Editor UI is cleared of items
2020-02-03 00:43:38 +02:00
Marius Stanciu c7074d71ba - fixed an error in Gerber Parser; the initial values for currnet_x, current_y were None but should have been 0.0
- limited the lower limit of angle of V-tip to a value of 1 because 0 makes no sense
2020-02-02 15:54:09 +02:00
Marius Stanciu 0b162bbd55 - added a new functionality, a variation of Set Origin named Move to Origin. It will move a selection of objects to origin such as the bottom left corner of the bounding box that fit them all is in origin. 2020-01-31 22:34:20 +02:00
Marius Stanciu ece94b7f60 - some UI changes in the common object UI 2020-01-30 06:26:14 +02:00
Marius Stanciu a44d7b97b5 - some changed in the Excellon UI 2020-01-30 05:55:46 +02:00
Marius Stanciu cd45276819 - updated 2Sided Tool 2020-01-29 21:49:22 +02:00
Marius Stanciu fd0438842d - finished adding in Geometry Editor a TreeWidget with the geometry shapes found in the edited object 2020-01-28 03:59:15 +02:00
Marius Stanciu fbf0b8606e - made some structural changes in Properties Tool 2020-01-27 17:20:06 +02:00
Marius Stanciu aa7bc125f4 - the Jump To popup window will now autoselect the LineEdit therefore no more need for an extra click after launching the function 2020-01-27 15:27:34 +02:00
Marius Stanciu 3ac8e96071 - fixed bugs in Minimum Distance Tool 2020-01-25 01:44:44 +02:00
Marius Stanciu ca87475694 - small changes to the Toolchange manual preprocessor
- fix for plotting Excellon objects if the color is changed and then the object is moved
- laying the GUI for a new Tool: Punch Gerber Tool which will add holes in the Gerber apertures
2020-01-24 22:12:15 +02:00
Marius Stanciu 5b63dee50d - made possible to set the colors for Excellon objects too
- added to the possible colors the fundamentals: black and white
- in the project context menu for setting colors added the option to set the transparency and also a default option which revert the color to the default value set in the Preferences
2020-01-19 19:47:42 +02:00
Marius Stanciu 316b04a56a - wip 2020-01-17 03:44:34 +02:00
Marius Stanciu eae5b3d8e3 - changes to Geometry UI 2020-01-17 03:42:50 +02:00
Marius Stanciu 957903d307 - more changes to Excellon UI 2020-01-17 03:15:13 +02:00
Marius Stanciu 0221a9cfb6 - updated the Excellon and Geometry UI to be similar
- put bases for future changes to Excellon Object UI such that each tool will hold it's own parameters
2020-01-16 15:49:51 +02:00
Marius Stanciu 24e01ad518 - a small change in the Excellon UI 2020-01-16 02:33:54 +02:00
Marius Stanciu 5ffa9b6470 - updated the GUI in preferences for Calculator Tool 2020-01-16 02:21:20 +02:00
Marius Stanciu 3c569fdf6c - updated/optimized the GUI in Preferences for Paint Tool and for NCC Tool
- work in Paint Tool to bring it up to date with NCC Tool
2020-01-16 02:07:00 +02:00
Marius Stanciu 821014f719 - added key shortcuts and toolbar icons for the new tools: Align Object Tool (ALT+A) and Extract Drills (ALT+I)
- added new functionality (key shortcut SHIFT+J) to locate the corners of the bounding box (and center) in a selected object
2020-01-15 02:50:27 +02:00
Marius Stanciu 9a3f3b600b - in Extract Drill Tool added a new method of drills extraction. The methods are: fixed diameter, fixed annular ring and proportional
- in Align Objects Tool finished the Single Point method of alignment
2020-01-14 16:23:23 +02:00
Marius Stanciu f8c22ea32f - Extract Drills Tool: fixed issue with oblong pads and with pads made from aperture macros
- Extract Drills Tool: added controls in Edit -> Preferences
2020-01-12 00:30:17 +02:00
Marius Stanciu c28f08a392 - fixed an issue in the Distance Tool
- expanded the Extract Drills Tool to use a particular annular ring for each type of aperture flash (pad)
2020-01-11 17:30:48 +02:00
Marius Stanciu 7d0a792085 - small changes 2020-01-10 14:55:32 +02:00
Marius Stanciu 2ff9cd2439 - print() debugging 2020-01-10 13:00:47 +02:00
Marius Stanciu 8c33f6e0be - added some prints to work on issue 349 2020-01-09 12:44:24 +02:00
Marius Stanciu 856f568f9e - selected rows in the Tools Tables will stay colored in blue after loosing focus instead of the default gray
- in NCC Tool the Tool name in the Parameters section will be the Tool ID in the Tool Table
- added an exception catch in case the plotcanvas init failed for the OpenGL graphic engine and warn user about what happened
2020-01-09 00:06:38 +02:00
Marius Stanciu e090b96c7c - modified Toggle Workspace function to work in the new Preferences UI configuration
- cleaned the app from progress signal usage since it is not used anymore
2020-01-03 01:41:03 +02:00
Marius Stanciu 6f5a775388 - for auto-completer, now clicking an entry in the completer popup will select that entry and insert it 2020-01-02 05:06:08 +02:00
Marius Stanciu fd9d18b52b - started to rework the NCC Tool GUI in preparation for adding a Tool DB feature 2020-01-02 04:28:18 +02:00
Marius Stanciu 84c8588f89 - fixed the Drillcncjob Tcl command by adding an custom self.options key "Tools_in_use" and build it's value, in case it does not exist, to make the toolchange command work
- middle mouse click on closable tabs will close them
2020-01-02 01:50:49 +02:00
Marius Stanciu 3475ae00cd - fixed bug in NCC Tool: after trying to add a tool already in the Tool Table when trying to change the Tool Type the GUI does not change
- final fix for app not quiting when running a script as argument, script that has the quit_flatcam Tcl command; fixed issue #360
- fixed issue #363. The Tcl command drillcncjob does not create tool cut, does not allow creation of gcode, it forces the usage of dwell and dwelltime parameters
2020-01-01 16:13:33 +02:00
Marius Stanciu 841e1f3eeb - fixed Tcl commands that use the overlap parameter to switch from fraction to percentage
- in Transform Tool mae sure that the buffer sub-tool parameters are better explained in tooltips
2019-12-30 22:04:39 +02:00
Marius Stanciu f7eaf62606 - changes in the Preferences UI for NCC and Paint Tool in Tool Dia entry field 2019-12-30 17:07:43 +02:00
Marius Stanciu c0ec3b6546 - Buffer sub-tool in Transform Tool: added the possibility to apply a factor effectively scaling the aperture size thus the copper features sizes
- in Transform Tool adjusted the GUI
2019-12-30 01:18:56 +02:00
Marius Stanciu 7bd441eccc - in Paint Tool Preferences allowed to add a list of initial tools separated by comma
- in Geometry Paint Tool fixed the Overlap rate to work between 0 and 99.9999%
2019-12-29 22:51:22 +02:00
Marius Stanciu a66658f2e2 - fixed a small where the app tried to hide a label that I've removed previously 2019-12-29 21:36:34 +02:00
Marius Stanciu c79f74c1bf - added a new function called by shortcut key combo CTRL+G when the current widget in Plot Area is an Code Editor. It will jump to the specified line in the text. 2019-12-29 04:31:46 +02:00
Marius Stanciu 58054f71b3 - fixed a minor issue that when saving a project with CNCJob objects, the variable that holds the origin of the CNCJob object was not saved in the project. Added to the serializable objects also the exc_cnc_tools dictionary
- some changes in the File menu
2019-12-29 00:00:15 +02:00
camellan a81460788d Update translation 2019-12-28 23:22:26 +04:00
Camellan 8cc5b28410 jpcgt/flatcam/Beta слито с Beta 2019-12-28 22:44:16 +04:00
Marius Stanciu 47fe73a91b - more updates to the Preferences window and in some other parts of the GUI
- updated the translations (less Russian)
2019-12-28 20:38:44 +02:00
camellan 41bcc135ff Merge remote-tracking branch 'remotes/jpcgt/flatcam/Beta' into Beta 2019-12-28 21:12:45 +04:00
Marius Stanciu 3c991e1c2d - updated all the translations files
- fixed the big mouse cursor in OpenGL(3D) graphic mode to get the set color
- fixed the cursor to have the set color and set cursor width in the Legacy(2D) graphic engine
- in Legacy(2D) graphic mode fixed the cursor toggle when the big cursor is activated
- in Legacy(2D) fixed big mouse cursor to snap to the grid
- RELEASE 8.991
2019-12-28 03:59:05 +02:00