Commit Graph

1015 Commits

Author SHA1 Message Date
Marius Stanciu ea4502b965 - some PEP changes, some method descriptions updated
- added a placeholder text to 2Sided Tool
2020-04-24 04:18:01 +03:00
Marius Stanciu 1f36ed9369 - added an extra check if old preferences files are detected, a check if the type of the values is the same with the type in the current preferences file. If the type is not the same then the current type is preferred. 2020-04-23 02:43:26 +03:00
Marius Stanciu 3735753a93 - fixed the Tcl Command Help to work as expected; made the text of the commands to be colored in Red color and bold
- added a 'Close' menu entry in the Tcl Shell context menu that will close (hide) the Tcl Shell Dock widget
- on launching the Tcl Shell the Edit line will take focus immediately
- in App.on_mouse_move_over_plot() method no longer will be done a setFocus() on every move, only when it is needed
2020-04-23 02:07:55 +03:00
Marius Stanciu a1499158c2 - refactored some of the code in the App class and created a new Tcl Command named Help 2020-04-22 23:00:54 +03:00
Marius Stanciu f690c2b09d - added a new feature, project auto-saving controlled from Edit -> Preferences -> General -> APP. Preferences -> Enable Auto Save checkbox 2020-04-22 01:19:49 +03:00
Marius Stanciu dc1a198235 - added ability to use line width when adding shapes for both Legacy and OpenGL graphic engines
- added the linewidth=2 parameter for the Tool Distance utility geometry
- fixed a selection issue in Legacy graphic mode for single click
2020-04-20 04:18:12 +03:00
Marius Stanciu ecf61fdf6d - made the Grid icon in the status bar clickable and it will toggle the snap to grid function 2020-04-20 00:57:13 +03:00
Marius Stanciu 5a5a18ef43 - some PEP8 changes in Geometry Editor and other minor changes 2020-04-20 00:12:58 +03:00
Marius Stanciu 2dfcdc95e4 - fixed more issues (new) in NCC Tool
- added a new layout named 'minimal'
2020-04-19 22:22:19 +03:00
Marius Stanciu 46cc9f3f19 - minor optimization 2020-04-15 05:45:09 +03:00
Marius Stanciu 334a28fb6a - made sure that the Tcl commands descriptions listed on help command are aligned 2020-04-15 05:42:38 +03:00
Marius Stanciu c5926ae99f - modified the extensions all over such the names include also the extension name. For Linux who does not display the extensions in the native FileDialog.
- added descriptions for some of the methods in the app.
- added lightened icons for the dark theme from Leandro Heck
2020-04-14 13:42:49 +03:00
Marius Stanciu e64c7060e5 - updated DrillCncJob Tcl Command with new parameters and fixed it to work in the new format of the Excellon methods
- changed CncJob Tcl Command parameter 'depthperpass' to a shorter 'dpp'
2020-04-13 23:43:48 +03:00
Marius Stanciu 4c196f6bae - the Show Shell in Edit -> Preferences will now toggle the Tcl shell based on the current status of the Tcl Shell
- updated the Tcl command Isolate help for follow parameter
2020-04-13 20:44:51 +03:00
Marius Stanciu 7e98365885 - minor update to the autocomplete dictionary 2020-04-13 20:31:32 +03:00
Marius Stanciu 742180d6e3 - updated the Tcl commands PlotAll and PlotObjects to have a parameter that control if the objects are to be plotted or not on canvas; it serve as a disable/enable 2020-04-13 20:28:39 +03:00
Marius Stanciu 1b14e9d451 - updated the App.plot_all() method giving it the possibility to be run as threaded or not
- updated the Tcl command PlotAll to be able to run threaded or not
2020-04-13 20:04:44 +03:00
Marius Stanciu 8a299e8fc8 - multiple fixes in the Tcl commands (especially regarding the interchange between True/false and 1/0 values)
- updated the help for all Tcl Commands
- in Tcl Shell, the 'help' command will add also a brief description for each command in the list
2020-04-13 19:15:20 +03:00
Marius Stanciu 45a2890850 - when the Save button is clicked in the Edit -> Preferences the Preferences tab is closed. 2020-04-11 04:37:37 +03:00
Marius Stanciu abce81d802 - fixed issue #394 - the saveDialog in Linux did not added the selected extension
- fixed issue #389 - in previous commits
- fixed issue #391 - in previous commits
2020-04-11 02:55:32 +03:00
Marius Stanciu 418ebd6606 - minor changes in GUI (Save locations in Menu -> File) and the key shortcuts 2020-04-11 01:51:43 +03:00
Marius Stanciu 42949021b1 - fixed the Tcl Command Delete to have an argument -f that will force deletion evading the popup (if the popup is enabled). The sme command without a name now will delete all objects
- fixed the Tcl Command JoinExcellons
- fixed the Tcl Command JoinGeometry
- fixed the Tcl Command Mirror
- updated the Tcl Command Mirror to use a (X,Y) origin parameter. Works if the -box parameter is not used.
- updated the Tcl Command Offset. Now it can use only -x or -y parameter no longer is mandatory to have both. The one that is not present will be assumed 0.0
- updated the Tcl Command Panelize. The -rows and -columns parameters are no longer both required. If one is not present then it is assumed to be zero.
- updated the Tcl Command Scale. THe -origin parameter can now be a tuple of (x,y) coordinates.
- updated the Tcl Command Skew. Now it can use only -x or -y parameter no longer is mandatory to have both. The one that is not present will be assumed 0.0
- updated the help for all the Tcl Commands
2020-04-09 04:13:04 +03:00
Marius Stanciu ee6ac2593f - fixed an crash generated when running the Tool Database from the Menu -> Options menu entry 2020-04-06 20:31:42 +03:00
Marius Stanciu 139baaff64 - fixed issue #386 - multiple Cut operation on a edited object created a crash due of the bounds() method 2020-04-05 21:50:32 +03:00
Marius Stanciu fdd5344581 - fixed bug in Gerber parser that allowed loading as Gerber of a file that is not a Gerber
- fixed a bug in extension detection for Gerber files that allowed in the filtered list files that extension *.gb*
- added a processEvents method in the Gerber parser parse_lines() method
2020-04-05 21:11:48 +03:00
Marius Stanciu 836122ca24 - fix to work with Python 3.8 (closing the application) 2020-04-05 16:53:10 +03:00
Marius Stanciu b53c1c403a - fix for contextual menus on canvas when using PyQt versions > 5.12.1
- decision on which mouse button to use for panning is done now once when setting the plotcanvas
2020-04-05 16:32:16 +03:00
Marius Stanciu bee2a9dddc - made sure that the HDPI scaling attribute is set before the QApplication is started
- made sure that when saving a project, the app will try to update the active object from UI form only if there is an active object
2020-04-05 13:48:47 +03:00
Marius Stanciu 3d39916b5f - minor changes to increase compatibility with Python 3.8 2020-04-01 18:45:20 +03:00
Marius Stanciu 1d13b997f2 - updated the SVG parser to take into consideration the 'Close' svg element and paths that are made from a single line (we may need to switch to svgpathtools module) 2020-04-01 00:09:50 +03:00
Marius Stanciu 4aeadde3da - started to add the new database links in the NCC and Paint Tools 2020-03-29 17:48:46 +03:00
Marius Stanciu 1ca650e883 - modified the new database to accept data from NCC and Paint Tools 2020-03-29 14:22:11 +03:00
Marius Stanciu 22f74edfab - added to Paint and NCC Tool a feature that allow polygon area selection when the reference is selected as Area Selection
- in Paint Tool and NCC Tool added ability to use Escape Tool to cancel Area Selection and for Paint Tool to cancel Polygon Selection
2020-03-20 13:25:14 +02:00
Marius Stanciu e6917ba1ab - fixed Properties Tool due of recent changes to the FCTree widget 2020-03-13 15:43:26 +02:00
Marius Stanciu 70d3895799 - working on a new type of database 2020-03-01 00:52:24 +02:00
Marius Stanciu 2c7dff5dbe - compacted the NCC Tool UI by replacing some Radio buttons with Combo boxes due of too many elements 2020-02-29 19:05:00 +02:00
Marius Stanciu 8a6ada1984 - added a new parameter named 'End Move X,Y' for the Geometry and Excellon objects. Adding a tuple of coordinates in this field will control the X,Y position of the final move; not entering a value there will cause not to make an end move 2020-02-26 04:43:54 +02:00
Marius Stanciu b6663ddd43 - in NCC Tool modified the UI 2020-02-20 06:14:17 +02:00
Marius Stanciu a2c0244e18 - in Paint Tool replaced the Selection radio with a combobox GUI element that is more compact 2020-02-20 05:14:48 +02:00
Marius Stanciu 72ce53182d - on Set Origin, Move to Origin and Move actions for Gerber and Excellon objects the source file will be also updated (the export functions will export an updated object) 2020-02-19 21:26:08 +02:00
Marius Stanciu a9c6db73bf - when multiple tools are selected in Excellon UI and parameters are modified it will applied to all selected
- in Excellon UI, Paint Tool and NCC Tool finished the "Apply parameters to all tools" functionality
- updated Paint Tool and NCC Tool in the UI functionality
2020-02-18 04:12:23 +02:00
Marius Stanciu 1e9232aeaa - updated the Excellon UI to hold data for each tool
- in Excellon UI removed the tools table column for Offset Z and used the UI form parameter
- updated the Excellon Editor to add for each tool a 'data' dictionary
- updated all FlatCAM tools to use the new confirmation message that show if the entered value is within range or outside
2020-02-17 04:43:01 +02:00
Marius Stanciu 64912949c6 - modified the Paint Tool UI 2020-02-16 03:11:46 +02:00
Marius Stanciu 49c82a3e33 - added the Preferences entries for the Gerber Invert Tool 2020-02-15 03:41:11 +02:00
Marius Stanciu 9fc2ba8ffd - added a new FlatCAM Tool: Gerber Invert Tool. It will invert the copper features in a Gerber file: where is copper there will be empty and where is empty it will be copper 2020-02-14 17:08:06 +02:00
Marius Stanciu 7c9c390ac3 - finished Punch Gerber Tool
- minor PEP8 changes
2020-02-13 21:06:10 +02:00
Marius Stanciu e936e0e116 - fixed bug: when deleting a FlatCAMCNCJob with annotations enabled, the annotations are not deleted from canvas;
- fixed bug: creating a new project while a project is open and it contain CNCJob annotations and/or Gerber mark shapes, did not delete them from canvas
2020-02-12 23:28:21 +02:00
Marius Stanciu 8665d4c90d - added a debug message 2020-02-12 17:15:34 +02:00
Marius Stanciu c2373da17a - working on fixing a bug in FlatCAMGeometry.merge() 2020-02-12 16:43:13 +02:00
Marius Stanciu d33505096c - modified the Excellon GCode generation so now it can use multi depth drilling; modified the preprocessors to show the number of passes 2020-02-08 22:38:08 +02:00
Marius Stanciu 48029da52b - added a new preprocessor file for using laser on a Marlin motion controller but with the laser connected to one of the FAN pins, named 'Marlin_laser_use_FAN_pin' 2020-02-08 20:38:51 +02:00
Marius Stanciu 9911402c95 - added a new preprocessor for using laser on a Marlin 3D printer named 'Marlin_laser'
- modified the Geometry UI when using laser preprocessors
2020-02-08 18:01:32 +02:00
Marius Stanciu 7424bb917c - Modified the Distance Tool such that the Measure button can't be clicked while measuring is in progress
- optimized selection of drills in the Excellon Editor
- fixed bugs in multiple selection in Excellon Editor
- fixed selection problems in Gerber Editor
- in Distance Tool, when run in the Excellon or Gerber Editor, added a new option to snap to center of the geometry (drill for Excellon, pad for Gerber)
2020-02-06 01:39:19 +02:00
Marius Stanciu bfd71a81b8 - fixed issue #376 where the V-Shape parameters from Gerber UI are not transfered to the resulting Geometry object if the 'combine' checkbox is not checked in the Gerber UI 2020-02-02 05:34:26 +02:00
Marius Stanciu 7aea33914c - fixed a division by zero error: fixed #377 2020-02-01 06:59:15 +02:00
Marius Stanciu 0b162bbd55 - added a new functionality, a variation of Set Origin named Move to Origin. It will move a selection of objects to origin such as the bottom left corner of the bounding box that fit them all is in origin. 2020-01-31 22:34:20 +02:00
Marius Stanciu cd45276819 - updated 2Sided Tool 2020-01-29 21:49:22 +02:00
Marius Stanciu a6b2b0af54 - remade the GUI + small fixes in 2Sided Tool 2020-01-29 15:52:44 +02:00
Marius Stanciu d7f7d79d6a - changes in how the Editor exit is handled
- small fix in some pywin32 imports
2020-01-29 03:14:46 +02:00
Marius Stanciu 85afb7cdb2 - some changes in Excellon Editor 2020-01-28 17:34:21 +02:00
Marius Stanciu fd0438842d - finished adding in Geometry Editor a TreeWidget with the geometry shapes found in the edited object 2020-01-28 03:59:15 +02:00
Marius Stanciu 64ff4fb9fd - started t omake some changs in Geometry Editor 2020-01-27 17:43:00 +02:00
Marius Stanciu 408d46fd82 - changed icons for Punch Gerber Tool 2020-01-25 03:57:37 +02:00
Marius Stanciu 3ac8e96071 - fixed bugs in Minimum Distance Tool 2020-01-25 01:44:44 +02:00
Marius Stanciu ca87475694 - small changes to the Toolchange manual preprocessor
- fix for plotting Excellon objects if the color is changed and then the object is moved
- laying the GUI for a new Tool: Punch Gerber Tool which will add holes in the Gerber apertures
2020-01-24 22:12:15 +02:00
Marius Stanciu 6a616168e1 - added the new icons - forgot about them in previous commit 2020-01-19 19:49:34 +02:00
Marius Stanciu 5b63dee50d - made possible to set the colors for Excellon objects too
- added to the possible colors the fundamentals: black and white
- in the project context menu for setting colors added the option to set the transparency and also a default option which revert the color to the default value set in the Preferences
2020-01-19 19:47:42 +02:00
Marius Stanciu 4047cc8499 - fixed and issue that made setting colors for the Gerber file not possible if using a translation 2020-01-19 17:55:34 +02:00
Marius Stanciu f7278a78f7 Merged in Beta (pull request #5)
# Conflicts:
#	README.md
2020-01-19 17:46:57 +02:00
Marius Stanciu a9d69a57fe - make sure that the fixes above apply when rebooting app for theme change or for language change 2020-01-19 17:39:32 +02:00
Marius Stanciu 24260b29b4 - fixed some bugs that are visible in Linux regarding the ArgsThread class: on app close we need to quit the QThread running the ArgsThread class and also close the opened Socket 2020-01-19 17:09:41 +02:00
Marius Stanciu 6c43ffca1e - more work in NCC Tool upgrade; each tool now work with it's own set of parameters 2020-01-17 17:02:49 +02:00
Marius Stanciu 3c569fdf6c - updated/optimized the GUI in Preferences for Paint Tool and for NCC Tool
- work in Paint Tool to bring it up to date with NCC Tool
2020-01-16 02:07:00 +02:00
Marius Stanciu f9a8d09b26 - modified the NCC Tool GUI to prepare for accepting a tool from a tool database
- started to modify the Paint Tool to be similar to NCC Tool and to accept a tool from a database
2020-01-15 17:47:28 +02:00
Marius Stanciu 9a9b6908bc - minor changes 2020-01-15 03:02:45 +02:00
Marius Stanciu 821014f719 - added key shortcuts and toolbar icons for the new tools: Align Object Tool (ALT+A) and Extract Drills (ALT+I)
- added new functionality (key shortcut SHIFT+J) to locate the corners of the bounding box (and center) in a selected object
2020-01-15 02:50:27 +02:00
Marius Stanciu 9a3f3b600b - in Extract Drill Tool added a new method of drills extraction. The methods are: fixed diameter, fixed annular ring and proportional
- in Align Objects Tool finished the Single Point method of alignment
2020-01-14 16:23:23 +02:00
Marius Stanciu f9ec233b0f - working on the Align Objects Tool 2020-01-14 02:45:03 +02:00
Marius Stanciu 41277d78ce - started the add of a new Tool: Align Objects Tool which will align (sync) objects of Gerber or Excellon type 2020-01-13 21:43:25 +02:00
Marius Stanciu 02cfd96715 - fixed a small GUI issue in Excellon UI when Basic mode is active 2020-01-13 16:06:29 +02:00
Marius Stanciu 5b3f318e56 - if CTRL key is pressed during app startup the app will start in the Legacy(2D) graphic engine compatibility mode 2020-01-12 17:26:48 +02:00
Marius Stanciu f8c22ea32f - Extract Drills Tool: fixed issue with oblong pads and with pads made from aperture macros
- Extract Drills Tool: added controls in Edit -> Preferences
2020-01-12 00:30:17 +02:00
Marius Stanciu c28f08a392 - fixed an issue in the Distance Tool
- expanded the Extract Drills Tool to use a particular annular ring for each type of aperture flash (pad)
2020-01-11 17:30:48 +02:00
Marius Stanciu c16ecfe0c3 - fixed issue in Film Tool where some parameters names in calls of method export_positive() were not matching the actual parameters name
- finished the Extract Drills Tool
- fixed a small issue in the DoubleSided Tool
2020-01-11 00:52:06 +02:00
Marius Stanciu f2ccb48c98 - finished the GUI in the Extract Drills Tool 2020-01-10 16:56:29 +02:00
Marius Stanciu 7d0a792085 - small changes 2020-01-10 14:55:32 +02:00
Marius Stanciu 2ff9cd2439 - print() debugging 2020-01-10 13:00:47 +02:00
Marius Stanciu 8c33f6e0be - added some prints to work on issue 349 2020-01-09 12:44:24 +02:00
Marius Stanciu 856f568f9e - selected rows in the Tools Tables will stay colored in blue after loosing focus instead of the default gray
- in NCC Tool the Tool name in the Parameters section will be the Tool ID in the Tool Table
- added an exception catch in case the plotcanvas init failed for the OpenGL graphic engine and warn user about what happened
2020-01-09 00:06:38 +02:00
Marius Stanciu 48888adb58 - updates in NCC Tool 2020-01-07 16:49:57 +02:00
Marius Stanciu b327c216d7 - solved issue #368 - when using the Enable/Disable prj context menu entries the plotted status is not updated in the object properties 2020-01-07 14:47:29 +02:00
Marius Stanciu e090b96c7c - modified Toggle Workspace function to work in the new Preferences UI configuration
- cleaned the app from progress signal usage since it is not used anymore
2020-01-03 01:41:03 +02:00
Marius Stanciu e0825bfce3 - made available only for Linux and Windows (not OSX) the starting of the thread that checks if another instance of FlatCAM is already running at the launch of FLatCAM 2020-01-02 20:41:27 +02:00
Marius Stanciu 84c8588f89 - fixed the Drillcncjob Tcl command by adding an custom self.options key "Tools_in_use" and build it's value, in case it does not exist, to make the toolchange command work
- middle mouse click on closable tabs will close them
2020-01-02 01:50:49 +02:00
Marius Stanciu 3475ae00cd - fixed bug in NCC Tool: after trying to add a tool already in the Tool Table when trying to change the Tool Type the GUI does not change
- final fix for app not quiting when running a script as argument, script that has the quit_flatcam Tcl command; fixed issue #360
- fixed issue #363. The Tcl command drillcncjob does not create tool cut, does not allow creation of gcode, it forces the usage of dwell and dwelltime parameters
2020-01-01 16:13:33 +02:00
Marius Stanciu e245f2839d - TclCommand quit_flatcam work under Linux 2019-12-31 03:16:47 +02:00
Marius Stanciu 1e3947a244 - another attempt to make TclCommand quit_flatcam work under Linux - use signal to call a hard exit when in Linux 2019-12-31 02:37:11 +02:00
Marius Stanciu d3f144dec4 - another attempt to make TclCommand quit_flatcam work under Linux 2019-12-30 23:53:56 +02:00
Marius Stanciu cfa4f7ee7d - attempt to make TclCommand quit_flatcam work under Linux 2019-12-30 23:04:59 +02:00
Marius Stanciu 3674828b2a - changed the version number and next release date 2019-12-30 01:54:37 +02:00