Commit Graph

107 Commits

Author SHA1 Message Date
Marius Stanciu
8900c89214 - added a few new GUI custom widgets
- removed the status bar Tcl Shell toggleable QLable. Now the Tcl Shell is toggled by clicking the Message in the Status bar
2022-03-09 14:20:09 +02: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
cdf6872e5e - updated the header of the postprocessos with 'laser' to show essential informations like some of them do not move on the Z axis
- make sure that the laser postprocessor that do move on the Z axis (like 'GRBL_laser_Z') accept negative values for the Z focus
- fixed issue in highlighter such that the keywords that have an underscore included are highlighted
- rearranged the default keywords
- fixed the generatecncjob() method default parameters to reflect new data structure names
- in Geometry object the default self.options dictionary is updated with keys that reflect new data structure
2022-01-19 02:25:40 +02:00
Marius Stanciu
2430158334 - fixing an issue with not building the UI for the generated objects when running a script and then trying to enable/disable the plots
- attempting to add a feature in the text editors to autoselect all words in a document that are the same as the one that was clicked
- all the colors set in Preferences now have to be in the 8digits format RGBA (including the alpha channel as a suffix) - it is required to delete the current preferences files
2022-01-17 21:26:10 +02:00
Marius Stanciu
873cd6f947 - some changes to the FCMessageBox so the dark theme works ok on it 2022-01-15 03:34:33 +02:00
Marius Stanciu
dc636369a6 - modified the FCMessageBox to have a border and a single color inside the box 2022-01-13 16:42:59 +02:00
Marius Stanciu
1d1613d2d6 - subclassed the QMessageBox and created a new type of MessageBox that is frameless; started to use it throughout the app 2022-01-12 02:27:12 +02:00
Marius Stanciu
2165ebe419 - added an initial implementation of a dark theme using the qdarktheme (performance is not great and there are some artifacts); the theme is activated once the gray icons are checked in the Preferences 2022-01-11 23:21:18 +02:00
Marius Stanciu
ab3e610324 - added a new feature in Preferences -> Gerber: a Layer Color Manager where the user can set and edit predefined colors for the Gerber objects: loading order matter 2022-01-10 17:06:12 +02:00
Marius Stanciu
9d9bfa8b03 - some UI changes in the Preferences: the clicked tab now have a distinctive color (green) and some strings are optimized 2022-01-09 16:39:06 +02:00
Marius Stanciu
20587eaec8 - some issues fixed that were left behind rom porting to PyQt6
- trying to solve differently RuntimeError exceptions that randomly popup due of wrapped C++ objects being deleted by attempting to create a new UI for the objects
2021-11-30 00:00:18 +02:00
Marius Stanciu
8f0b591d74 - in AppTextEditor made some changes (added some placeholders and a message popup when reaching the end of document)
- when viewing GCode the Find field can now keep the focus
2021-11-22 03:26:09 +02:00
Marius Stanciu
b494669ca0 - made sure that if the OR-TOOLS package is not installed then the options in the Preferences for the related optimizations are disabled 2021-11-20 19:41:52 +02:00
Marius Stanciu
640739cc65 - fixed another issue when using Python 3.10, in GUI elements
- fixed the Rtree optimization when drilling with no toolchange such that all drill points are used
- fixed the CNCJob object Tools Table when drilling with no toolchange: now only one tool is displayed
2021-11-20 06:30:52 +02:00
Marius Stanciu
57004cf948 - fixed an issue when using Python 3.10, in GUI elements 2021-11-17 01:15:46 +02:00
Marius Stanciu
b29586388b - fixed the issue with toggling visibility for Excellon objects
- fixed some issue when using Python 3.10
2021-11-10 22:48:59 +02:00
Marius Stanciu
33f5749a7f - more Qt6 port bugs fixed
- in Autolevelling Plugin modified the UI; work in progress - the frame disable is not working
2021-09-26 06:26:35 +03:00
Marius Stanciu
08d3a580ac - multiple UI changes in Preferences
- UI changes in the Paint Plugin
2021-09-25 21:08:15 +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
5f417f7156 - pattern highlighting: added the Dx and %LPC%, %LPD% expressions 2021-09-19 22:35:35 +03:00
Marius Stanciu
76c73033cb - fixed the FCGridLayout (in GUI elements) method that synchronize the column width for multiple grid layouts when the item on column is spanning multiple columns 2021-09-10 02:41:13 +03:00
Marius Stanciu
9866bb9037 - in Copper Thieving Plugin more UI changes
- in GUI Elements the FCGridLayout has now a class method that allow adjusting column size in multiple grid layouts to the highest on that column; still work to d oto take care of the situation when widgets are spanning multiple cells
2021-09-09 18:45:53 +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
6712b98a93 - in Fiducials Plugin updated the GUI to the new style
- Fiducials Plugin: replaced a Radio button with a Combobox2 and optimized the UI
- The Combobox2 GUI element no longer issue an exception if it is tried to set a string value, it will set automatically the index 0
2021-09-09 01:19:33 +03:00
Marius Stanciu
48707c390b - in Isolation Plugin updated the GUI 2021-09-06 20:25:45 +03:00
Marius Stanciu
86286089bd - in Copper Thieving Plugin updated the GUI 2021-09-05 21:00:44 +03:00
Marius Stanciu
363778024c - in QRCode Plugin remade the GUI
- added some new properties to the FCCheckBox GUI element
2021-09-05 14:50:04 +03:00
Marius Stanciu
01f3ac4e3a - in Calculators Plugin added a new calculator to calculate the required chemical weights for tinning solutions
- in Calculators Plugin remade the GUI
- some minor GUI modifications for a series of App Plugins
2021-09-04 18:15:41 +03:00
Marius Stanciu
2e23b8590b - fixed the issue in Milling Plugin that did not automatically set the object combo to the previously selected object 2021-09-01 23:16:17 +03:00
Marius Stanciu
4afc706e20 - minor changes 2021-08-27 22:03:08 +03:00
Marius Stanciu
b6c9e85bdd - fixed a Qt6 derived issue where dragging tabs outside the app crashed the app 2021-08-26 16:10:40 +03:00
Marius Stanciu
67120e3214 - fixed the "headless" feature; running headless still start the GUI just it does not show it
- when running headless the sys tray icon will always be shown so the user can close the app correctly
- in the systray icon context menu I've added a menu entry to toggle the GUI
2021-08-25 13:53:00 +03:00
Marius Stanciu
9ed8306c5f - fixed some issues in the convert_units
- added a new GUI element, a radio button that can change a setting in the self.defaults preferences dict
- made sure that the update of the default properties tab (in the Notebook) is done only for certain keys in self.defaults not for all
2021-08-25 02:31:44 +03:00
Marius Stanciu
7a7214752c - fixed some issues with using the exec_() which now should be exec()
- added a context menu action in the canvas context menu for moving selected objects to origin
2021-08-15 02:19:24 +03:00
Marius Stanciu
061e109e45 - wip in porting to PyQt6: fixed OptionalInput and OptionalHideInput GUI elements 2021-08-09 12:25:20 +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
3c06280d3d - more changes due of porting to PyQt6
- fixed the Autocompleter highlighting to work in PyQt6
2021-08-07 10:21:45 +03:00
Marius Stanciu
1d88491a18 - more work in PyQt6 porting 2021-08-05 21:14:37 +03:00
Marius Stanciu
4eb20fd5fe - more fixes for porting to PyQt6 2021-08-05 02:23:29 +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
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
ca748d9a02 - update in Code Highlighter to highlight the X and Y chars
- updated the Document and Script objects Beginner/Advanced selection labels to the same as the rest of the app objects
2021-02-27 04:48:00 +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
Marius Stanciu
00a1b72553 - some changes in the GUI elements and some updates in the Cutout Tool 2021-01-17 22:04:11 +02:00
Marius Stanciu
e016bf0224 - allowed some more parameters to have negative values (tool diameters especially)
- some more tools now have a Beginner/Advanced mode
2021-01-06 15:05:22 +02:00
Marius Stanciu
e5cc47882f - replaced all usages of QFormLayout with QGridLayout 2020-12-31 18:03:43 +02:00
Marius Stanciu
9dfa3b497d - all the logs done on Exception are now errors (with the exception of few places where the Exception is expected) 2020-12-31 05:56:46 +02:00