Commit Graph

125 Commits

Author SHA1 Message Date
Marius Stanciu 7e4585e65f - fixed canvas selection such that when selecting shape fails to be displayed with rounded corners a square selection shape is used
- fixed canvas selection for the case when the selected object is a single line or a line made from multiple segments
2020-09-23 13:32:13 +03:00
Marius Stanciu 1d46b43c4f - in SVG parser: made sure that the minimum number of steps to approximate an arc/circle/bezier is 10 2020-09-21 03:27:52 +03:00
Marius Stanciu 6c9c367540 - modified the Tools Database and Preferences with the new parameters from CutOut Tool
- changes in Tool Cutout: now on Cutout Tool start the app will look into Tools Database and search for a tool with same diameter (or within the set tolerance) as the one from Preferences and load it if found or load a default tool if not
- Tool Cutout - this Tool can now load tools from Tools Database through buttons in the Cutout Tool
2020-08-28 18:52:05 +03:00
Marius Stanciu c1c819276f - in CNCJob UI Autolevelling - made the Voronoi calculations work even in the scenarios that previously did not work; it need a newer version of Shapely, currently I installed the GIT version
- in CNCJob UI Autolevelling - Voronoi polygons are now plotted
- in CNCJob UI Autolevelling - adding manual probe points now show some geometry (circles) for the added points until the adding is finished
2020-08-25 03:06:09 +03:00
Marius Stanciu 40682ea1e9 - made sure that when doing units conversion keep only the decimals specified in the application decimals setting (should differentiate between values and display?) 2020-08-24 01:05:14 +03:00
Marius Stanciu 01df27f45f - fixed issues in units conversion
- in CNCJob UI Autolevelling - changed how the probing code is generated and when
- changed some strings in CNCJob UI Autolevelling
2020-08-24 00:51:07 +03:00
Marius Stanciu 33c633f0c4 - in CNCJob UI Autolevelling - sending GCode/GRBL commands is now threaded 2020-08-19 04:15:15 +03:00
Marius Stanciu 56ac489466 - in CNCJob UI Autolevelling - added handlers for: jogging, reset, sending commands 2020-08-19 02:26:35 +03:00
Marius Stanciu e0ec8ac44f - in CNCJob UI Autolevelling - Probing GCode has now a header 2020-08-16 23:49:53 +03:00
Marius Stanciu 9b6c65cdcb - all Geometry objects resulted from Isolation Tool are now of type multi-geo
- fixed minor glitch in the Isolation Tool UI
- added an extra check when doing selection on canvas
- fixed an UI problem in Gerber Editor
2020-08-07 13:55:32 +03:00
Marius Stanciu b5f77eac1b - Tool Cutout - more work in gaps thickness control feature
- Tool Cutout - added some icons to buttons
2020-08-05 11:46:56 +03:00
Marius Stanciu e741cefeed - small fix 2020-08-04 11:31:46 +03:00
Marius Stanciu b7630f1334 - added a way to remember the old state of Tools toolbar before and after entering an Editor 2020-08-03 22:11:17 +03:00
Marius Stanciu ffda89f949 - GCode Editor - can not delete objects while in the Editor; can not close the Code Editor Tab except on Editor exit; activated the shortcut keys (for now only CTRL+S is working) 2020-08-03 22:01:42 +03:00
Marius Stanciu 44411cdc82 - GCode Editor - closing the Editor will close also the Code Editor Tab
- cleanup of the CNCJob UI; added a checkbox to signal if any append/prepend gcode was set in Preferences (unchecking it will override and disable the usage of the append/prepend GCode)
- the start Gcode is now stored in the CNCJob object attribute gc_start
- GCode Editor - finished adding the ability to select a row in the Tools table and select the related GCode
2020-08-02 16:27:30 +03:00
Marius Stanciu 1fc70fd3cf - minor work in GCode Editor 2020-07-31 14:08:53 +03:00
Marius e7e1d959fd Merge remote-tracking branch 'origin/Beta_8.994' into Beta_8.994
# Conflicts:
#	CHANGELOG.md
2020-07-25 12:41:23 +03:00
Marius Stanciu 8354bce680 - Tools Tab is hidden when entering into a Editor and showed on exit (this needs to be remade such that the toolbars state should be restored to whatever it was before entering in the Editor) 2020-07-25 12:39:39 +03:00
Marius Stanciu b8fb64a143 - added a Laser preprocessor named 'Z_laser' which will change the Z to the Travel Z on each ToolChange event allowing therefore control of the dot size
- by default now a new blank Geometry object created by FlatCAM is of type multigeo
- made sure that optimizations of lines when importing SVG or DXF as lines will not encounter polygons but only LinesStrings or LinearRings, otherwise having crashes
- fixed the import SVG and import DXF, when importing as Geometry to be imported as multigeo tool
- fixed the import SVG and import DXF, the source files will be saved as loaded into the source_file attribute of the resulting object (be it Geometry or Gerber)
2020-07-23 00:44:33 +03:00
Marius Stanciu cf78211a6f - wip in the GCode Editor 2020-07-22 17:08:40 +03:00
Marius Stanciu 9e8ab610b4 - working on a proper GCode Editor 2020-07-22 15:49:52 +03:00
Marius Stanciu 786423eb57 - fixed some issues in Excellon Editor due of recent changes
- moved the Gerber colors fill in the AppObject.on_object_created() slot and fixed some minor issues here
2020-07-21 15:52:53 +03:00
Marius Stanciu 8a95580f15 - fixed issues with detecting older Preferences files 2020-07-21 14:17:58 +03:00
Marius Stanciu 676645d6f5 - made sure that the Preferences files are deleted on new version install, while the application is in Beta status 2020-07-21 13:07:47 +03:00
Marius Stanciu e99dd967fe - updated the FCRadio class with a method that allow disabling certain options
- the Path optimization options for Excellon and Geometry objects are now available depending on the OS platform used (32bit vs 64bit)
2020-07-21 00:57:26 +03:00
Marius Stanciu a3e1570747 - added a control in Preferences -> Gerber Tab for Gerber colors storage usage
- made sure that the defaults on first install will set the number of workers to half the number of CPU's on the system but no less than 2
2020-07-21 00:04:18 +03:00
Marius Stanciu ebdb2b3ca0 - fixed a bug in the FlatCAMGerber.on_mark_cb_click_table() method when moving a Gerber object
- added a way to remember the colors set for the Gerber objects; it will remember the order that they were loaded and set a color previously given
2020-07-20 19:21:17 +03:00
Marius Stanciu 8409c74e23 - added some icons in the Code Editor
- replaced some icons in the app
- in Code Editor, when changing text, the Save Code button will change color (text and icon) to red and after save it will revert the color to the default one
- in Code Editor some methods rework
2020-07-18 00:26:03 +03:00
Marius Stanciu 5748eb049b - Tools Database - remade the UI
- made sure that the serializable attributes are added correctly and only once (self.ser_attrs)
2020-07-14 16:46:01 +03:00
Marius Stanciu 22d05935e8 - fixed a bug in Tools Database: due of not disconnecting the signals it created a race that was concluded into a RuntimeError exception (an dict changed size during iteration)
- Drilling Tool - working in adding tools auto-load from Tools DB
- some updates to the Excellon Object options
- Drilling Tool - manual add from Tools DB is working
2020-07-13 03:04:44 +03:00
Marius Stanciu 0d886955f8 - when creating a new FlatCAM object, the options will be updated with FlatCAM tools properties that relate to them
- updated the Tools DB class by separating the Tools DB UI into it's own class
- Tools DB - added the parameters for Drilling Tool
2020-07-12 18:30:24 +03:00
Marius Stanciu 329bb04b3c - Gerber UI - optimized the mark shapes to use only on ShapeCollection 2020-07-12 01:36:21 +03:00
Marius Stanciu f53ffe54d9 - Tool Drilling - fixed incorrect annotations in CNCJob objects generated; one drawback is that now each tool (when Toolchange is ON) has it's own annotation order which lead to overlapping in the start point of one tool and the end of previous tool
- Tool Drilling - refactoring methods and optimizations
2020-07-10 17:05:32 +03:00
Marius Stanciu 0dee41e03c - Tool Drilling - moved some of the Excellon Preferences related to drilling operation to it's own group Drilling Tool Options
- optimized the CNCJob UI to look like other parts of the app
2020-07-10 04:39:25 +03:00
Marius Stanciu 5e9455991f - added as ToolTip for the the Preprocessor combobox items, the actual name of the items 2020-07-08 16:20:48 +03:00
Marius Stanciu e7c369ab8e - updated the Panelize Tool to save the source code for the panelized Excellon objects so it can be saved from the Save project tab context menu entry
- updated the Panelize Tool to save the source code for the panelized Geometry objects as DXF file
2020-07-07 15:52:58 +03:00
Marius Stanciu cb69216f92 - Convert Any to Excellon. Finished Gerber object conversion to Excellon. Flash's are converted to drills. Traces in the form of a linear LineString (no changes in direction) are converted to slots. 2020-07-06 00:20:20 +03:00
Marius Stanciu 0c957a3365 - working in making a new functionality: Convert Any to Excellon. Finished Geometry object conversion to Excellon. 2020-07-03 03:20:56 +03:00
Marius Stanciu 4bce56308c - added Turkish translation - courtesy of Mehmet Kaya 2020-07-02 21:24:34 +03:00
Marius Stanciu e1dab238a7 - fixed importing DXF file as Gerber method such that now the resulting Gerber object is correctly created having the geometry attributes like self.apertures and self.follow_geometry 2020-07-02 17:15:13 +03:00
Marius Stanciu 7387553101 - made sure that when trying to view the source but no object is selected, the messages are correct 2020-06-25 14:38:26 +03:00
Marius Stanciu 79fec61934 - fixed bug in the Cutout Tool that did not allowed the manual cutous to be added on a Geometry created in the Tool
- fixed bug that made the selection box show in the stage of adding manual gaps
- updated Cutout Tool UI
- Cutout Tool - in manual gap adding there is now an option to automatically turn on the big cursor which could help
- Cutout Tool - fixed errors when trying to add a manual gap without having a geometry object selected in the combobox
2020-06-18 14:26:24 +03:00
Marius Stanciu c9d66381bf - added fuse tools control in Preferences UI for the Excellon objects: if checked the app will try to see if there are tools with same diameter and merge the drills for those tools; if not the tools will just be added to the new combined Excellon 2020-06-17 10:36:02 +03:00
Marius Stanciu c839428a83 - added the multi-save capability if multiple CNCJob objects are selected in Project tab but only if all are of type CNCJob 2020-06-17 00:38:19 +03:00
Marius Stanciu 949c265378 - changed the data structure for the Excellon object; modified the Excellon parser and the Excellon object class
- fixed partially the Excellon Editor to work with the new data structure
- fixed Excellon export to work with the new data structure
- fixed all transformations in the Excellon object attributes; still need to fix the App Tools that creates or use Exellon objects
2020-06-16 03:47:26 +03:00
Marius Stanciu 30d5400da1 - created a new App Tool named Drilling Tool where I will move the drilling out of the Excellon UI 2020-06-15 19:14:50 +03:00
Marius Stanciu c0a4e2f3cc - in Paint and NCC Tools made sure that using the key ESCAPE to cancel the tool will not create mouse events issues
- some updates in Tcl commands Paint and CopperClear data dicts
2020-06-14 15:59:06 +03:00
Marius Stanciu 6db5def032 - made sure that clicking the icons in the status bar works only for the left mouse click
- if clicking the activity icon in the status bar and there is no object selected then the effect will be a plot_all with fit_view
- modified the FCLabel GUI element
2020-06-14 00:59:24 +03:00
Marius Stanciu a465475eb6 - when opening a new tab in the PlotTabArea the coordinates toolbars will be hidden and shown after the tab is closed 2020-06-13 20:42:47 +03:00
Marius Stanciu 39210fcfbf - moved the init of activity view in the MainGUI file from the APP.__init__() 2020-06-13 20:12:34 +03:00
Marius Stanciu c44f395625 - made the coordinates / delta coordinates / grid toolbar / actions toolbar visibility an option, controlled from the infobar (Status bar) context menu. How it's at app shutdown it's restored at the next application start 2020-06-13 19:50:55 +03:00
Marius Stanciu a3fd6e9f87 - fixed bug in the Isolation Tool that in certain cases an empty geometry was present in the solid_geometry which mae the CNCJob object generation to fail. It happen for Gerber objects created in the Gerber Editor 2020-06-10 03:27:53 +03:00
Marius Stanciu 0643971b01 - added ability to merge tools when merging Geometry objects if they share the same attributes like: diameter, tool_type or type
- added a control in Edit -> Preferences -> Geometry to control if to merge/fuse tools during Geometry merging
2020-06-10 00:23:08 +03:00
Marius Stanciu 24d639e1de - added a protection when trying to edit a Geometry object that have multiple tools but no tool is selected 2020-06-09 00:02:16 +03:00
Marius Stanciu 850b80bb41 - more refactoring in the app Editors 2020-06-08 19:53:31 +03:00
Marius 05df0a61c2 - renamed the GeoEditor class/file to appGeoEditor from FlatCAMGeoEditor making it easier to see in the IDE tree structure
- some refactoring that lead to a working solution when using the Python 3.8 + PyQt 5.15
2020-06-08 19:46:18 +03:00
Marius Stanciu d97d3eabd2 - minor changes in the way that the tools are installed and connected 2020-06-08 19:28:39 +03:00
Marius Stanciu e2df2c3b62 - fixed bug: on first ever usage of FlatCAM beta the last loaded language (alphabetically) is used instead of English (in current state is Russian)
- made sure the the GUI settings are cleared on each new install
- added a new signal that is triggered by change in visibility for the Shell Dock and will change the status of the shell label in the status bar. In this way the label will really be changed each time the shell is toggled
2020-06-07 22:32:36 +03:00
Marius Stanciu a71292af30 - minor fix - revert 2020-06-07 19:44:08 +03:00
Marius Stanciu cbaba7c60a - minor fix 2020-06-07 19:41:54 +03:00
Marius Stanciu a4179d58a4 - fixed a small issue in Gerber file opener filter that did not see the *.TOP extension or *.outline extension 2020-06-07 15:51:39 +03:00
Marius Stanciu 039500b43f - fixed issue with trying to access GUI from different threads by adding a new signal for printing to shell messages 2020-06-07 15:30:46 +03:00
Marius Stanciu ea1b47bf89 - added a GUI element in the Preferences to control the possibility to edit with mouse cursor objects in the Project Tab. It is named: "Allow Edit" 2020-06-07 00:19:33 +03:00
Marius Stanciu 427f2bcbe0 - fixed the color set for the application objects
- made some reverts regarding the mods in the quit_application() method - problems when freezed
RELEASE 8.993
2020-06-06 02:36:53 +03:00
Marius Stanciu 6d8ccaca85 - small fix
RELEASE 8.993
2020-06-05 21:07:10 +03:00
Marius Stanciu cdc7880395 RELEASE 8.993 2020-06-05 20:41:12 +03:00
Marius Stanciu fc60677cb8 - remade the ReadMe tab
- Tool Isolation - added a GUI element to control if the isolation of a polygon, when done with rest, should be done with the current tool even if its interiors (holes in it) could not be isolated or to be left for the next tool
- updated all the translation strings to the latest changes
2020-06-05 20:38:13 +03:00
Marius Stanciu 951744d6fa - added mouse events disconnect in the quit_application() method 2020-06-05 07:19:53 +03:00
Marius Stanciu fb602d6f9b - fixed a small issue in the Panelization Tool that blocked the usage of a Geometry object as panelization reference 2020-06-05 04:09:29 +03:00
Marius Stanciu bfdaa73798 - fixed a small issue in the Panelization Tool that blocked the usage of a Geometry object as panelization reference 2020-06-05 03:37:01 +03:00
Marius Stanciu 4809f11c00 - updated the French translation strings - from @micmac (Michel Maciejewski) 2020-06-04 20:15:36 +03:00
Marius Stanciu 4b01fd5473 - updated the Italian translation - contribution by Golfetto Massimiliano
- made the timing for the object creation to be displayed in the shell
2020-06-04 02:53:06 +03:00
Marius Stanciu adfd6d40b9 - made sure that if the user closes the app with an editor open, before the exit the editor is closed and signals disconnected 2020-06-03 22:47:29 +03:00
Marius Stanciu bbf878bebb - updated the language translation strings (and Google_Translated some of them) 2020-06-03 21:08:06 +03:00
Marius Stanciu 2eecb20e95 - remade file names in the app
- fixed the issue with factory_defaults being saved every time the app start
- fixed the preferences not being saved to a file when the Save button is pressed in Edit -> Preferences
- fixed and updated the Transform Tools in the Editors
2020-06-03 20:35:59 +03:00