Commit Graph

741 Commits

Author SHA1 Message Date
Marius Stanciu d3cad737cc - modified the Distance Tool such that the numbe of decimals all over the tool is set in one place by the self.decimals
- added a new tool named Minimum Distance Tool who will calculate the minimum distance between two objects; key shortcut: SHIFT + M
- finished the Minimum Distance Tool in case of using it at the object level (not in Editors)
2019-09-30 03:02:04 +03:00
Marius Stanciu bacb8a7184 - changed the name of the Measurement Tool to Distance Tool. Moved it's location to the Edit Menu
- added Angle parameter which is continuously updated to the Distance Tool
2019-09-29 05:13:36 +03:00
Marius Stanciu 6554f1f6b6 - fixed a small bug that made app crash when the splash screen is disabled: it was trying to close it without being open 2019-09-29 00:36:01 +03:00
Marius Stanciu 32ff417a2c - fixed a bug in Excellon Editor that crashed the app when editing the first tool added automatically into a new black Excellon file
- made sure that if the big mouse cursor is selected, the utility geometry in Excellon Editor has a thicker line width (2 pixels now) so it is visible over the geometry of the mouse cursor
2019-09-28 21:29:23 +03:00
Marius Stanciu a2bef40097 - added a new tool named "Optimal Tool" which will determine the minimum distance between the copper features for a Gerber object, in fact determining the maximum diameter for a isolation tool that can be used for a complete isolation 2019-09-28 03:51:39 +03:00
Marius Stanciu c5ecc7ad88 - created the GUI for the Rule Check Tool
- if there are (x, y) coordinates in the clipboard, when launching the "Jump to" function, those coordinates will be preloaded in the Dialog box.
- when the combo SHIFT + LMB is executed there is no longer a deselection of objects
- when the "Jump to" function is called, the mouse cursor (if active) will be moved to the new position and the screen position labels will be updated accordingly
- changed the icon for Open Script and reused it for the Check Rules Tool
2019-09-28 00:34:18 +03:00
Marius Stanciu 537b843a04 - made the mouse cursor (big, small) change in real time for both graphic engines 2019-09-27 17:19:44 +03:00
Marius Stanciu 7b9907fa1d - if an object is edited but the result is not saved, the app will reload the edited object UI and set the Selected tab as active 2019-09-27 15:28:47 +03:00
Marius Stanciu ca7863a371 - fixed issue with the old SysTray icon not hidden when the application is restarted programmatically 2019-09-27 12:42:16 +03:00
Marius Stanciu 46e7be20e2 - optimized the toggle axis command
- added posibility of using a big mouse cursor or a small mouse cursor. The big mouse cursor is made from 2 infinite lines. This was implemented for both graphic engines
- added ability to change the cursor size when the small mouse cursor is selected in Preferences -> General
2019-09-27 04:42:28 +03:00
Marius Stanciu 9c8c36adbb - optimized the toggle grid command 2019-09-27 01:15:29 +03:00
Marius Stanciu 0444b901bb - fixed issue when rebooting from within in cx_freezed state (it issued a startup arg with the path to FlatCAM.exe but that triggered the last sys.exit(2) that I had in the App.args_at_startup()) - modified
- modified the make_win script for the presence of MatPlotLib - removed as it was unnecessary
2019-09-26 21:49:58 +03:00
Marius Stanciu ac096fadbb - fixed issue when rebooting from within in cx_freezed state (it issued a startup arg with the path to FlatCAM.exe but that triggered the last sys.exit(2) that I had in the App.args_at_startup())
- modified the make_win script for the presence of MatPlotLib
2019-09-26 21:15:22 +03:00
Marius Stanciu 0f91d4dff0 - added a Copy All button in the Code Editor, clicking this button will copy all text in the editor to the clipboard
- added a 'Milling Type' radio button in Geometry Editor Preferences to contorl the type of geometry will be generated in the Geo Editor (for conventional milling or for the climb milling)
- added the functionality to allow climb/conventional milling selection for the geometry created in the Geometry Editor
- now any Geometry that is edited in Geometry editor will have coordinates ordered such that the resulting Gcode will allow the selected milling type in the 'Milling Type' radio button in Geometry Editor Preferences (which depends also of the spindle direction)
- some strings update
- French Google-translation at 100%
- German Google-translation update to 100%
2019-09-26 17:46:25 +03:00
Marius Stanciu 3941544558 - in legacy graphic engine fixed the axis toggle
- French Google-translation at 48%
2019-09-25 17:25:46 +03:00
Marius Stanciu 4e8fbaf974 - fixed the 'Jump To' function to work in legacy graphic engine
- in legacy graphic engine fixed the mouse cursor shape when grid snapping is ON, such that it fits with the shape from the OpenGL graphic engine
2019-09-25 15:02:59 +03:00
Marius Stanciu 1158128384 (all those were done in the previous commit, should stay as log)
- unfortunately the fix for issue where while zooming the mouse cursor shape was not updated braked something in way that Matplotlib work with PyQt5, therefore I removed it
- fixed a bug in legacy graphic engine: when doing the self.app.collection.delete_all() in new_project an app crash occurred
- implemented the Annotation change in CNCJob Selected Tab
2019-09-25 03:36:33 +03:00
Marius Stanciu 61e2792047 - unfortunately the fix for issue where while zooming the mouse cursor shape was not updated braked something in way that Matplotlib work with PyQt5, therefore I removed it 2019-09-25 03:26:34 +03:00
Marius Stanciu 4bd8475893 - fixed the fullscreen method to show the application window in fullscreen wherever the mouse pointer it is therefore on the screen we are working on; before it was showing always on the primary screen 2019-09-24 13:30:51 +03:00
Marius Stanciu 0fe502d068 - 26% in Google-translated French translation and updated some strings too 2019-09-23 20:17:34 +03:00
Marius Stanciu 9eefec7498 - added a final fix that allow full coverage of the screen in FullScreen in Windows and still the menus are working 2019-09-23 06:18:36 +03:00
Marius Stanciu 70bcd7a448 - small change 2019-09-23 05:49:31 +03:00
Marius Stanciu 5f6a7eebf5 - fixed the FullScreen option not working for the 3D graphic engine (due bug of Qt5 when OpenGL window is fullscreen) by creating a sort of fullscreen 2019-09-23 05:45:52 +03:00
Marius Stanciu 95ce59c0bf - added the new keywords to the default keywords list 2019-09-23 04:19:15 +03:00
Marius Stanciu edbb690d1b - in legacy graphic engine, fixed a bug that when deleting an object all objects where deleted
- added a new TclCommand named set_origin which will set the origin for all loaded objects to zero if the -auto True argument is used and to a certain x,y location if the format is: set_origin 5,7
2019-09-23 03:35:32 +03:00
Marius Stanciu e349953637 - fixed crash when trying to set a workspace in FlatCAM in the Legacy engine 2D mode by disabling this function for the case of 2D mode
- updated the translation files
2019-09-23 00:17:45 +03:00
Marius Stanciu 6238b07826 - fixed crash when trying to set a workspace in FlatCAM in the Legacy engine 2D mode by disabling this function for the case of 2D mode
- updated the translation files
2019-09-22 17:59:01 +03:00
Marius Stanciu 183d4b7966 - some strings changed to be easier for translation
- updated the .POT file and the translation files
- updated and corrected the Romanian and Spanish translations
- updated the .PO files for the rest of the translations, they need to be filled in.
2019-09-22 17:06:22 +03:00
Marius Stanciu 961c4bca2f - fixed the MultiColor plot option Gerber selected tab to work in legacy graphic engine
- documented some methods in the ShapeCollectionLegacy class
2019-09-22 14:03:20 +03:00
Marius Stanciu f00559bf6a - made hover shapes work in legacy graphic engine
- fixed bug in display of the apertures marked in the Aperture table found in the Gerber Selected tab and through this made it to also work with the legacy graphic engine
- fixed annotation in Mark Area Tool in Gerber Editor to work in legacy graphic engine
2019-09-22 13:12:21 +03:00
Marius Stanciu b0b2e37ac6 - adjusted axis at startup for legacy graphic engine plotcanvas
- when the graphic engine is changed in Edit -> Preferences -> General -> App Preferences, the application will restart
2019-09-22 04:34:19 +03:00
Marius Stanciu 42d26c1323 - fixed display of distance labels and code optimizations in ToolPaint and NCC Tool 2019-09-22 03:54:25 +03:00
Marius Stanciu 63b261685d - fixed Geometry Editor to work in legacy graphic engine
- fixed Excellon Editor to work in legacy graphic engine
2019-09-22 00:05:35 +03:00
Marius Stanciu 399b0b45c6 - fixed drawing of selection box when dragging mouse on screen and the selection shape drawing on the selected objects
- fixed the moving drawing shape in Tool Move in legacy graphic engine
- fixed moving geometry in Tool Measurement in legacy graphic engine
2019-09-21 22:00:02 +03:00
Marius Stanciu bc6dc3decf - fixed CNCJob and Excellon plotting in legacy graphic engine
- in legacy graphic engine fixed the travel vs cut lines in CNCJob objects
- final fix for key shortcuts with modifier in legacy graphic engine
- refactored some of the code in the legacy graphic engine
2019-09-21 18:26:03 +03:00
Marius Stanciu 9aef293a26 - fixed Measuring Tool in legacy graphic engine
- fixed Gerber plotting
- fixed Geometry plotting
2019-09-21 13:07:30 +03:00
Marius Stanciu 01e2755676 - fixed mouse cursor to work for all objects
- fixed event signals to work in both graphic engines: 2D and 3D
2019-09-21 01:10:32 +03:00
Marius Stanciu 14bc9f2dfc - work on ShapeCollectionLegacy 2019-09-20 18:45:36 +03:00
Marius Stanciu 3a54eaa5d8 - made the mouse cursor snap to the grid when grid snapping is active
- changed the axis color to the one used in the OpenGL graphic engine
2019-09-20 18:07:36 +03:00
Marius Stanciu 011e80c0ce - legacy graphic engine - made the mouse events work (click, release, doubleclick, dragging)
- legacy graphic engine - made the key events work (simple or with modifiers)
- legacy graphic engine - made the mouse cursor work (enabled/disabled, position report); snapping is not moving the cursor yet
2019-09-20 17:25:32 +03:00
Marius Stanciu 4f17d6229f - final fix for the --shellvar having spaces within the assigned value; now they are retained
- updated the .POT file and the translation files leaving them incomplete
2019-09-20 01:33:38 +03:00
Marius Stanciu d581462b1d - changed the default method for Paint Tool to 'all' 2019-09-19 23:34:54 +03:00
Marius Stanciu ca4616a858 - fixed bug with losing the visibility of toolbars if at first startup the user tries to change something in the Preferences before doing a first save of Preferences 2019-09-19 22:38:25 +03:00
Marius Stanciu 1e49c23e8f - added new control in Edit -> Preferences -> General -> Gui Preferences -> Activity Icon. Will select a GIF from a selection, the one used to show that FlatCAM is working. 2019-09-19 21:14:47 +03:00
Marius Stanciu ea95c0c759 - fixed the command line argument --shellvar to work when there are spaces in the argument value 2019-09-19 04:41:03 +03:00
Marius Stanciu 4540066731 - added a new TclCommand named quit_flatcam which will ... quit FlatCAM from Tcl Shell or from a script 2019-09-19 04:04:18 +03:00
Marius Stanciu 1d26247fc4 - FlatCAM can be run in HEADLESS mode now. This node can be selected by using the --headless=1 command line argument or by changing the line headless=False to True in config/configuration.txt file. In this mod the Sys Tray Icon menu will hold only the Run Scrip menu entry and Exit entry. 2019-09-19 03:55:47 +03:00
Marius Stanciu 4f4c029003 - updated some of the default values to more reasonable ones 2019-09-19 02:12:21 +03:00
Marius Stanciu a27dcbdc77 - made sure that if FlatCAM is registered with a file extension that it does not recognize it will exit
- added some fixes in the the file extension detection
- added some status messages for the Tcl script related methods
- made sure that optionally, when a script is run then it is also loaded into the code editor
- added control over the display of Sys Tray Icon in Edit -> Preferences -> General -> GUI Settings -> Sys Tray Icon checkbox
2019-09-19 02:00:59 +03:00
Marius Stanciu 04b3b8585f - added option to run a script from the context menu of the sys tray icon. Changed the color of the sys tray icon to a green one so it will be visible on light and dark themes 2019-09-18 18:27:28 +03:00
Marius Stanciu 2f9ad61819 - fixed issue with the sys tray icon not hiding after application close 2019-09-18 15:22:45 +03:00
Marius Stanciu cf0e40c318 - added possibility to edit the custom keywords used by the autocompleter (in Tcl Shell and in the Code Editor). It is done in the Edit -> Preferences -> Utilities
- added a new setting in Edit -> Preferences -> General -> GUI Settings -> Textbox Font which control the font on the texbox GUI elements
2019-09-18 14:30:09 +03:00
Marius Stanciu f432b065fa - fixed the parsing of the Manufacturing files when double clicking them and they are registered with FlatCAM
- fixed showing the GUI when some settings (maximized_GUI) are missing from QSettings
2019-09-18 02:33:17 +03:00
Marius Stanciu 8958ef8007 - fixed the --shellvar and --shellfile FlatCAM arguments to work together but the --shellvar has precedence over --shellfile as it is most likely that whatever variable set by --shellvar will be used in the script file run by --shellfile 2019-09-18 01:58:15 +03:00
Marius Stanciu 6723f9496c - fixed the --shellvar and --shellfile FlatCAM arguments to work together but the --shellvar has precedence over --shellfile as it is most likely that whatever variable set by --shellvar will be used in the script file run by --shellfile 2019-09-17 20:24:34 +03:00
Marius Stanciu 97cf8f8174 - small change in the help line 2019-09-17 18:46:06 +03:00
Marius Stanciu 608f1dd958 - made --shellvars into --shellvar and make it only one list of commands passed to the Tcl. The list is separated by comma but without spaces. The variables are accessed in Tcl with the names shellvar_x where x is the index in the list of command comma separated values
- fixed an issue in the TclShell that generated an exception IndexError which crashed the software
2019-09-17 18:37:34 +03:00
Marius Stanciu 71b945c05e - added a new command line parameter for FlatCAM named '--shellvars' which can load a text file with variables for Tcl Shell in the format: one variable assignment per line and looking like: 'a=3' without quotes 2019-09-17 15:25:53 +03:00
Marius Stanciu 26fe1bf5e1 - if FlatCAM is started with the 'quit' or 'exit' as argument it will close immediately and it will close also another instance of FlatCAM that may be running 2019-09-17 14:08:57 +03:00
Marius Stanciu bd0c1da007 - fixed #315 where a script run with the --shellfile argument crashed the program if it contained a TclCommand New
- added messages in the Splash Screen when running FlatCAM with arguments at startup
2019-09-17 02:38:24 +03:00
Marius Stanciu 9187004f9e - added more programmers that contributed to FlatCAM over the years, in the "About FlatCAM" -> Programmers window 2019-09-17 01:21:14 +03:00
Marius Stanciu f51a3fa038 - made the splashscreen to be showed on the current monitor on systems with multiple monitors
- added a new entry in Menu -> View -> Redraw All which is doing what the name says: redraw all loaded objects
- fixed issue where in TCl Shell the Windows paths were not understood due of backslash symbol understood as escape symbol instead of path separator
- made sure that in for the TclCommand cncjob and for the drillcncjob if one of the args is stated but no value then the value used will be the default one
- made available the TSA algorithm for drill path optimization when the used OS is 64bit. When used OS is 32bit the only available algorithm is TSA
2019-09-16 23:27:02 +03:00
Camellan f71e6992a1 Merged in camellan/flatcam/Beta (pull request #205)
Beta
2019-09-16 17:33:53 +00:00
Marius Stanciu 97b6e26fae - added new links in Menu -> Help (Excellon, Gerber specifications and a Report Bug) 2019-09-16 18:38:15 +03:00
Marius Stanciu be4d4387f4 - more GUI optimizations related to being part of the Advanced category or not
- added possibility to change the positive SVG exported file color in Tool Film
2019-09-16 16:04:47 +03:00
Marius Stanciu 846e68a8c2 - some GUI optimizations 2019-09-16 05:22:07 +03:00
Marius Stanciu 4b28d980fd - fixed the App.on_view_source() method for CNCJob objects: the Gcode will now contain the Prepend and Append code from the Edit -> Preferences -> CNCJob -> CNCJob Options 2019-09-16 04:10:02 +03:00
Marius Stanciu 61120911c6 - fixed Scripts repeating multiple time when the Code Editor is used. This repetition was correlated with multiple openings of the Code Editor window (especially after an error)
- added the autocomplete keywords that can be changed to the defaults dictionary
- modified the TclCommand New so it will no longer close all tabs when called (it closed the Code Editor tab which may have been holding the code that run)
2019-09-16 04:03:19 +03:00
Marius Stanciu 78b6aa9a83 - fixed Scripts repeating multiple time when the Code Editor is used. This repetition was correlated with multiple openings of the Code Editor window (especially after an error)
- added the autocomplete keywords that can be changed to the defaults dictionary
2019-09-16 03:47:28 +03:00
Marius Stanciu 7aebf1c60a - added new TclCommands: NewExcellon, NewGerber
- fixed the TclCommand open_project
2019-09-16 02:57:46 +03:00
Marius Stanciu 8cba74647f - made all TclCommands not to be plotted automatically
- made sure that all TclCommands are not threaded
2019-09-16 01:39:11 +03:00
Marius Stanciu 2f553c9005 - added a new TclCommand named PlotObjects which will plot a list of FlatCAM objects
- made that after opening an object in FlatCAM it is not automatically plotted. If the user wants to plot it can use the TclCommands PlotAll or PlotObjects
- modified the TclCommands that open files to not plot the opened files automatically
2019-09-16 00:47:15 +03:00
Marius Stanciu c06317374e - added possibility to see the GCode when right clicking on the Project tab on a CNCJob object and then clicking View Source 2019-09-15 22:46:51 +03:00
camellan 1fb70b4672 Edit About page. Edit Russian translation. Edit pot. 2019-09-15 20:52:19 +04:00
camellan 34c2d26422 Fix run a program in unix-based systems 2019-09-15 18:45:22 +04:00
camellan c3e51e7e32 Update Russian translations 2019-09-15 18:39:50 +04:00
Marius Stanciu b0d545eb03 - fixed isolate TclCommand to use correctly the -outname parameter 2019-09-15 17:21:15 +03:00
Marius Stanciu 8b3e1b5a77 - fixed the TclCommand cncjob to use the -outname parameter
- added some more keywords in the data_model for auto-completer
2019-09-15 16:46:48 +03:00
Marius Stanciu 30f00abce8 - fixed issue in ToolPaint that could not allow area painting of a geometry that was a list and not a Geometric element (polygon or MultiPolygon)
- fixed UI showing before the initialization of FlatCAM is finished when the last state of GUI was maximized
- finished updating the TclCommand cncjob to work for multi-geo Geometry objects with the parameters from the args
2019-09-15 13:37:06 +03:00
Marius Stanciu 9057d35cf9 - updated the translations (except RU) and the POT file 2019-09-14 15:51:32 +03:00
Marius Stanciu 0e75352266 - made optional the behavior of Excellon Export values following the values in the Excellon Loading section 2019-09-14 15:33:50 +03:00
Marius Stanciu 23cf31f4f0 - whenever the user changes the Excellon format values for loading files, the Export Excellon Format values will be updated 2019-09-14 14:59:39 +03:00
Marius Stanciu 1ab16f2d6f - fixed the layouts to include toolbars breaks where it was needed 2019-09-14 13:41:15 +03:00
Marius Stanciu 0a005cfe40 - minor changes in the Code Editor GUI
- minor changes in the 'FlatCAM About' GUI
- added a new shortcut key F5 for doing the 'Plot All'
2019-09-14 11:53:08 +03:00
Marius Stanciu e82bc22caf - more string changes
- updated translation files
2019-09-14 02:14:26 +03:00
Marius Stanciu 56799a35b7 - added a new way to handle scripts with repeating Tcl commands
- added new buttons in the Tools toolbar for running, opening and adding new scripts
2019-09-13 22:47:38 +03:00
Marius Stanciu f6cd63021e - fixed some of the strings that were left in the old way
- updated the POT file
- updated Romanian language partially
2019-09-13 18:27:00 +03:00
Marius Stanciu 6ea9b80ad6 - converted the big strings that hold the shortcut keys descriptions to smaller string to make translations easier 2019-09-13 17:05:13 +03:00
Marius Stanciu 19444fb28c - upgraded the Script Editor to be able to run Tcl commands in batches
- added some ToolTips for the buttons in the Code Editor
2019-09-13 13:52:55 +03:00
Marius Stanciu 722962084b - added a grid layout in on_about() 2019-09-13 03:37:26 +03:00
Marius Stanciu 67808466d6 - added control for simplification when loading a Gerber file in Preferences -> Gerber -> Gerber General -> Simplify 2019-09-13 02:08:26 +03:00
Marius Stanciu 7ad03f9f0a - remade the splash screen to show multiple messages on app initialization
- added a new splash image
- added a control in Preferences -> General -> GUI Settings -> Splash Screen that control if the splash screen is shown at startup
2019-09-13 01:24:54 +03:00
Marius Stanciu 1a8784f5ab - now, Excellon and Gerber edited objects will have the source_code updated and ready to be saved
- the edited Gerber (or Excellon) object now is kept in the app after editing and the edited object is a new object
- added a message to the splash screen
2019-09-12 22:21:19 +03:00
Marius Stanciu 22fafd1495 - small changes to the 'About FlatCAM' windows 2019-09-12 17:42:33 +03:00
Marius Stanciu d22592e64c - small changes in the TclCommands: MillDrills, MillSlots, DrillCNCJob: the new parameter for tolerance is now named: tooldia
- cleaned up the 'About FlatCAM' window, started to give credits for the translation team
2019-09-12 17:28:56 +03:00
Marius Stanciu 90b9e2da05 - modified the TclCommand DrillCncJob to have as parameter a list of tool diameters to be drilled instead of tool indexes 2019-09-11 21:40:18 +03:00
Marius Stanciu 7af96faef6 - fixed issue #302 where a copied object lost all the tools 2019-09-11 19:54:44 +03:00
Marius Stanciu 90a8b44cdf - fixed some minor errors in the new TclCommands: MillDrills and MillSlots 2019-09-11 17:59:24 +03:00
Marius Stanciu 1ef9e95143 - changed the name of TclCommand MillHoles to MillDrills and added a new TclCommand named MillSlots 2019-09-11 17:34:01 +03:00
Marius Stanciu e7493a350f - updated code in self.on_view_source() to make it more responsive 2019-09-11 06:55:17 +03:00