Commit Graph

919 Commits

Author SHA1 Message Date
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
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 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 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 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 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 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 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 fe5c2c7836 - small change 2019-12-23 17:47:47 +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 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 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 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 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 db9b2599cb - fixed a typo in a app string 2019-12-19 02:28:09 +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
Marius Stanciu e745f3f836 - added new parameters to improve Gerber parsing
- small optimizations in the Preferences UI
2019-12-18 03:14:17 +02:00
Marius Stanciu 994fa65e96 - fixed bug saving the FlatCAM project saying the file is used by another application 2019-12-17 15:19:09 +02:00
Marius Stanciu 2565dd75f1 - added ability to save the Source File as PDF (still have to adjust the page size) 2019-12-17 03:42:24 +02:00
Marius Stanciu 6c2d628c6c - fixed the Defaults upgrade overwrting the new version number with the old one
- fixed issue with clear_polygon3() - the one who makes 'lines' and fixed the NCC Tool
2019-12-16 14:52:58 +02:00
Marius Stanciu 414b96015c - modified the Jump To method such that now allows relative jump from the current mouse location 2019-12-16 04:27:32 +02:00
Marius Stanciu 82c9377a37 - in Geometry Editor added support for Jump To function such as that it works within the Editor Tools themselves. For now it works only in absolute jumps 2019-12-16 03:16:57 +02:00
Marius Stanciu ba3a6138dc - fixed a typo
- fixed layout on first launch of the app
- RELEASE 8.99
2019-12-15 16:40:37 +02:00
Marius Stanciu 8361ee7897 - prepared the application for usage of dark icons in case of using the dark theme
- updated the languages
- RELEASE 8.99
2019-12-15 16:28:36 +02:00
Marius Stanciu ca4c7b245f - added a script to remove the bad profiles from resource pictures. From here: https://stackoverflow.com/questions/22745076/libpng-warning-iccp-known-incorrect-srgb-profile/43415650, link mentioned by @camellan (Andrey Kultyapov) 2019-12-15 14:26:41 +02:00
Marius Stanciu e397e26484 - some strings updated; update on the Romanian translate 2019-12-13 18:36:57 +02:00
Marius Stanciu f6c0741d3d - removed the .plt extension from Gcode extensions 2019-12-13 15:59:48 +02:00
Marius Stanciu 336970d7ea - HPGL2 import: added support for circles, arcs and 3-point arcs. Everything works only for absolute coordinates. 2019-12-13 15:54:26 +02:00
Marius Stanciu 02b567971d - finished a very rough and limited HPGL2 file import 2019-12-12 21:29:38 +02:00
Marius Stanciu 367c23fa29 - small fix in new script 2019-12-12 04:31:47 +02:00
Marius Stanciu 6d826fa143 - added option to save objects as PDF files in File -> Save menu 2019-12-12 03:18:52 +02:00
Marius Stanciu f88db33ada - changed the estimated release date 2019-12-12 01:56:38 +02:00
Marius Stanciu 1cb66f3faf - finished the Calibration Tool
- changed the Scale Entry in Object UI to FCEntry() GUI element in order to allow expressions to be entered. E.g: 1/25.4
2019-12-12 01:55:04 +02:00
Marius Stanciu cd4d0cefb8 - some more work in Calibration Tool 2019-12-11 17:54:33 +02:00
Marius Stanciu 5f739d1baf - if extracut_length is zero then the extracut will cut up until the first point in path no matter what the distance is 2019-12-10 23:57:00 +02:00
Marius Stanciu 6d43c6c4fd - in Gerber isolation when selection mode is checked now area selection works too 2019-12-10 13:38:29 +02:00
Marius Stanciu 511ebc274f - now extracut option in the Geometry Object will recut as many points as many they are within the specified re-cut length 2019-12-10 05:28:02 +02:00
Marius Stanciu cee8c223a8 - small changes in the Geometry UI 2019-12-10 04:14:58 +02:00
Marius Stanciu b771cbd110 - some fixes on the app.jump_to() method for the Legacy(2D) graphic mode 2019-12-09 22:25:05 +02:00
Marius Stanciu face1d0f64 - some fixes on the app.jump_to() method
- made sure that the ToolFilm will not start saving a file if there are no objects loaded
2019-12-09 21:53:57 +02:00
Marius Stanciu e5987f66cb - reverted this change: "selected object in Project used to ask twice for UI build" because it will not build the UI when a tab is closed for Document object and the object is selected 2019-12-09 03:12:50 +02:00
Marius Stanciu 8969c03021 - updated the border for fit view on OpenGL graphic mode
- Calibration Tool - added preferences values
- Calibration Tool - more work on it
2019-12-09 01:56:45 +02:00
Marius Stanciu 2baae550b5 - small fixes: selected object in Project used to ask twice for UI build; if scale factor in Object UI is 1 do nothing as there is no point in scaling with a factor of 1 2019-12-08 16:16:02 +02:00
Marius Stanciu b1d249cff8 - renamed Calibrate Excellon Tool to a simpler Calibrate Tool
- Calibrate Tool - when generating verification GCode it will always load into an Editor from which it can be edited and/or saved. On save the editor will close.
2019-12-07 01:07:52 +02:00
Marius Stanciu 2ca509ca04 - few bugs solved regarding the newly created empty objects 2019-12-06 23:00:43 +02:00
Marius Stanciu 770986c27e - fixed the toggle_units() method so now the grid values are accurate to the decimal 2019-12-06 14:02:15 +02:00
Marius Stanciu bb192eb679 - in Properties Tool added more information's regarding the Excellon tools, about travelled distance and job time; fixed issues when doing Properties on the CNCjob objects
- TODO: I need to solve the mess in units conversion: it's too convoluted
2019-12-06 01:20:33 +02:00
Marius Stanciu 0d0f872244 - application wide change: introduced the precision parameters in Edit -> Preferences who will control how many decimals to use in the app parameters 2019-12-05 15:18:54 +02:00
Marius Stanciu fa99f97586 - Copper Thieving Tool - added a default value for the mask clearance when generating pattern plating mask 2019-12-05 03:14:07 +02:00
Marius Stanciu 2fc13c0719 - modified the GUI in all tools making the text of the buttons bold and adding a new button named Reset Tool which have to reset the tool GUI and variables (need to check all tools to see if happen)
- when the Tool tab is in focus, clicking on canvas will no longer change the focus to Project tab
- Copper Thieving Tool - when creating the pattern platting mask will make a new Gerber object with it
2019-12-05 00:06:25 +02:00
Marius Stanciu 951562fbae - fixed the Copy Object function to copy also the source_file content
- Copper Thieving Tool - when the clearance value for the pattern plating mask is negative it will be applied to the origin soldermask too
2019-12-04 20:00:05 +02:00
Marius Stanciu f9c83a5e60 - fixed the overlap parameter all over the app to reflect the change to percentage 2019-12-04 17:00:36 +02:00
Marius Stanciu 0de96a377e - fixed bug in FCSpinner and FCDoubleSpinner GUI elements, that are now the main GUI element in FlatCAM, that made partial selection difficult
- updated the Paint Tool in Geometry Editor to use the FCDoublepinbox
- added the possibility for suffix presence on the FCSpinner and FCDoubleSpinner GUI Elements
- added the '%' symbol for overlap fields; I still need to divide the conntet by 100 to get the original decimal
2019-12-04 14:55:01 +02:00
Marius Stanciu 65f00ccad7 - in Preferences added a new button: 'Close' to close the Preferences window without saving 2019-12-04 03:24:05 +02:00
Marius Stanciu 2757b018b6 - made sure that if an older preferences file is detected then there are no errors and only the parameters that are currently active are loaded; the factory defaults file is deleted and recreated in the new format 2019-12-04 00:50:50 +02:00
Marius Stanciu b1547bf6b9 - added some geometry parameters in Cutout Tool as a convenience, to be passed to the generated Geometry objects 2019-12-03 23:44:53 +02:00
Marius S 6d24a054b5 - fix for toggle grid lines updating canvas only after moving the mouse (hack, actually) 2019-12-03 16:32:01 +02:00
Marius e971dc17ba - various small fixes 2019-12-03 16:26:53 +02:00
Marius 4a2f06ae3e - updated some of the default values to metric, values that were missed previously 2019-12-03 14:08:24 +02:00
Marius Stanciu 6d9d29a689 - in Preferences added an Apply button which apply the modified preferences but does not save to a file, minimizing the file IO operations; CTRL+S key combo does the Apply now. 2019-12-03 05:31:33 +02:00
Marius Stanciu 3812de6439 - small changes 2019-12-03 00:17:53 +02:00
Marius Stanciu 3bbe2843ef - small changes, updated the estimated release date 2019-12-02 23:33:46 +02:00
Marius Stanciu e9470df4c5 - modified the default values for the METRIC system; the app now starts in the METRIC units since the majority of the world use the METRIC units system 2019-12-02 23:28:27 +02:00
Marius Stanciu c439009251 - added 3 new tcl commands: export dxf, export excellon and export gerber 2019-12-02 20:54:18 +02:00
Marius Stanciu 80dcd3805a - improvements in Importing SVG as Gerber - added an automatic source generation (it is not infallible)
- a hack to import correctly the QRCode exported as SVG from FlatCAM
2019-12-02 20:03:27 +02:00
Marius Stanciu 462e9b4bd8 - fixed issue #343; updated the Image Tool 2019-12-02 16:40:59 +02:00
Marius Stanciu 14efe0fc34 - adjusted the selection color transparency for the Legacy(2D) graphic mode because it was too transparent for the fill 2019-11-28 00:18:10 +02:00
Marius Stanciu 599cfb8d51 - updated the workspace functions to work in Legacy(@D) graphic mode 2019-11-27 21:40:39 +02:00
Marius Stanciu 1f63a16a24 - updated the drawing of the workspace such that the application overall start time is improved and after first turn on of the workspace, toggling it will have no performance penalty 2019-11-27 15:55:31 +02:00
Marius Stanciu 58f24cbb37 - in Tool Film added the page size and page orientation in case of saving the film as PDF file
- the application workspace has now a lot more options selectable in the Edit -> Preferences -> General -> GUI Preferences
2019-11-27 03:44:28 +02:00
Marius Stanciu f1af9d7999 - updated the Film Tool to allow exporting PDF and PNG file (besides the SVG file) 2019-11-26 16:37:21 +02:00
Marius Stanciu 07fb663e7b - in Gerber isolation added the option to selectively isolate only certain polygons - made it to work for Legacy(2D) graphic mode 2019-11-25 21:03:12 +02:00
Marius Stanciu d5a9e0bb5a - In Gerber isolation changed the UI
- in Gerber isolation added the option to selectively isolate only certain polygons
2019-11-25 16:52:37 +02:00
Marius Stanciu d03428f860 - made sure that the units are read from the self.defaults and not from the GUI
- added Robber Bar option to Copper Thieving Tool
2019-11-24 00:31:41 +02:00
Marius Stanciu 9fd98b4573 - GCode view now has line numbers
- solved a bug that made selection of objects on canvas impossible if there is an object of type FlatCAMScript or FlatCAMDocument opened
2019-11-22 16:31:40 +02:00
Marius Stanciu 67d31982ef - Tool Fiducials - added GUI in Preferences and entries in self.defaults dict
- Tool Fiducials - updated the source_file object for the modified Gerber files
2019-11-22 04:18:48 +02:00
Marius Stanciu 13d724bdcf - Tool Fiducials - updated the icon 2019-11-21 01:49:29 +02:00
Marius Stanciu 70f6469ea8 - Tool Fiducials - added the GUI and the shortcut key 2019-11-21 01:44:55 +02:00
Marius Stanciu a4f5ed0b74 - removed the f-strings replacing them with the traditional string formatting due of not being supported by older versions of Python 3 2019-11-19 13:38:32 +02:00
Marius Stanciu 6c594d048e - added all the recognized extensions to the save dialog filters; latest extension used will be preselected next time a save operation occur 2019-11-15 17:12:39 +02:00
Marius Stanciu 175e2f7af2 - made sure that the 'default' postprocessor file is always loaded first such that this name is always first in the GUI comboboxes
- added a class in GUIElements for a TextEdit box with line numbers and highlight
2019-11-14 12:24:49 +02:00
Marius Stanciu eafa6350b7 - finished improving the show of text files in FlatCAM (CNC Code, Source files) 2019-11-13 02:26:03 +02:00