Commit Graph

47 Commits

Author SHA1 Message Date
Marius Stanciu
d8a0be84a3 - replaced all the FCLabel widgets that have color HTML with the new FCLabel widget that uses parameters for 'color' and weight 2022-04-18 03:41:04 +03:00
Marius Stanciu
a59f996819 - some reformatting and class rename
- when clicking the coordinates toolbars in the status bar now the Distance Plugin is shown and if already displayed, it is closed (toggle action)
2022-04-03 15:06:36 +03:00
Marius Stanciu
ada48269a9 - refactored the imports in the Plugins, moved almost all imports in the AppTool file
- fixed a number of issues, mostly leftovers from moving the UI of a Plugin in its own class
- fixed some bugs in the Punch Gerber plugin
- fixed some bugs where the 'pool' parameter was not passed when creating shapes collections (in 3D graphic mode); I wonder how it worked until now
- added a new feature in the Isolation Plugin: now for all the isolation Geometry objects this plugin can do a supplementary simplification of the geometry using the tolerance parameter defined in the General Parameters. This should lead to a reduced number of tool lifts when doing corners
2022-03-31 19:28:19 +03:00
Marius Stanciu
a3f9d7c248 - added ability to change the mouse cursor color on the fly
- in Distance Plugin made sure that the 'big cursor' (when is used) is black in color (visible in most situations)
- in Distance Plugin, for the 2D graphic mode activated the utility line
2022-03-29 02:14:44 +03:00
Marius Stanciu
65d8dcc0b2 - the application now uses only the default values from the app.options dict, the app.defaults dict holds the definitive default values
- fixed some outstanding issues from the PyQt6 port
- PEP8 fixes
- minor fixes
- updated the saving of Preferences to update the self.options too: the `Apply` action will update the self.options but the `Save` action will save the updated preferences to the file on disk
2022-02-18 23:06:58 +02:00
Marius Stanciu
1681b327ed - refactoring all the references to object options property to obj_options to make a difference with the application options property 2022-02-16 10:47:12 +02:00
Marius Stanciu
3d4e195ae1 - added a new preprocessor: default_laser
- in the app added a new tool type: "L" (laser) which when selected will autoselect the `default_laser` preprocessor in Milling Plugin
2022-02-10 14:01:32 +02:00
Marius Stanciu
056ff05e29 - most of the logging (except in the Editors) is now done by the AppLogging class 2022-01-31 02:14:14 +02:00
Marius Stanciu
6965c91447 - some more work on the Isolation plugin 2022-01-30 14:13:36 +02:00
Marius Stanciu
66b874835c - refactored the Isolation Plugin class 2022-01-30 03:50:27 +02:00
Marius Stanciu
1ccf4b38c6 - fixed and error in the Isolation Plugin when using the pad multi-isolations and area isolation simultaneously 2022-01-10 17:36:50 +02:00
Marius Stanciu
12e69af3ef - in Isolation Plugin fixed the issue with clicking the header not toggling all tools rows
- in Isolation Plugin fixed an issue in the reset_fields() method
2022-01-08 23:10:40 +02:00
Marius Stanciu
67fa5596e1 - in Isolation Plugin there is no longer auto-switch to Properties Tab
- when editing Geometry objects with multiple geometry fixed the issue with the edited geometry always being the one in the first tool
2021-11-06 01:15:14 +02:00
Marius Stanciu
bb089eb657 - refactored the is_legacy object to use_3d_engine
- made sure that there is no longer a double action when toggling the object visibility ('plot' attribute)
2021-10-31 14:05:00 +02:00
Marius Stanciu
1596f69e2b - in Isolation Plugin: if using a V-shape tool, restored the ability to change the tool diameter as a function of tip diameter, tip angle and the depth of cut 2021-10-30 16:13:32 +03:00
Marius Stanciu
02741cf37f - added an ugly form of extra pad passes functionality in Isolation Plugin - does not take into consideration the milling direction 2021-10-15 01:35:16 +03:00
Marius Stanciu
9057966aa9 - updated the translation strings 2021-10-14 19:37:34 +03:00
Marius Stanciu
54d4c7cb78 - make sure that if the Properties Tab is selected then the Object UI is updated (built) on object selection on canvas
- code cleanup
2021-10-07 19:46:07 +03:00
Marius Stanciu
3fc0ab826f - working to differentiate between temporary units change and permanent units change 2021-09-27 17:28:54 +03:00
Marius Stanciu
e73d49e2cd - solved more Shapely 2.0 deprecation warnings
- in Isolation Plugin and NCC Plugin changed the UI and the Preferences for those Plugins
2021-09-25 03:36:57 +03:00
Marius Stanciu
dd029d6ded - fixed an error due of missing attribute of PlotCanvasLegacy when using Legacy2D graphic engine
- solving deprecation warnings issued by Shapely
- made sure that the Gerber Object geometry is always flattened
2021-09-21 15:55:35 +03:00
Marius Stanciu
241579d670 - on Coppper Thieving Plugin some UI updates
- updated the GCGridLayout GUi element to automatically stretch the first column but offered also configuration; updated the use throughout the app
2021-09-09 16:28:14 +03:00
Marius Stanciu
48707c390b - in Isolation Plugin updated the GUI 2021-09-06 20:25:45 +03:00
Marius Stanciu
d90e86da39 - made sure that the location labels in the InfoBar have only the decimals required when the Grid snapping is ON 2021-08-31 02:25:43 +03:00
Marius Stanciu
fc97a4ecd6 - add HUD rectangle auto size for 3D Graphic Engine 2021-08-30 17:43:35 +03:00
Marius Stanciu
4ffecc0bf8 - some changes due of porting to PyQt6 2021-08-19 23:29:30 +03:00
Marius Stanciu
2136d6c42f - started the work in adding to Isolation Plugin a new feature to extra isolate the pads 2021-08-19 15:53:02 +03:00
Marius Stanciu
7a2fdc2f05 - some cleaning up in the Preferences 2021-08-19 01:37:34 +03:00
Marius Stanciu
261b83b445 - cleaning up Isolation Plugin 2021-08-18 16:28:10 +03:00
Marius Stanciu
bf49e39301 - made sure that the optimal tool detected works for isolation - the offset amount changed to reflect the number of decimals used by the app 2021-08-17 23:55:09 +03:00
Marius Stanciu
3c44fbaedb - made sure that the optimal tool detected works for isolation 2021-08-15 15:42:34 +03:00
Marius Stanciu
2daf191948 - changed the spacings in the new custom Grid layout 2021-08-07 11:58:11 +03:00
Marius Stanciu
461aa763ad - created a new custom layout based on the Grid Layout where I can set the horizontal and vertical spacings between grid items and used it throughout the app 2021-08-07 11:46:45 +03:00
Marius Stanciu
03618172d7 - Isolation Plugin - if there is no object selected try to select the first one if there is any
- Fixed setting a new style
2021-08-05 22:16:10 +03:00
Marius Stanciu
e0a7afb2cd - fixed fullscreen functionality for PyQt6 and a few other fixes regarding the port to PyQt6 2021-08-05 02:00:54 +03:00
Marius Stanciu
ffce6b437f - continuing to fix the PyQt6 port
- added an Exception when App.on_canvas_setup() fails
2021-08-05 00:50:09 +03:00
Marius Stanciu
53272da959 - porting to PyQt6 2021-08-04 18:34:24 +03:00
Marius Stanciu
29988a622e - in ParseDXF file fixed import of module due of changes in the latest version of ezdxf module
- changes in Milling Plugin in the selection in the Tools Table
- some updates of milling data structure
- changes in handling the tool shape due of moving the parameter from the tool table in the tool parameters section
2021-07-21 00:46:55 +03:00
Marius Stanciu
f08466e7f2 - preferences UI is now started on preferences open
- more work/fixes in working on data structures (offset, offset_value, job_type, shape)
2021-07-14 22:35:29 +03:00
Marius Stanciu
4e46eac61c 7.07.2021
- some changes in data tools structure ('tool_type' to ['data']['tools_mill_job_type])
- some strings changes

4.07.2021

- optimized the Milling Plugin preferences
- added more preferences for v-shape tools in the Milling Plugin Preferences
- deactivated the automatic disable of the Cut Z parameter when selecting a v-shape tool in Milling Plugin
- in Milling Plugin added some protections against receiving signals from widgets without objectName set
- in Milling Plugin made sure that the Custom offset field is displayed only when it is needed (selected from Offset Type combobox)
- added some requirements asked by vispy v0.7.0
- if the generated Gcode is empty then the app will know and will not create a CNCJob object
- modified the Tool Table in Milling Plugin: now the tool type parameter is part of the Tool parameters and no longer in the Tool Table
- working on a Kosy CNC machine preprocessor file
2021-07-07 01:16:15 +03:00
Marius Stanciu
ba59e9ed58 - fixed the setting color functionality on right click on the objects in the Project Tab such that the set color (or opacity) it is stored in a persistent setting correctly and the colors for Gerber objects are restored in order
- trying to fix a Runtime exception that may happen when the Plugin Tab is deleted completely
2021-06-17 22:09:58 +03:00
Marius Stanciu
77cdf798ab - minor logging changes 2021-03-28 15:23:03 +03:00
Marius Stanciu
4c92083c01 - upgraded all the plugins such that at each launch the Plugin UI is reinitialized reducing the chances to get errors like "wrapped up C++ object deleted" with the side effect that the performance might be slightly reduced 2021-03-28 15:21:17 +03:00
Marius Stanciu
0177a64fe4 - changed some strings; updated the translation strings with the new strings (they need to be translated)
- modified all the plugins (formerly named Tools) to auto select in the plugin the selected object from Project Menu
- small changes in Tools Database
2021-03-18 03:45:56 +02:00
Marius Stanciu
e715870d12 - major rafactoring: replaced the name of the Gerber object data structure from 'apertures' to 'tools' to make the object data structure uniform across the app 2021-03-01 17:46:23 +02:00
Marius Stanciu
aee49e6495 - strings update 2021-02-27 04:53:57 +02:00
Marius Stanciu
f85be8d095 - added possibility of changing the Axis color and created a new parameter for that in Preferences
- some refactoring
- in a FCColorEntry GUI element, setting a color in the Color dialog will trigger the editingFinished signal therefore propagating the changes
2021-02-27 02:08:17 +02:00