Commit Graph

115 Commits

Author SHA1 Message Date
Marius Stanciu
7d2fd7c77a - added a way to allow patching FCLabel widget colors for certain cases without having to pass them each instance 2022-04-18 11:48:16 +03:00
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
04357843fe - updated the FCLabel widget 2022-04-18 02:28:24 +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
dc11f1be50 - installed an eventFilter for the Sliders in the Preferences tab such that only if a slider has focus the mouse wheel will change its value
- in Preferences made sure that the changes of the scrollbar no longer interfere with signalling changes
2022-03-12 18:16:15 +02:00
Marius Stanciu
4a4cb4301c - changed the look for the Location/Jump To widgets; it is now like a cross being more relevant visually
- the Numeric Move now can take only a parameter instead of a tuple but only if the comma is added, the not added parameter will be assumed 0.0. Therefore ",10" will move to (0, 10).
2022-03-11 19:29:31 +02:00
Marius Stanciu
a3a8fbf8d5 - in the Grid Toolbar, the Grid Y entry is now by default hidden and shown only when there is a need (grid gap link is disabled) in order to maximize the status bar space availability 2022-03-11 14:48:22 +02:00
Marius Stanciu
4398b3468f - added a new feature: now in the context menu (and main menu -> Edit) there is a new command that allow to move a selection of objects at specified numeric coordinates (either absolute or relative to current position) 2022-03-11 13:51:29 +02:00
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