Commit Graph

157 Commits

Author SHA1 Message Date
Marius Stanciu 3905e11171 - started to work in adding slots and slots array in Excellon Editor 2019-08-13 16:39:21 +03:00
Marius Stanciu 13a29a229d - added all the tools from Gerber Editor to the the contextual menu
- added the menu entry "Edit" in the Project contextual menu for Gerber objects
2019-08-13 16:15:01 +03:00
Marius Stanciu 3e339630e6 - fixed bugs in Geometry Editor
- added protection's against the 'bowtie' geometries for Subtract Tool in Geometry Editor
- added all the tool from Geometry Editor to the the contextual menu
- fixed bug in Add Text Tool in Geometry Editor that gave error when clicking to place text without having text in the box
2019-08-13 13:59:23 +03:00
Marius Stanciu eb4f504911 - fixed a bug in FCDoubleSpinner GUI element
- added a new parameter in NCC tool named offset. If the offset is used then the copper clearing will finish to a set distance of the copper features
2019-08-13 11:32:58 +03:00
Marius Stanciu 0686e77f99 - added new settings in Edit -> Preferences -> General for Notebook Font size (set font size for the items in Project Tree and for text in Selected Tab) and for canvas Axis font size. The values are stored in QSettings.
- updated translations
2019-08-13 04:23:32 +03:00
Marius Stanciu ee3b38327e - added new option in ToolSub: the ability to close (or not) the resulting paths when using tool on Geometry objects. Added also a new category in the Edit -> Preferences -> Tools, the Substractor Tool Options 2019-08-13 00:42:58 +03:00
Marius Stanciu fd104eee55 - done regression to solve the bug with multiple passes cutting from the copper features (I should remember not to make mods here)
- if 'combine' is checked in Gerber isolation but there is only one pass, the resulting geometry will still be single geo
- the 'passes' entry was changed to a IntSpinner so it will allow passes to be entered only in range (1, 999) - it will not allow entry of 0 which may create some issues
2019-08-12 00:28:46 +03:00
Marius Stanciu eea66c0311 - added new feature in NCC Tool: now another object can be used as reference for the area extent to be cleared of copper 2019-08-10 14:59:29 +03:00
Marius Stanciu 7a6c0541be - started to work on Paint Area in Paint Tool 2019-08-07 17:10:48 +03:00
Marius Stanciu 258d3463e7 - replaced setFixedWidth calls with setMinimumWidth 2019-08-07 14:29:59 +03:00
Marius Stanciu 74460f9dcd - some minor UI changes 2019-08-06 04:25:56 +03:00
Marius Stanciu 59b4defa0b - fixed bug that crashed the app after creating a new geometry, if a new object is loaded and the new geometry is deleted and then trying to select the just loaded new object
- made some GUI elements in Edit -> Preferences to have a minimum width as opposed to the previous fixed one
2019-08-06 02:31:09 +03:00
Marius Stanciu c6d917dec4 - added project name to the window title 2019-08-03 03:35:21 +03:00
Marius Stanciu 33344b6626 - added a detection if any values are changed in the Edit -> Preferences window and on close it will ask the user if he wants to save the changes or not
- created a new menu entry in the File menu named Recent projects that will hold the recent projects and the previous "Recent files" will hold only the previous loaded files
2019-07-31 22:45:03 +03:00
Marius Stanciu 93b2907ba7 - work on identification of changes in Preferences tab 2019-07-31 17:48:18 +03:00
Marius Stanciu 6242d1809b - changed the order of the menu entries in the FIle -> Open ...
- organized the list of recent files so the Project entries are to the top and separated from the other types of file
2019-07-31 17:17:08 +03:00
Marius Stanciu f282a761b4 - added two more strings to translation strings (due of German language)
- completed the Russian translation using the Google and Yandex translation engines
2019-07-30 22:33:18 +03:00
Marius Stanciu 1e7421ebe9 - changed the Disable plots menu entry in the context menu, into a Toggle Visibility menu entry
- Spanish Google translation 100% but two strings (big ones)
2019-07-30 20:05:16 +03:00
Marius Stanciu c6e3176ac3 - in Basic mode, the tool type column is no longer hidden as it may create issues when using an painted geometry
- some PEP8 clean-up in FlatCAMGui.py
2019-07-29 00:35:59 +03:00
Marius Stanciu dce0d971cd - updated the CutOut tool so it will work on single PCB Gerbers or on PCB panel Gerbers 2019-07-20 19:36:37 +03:00
Marius Stanciu e691c26b01 - fixed bug in FlatCAMObj.FlatCAMGeometry.ui_disconnect(); the widgets signals were not disconnected from handlers when required therefore the signals were connected in an exponential way
- some changes in the widgets used in the Selected tab for Geometry object
- some PEP8 cleanup in FlatCAMObj.py
- updated languages
- 60% progress in Spanish Google translation
2019-07-20 01:17:33 +03:00
Marius Stanciu 2797a58165 - fixed bug in FlatCAMObj.FlatCAMGeometry.ui_disconnect(); the widgets signals were not disconnected from handlers when required therefore the signals were connected in an exponential way
- some changes in the widgets used in the Selected tab for Geometry object
- some PEP8 cleanup in FlatCAMObj.py
2019-07-19 21:46:11 +03:00
Marius Stanciu ac2bf56e14 - added some more strings to the translateable ones, especially the radio button labels
- updated the .POT file and the available translations
- 51% progress in Spanish Google translation
2019-07-17 14:11:10 +03:00
Marius Stanciu 43cb92e1d8 - fixed a possible issue in Gerber Object class
- added a new tool in Gerber Editor: Mark Area Tool. It will mark the polygons in a edited Gerber object with areas within a defined range, allowing to delete some of the not necessary  copper features
- added new menu links in the Gerber Editor menu for Eraser Tool and Mark Area Tool
- added key shortcuts for Eraser Tool (CTRL+E) and Mark Area Tool (ALT+A) and updated the shortcuts list
2019-07-13 21:40:33 +03:00
Marius Stanciu 429753d211 - fixes issues with units conversion when the tool diameters are a list of comma separated values (NCC Tool, SolderPaste Tool and Geometry Object)
- fixed a "typo" kind of bug in SolderPaste Tool
- RELEASE 8.919
2019-06-23 00:04:49 +03:00
Marius Stanciu 68bdfaf062 - some GUI layout optimizations in Edit -> Preferences
- added the possibility for multiple tool diameters in the Edit -> Preferences -> Geometry -> Geometry General -> Tool dia separated by comma
- fixed scaling for the multiple tool diameters in Edit -> Preferences -> Geometry -> Geometry General -> Tool dia, for NCC tools more than 2 and for Solderpaste nozzles more than 2
- fixed bug in CNCJob where the CNC Tools table will show always only 2 decimals for Tool diameters regardless of the current measuring units
- made the tools diameters decimals in case of INCH FlatCAM units to be 4 instead of 3
- fixed bug in updating Grid values whenever toggling the FlatCAM units and the X, Y Grid values are linked, bugs which caused the Y value to be scaled incorrectly
- set the decimals for Grid values to be set to 6 if the units of FlatCAM is INCH and to set to 4 if FlatCAM units are METRIC
- updated translations
- updated the Russian translate from 51% complete to 69% complete using the Yandex translation engine
2019-06-22 17:58:31 +03:00
camellan bfab836a1b Update zoom in and zoom out function. 2019-06-09 19:24:01 +04:00
camellan 4587946b48 Merge remote-tracking branch 'remotes/jpcgt/flatcam/Beta' into Beta 2019-06-09 19:10:56 +04:00
Marius Stanciu 3bd2957739 - updated translations
- fixed the the labels for shortcut keys for zoom in and zoom out both in the Menu links and in the Shortcut list
- made sure the zoom functions use the global_zoom_ratio parameter from App.self.defaults dictionary.
2019-06-09 17:27:11 +03:00
camellan f5ca2fc62a Update translation 2019-06-09 03:34:09 +04:00
camellan c8ba7bd150 Fix Zoom function. Update translate. 2019-06-09 02:33:12 +04:00
camellan facd8301ed solve the conflicts 2019-06-08 23:30:57 +04:00
camellan 70e939ca36 Merge remote-tracking branch 'remotes/jpcgt/flatcam/Beta' into Beta 2019-06-08 23:16:41 +04:00
Marius Stanciu 0ee5114012 - some layout changes in Edit -> Preferences such that the German translation (longer words than English) to fit correctly 2019-06-05 13:22:12 +03:00
Marius Stanciu 9f17cc9747 - small changes 2019-06-05 00:25:45 +03:00
camellan 9e88950e65 Add translation strings. Update Russian translation. 2019-06-04 23:39:36 +04:00
Marius Stanciu 150bb9e999 - PEP8 cleanup in FlatCAMGui
- finished adding the Excellon Editor parameters into the app logic and added a selection limit within Excellon Editor just like in the other editors
2019-06-04 22:19:45 +03:00
Marius Stanciu dc51f6d833 - PEP8 updates in FlatCAMExcEditor.py
- added the Excellon Editor parameters to the Edit -> Preferences -> Excellon
- fixed a small bug in Excellon Editor
2019-06-04 14:58:33 +03:00
Marius Stanciu f06fec12ea - added a new parameter in Edit -> Preferences -> CNCJob named Annotation Color; it controls the color of the font used for annotations
- added a new parameter in Edit -> Preferences -> CNCJob named Annotation Size; it controls the size of the font used for annotations
- made visibility change threaded in FlatCAMObj()
2019-06-03 22:59:45 +03:00
Marius Stanciu 9abb9c5df2 - added the possibility to display text annotation for the CNC travel lines. The setting is both in Preferences and in the CNC object properties 2019-05-31 12:43:30 +03:00
Marius Stanciu 8ee516ec14 - editing a multi geometry will no longer pop-up a Tcl window
- solved issue #292 where a new geometry renamed with many underscores failed to store the name in a saved project
- the name for the saved projects are updated to the current time and not to the time of the app startup
- some PEP8 changes related to comments starting with only one '#' symbol
2019-05-30 21:05:12 +03:00
Marius Stanciu ad7222a768 - added a toggle left panel button to the canvas context menu 2019-05-24 19:50:59 +03:00
Marius Stanciu bc3da37e81 - added a toggle Grid button to the canvas context menu in the Grids submenu 2019-05-24 18:53:33 +03:00
Marius Stanciu cffcbb2410 - Geo Editor - added a new editor tool, Eraser 2019-05-22 15:03:45 +03:00
Marius Stanciu 511df19793 - Gerber Editor - started to work on a new editor tool: Eraser 2019-05-20 17:15:33 +03:00
Marius Stanciu e04db8ca12 - set the buttons in the lower part of the Preferences Window to have a preferred minimum width instead of fixed width
- updated the translation files
2019-05-20 02:29:08 +03:00
Marius Stanciu 94e7820dde - PEP8 corrections in FlatCAMGrbEditor.py
- added a selection limit parameter for Geometry Editor
- added entries in Edit -> Preferences for the new parameter Selection limit for both the Gerber and Geometry Editors.
2019-05-20 01:18:08 +03:00
Marius Stanciu 8ccd73b919 - added a new toggle option in Edit -> Preferences -> General Tab -> App Preferences -> "Open" Behavior. It controls which path is used when opening a new file. If checked the last saved path is used when saving files and the last opened path is used when opening files. If unchecked then the path for the last action (either open or save) is used. 2019-05-18 17:17:37 +03:00
Marius Stanciu d172a3ca49 - Gerber Export: made sure that if some of the coordinates in a Gerber object geometry are repeating then the resulting Gerber code include only one copy
- added a new parameter/feature: now the spindle can work in clockwise mode (CW) or counter clockwise mode (CCW)
2019-05-16 03:13:22 +03:00
Marius Stanciu 883cf3372a - fixed issue in camlib.CNCjob.generate_from_excellon_by_tool() in the drill path optimization algorithm selection when selecting the MH algorithm. The new API's for Google OR-tools required some changes and also the time parameter can be now just an integer therefore I modified the GUI 2019-05-11 04:41:18 +03:00
Marius Stanciu cb355d6070 - work in Gerber Export: finished the header export 2019-05-07 15:14:32 +03:00
Marius Stanciu 0106d95e84 - added a new parameter in the Edit -> Preferences -> App Preferences named Geo Tolerance. This parameter control the level of geometric detail throughout FlatCAM. It directly influence the effect of Circle Steps parameter. 2019-05-06 22:33:45 +03:00
Marius Stanciu 7c334d7606 - made units change from shortcut key 'Q' not to affect the preferences 2019-05-06 03:58:11 +03:00
Marius Stanciu 4c00f567a4 - renamed the menu entry Edit -> Copy as Geo to Convert Any to Geo and moved it in the Edit -> Conversion
- created a new function named Convert Any to Gerber and installed it in Edit -> Conversion. It's doing what the name say: it will convert an Geometry or Excellon FlatCAM object to a Gerber object.
2019-05-05 00:56:04 +03:00
Marius Stanciu 52ab274b1c - fixed bugs in Excellon Editor
- Excellon Editor:  made Add Pad tool to work until right click
2019-05-01 17:26:38 +03:00
Marius Stanciu 747a0817f3 - made some mods to what can be translated as some of the translations interfered with the correct functioning of FlatCAM
- updated the translations
2019-05-01 16:04:40 +03:00
Marius Stanciu f172d5b765 - Enable/Disable Object toggle key ("Space" key) will trigger also the datChanged signal for the Project MVC
- added a new setting for the color of the Porject items, the color when they are disabled.
2019-05-01 12:29:47 +03:00
Marius Stanciu eda4202952 - added new setting for the color of the Project Tree items; it helps in providing contrast when using dark theme like the one in MacOS 2019-04-30 23:34:35 +03:00
Marius Stanciu bc981ab92c - started to modify the Substract Tool to work on Geometry objects too 2019-04-30 15:52:12 +03:00
Marius Stanciu eb00176519 - renamed SilkScreen Tool to Substract Tool and move it's menu location in Edit -> Conversion 2019-04-30 13:16:32 +03:00
Marius Stanciu faf92ff3d9 - fixed some bugs recently introduced in Editors due of the changes done to the way mouse panning is detected
- cleaned up the context menu's when in Editors; made some structural changes
2019-04-26 23:16:52 +03:00
Marius Stanciu 8fcd75a8e4 - commented the camlib.alpha_shape() as it is not needed but require a huge package (scipy) 2019-04-26 18:02:07 +03:00
Marius Stanciu 8eb390e706 - small changes in GUI 2019-04-26 02:31:21 +03:00
Marius Stanciu ac3833f746 - added a toggle button in Preferences to toggle on/off the display of the selection box on canvas when the user is clicking an object or selecting it by mouse dragging. 2019-04-25 20:59:45 +03:00
Marius Stanciu 386e811c65 - New tool: Silkscreen Tool: I am trying to remove the overlapped geo with the soldermask layer from overlay layer; layed out the class and functions - not working yet 2019-04-25 01:13:37 +03:00
Marius Stanciu c0716f22e5 - wip for multithreading in PDF Tool 2019-04-24 16:37:16 +03:00
Marius Stanciu e8f6b1a9ae - minor UI changes/ bug fixes 2019-04-24 14:52:12 +03:00
Marius Stanciu 54d6a32b6c - updated the translation files 2019-04-23 17:51:09 +03:00
Marius Stanciu 929d70542c - Gerber Editor: added two new tools: Add Disc and Add SemiDisc (porting of Circle and Arc from Geometry Editor) 2019-04-23 04:24:10 +03:00
Marius Stanciu 8f1a0c1fdc - added PDF file as type in the Recent File list and capability to load it from there
- PDF's can be drag & dropped on the GUI to be loaded
2019-04-22 19:18:23 +03:00
Marius Stanciu 53444fc685 - fixed the PDF import tool to work with files generated by the Microsoft PDF printer (chained subpaths)
- in PDF import tool added support for paths filled and at the same time stroked ('B' and 'B*'commands)
- added a shortcut key for PDF Import Tool (ALT+Q) and updated the Shortcut list (also with the 'T' and 'R' keys for Gerber Editor where they control the bend in Track and Region tool and the 'M' and 'D' keys for Add Arc tool in Geometry Editor)
2019-04-22 03:28:05 +03:00
Marius Stanciu 2ba0b494ff - Gerber Editor: finished a new tool: Poligonize Tool (ALT+N in Editor). It will fuse a selection of tracks into a polygon. It will fill a selection of polygons if they are apart and it will make a single polygon if the selection is overlapped. All the newly created filled polygons will be stored in aperture '0' (if it does not exist it will be automatically created)
- fixed a bug in Move command in context menu who crashed the app when triggered
- Gerber Editor: when adding a new aperture it will be store as the last selected and it will be used for any tools that are triggered until a new aperture is selected.
2019-04-15 22:48:22 +03:00
Marius Stanciu fc1dfb8550 - cleaned up Measuring Tool 2019-04-14 16:59:20 +03:00
Marius Stanciu 1332601624 - moved the key handler out of the Measurement tool to flatcamGUI.FlatCAMGui.keyPressEvent()
- Gerber Editor: started to add new function of poligonize which should make a filled polygon out of a shape
2019-04-14 15:16:37 +03:00
Marius Stanciu 081231aca4 - Editors: activated an old function that was no longer active: each tool can have it's own set of shortcut keys, the Editor general shortcut keys that are letters are overridden
- Gerber and Geometry editors, when using the Backspace keys for certain tools, they will backtrack one point but now the utility geometry is immediately updated
2019-04-14 02:10:31 +03:00
Marius Stanciu 2dc98fb6d6 - Gerber Editor: added ability to change on the fly the aperture after one of the tools: Add Pad or Add Pad Array is activated
- Gerber Editor: if a tool is cancelled via key shortcut ESCAPE, the selection is now deleted and any other action require a new selection
2019-04-13 13:28:47 +03:00
Marius Stanciu a1f7c86996 - made optional the saving of an edited object. Now the user can cancel the changes to the object.
- replaced the standard buttons in the QMessageBox's used in the app with custom ones that can have text translated
- updated the POT translation file and the MO/PO files for English and Romanian language
2019-04-12 22:55:20 +03:00
Marius Stanciu 8b46d0d6cf - updated the translation template POT file and the EN PO/MO files
- Gerber Editor: added toggle effect to the Transform Tool
- Gerber Editor: added shortcut for Transform Tool and also toggle effect here, too
- updated the shortcut list with the Gerber Editor shortcut keys
- Gerber Editor: fixed error when adding an aperture with code value lower than the ones that already exists
2019-04-12 16:46:43 +03:00
Marius Stanciu f1b034e50c - fixed a bug in editing a blank Gerber object
- added handlers for the Gerber Editor context menu
2019-04-12 12:58:10 +03:00
Marius Stanciu cc6ff98529 - Gerber Editor: added Add Pad Array tool
- Gerber Editor: in Add Pad Array tool, if the pad is not circular type, for circular array the pad will be rotated to match the array angle
2019-04-11 23:08:30 +03:00
Marius Stanciu b3aeb497ec - changed the color of the marked apertures to the global_selection_color
- Gerber Editor: added Transformation Tool and Rotation key shortcut
2019-04-11 16:59:21 +03:00
Marius Stanciu 950bcc3767 - Gerber Editor: added Add Pad (circular or rectangular type only) 2019-04-10 22:52:23 +03:00
Marius Stanciu 7c0cfac8de - created menu links and shortcut keys for adding a new empty Gerber objects; on update of the edited Gerber, if the source object was an empty one (new blank one) this source obj will be deleted
- removed the old apertures editing from Gerber Obj selected tab
2019-04-10 20:31:37 +03:00
Marius Stanciu 28dac56051 - Gerber Editor: added Add Track and Add Region functions
- Gerber Editor: fixed key shortcuts
- fixed setting the Layout combobox in Preferences according to the current layout
2019-04-10 17:12:21 +03:00
Marius Stanciu 942d9e2b01 - Gerber Editor: finished the selection on canvas; should be used as an template for the other Editors
- Gerber Editor: finished the Copy, Aperture Add, Buffer, Scale, Move including the Utility geometry
- Trying to fix bug in Measurement Tool: the mouse events don't disconnect
2019-04-10 03:56:56 +03:00
Marius Stanciu 68a6f64fcd - Gerber Editor: added buffer and scale tools 2019-04-09 17:30:01 +03:00
Marius Stanciu 57176b7e28 - default values for Jump To function is jumping to origin (0, 0) 2019-04-07 03:43:58 +03:00
Marius Stanciu e8a0fcaef1 - fixed bug in saving the maximized state
- fixed bug in applying default language on first start
- on activating 'V' key shortcut (zoom fit) the mouse cursor is now jumping to origin (0, 0)
- fixed bug in saving toolbars state; the file was saved before setting the self.defaults['global_toolbar_view]
2019-04-06 00:10:38 +03:00
Marius Stanciu b7fce74ca3 - increased the number of workers in FlatCAM and made the number of workers customizable from Preferences 2019-04-05 16:27:55 +03:00
Marius Stanciu c623b8d63c - added support for Gerber format specification D (no zero suppression) - PCBWizard Gerber files support 2019-04-04 16:21:26 +03:00
Marius Stanciu 8fc916b746 - working on Gerber Editor - added the key shortcuts: wip
- made saving of the project file non-blocking and also while saving the project file, if the user tries again to close the app while project file is being saved, the app will close only after saving is complete (the project file size is non zero)
2019-04-04 00:47:08 +03:00
Victor Benso 1f67158e35 Issue #284 - Sanitize the entered Overlap value for the Copper Clear Tool as well.
Change the "Overlap:" label occurrences to "Overlap Rate:" for clarity.
2019-04-03 12:41:25 -04:00
Marius Stanciu 0a9148f30a - fixed plotting in Gerber Editor
- working on GUI in Gerber Editor
2019-04-03 16:00:44 +03:00
Marius Stanciu b202de338f - fixed errors when the File -> New Project is initiated while an Editor is still active.
- the File->Exit action handler is now self.final_save()
2019-04-01 02:47:20 +03:00
Marius Stanciu ecd6472220 - fixed issue #281 by making generation of a convex shape for the freeform cutout in Tool Cutout a choice rather than the default
- fixed bug in Tool Cutout, now in manual cutout mode the gap size reflect the value set
2019-03-31 21:52:27 +03:00
Marius Stanciu 1c1d8bd637 - fix error in plotting Excellon when toggling units
- FlatCAM editors now are separated each in it's own file
- fixed TextTool in Geometry Editor so it will open the notebook on activation and close it after finishing text adding
- started to work on a Gerber Editor
2019-03-29 23:45:50 +02:00
Marius Stanciu ecc2c90f2a - changed all the info messages that are of type warning, error or success so they have a space added after the keyword
- changed the Romanian translation by adding more diacritics
2019-03-29 00:26:00 +02:00
Marius Stanciu 99c2ceaaed - ESC key will trigger normal view if in full screen and the ESC key is pressed 2019-03-21 01:49:49 +02:00
Marius Stanciu e57b913b7f - in Code Editor added shortcut combo key CTRL+SHIFT+V to function as a Special Paste that will replace the '\' char with '/' so the Windows paths will be pasted correctly for TCL Shell. Also doing SHIFT + LMB on the Paste in contextual menu is doing the same. 2019-03-19 02:44:06 +02:00
Marius Stanciu 74d1765a95 - added ability to create new scripts and open scripts in FlatCAM Script Editor 2019-03-18 22:59:13 +02:00