Commit Graph

186 Commits

Author SHA1 Message Date
Marius Stanciu ca8a12610e - fixed the GUI for Slot Arrays in Excellon Editor
- finished the Slot Array tool in Excellon Editor
- added the key shortcut handlers for Add Slot and Add Slot Array tools in Excellon Editor
- started to work on the Resize tool for the case of Excellon slots in Excellon Editor
2019-08-15 17:55:32 +03:00
Marius Stanciu b9123e5a72 - working on the Slots Array in Excellon Editor - building the GUI 2019-08-15 04:41:50 +03:00
Marius Stanciu ab12853393 - added Edit -> Preferences GUI and storage for the Excellon Editor Add Slots
- added a confirmation message for objects delete and a setting to activate it in Edit -> Preferences -> Global
2019-08-15 00:59:15 +03:00
Marius Stanciu 0e03252af7 - in Excellon Editor fixed the selection issue which in a certain step created a failure in the Copy and Move tools.
- in Excellon Editor fixed the selection with key modifier pressed
- edited the mouse cursors and saved them without included thumbnail in a bid to remove some CRC warnings made by libpng
2019-08-14 23:35:29 +03:00
Marius Stanciu f3fc175197 - changes in the way the edited Excellon with added slots is saved
- added more icons and cursor in Excellon Editor for Slots related functions
2019-08-14 16:05:24 +03:00
Marius Stanciu c0cd61df3f - fixed the loading of Excellon with slots and the saving of edited Excellon object in regard of slots, in Excellon Editor
- fixed the Delete tool, Select tool in Excellon Editor to work for Slots too
2019-08-14 02:36:45 +03:00
Marius Stanciu 4b8c999a66 - in FCSlot finished the utility geometry and the GUI for it 2019-08-13 21:13:57 +03:00
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 3bf5992023 - improved Mark Area Tool in Gerber Editor such that at each launch the previous markings are deleted 2019-08-12 23:34:56 +03:00
Marius Stanciu 0e52ef6356 - optimizations in GeoEditor
- updated translations
2019-08-11 21:22:47 +03:00
Marius Stanciu cf8a277825 - trying to fix reported bugs 2019-08-11 02:18:32 +03:00
Marius Stanciu 258d3463e7 - replaced setFixedWidth calls with setMinimumWidth 2019-08-07 14:29:59 +03:00
Marius Stanciu 8cadcb3837 - fixed another bug that when selecting an Excellon object after disabling it it crashed the app
- RELEASE 8.92
2019-08-01 00:37:11 +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 21a15e73bd - fixed bug in Gerber isolation (Geometry expects now a value in string format and not float)
- fixed bug in Paint tool: now it is possible to paint geometry generated by External Isolation (or Internal isolation)
- fixed bug in editing a multigeo Geometry object if previously a tool was deleted
2019-06-22 20:17:45 +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
Marius Stanciu 32f1c4f8fe - fixed Editor Transform Tool in Gerber Editor
- added a message in the status bar when copying coordinates to clipboard with SHIFT + LMB click combo
- languages update
2019-06-20 19:40:06 +03:00
Marius Stanciu 8091355915 - working in fixing a bug in FlatCAMGrbEditor() 2019-06-20 16:51:18 +03:00
Marius Stanciu f5cc8d773f - fixed bug in Gerber editor - on multiple edits on the same object, the aperture size and dims were continuously multiplied due of the file units not being updated 2019-06-15 20:22:17 +03: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 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 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 8a273b3a6f - fixed bug in Gerber editor FCDisk and FCSemiDisc that the resulting geometry was not stored into the '0' aperture where all the solids are stored
- fixed minor issue in Gerber Editor where apertures were included in the saved object even if there was no geometric data for that aperture
2019-05-22 23:02:23 +03:00
Marius Stanciu 17a93b8c7d - fixed some selection issues in the new tool Eraser in Geometry Editor
- updated the translation files
2019-05-22 18:37:33 +03:00
Marius Stanciu f400294027 - PEP8 cleanup of the Geo Editor 2019-05-22 15:37:07 +03:00
Marius Stanciu cffcbb2410 - Geo Editor - added a new editor tool, Eraser 2019-05-22 15:03:45 +03:00
Marius Stanciu b273bdc3df - Gerber Editor: finished a new tool: Eraser. It will erase certain parts of Gerber geometries having the shape of a selected shape. 2019-05-22 01:04:10 +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 008afb3ca8 - more PEP8 changes in Gerber editor 2019-05-20 16:36:13 +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 17e1f87a1c - made wider the '#' column for Apertures Table for Gerber Object and for Gerber Editor; in this way numbers with 3 digits can be seen 2019-05-19 23:03:08 +03:00
Marius Stanciu 630d9c733d - remade the Properties Tool such that it works with the new Gerber data structure in the obj.apertures. Also changed the view for the Gerber object in Properties
- fixed issue with false warning that the Gerber object has no geometry after an empty Gerber was edited and added geometry elements
2019-05-18 00:17:37 +03:00
Marius Stanciu e6a0997fd6 - camlib Gerber parser - made sure that we don't loose goemetry in regions
- Gerber Editor - made sure that for some tools the added geometry is clean (the coordinates are non repeating)
- covered some possible issues in Gerber Export
2019-05-15 14:02:24 +03:00
Marius Stanciu 78939fdc84 - Gerber Editor: fixed units conversion for obj.apertures keys that require it 2019-05-15 03:56:31 +03:00
Marius Stanciu c70309e802 - Gerber Export is fixed to work with the new Gerber object data structure and it now works also for Gerber objects edited in Gerber Editor 2019-05-15 02:29:33 +03:00
Marius Stanciu 8679cbbcda - Gerber Editor: fixed the Poligonize Tool to work with new geometric structure and took care of a special case 2019-05-15 01:49:35 +03:00
Marius Stanciu 3e3c8ae703 - rewrited the Gerber Parser in camlib - success
- moved the self.apertures[aperture]['geometry'] processing for clear_geometry (geometry made with Gerber LPC command) in Gerber Editor
2019-05-15 00:27:43 +03:00
Marius Stanciu 820f75e20c - Gerber Editor - working in conversion to the new data format 2019-05-13 14:56:05 +03:00
Marius Stanciu c9a09b00c0 - Gerber Editor: added a threshold limit for how many elements a move selection can have. If above the threshold only a bounding box Poly will be painted on canvas as utility geometry. 2019-05-11 21:49:22 +03:00
Marius Stanciu 71f094bba5 - completely converted the Gerber editor to the new data structure 2019-05-11 19:24:57 +03:00
Marius Stanciu e65800737d - fixed Gerber Editor FCPad class to work with the new Gerber data structure in self.apertures 2019-05-11 05:46:32 +03:00
Marius Stanciu 23fb8b2d7c - fixed the camlib.Gerber functions of mirror, scale, offset, skew and rotate to work with the new data structure for apertures geometry
- fixed Gerber Editor selection to work with the new Gerber data structure in self.apertures
2019-05-11 05:19:42 +03:00
Marius Stanciu ce0ed2208f - Gerber Editor - working in conversion to the new data format 2019-05-10 15:40:09 +03:00
Marius Stanciu a614e2b73e - Gerber Editor - modifying it to work with the new geometric data structure 2019-05-09 14:53:08 +03:00
Marius Stanciu 28fce82432 - Geometry Editor: made the tool to be able to continuously move until the tool is exited either by ESC key or by right mouse button click
- Geometry Editor Move Tool: if no shape is selected when triggering this tool, now it is possible to make the selection inside the tool
- Gerber editor Move Tool: fixed a bug that repeated the plotting function unnecessarily
- Gerber editor Move Tool: if no shape is selected the tool will exit
2019-05-08 20:01:06 +03:00
Marius Stanciu 0a150fba79 - fixed Gerber Editor follow_geometry reconstruction -work in progress; still have to add the newly created geometry to follow_geometry 2019-05-08 06:45:28 +03:00
Marius Stanciu 832ecf80d5 - fixed Gerber Editor follow_geometry reconstruction 2019-05-08 06:26:30 +03:00
Marius Stanciu bdd13a3800 - work in Gerber Export: finished the body export but have some errors with clear geometry (LPC) 2019-05-07 21:13:20 +03:00
Marius Stanciu b9fa2e2bfd - fixed the Gerber Object and Gerber Editor Apertures Table to not show extra rows when there are aperture macros in the object 2019-05-07 15:24:20 +03:00
Marius Stanciu 3cf122827f - solved a bug in Excellon Editor that caused app crash when trying to edit a tool in Tool Table due of missing a tool offset 2019-05-07 00:12:19 +03:00
Marius Stanciu ae775b520e - added a protection for the case that the aperture table is part of a deleted object 2019-05-05 18:21:58 +03:00
Marius Stanciu d7031bc89a - fixed bug in camlib.parse_lines() in the clear_geometry processing section for self.apertures 2019-05-04 22:39:51 +03:00
Marius Stanciu a98e6c3eda - Geometry Editor: restored the old behavior: a tool is active until it is voluntarily exited: either by using the 'ESC' key, or selecting the Select tool or new: right click on canvas
- RELEASE 8.915
2019-05-01 22:28:33 +03:00
Marius Stanciu 72724eafae - Excellon Editor: fixed mouse right click was always doing popup context menu
- GUIElements.FCEntry2(): added a try-except clause
2019-05-01 18:38:14 +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 dc64f8174e - some protections in case there are some apertures without solid_geometry 2019-05-01 04:41:12 +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 91e6cc0bff - soled bug in Gerber Editor: the '0' aperture (the region aperture) had no size which created errors. Made the size to be zero.
- solved bug in editors: the canvas selection shape was not deleted on mouse release if the grid snap was OFF
- solved bug in Excellon Editor: when selecting a drill hole on canvas the selected row in the Tools Table was not the correct onw but the next highest row
2019-04-29 22:28:45 +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 4c275b25af - fixed Edit -> Copy as Geom function handler to work for Excellon objects, too
- made sure that the mouse pointer is restored to default on Editor exit
2019-04-25 20:42:56 +03:00
Marius Stanciu c2334bd747 - Geometry Editor: modified the intersection (if the selected shapes don't intersects preserve them) and substract functions (delete all shapes that were used in the process)
- work in the ToolSilk
2019-04-25 16:26:31 +03:00
Marius Stanciu e8f6b1a9ae - minor UI changes/ bug fixes 2019-04-24 14:52:12 +03:00
Marius Stanciu e4faa27351 - PDF import tool: working in making the PDF layer rendering multithreaded in itself (one layer rendered on each worker) 2019-04-24 14:11:15 +03:00
Marius Stanciu 1da424e9fb - added more custom mouse cursors in Geometry and Gerber Editors
- RELEASE 8.914
2019-04-23 21:31:17 +03:00
Marius Stanciu 49120c088e - Gerber Editor: made Add Pad repeat until user exits the Add Pad through either mouse right click, or ESC key or deselecting the Add Pad menu item
- Gerber and Geometry Editors: fixed some issues with the Add Arc/Add Semidisc; in mode 132, the norm() function was not the one from numpy but from a FlatCAM Class. Also fixed some of the texts and made sure that when changing the mode, the current points are reset to prepare for the newly selected mode.
2019-04-23 13:13:10 +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 f7f52e3bec - Gerber Editor: the bending mode will now survive until the tool is exited
- Gerber Editor: solved some bugs related with deleting an aperture and updating the last_selected_aperture
2019-04-18 21:46:00 +03:00
Marius Stanciu c5c924cbc4 - Gerber Editor: Region Tool will add regions only in '0' aperture 2019-04-18 16:48:47 +03:00
Marius Stanciu 839baea4b8 - Gerber Editor: added custom mouse cursors for each mode in Add Track Tool
- Gerber Editor: Poligonize Tool will first fuse polygons that touch each other and at a second try will create a polygon. The polygon will be automatically moved to Aperture '0' (regions).
2019-04-18 16:35:50 +03:00
Marius Stanciu b749a47652 - Excellon Editor: fixed issue not remembering last tool after adding a new tool
- added custom mouse cursors for Excellon and Geometry Editors in some of their tools
2019-04-17 21:30:43 +03:00
Marius Stanciu 7218c2d920 - Gerber Editor: added multiple modes to lay a Region: 45-degrees, reverse 45-degrees, 90-degrees, reverse 90-degrees and free-angle. Added also key shortcuts 'T' and 'R' to cycle forward, respectively in reverse through the modes. 2019-04-17 20:36:36 +03:00
Marius Stanciu b91e492805 - Gerber Editor: work in progress to add multiple modes of drawing for the Region Tool 2019-04-17 17:34:15 +03:00
Marius Stanciu c49ee7d27d - added custom mouse cursors for some tools in Gerber Editor 2019-04-17 16:17:12 +03:00
Marius Stanciu 5a855292c4 - wip 2019-04-17 02:26:41 +03:00
Marius Stanciu b35dc84f0d - Gerber Editor: added some messages to warn user if no selection exists when trying to do aperture deletion or aperture geometry deletion 2019-04-17 01:38:29 +03:00
Marius Stanciu 7707baa9b2 - Gerber Editor: added protections for the Pad Array and Pad Tool for the case when the aperture size is zero (the aperture where to store the regions) 2019-04-17 01:10:21 +03:00
Marius Stanciu 862eb2ae78 - Gerber Editor: Add Track Tool: added 5 modes for laying a track: 45-degrees, reverse-45 degrees, 90-degrees, reverse 90-degrees and free angle. Key 'T' will cycle forward through the modes and key 'R' will cycle in reverse through the track laying modes.
- Gerber Editor: Add Track Tool: first right click will finish the track. Second right click will exit the Track Tool and return to Select Tool.
2019-04-16 23:21:19 +03:00
Marius Stanciu 83cb0b8755 - Gerber Editor: started to add modes of laying a track 2019-04-16 18:27:24 +03:00
Marius Stanciu d92750d124 - added ability to use ENTER key to finish tool adding in Editors, NCC Tool, Paint Tool and SolderPaste Tool. 2019-04-16 15:27:51 +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 d7cb8a5825 - Gerber Editor: reduced the delay to show UI when editing an empty Gerber object
- update the order of event handlers connection in Editors to first connect new handlers then disconnect old handlers. It seems that if nothing is connected some VispY functions like canvas panning no longer works if there is at least once nothing connected to the 'mouse_move' event
- Excellon Editor: update so always there is a tool selected even after the Execllon object was just edited; before it always required a click inside of the tool table, not you do it only if needed.
- fixed the menu File -> Edit -> Edit/Close Editor entry to reflect the status of the app (Editor active or not)
2019-04-15 16:19:30 +03:00
Marius Stanciu 2e7d9f953f - solved bug in Gerber apertures size and dimensions values conversion when file units are different than app units 2019-04-14 22:46:08 +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 e92cab2e96 - In Geometry Editor I fixed bug in Arc modes. Arc mode shortcut key is now key 'M' and arc direction change shortcut key is 'D' 2019-04-14 02:46:55 +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 4100e98ebe - Gerber Editor: some more changes in processing LPC polygons 2019-04-14 01:03:42 +03:00
Marius Stanciu 0fdd2e4f7c - Gerber Editor: a disabled/enabled sequence for the VisPy cursor on Gerber edit make the graphics better 2019-04-13 23:47:02 +03:00
Marius Stanciu dcda4f3e1d - added a missing __init__.py file in the flatcamEditors folder needed by the app freezing 2019-04-13 17:00:03 +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 57e8db1f9b - moved the polarity change processing from FlatCAMGrbEditor() class to camlib.Gerber().parse_lines() 2019-04-12 19:44:03 +03:00
Marius Stanciu 80c5cf86b7 - Gerber Editor: added support for Gerber polarity change commands (LPD, LPC) 2019-04-12 19:29:12 +03:00
Marius Stanciu e478d6e043 - when adding an aperture with code '0' (zero) it will automatically be set with size zero and type: 'REG' (from region); here we store all the regions from a Gerber file, the ones without a declared aperture 2019-04-12 17:09:43 +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