Commit Graph

1301 Commits

Author SHA1 Message Date
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 11d4dd633f - fixed a bug in the bounding box generation 2020-01-22 01:08:35 +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 87faa7e840 - restored the Readme file 2020-01-19 17:47:35 +02:00
Marius Stanciu abc20cf0a5 - optimized the object envelope generation in the redesigned NCC Tool 2020-01-18 01:47:48 +02:00
Marius Stanciu 36280d9f54 - some updates in NCC Tool 2020-01-17 23:06:28 +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 eae5b3d8e3 - changes to Geometry UI 2020-01-17 03:42:50 +02:00
Marius Stanciu 957903d307 - more changes to Excellon UI 2020-01-17 03:15:13 +02:00
Marius Stanciu c417030896 - moved default_data data update from Excellon parser to the Excellon object constructor 2020-01-16 16:55:34 +02:00
Marius Stanciu b71d4e8c45 - in ParseExcellon.Excellon the self.tools dict has now a key 'data' which holds a dict with all the default values for Excellon and Geometry
- Excellon and Geometry objects, when started with multiple tools selected, the parameters tool name reflect this situation
2020-01-16 16:43:39 +02:00
Marius Stanciu 0221a9cfb6 - updated the Excellon and Geometry UI to be similar
- put bases for future changes to Excellon Object UI such that each tool will hold it's own parameters
2020-01-16 15:49:51 +02:00
Marius Stanciu 24e01ad518 - a small change in the Excellon UI 2020-01-16 02:33:54 +02:00
Marius Stanciu 5ffa9b6470 - updated the GUI in preferences for Calculator Tool 2020-01-16 02:21:20 +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 82afd3bb6e - work in Paint Tool GUI functionality 2020-01-15 17:59:12 +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 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 acfb1ca9e7 - finished Dual Point option in Align Objects Tool 2020-01-15 00:55:12 +02:00
Marius Stanciu a8bea7805e - working on the Dual Point option in Align Objects Tool - angle has to be recalculated 2020-01-14 17:18:24 +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 5c932dc5cc - fixed an issue in Gerber parser introduced recently due of changes made to make Gerber files produced by Sprint Layout 2020-01-14 01:36:37 +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 c9111dac9b - fixed an issue in Gerber parser with detecting old kind of units 2020-01-12 04:05:13 +02:00
Marius Stanciu a9b93cafa1 - improved the circle approximation resolution 2020-01-12 03:28:05 +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 fc31bb573d - working on a new tool: Extract Drills Tool who will create a Excellon object out of the apertures of a Gerber object 2020-01-10 15:56:23 +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 5ff9f953c6 - working in NCC Tool 2020-01-08 17:14:10 +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 e062a4fad2 - working on new NCC Tool 2020-01-06 17:36:53 +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 6f5a775388 - for auto-completer, now clicking an entry in the completer popup will select that entry and insert it 2020-01-02 05:06:08 +02:00
Marius Stanciu fd9d18b52b - started to rework the NCC Tool GUI in preparation for adding a Tool DB feature 2020-01-02 04:28:18 +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 b5d69f493d - added ability for Tcl commands to have optional arguments with None value (meaning missing value). This case should be treated for each Tcl command in execute() method 2020-01-01 22:24:43 +02:00
Marius Stanciu 0447839e43 - modified the extracut and multidepth parameters in Cncjob Tcl command like for dwell and toolchange 2020-01-01 21:17:47 +02:00
Marius Stanciu 779a6a75d4 - modified the Drillcncjob and Cncjob Tcl commands to be allowed to work without the 'dwell' and 'toolchange' arguments. If 'dwelltime' argument is present it will be assumed that the 'dwell' is True and the same for 'toolchangez' parameter, if present then 'toolchange' will be assumed to be True, else False 2020-01-01 20:42:59 +02:00
Marius Stanciu a738ed7305 - in NCC Tool I've added a warning so the user is warned that the NCC margin has to have a value of at least the tool diameter that is doing an iso_op job in the Tool Table 2020-01-01 19:08:15 +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 c8955e0a00 - TclCommand quit_flatcam work under Linux 2019-12-31 03:17:17 +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 258bd529d2 - some fixes in the NCC Tcl command (using the bool() method on some params) 2019-12-30 23:33:22 +02:00
Marius Stanciu cfa4f7ee7d - attempt to make TclCommand quit_flatcam work under Linux 2019-12-30 23:04:59 +02:00
Marius Stanciu 841e1f3eeb - fixed Tcl commands that use the overlap parameter to switch from fraction to percentage
- in Transform Tool mae sure that the buffer sub-tool parameters are better explained in tooltips
2019-12-30 22:04:39 +02:00
Marius Stanciu f7eaf62606 - changes in the Preferences UI for NCC and Paint Tool in Tool Dia entry field 2019-12-30 17:07:43 +02:00
Marius Stanciu f7084f4e56 - fixed some decimals issues in NCC Tool, Paint Tool and Excellon Editor (they were still using the harcoded values)
- some small updates in the NCC Tool
2019-12-30 01:52:03 +02:00
Marius Stanciu c0ec3b6546 - Buffer sub-tool in Transform Tool: added the possibility to apply a factor effectively scaling the aperture size thus the copper features sizes
- in Transform Tool adjusted the GUI
2019-12-30 01:18:56 +02:00
Marius Stanciu 7bd441eccc - in Paint Tool Preferences allowed to add a list of initial tools separated by comma
- in Geometry Paint Tool fixed the Overlap rate to work between 0 and 99.9999%
2019-12-29 22:51:22 +02:00
Marius Stanciu a66658f2e2 - fixed a small where the app tried to hide a label that I've removed previously 2019-12-29 21:36:34 +02:00
Marius Stanciu c79f74c1bf - added a new function called by shortcut key combo CTRL+G when the current widget in Plot Area is an Code Editor. It will jump to the specified line in the text. 2019-12-29 04:31:46 +02:00
Marius Stanciu 84cd2143c3 - the Gerber UI is built only once now so the process is lighter on CPU
- the Gerber apertures marking shapes storage is now built only once because the more are built the more sluggish is the interface
2019-12-29 01:11:24 +02:00
Marius Stanciu 5032d8e8fe - the Apply button text in Preferences is now made red when changes were made and require to be applied 2019-12-29 00:40:27 +02:00
Marius Stanciu 58054f71b3 - fixed a minor issue that when saving a project with CNCJob objects, the variable that holds the origin of the CNCJob object was not saved in the project. Added to the serializable objects also the exc_cnc_tools dictionary
- some changes in the File menu
2019-12-29 00:00:15 +02:00
Marius Stanciu 47fe73a91b - more updates to the Preferences window and in some other parts of the GUI
- updated the translations (less Russian)
2019-12-28 20:38:44 +02:00
Marius Stanciu 3c991e1c2d - updated all the translations files
- fixed the big mouse cursor in OpenGL(3D) graphic mode to get the set color
- fixed the cursor to have the set color and set cursor width in the Legacy(2D) graphic engine
- in Legacy(2D) graphic mode fixed the cursor toggle when the big cursor is activated
- in Legacy(2D) fixed big mouse cursor to snap to the grid
- RELEASE 8.991
2019-12-28 03:59:05 +02:00
Marius Stanciu c74814cb00 - fixed some typos 2019-12-27 05:00:30 +02:00
Marius Stanciu 73b2355295 - updated the POT file and the translation files for German, Spanish and French languages 2019-12-27 04:34:54 +02:00
Marius Stanciu 55549c7ba5 - cleaned the Preferences classes and added the signals and signal slots in those classes, removing them from the main app class
- each FlatCAM object found in Preferences has it's own set of controls for changing the colors
- added a set of gray icons to be used when the theme is complete dark (for now it is useful only for MacOS with dark theme because at the moment the app is not styled to dark UI except the plot area)
2019-12-27 03:05:17 +02:00
Marius Stanciu 787d85391a - in Legacy(2D) graphic engine made to work the mouse color change
- theme changing is no longer auto-reboot upon change; it require now to press a button
2019-12-26 14:38:23 +02:00
Marius Stanciu f0ed74ce5f - further modifications in Preferences -> General GUI - extended the changes 2019-12-26 06:13:42 +02:00
Marius Stanciu 1863cbcb39 - further modifications in Preferences -> General GUI 2019-12-26 05:05:01 +02:00
Marius Stanciu 217316c732 - fixed an error in the Gerber parser; it did not took into consideration the aperture size declared before the beginning of a Gerber region. Detected for Gerber files generated by KiCAD 5.x
- in Panelize Tool made sure that for Gerber objects if one of the apertures is without geometry then it is ignored
2019-12-26 03:15:17 +02:00
Marius Stanciu 0268a02f3b - changed the extension of the Tool Database file to FlatDB for easy recognition (in the future double clicking such a file might import the new tools in the FC database)
- modified the ToolDB class and changed some strings
- Preferences classes now have access to the App attributes through app.setup_obj_classes() method
- moved app.setup_obj_classes() upper in the App.__init__()
- added a new Preferences setting allowing to modify the mouse cursor color
- remade the GUI in Preferences -> General grouping the settings in a more clear way
- made available the Jump To function in Excellon Editor
- added a clean_up() method in all the Editor Tools that need it, to be run when aborting using the ESC key
2019-12-26 01:47:50 +02:00
Marius Stanciu fcc52a2682 - fixed an issue in old default file detection and in saving the factory defaults file
- in Preferences window removed the Import/Export Preferences buttons because they are redundant with the entries in the File -> Menu -> Backup. and added a button to Restore Defaults
- when in Basic mode the Tool type of the tool in the Geometry UI Tool Table after isolating a Gerber object is automatically selected as 'C1'
- let the multiprocessing Pool have as many processes as needed
- added a new Preferences setting allowing a custom mouse line width (to make it thicker or thinner)
2019-12-25 17:51:37 +02:00
Marius Stanciu 448235b84a - fixed a typo in ToolDB.on_tool_add() 2019-12-24 14:57:02 +02:00
Marius Stanciu 1c2e5d24f1 - edited some icons so they don't contain white background
- fixed an incorrect usage of object in the app.select_objects() method
2019-12-24 14:48:31 +02:00
Marius Stanciu 0e5e3a5227 - some changes related to the fact that the geometry default tool diameter value can be comma separated string of tool diameters 2019-12-24 00:54:45 +02:00
Marius Stanciu 6df765cda1 - solved issue #356 - in Tools DB can not be added more than one tool if a translation is active 2019-12-24 00:28:56 +02:00
Marius 9e8536ab9f - solved issue #355 - when the tool diameter field in the Edit → Preferences → Geometry → Geometry General → Tools → Tool dia is only one the app failed to read it 2019-12-23 23:32:32 +02:00
Marius Stanciu b1b140634b - in Tool Transform added a new feature named 'Buffer'. For Geometry and Gerber objects will create (and replace) a geometry at a distance from the original geometry and for Excellon will adjust the Tool diameters 2019-12-23 22:59:01 +02:00
Marius Stanciu 98e246a5c4 - when the selection is changed in the Project Tree the selection shape on canvas is deleted
- if an object is selected on Project Tree and it does not have the selection shape drawn, first click on canvas over it will draw the selection shape
2019-12-23 17:30:04 +02:00
Marius Stanciu cc303ce4f2 - speed up the plotting in OpenGL(3D) graphic mode
- spped up the color setting for Gerber object when using the OpenGL(3D) graphic mode
2019-12-23 15:49:16 +02:00
Marius Stanciu 98d5986190 - some fixes in the Legacy(2D) graphic mode regarding the possibility of changing the color of the Gerber objects
- added a method to darken the outline color for Gerber objects when they have the color set
- when Printing as PDF Gerber objects now the rendered color is the print color
2019-12-23 02:30:56 +02:00
Marius Stanciu 5b62b3c5f6 - fixed the above mentioned glitch in the OpenGL(3D) graphic engine when an Gerber object has been set with a color 2019-12-23 00:57:37 +02:00
Marius Stanciu 9fe3dfbfa9 - fixed Gerber object color set for Legacy(2D) graphic engine; glitch on the OpenGL(3D) graphic engine 2019-12-22 16:24:04 +02:00
Marius Stanciu 988b9d7dac - fixed issue in Gerber UI where a label was not hidden when in Basic mode
- added the color parameters of the objects to the serializable attributes
2019-12-22 07:24:51 +02:00
Marius Stanciu 612666d01a - added a new option for the Gerber objects: on the project context menu now can be chosen a color for the selected Gerber object 2019-12-22 06:52:45 +02:00
Marius Stanciu 73d41816d6 - fixed a typo in Distance Tool 2019-12-21 01:31:52 +02:00
Marius Stanciu 8afafedfff - fixed re-cut length entry not staying disabled when the re-cut cb is not checked 2019-12-20 23:59:29 +02:00
Marius Stanciu a06b576a04 - in Geometry Object UI (selected tab) when a tool type is changed from no matter what to V-shape, the cut_z value is saved and when the tool type is changed back to something different than V-shape, this saved cut-z value is restored 2019-12-20 23:28:15 +02:00
Marius Stanciu 8ab91b7f4f - added an icon in the infobar that will show more clearly the status of the grid snapping 2019-12-20 03:32:09 +02:00
Marius Stanciu 28bf1c3b5a - Print function is now printing a PDF file for a selection of objects in the colors from canvas 2019-12-20 02:41:13 +02:00
Marius Stanciu f604cd461d - fixed a rare issue in the generation of non-copper-region geometry started from the Gerber Object UI (selected tab) 2019-12-20 01:12:02 +02:00
Marius Stanciu 284d500073 - starting to work to a general Print function; for now it will generate PDF files; currently it works only for one object not for a selection
- added shortcut key CTRL+P for printing to PDF method
2019-12-19 17:15:41 +02:00
Marius Stanciu 80f1d30a28 - added Preferences values for PDF margins when saving text in Code Editor as PDF
- when clicking Cancel in Preferences now the values are reverted to what they used to be before opening Preferences tab and start changing values
2019-12-19 16:26:19 +02:00
Marius Stanciu 04d30fb1b4 - in 2-Sided Tool added a way to calculate the bounding box values for a selection of objects, and also the centroid 2019-12-19 04:12:06 +02:00
Marius Stanciu 4efc453b84 - fixed a bug in the new feature 'extra buffering'
- fixed the creation of CNCJob objects out of multigeo Geometry objects (objects with multiple tools)
- optimized the NCC Tool
2019-12-18 17:53:41 +02:00
Marius Stanciu a8d4c592c2 - improved the loading of Config File by using the advanced code editor 2019-12-18 04:26:20 +02:00
Marius Stanciu 1f33220bab - the Jump To function reference is now saving it's last used value
- added the ability to use the Jump To method in the Gerber Editor
2019-12-18 04:01:25 +02:00