Commit Graph

587 Commits

Author SHA1 Message Date
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
af091c7b14 - made the Feedrate Rapids parameter to depend on the type of postprocessor choosed. It will be showed only for a postprocessor which the name contain 'marlin' and for any postprocessor's that have 'custom' in the name 2019-05-11 04:54:05 +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
5287cbd8de Merge branch 'new_aperture_storage' into beta_8.916
# Conflicts:
#	README.md
2019-05-11 03:49:53 +03:00
Marius Stanciu
5dd0ff7e14 - optimized Transform tool 2019-05-11 02:57:06 +03:00
Marius Stanciu
500c54711d - made sure that only units toggle done in Edit -> Preferences will toggle the data in Preferences. THe menu entry Edit -> Toggle Units and the shortcut key 'Q' will change only the display units in the app 2019-05-11 02:48:44 +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
3d113c89b1 - rework the Gerber parser 2019-05-09 03:43:17 +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
832ecf80d5 - fixed Gerber Editor follow_geometry reconstruction 2019-05-08 06:26:30 +03:00
Marius Stanciu
8275750d3e - fixed camlib.Gerber skew, rotate, offset, mirror functions to work for geometry stored in the Gerber apertures 2019-05-08 06:15:02 +03:00
Marius Stanciu
6fb33ebc5e - Gerber Export - finished
- added zoom fit for Set Origin command
- added move action for solid_geometry stored in the gerber_obj.apertures
2019-05-08 06:02:38 +03:00
Marius Stanciu
5b663c5f20 - work in Gerber Export: finished the body export but have some errors with clear geometry (LPC) 2019-05-08 04:21:34 +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
cb355d6070 - work in Gerber Export: finished the header export 2019-05-07 15:14:32 +03:00
Marius Stanciu
b31f3b7587 - remade the Tool Paenlize GUI 2019-05-07 13:55:20 +03:00
Marius Stanciu
dd60c7be30 - modified the default values for toolchangez and endz parameters so they are now safe in all cases 2019-05-07 02:24:58 +03:00
Marius Stanciu
f6106dd319 - updated the ToolPanelize tool so the Gerber panel of type FlatCAMGerber can be isolated like any other FlatCAMGerber object
- updated the ToolPanelize tool so it can be edited
2019-05-07 02:08:17 +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
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
b19047a8b3 - fixed some bugs related to moving an Gerber object with the aperture table in view 2019-05-06 20:12:49 +03:00
Marius Stanciu
d35ae3a39a - made units change from Edit -> Toggle Units not to affect the preferences
- remade the way the aperture marks are plotted in Gerber Object
2019-05-06 16:40:31 +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
ed58acdac5 - in Script Editor added support for "CTRL + / " key combo to comment/uncomment line 2019-05-06 01:54:35 +03:00
Marius Stanciu
4bb4a18a81 - added a protection for the case that the aperture table is part of a deleted object 2019-05-06 01:41:41 +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
41956d68d6 - another fix for bug in clear geometry processing for Gerber apertures 2019-05-05 18:16:29 +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
fee24505ae - fixed bug in parsing Gerber regions (a point was added unnecessary) 2019-05-05 00:15:21 +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
7294c88ef9 - made sure that the Tools Tab is cleared on Editors exit 2019-05-01 21:22:28 +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
6f3cbf1077 - fixed a crash when triggering 'Jump To' menu action (shortcut key 'J' worked ok) 2019-05-01 12:55:16 +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
8062af7feb - the project items color is now controlled from Foreground Role in ObjectCollection.data()
- made again plot functions threaded but moved the dataChanged signal (update_view() ) to the main thread by using an already existing signal (plots_updated signal) to avoid the errors with register QVector
2019-05-01 03:33:15 +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
b53c08f1e5 - finished the new Substract Tool 2019-04-30 20:22:46 +03:00
Marius Stanciu
17bbbad72d - progress in the new Substract Tool for Geometry Objects 2019-04-30 17:53:21 +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
ac64f56240 - in ObjectCollection class, made sure that renaming an object in Project View does not result in an empty name. If new name is blank the rename is cancelled.
- made ObjectCOllection.TreeItem() inherit KeySensitiveListVIew and implicitly QTreeView (in the hope that the theme applied on app will be applied on the tree items, too (for MacOs new DarkUI theme)
2019-04-30 12:51:21 +03:00
Marius Stanciu
b8495f06ca - solved the issue in Silkscreen Tool with losing some fragments of wires from silkscreen 2019-04-30 03:54:29 +03:00
Marius Stanciu
0e94a2bd11 - finished the Silkscreen Tool but there are some limitations (some wires fragments from silkscreen are lost) 2019-04-30 03:50:01 +03:00
Marius Stanciu
c3c37d1473 - finished the Silkscreen Tool 2019-04-30 03:29:46 +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
43c539702e - all Gerber regions (G36 G37) are stored in the '0' aperture
- fixed a bug that added geometry with clear polarity in the apertures where was not supposed to be
2019-04-27 03:03:00 +03:00
Marius Stanciu
6775c3f3da - updated the code in camlib.CNCJob.generate_from_excellon_by_tools() to work with the new API from Google OR-Tools 2019-04-27 00:02:21 +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
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
ddc2f2d873 - 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:47:17 +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
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
b11c67d453 - PDF import tool: solved a bug in parsing the rectangle subpath (an extra point was added to the subpath creating nonexisting geometry)
- PDF import tool: finished layer rendering multithreading
2019-04-24 22:26:13 +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
54d6a32b6c - updated the translation files 2019-04-23 17:51:09 +03:00
Marius Stanciu
5f5b37eb98 - Fixed Measurement Tool to show the mouse coordinates on the status bar (it was broken at some point) 2019-04-23 16:10:34 +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
82a0287f4d - PDF Import tool: added support for detection of circular geometry drawn with white color which means actually invisible color. When detected, FlatCAM will build an Excellon file out of those geoms.
- PDF Import tool: fixed storing geometries in apertures with the right size (before they were all stored in aperture D10)
2019-04-23 02:02:20 +03:00
Marius Stanciu
d66d914cc3 - PDF Import tool: fixed bugs when drag & dropping PDF files on canvas the files geometry previously opened was added to the new one. Also scaling issues. Solved. 2019-04-22 20:33:03 +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
7442af1b06 - PDF Import tool: added support for PDF files that embed multiple Gerber layers (top, bottom, outline, silkscreen etc). Each will be opened in it's own Gerber file. The requirement is that each one is drawn in a different color 2019-04-22 17:35:36 +03:00
Marius Stanciu
8a2a48f668 - PDF import tool: added support for save/restore Graphics stack. Only for scale and offset transformations and for the linewidth. This is the final fix for Microsoft PDF printer who saves in PDF format 1.7 2019-04-22 15:35:21 +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
108f11eacf - finished adding the PDF import tool although it does not support all kinds of outputs from PDF printers. Microsoft PDF printer is not supported. 2019-04-21 04:43:49 +03:00
Marius Stanciu
52fceae054 - started to work on PDF import tool 2019-04-19 17:12: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
a27d19c64e - fixed version check 2019-04-17 02:49:12 +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
2b4beebba2 - added support in Excellon parser for autodetection of Excellon file format for the Excellon files generate by the following ECAD sw: DipTrace, Eagle, Altium, Sprint Layout 2019-04-15 19:29:23 +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
348fe4f135 - finished ToolPcbWizard; it will autodetect the Excellon format, units from the INF file 2019-04-15 05:17:16 +03:00
Marius Stanciu
db26895b5b - working on a new tool to process automatically PcbWizard Excellon files which are generated in 2 files 2019-04-15 03:29:43 +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
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
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
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
84f3166e2f - Gerber Editor: Remade the processing of 'clear_geometry' (geometry generated by polygons made with Gerber LPC command) to work if more than one such polygon exists 2019-04-13 22:56:46 +03:00
Marius Stanciu
5020017cd7 - final fix for issue #277. Previous fix was applied only for one case out of three.
- RELEASE 8.913
2019-04-13 17:26:03 +03:00
Marius Stanciu
42e82beb27 - finished German translation (Google translated with some adjustments)
- RELEASE 8.913
2019-04-13 16:54:39 +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
2c8bac7402 - updating the German translation 2019-04-13 04:10:54 +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
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
2297f99502 - Gerber Editor: added support for Oblong type of aperture
- fixed an issue with automatically filled in aperture size when the edited Gerber file has no apertures; established an default with value 10 (according to Gerber specifications)
2019-04-12 02:09:01 +03:00
Marius Stanciu
3f421b234d - Gerber Editor: fixed multiple selection with key modifier such that first click selects, second deselects 2019-04-12 00:20:09 +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
036e886af4 - in all Editors, manually deactivating a button in the editor toolbar will automatically select the 'Select' button
- fixed Excellon Editor selection: when a tool is selected in Tools Table, all the drills belonging to that tool are selected. When a drill is selected on canvas, the associated tool will be selected without automatically selecting all other drills with same tool
2019-04-11 20:32:40 +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
8fb952b6ad - Gerber Editor: autoincrement aperture code when adding new apertures
- Gerber Editor: automatically calculate the size of the rectangular aperture
2019-04-11 03:35:09 +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
58abfcb7f7 - fixed above bug in Measurement Tool (but there is a TODO there) 2019-04-10 04:37:03 +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
fbdcb00eb3 - Gerber Editor: working on aperture selection to show on Aperture Table 2019-04-09 17:56:28 +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
5ef11a56cc - preliminary Gerber Editor.on_aperture_delete()
- fixed 'circular reference' error when creating the new Gerber file in Gerber Editor
- preliminary Gerber Editor.on_aperture_add()
2019-04-07 03:05:58 +03:00
Marius Stanciu
da991c103b - fixed issue with not possible to close the app after a project save. 2019-04-06 01:15:29 +03:00
Marius Stanciu
1307026d83 - fixed bug in Geometry Editor in buffer_int() function that created an Circular Reference Error when applying buffer interior on a geometry. 2019-04-06 01:02:59 +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
13185f3944 - changed the way delayed plot is working in Gerber Editor to use a Qtimer instead of python threading module
- WIP in Gerber Editor
2019-04-05 21:18:55 +03:00
Marius Stanciu
788daf9081 - WIP in Gerber Editor: geometry is no longer stored in a Rtree storage as it is not needed 2019-04-05 16:55:47 +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
cefb74d792 - Gerber Editor: made geometry transfer (which is slow) to Editor to be multithreaded
- Gerber Editor: plotting process is showed in the status bar
2019-04-05 15:28:32 +03:00
Marius Stanciu
b9a4981cd0 - fixed offset after editing drill diameters in Excellon Editor. 2019-04-04 21:22:45 +03:00
Marius Stanciu
f43bed8c66 - modified the bogus diameters series for Excellon objects that do not have tool diameter info
- made Excellon Editor aware of the fact that the Excellon object that is edited has fake (bogus) tool diameters and therefore it will not sort the tools based on diameter but based on tool number
- fixed bug on Excellon Editor: when diameter is edited in Tools Table and the target diameter is already in the tool table, the drills from current tool are moved to the new tool (with new dia) - before it crashed
2019-04-04 20:15:51 +03:00
Marius Stanciu
f177b2db7b - added support for Excellon file with no info about tool diameters - PCB Wizard Excellon file support 2019-04-04 18:13:39 +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
4bbdeaf844 - fixed the camlib.Geometry.import_svg() and camlib.Gerber.bounds() to work when importing SVG files as Gerber 2019-04-04 02:15:59 +03:00
Marius Stanciu
8fc7c0ffc1 - fixed the quit action when denying the save, to save the default values and the QSettings 2019-04-04 01:20:33 +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
Marius Stanciu
06ac0b03b1 - modified the calling of the editor2object() slot function 2019-04-03 20:24:47 +03:00
Marius Stanciu
5e9a27ca45 - added a Gcode end_command: default is M02 2019-04-03 16:14:26 +03: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
40c8ef1cf8 - wip in Gerber editor 2019-04-01 02:54:34 +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
bfd7cbdd44 - changed Measuring Tool to use the mouse click release instead of mouse click press; also fixed a bug when using the ESC key. 2019-04-01 00:07:26 +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
79e5cce6f1 - added a fix in the Excellon parser by allowing a comma in the tool definitions between the diameter and the rest 2019-03-30 02:55:11 +02: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
c5a77841f8 - update the TCL keyword list
- fix on the Gerber parser that makes searching for '%%' char optional when doing regex search for mode, units or image polarity. This allow loading Gerber files generated by the ECAD software TCl4.4
2019-03-29 13:02:53 +02:00
Marius Stanciu
e0417b034b - modified Gerber parser to copy the follow_geometry in the self.apertures
- modified the Properties Tool to show the number of elements in the follow_geometry for each aperture
- modified the copy functions to copy the follow_geometry and also the apertures if it's possible (only for Gerber objects)
2019-03-29 02:13:20 +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
6d9eb10a59 - new feature: added ability to edit MultiGeo geometry (geometry from Paint Tool) 2019-03-28 21:11:37 +02:00
Marius Stanciu
18b636bf03 - About 45% progress in German translation 2019-03-28 16:21:36 +02:00
Marius Stanciu
ffa9095066 - fixed issue #278. Crash on name change in the Name field in the Selected Tab. 2019-03-27 23:34:10 +02:00
Marius Stanciu
d12a6759c7 - progress in German translation. About 27% done. 2019-03-27 23:01:16 +02:00
Marius Stanciu
209683b2db - added new feature: user can delete apertures in Advanced mode and then create a new FlatCAM Gerber object 2019-03-27 12:26:19 +02:00
Marius Stanciu
1aabb1c084 - added CNCJob geometry for the holes created by the drills from Excellon objects 2019-03-27 01:21:01 +02:00
Marius Stanciu
0002d32341 - fixed bug: after using Paint Tool shortcut keys are disabled 2019-03-26 22:39:49 +02:00
Marius Stanciu
a7e6914584 - fixed an issue where the Geometry plot function protested that it does not have an parameter that is used by the CNCJob plot function. But both inherit from FaltCAMObj plot function which does not have that parameter so something may need to be changed. Until then I provided a phony keyboard parameter to make that function 'shut up' 2019-03-26 15:53:07 +02:00
Marius Stanciu
a964e6282d - fixed an module import issue in NCC Tool
- minor change (optimization) of the CNCJob UI
- work in progress in German translation ~20%
2019-03-25 22:00:07 +02:00
Marius Stanciu
d7f4b7e6b0 - work in progress in German translation ~7%
- after any autocomplete in TCL completer, a space is added
2019-03-25 16:59:12 +02:00
Marius Stanciu
43f89397d7 - added all the TCL keywords in the completer keyword list 2019-03-25 04:26:11 +02:00
Marius Stanciu
f8cbafe84d - in the TCL completer if the word is already complete don't add it again but add a space 2019-03-25 03:35:26 +02:00
Marius Stanciu
d67700c38b - changed the autoname for saving Preferences, Project and PNG file 2019-03-22 20:59:02 +02:00
Marius Stanciu
789dcc5da5 - fixed the Gerber.merge() function. When some of the Gerber files have apertures with same id, create a new aperture id for the object that is fused because each aperture id may hold different geometries. 2019-03-22 20:28:43 +02:00
Marius Stanciu
df98007a4a - fixed an error that created a situation that when saving a project with some of the CNCJob objects disabled, on project reload the CNCJob objects are no longer loaded 2019-03-22 17:56:11 +02:00
Marius Stanciu
9a2279708e - added an icon and title text for the Toggle Units QMessageBox 2019-03-21 02:02:34 +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
b09f311b5c - added autocomplete finish with ENTER key for the TCL Shell
- made sure that the autocomplete function works only for FlatCAM Scripts
2019-03-20 16:54:03 +02:00
Marius Stanciu
ec75a68976 - autocomplete in Code Editor is finished by hitting either TAB key or ENTER key 2019-03-20 04:05:32 +02:00
Marius Stanciu
0eb3ea0283 - fixed the Gerber.merge() to work for the case when one of the merged Gerber objects solid_geometry type is Polygon and not a list 2019-03-20 03:08:07 +02:00
Marius Stanciu
bebb827bd2 - added autocomplete for Code editor; TODO: needs to be enabled only when doing Scripts, right now is available for everyone. 2019-03-19 03:05:00 +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
39eaf12fef - added ability to run a FlatCAM Tcl script by double-clicking on the file 2019-03-19 01:27:57 +02:00
Marius Stanciu
6e465d97cd - the Code Editor tab name is changed according to the task; 'save' and 'open' buttons will have filters installed for the QOpenDialog fit to the task 2019-03-19 01:05:25 +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
Marius Stanciu
b79c26ec4b - some changes on how the first layout is applied
- minor bug fixes (typos from copy/paste from another part of the program)
2019-03-18 03:54:31 +02:00
Marius Stanciu
3daed4cbfb - made the translations work when the app is frozen with CX_freeze
- some formatting changes for the application strings
2019-03-18 03:30:47 +02:00
Marius Stanciu
1c8c973971 - finished translation in Romanian 2019-03-18 01:23:36 +02:00
Marius Stanciu
abfa78d898 - remade the layout in 2Sided Tool
- work in progress for translation in Romanian - 91%
2019-03-17 15:47:17 +02:00
Marius Stanciu
fe6fa826ce - remade the layout in 2Sided Tool
- work in progress for translation in Romanian - 91%
2019-03-17 04:35:04 +02:00
Marius Stanciu
46da2dfd1e - made the layout combobox current item from Preferences -> General window to reflect the current layout
- remade the POT translate file
- work in progress in translation for Romanian language 44%
- fix for showing tools by activating them from the Menu - final fix.
2019-03-16 00:59:59 +02:00
Marius Stanciu
c0d21ee4e0 - made the layout combobox current item from Preferences -> General window to reflect the current layout
- remade the POT translate file
- work in progress in translation for Romanian language 44%
- fix for showing tools by activating them from the Menu - final fix.
2019-03-14 01:09:06 +02:00
Marius Stanciu
090a3ff8f8 - reverted changes in Tools regarding the toggle effect - now they work as expected 2019-03-11 22:58:27 +02:00
Marius Stanciu
255254a292 - some strings were left outside the translation formatting - fixed
- finished the replacement of '_' symbols throughout the app which conflicted with the _() function used by the i18n
2019-03-11 20:00:07 +02:00
Marius Stanciu
e54ee9b569 - fixed the Properties Project menu entry to work on the new way
- in Properties tool now the Gerber apertures show the number of polygons in 'solid_geometry' instead of listing the objects
2019-03-11 19:30:38 +02:00
Marius Stanciu
5a4d61ee8f - grouped all parsers files in flatcamParsers folder 2019-03-11 12:28:44 +02:00
Marius Stanciu
9d33e08ecf - added a visual cue in Menu -> Edit about the entries to enter the Editor and to Save & Exit Editor. When one is enabled the other is disabled.
- grouped all the UI files in flatcamGUI folder
2019-03-11 12:23:26 +02:00
Marius Stanciu
29722de6ac - fixed the Properties Project menu entry to work on the new way
- in Properties tool now the Gerber apertures show the number of polygons in 'solid_geometry' instead of listing the objects
2019-03-11 03:31:33 +02:00
Marius Stanciu
91549587e2 - changed some icons here and there 2019-03-11 02:08:29 +02:00
Marius Stanciu
f51c146f71 - fixed an issue created by the fact that I used the '_' char inside the app to designate unused info and that conflicted with the _() function used by gettext
- made impossible to try to reapply current language that it's already applied (un-necessary)
2019-03-11 00:41:49 +02:00
Marius Stanciu
3c2cc96b62 - updated the App.final_save() function 2019-03-10 23:56:06 +02:00
Marius Stanciu
68cadb08ce - fixed some issues with ToolMeasurement due of above changes 2019-03-10 17:21:45 +02:00
Marius Stanciu
a6e23b28a7 - fix app crash for the case that there are no translation files
- fixed some forgotten strings to be prepared for internationalization in ToolCalculators
- fixed Tools menu no longer working due of changes
- added some test translation for the ToolCalculators (in Romanian)
- fixed bug in ToolCutOut where for each tool invocation the signals were reconnected
2019-03-10 17:12:58 +02:00
Marius Stanciu
ffd707ccce - comment changes on the file licenses (added major contributor names) 2019-03-10 15:22:16 +02:00
Marius Stanciu
53627b566c - added a fix in the Gerber parser when adding the geometry in the self.apertures dict for the case that the current aperture is None (Allegro does that)
- finished support for internationalization by adding a set of .po/.mo files for the English language. Unfortunately the final action can be done only when Beta will be out of Beta (no more changes) or when I will decide to stop working on this app.
- changed the tooltip for 'feedrate_rapids' parameter to point out that this parameter is useful only for the Marlin postprocessor
2019-03-10 14:34:13 +02:00
Marius Stanciu
de79370fb3 - sorted the languages in the Preferences combobox 2019-03-09 00:34:04 +02:00
Marius Stanciu
bfb04d5bee - finished preparing for internationalization for the files: FlatCAMObj, ObjectUI 2019-03-09 00:12:38 +02:00
Marius Stanciu
fc7076e2c6 - finished preparing for internationalization for the files: FlatCAMEditor, FlatCAMGUI 2019-03-08 23:13:09 +02:00
Marius Stanciu
ebdcf0bbba - fixed tools shortcuts not working anymore due of the new toogle parameter for the .run(). 2019-03-08 17:18:04 +02:00