- changed the color of the marked apertures to the global_selection_color
- Gerber Editor: added Transformation Tool and Rotation key shortcut
This commit is contained in:
parent
8fb952b6ad
commit
b3aeb497ec
@ -1172,7 +1172,7 @@ class FlatCAMGerber(FlatCAMObj, Gerber):
|
||||
|
||||
aperture = self.ui.apertures_table.item(row, 1).text()
|
||||
# self.plot_apertures(color='#2d4606bf', marked_aperture=aperture, visible=True)
|
||||
self.plot_apertures(color='#FD6A02', marked_aperture=aperture, visible=True)
|
||||
self.plot_apertures(color=self.app.defaults['global_sel_draw_color'], marked_aperture=aperture, visible=True)
|
||||
else:
|
||||
self.marked_rows.append(False)
|
||||
|
||||
@ -1209,7 +1209,7 @@ class FlatCAMGerber(FlatCAMObj, Gerber):
|
||||
if mark_all:
|
||||
for aperture in self.apertures:
|
||||
# self.plot_apertures(color='#2d4606bf', marked_aperture=aperture, visible=True)
|
||||
self.plot_apertures(color='#FD6A02', marked_aperture=aperture, visible=True)
|
||||
self.plot_apertures(color=self.app.defaults['global_sel_draw_color'], marked_aperture=aperture, visible=True)
|
||||
else:
|
||||
self.clear_plot_apertures()
|
||||
|
||||
|
@ -9,6 +9,11 @@ CAD program, and create G-Code for Isolation routing.
|
||||
|
||||
=================================================
|
||||
|
||||
11.04.2019
|
||||
|
||||
- changed the color of the marked apertures to the global_selection_color
|
||||
- Gerber Editor: added Transformation Tool and Rotation key shortcut
|
||||
|
||||
10.04.2019
|
||||
|
||||
- Gerber Editor: added Add Track and Add Region functions
|
||||
|
@ -2653,34 +2653,6 @@ class FlatCAMGeoEditor(QtCore.QObject):
|
||||
self.app = app
|
||||
self.canvas = app.plotcanvas
|
||||
|
||||
self.app.ui.geo_add_circle_menuitem.triggered.connect(lambda: self.select_tool('circle'))
|
||||
self.app.ui.geo_add_arc_menuitem.triggered.connect(lambda: self.select_tool('arc'))
|
||||
self.app.ui.geo_add_rectangle_menuitem.triggered.connect(lambda: self.select_tool('rectangle'))
|
||||
self.app.ui.geo_add_polygon_menuitem.triggered.connect(lambda: self.select_tool('polygon'))
|
||||
self.app.ui.geo_add_path_menuitem.triggered.connect(lambda: self.select_tool('path'))
|
||||
self.app.ui.geo_add_text_menuitem.triggered.connect(lambda: self.select_tool('text'))
|
||||
self.app.ui.geo_paint_menuitem.triggered.connect(self.on_paint_tool)
|
||||
self.app.ui.geo_buffer_menuitem.triggered.connect(self.on_buffer_tool)
|
||||
self.app.ui.geo_transform_menuitem.triggered.connect(self.on_transform_tool)
|
||||
|
||||
self.app.ui.geo_delete_menuitem.triggered.connect(self.on_delete_btn)
|
||||
self.app.ui.geo_union_menuitem.triggered.connect(self.union)
|
||||
self.app.ui.geo_intersection_menuitem.triggered.connect(self.intersection)
|
||||
self.app.ui.geo_subtract_menuitem.triggered.connect(self.subtract)
|
||||
self.app.ui.geo_cutpath_menuitem.triggered.connect(self.cutpath)
|
||||
self.app.ui.geo_copy_menuitem.triggered.connect(lambda: self.select_tool('copy'))
|
||||
|
||||
self.app.ui.geo_union_btn.triggered.connect(self.union)
|
||||
self.app.ui.geo_intersection_btn.triggered.connect(self.intersection)
|
||||
self.app.ui.geo_subtract_btn.triggered.connect(self.subtract)
|
||||
self.app.ui.geo_cutpath_btn.triggered.connect(self.cutpath)
|
||||
self.app.ui.geo_delete_btn.triggered.connect(self.on_delete_btn)
|
||||
|
||||
self.app.ui.geo_move_menuitem.triggered.connect(self.on_move)
|
||||
self.app.ui.geo_cornersnap_menuitem.triggered.connect(self.on_corner_snap)
|
||||
|
||||
self.transform_complete.connect(self.on_transform_complete)
|
||||
|
||||
## Toolbar events and properties
|
||||
self.tools = {
|
||||
"select": {"button": self.app.ui.geo_select_btn,
|
||||
@ -2814,15 +2786,43 @@ class FlatCAMGeoEditor(QtCore.QObject):
|
||||
self.app.ui.snap_max_dist_entry.textChanged.connect(
|
||||
lambda: entry2option("snap_max", self.app.ui.snap_max_dist_entry))
|
||||
|
||||
# store the status of the editor so the Delete at object level will not work until the edit is finished
|
||||
self.editor_active = False
|
||||
|
||||
# if using Paint store here the tool diameter used
|
||||
self.paint_tooldia = None
|
||||
|
||||
self.paint_tool = PaintOptionsTool(self.app, self)
|
||||
self.transform_tool = TransformEditorTool(self.app, self)
|
||||
|
||||
self.app.ui.geo_add_circle_menuitem.triggered.connect(lambda: self.select_tool('circle'))
|
||||
self.app.ui.geo_add_arc_menuitem.triggered.connect(lambda: self.select_tool('arc'))
|
||||
self.app.ui.geo_add_rectangle_menuitem.triggered.connect(lambda: self.select_tool('rectangle'))
|
||||
self.app.ui.geo_add_polygon_menuitem.triggered.connect(lambda: self.select_tool('polygon'))
|
||||
self.app.ui.geo_add_path_menuitem.triggered.connect(lambda: self.select_tool('path'))
|
||||
self.app.ui.geo_add_text_menuitem.triggered.connect(lambda: self.select_tool('text'))
|
||||
self.app.ui.geo_paint_menuitem.triggered.connect(self.on_paint_tool)
|
||||
self.app.ui.geo_buffer_menuitem.triggered.connect(self.on_buffer_tool)
|
||||
self.app.ui.geo_transform_menuitem.triggered.connect(self.transform_tool.run)
|
||||
|
||||
self.app.ui.geo_delete_menuitem.triggered.connect(self.on_delete_btn)
|
||||
self.app.ui.geo_union_menuitem.triggered.connect(self.union)
|
||||
self.app.ui.geo_intersection_menuitem.triggered.connect(self.intersection)
|
||||
self.app.ui.geo_subtract_menuitem.triggered.connect(self.subtract)
|
||||
self.app.ui.geo_cutpath_menuitem.triggered.connect(self.cutpath)
|
||||
self.app.ui.geo_copy_menuitem.triggered.connect(lambda: self.select_tool('copy'))
|
||||
|
||||
self.app.ui.geo_union_btn.triggered.connect(self.union)
|
||||
self.app.ui.geo_intersection_btn.triggered.connect(self.intersection)
|
||||
self.app.ui.geo_subtract_btn.triggered.connect(self.subtract)
|
||||
self.app.ui.geo_cutpath_btn.triggered.connect(self.cutpath)
|
||||
self.app.ui.geo_delete_btn.triggered.connect(self.on_delete_btn)
|
||||
|
||||
self.app.ui.geo_move_menuitem.triggered.connect(self.on_move)
|
||||
self.app.ui.geo_cornersnap_menuitem.triggered.connect(self.on_corner_snap)
|
||||
|
||||
self.transform_complete.connect(self.on_transform_complete)
|
||||
|
||||
# store the status of the editor so the Delete at object level will not work until the edit is finished
|
||||
self.editor_active = False
|
||||
|
||||
def pool_recreated(self, pool):
|
||||
self.shapes.pool = pool
|
||||
self.tool_shape.pool = pool
|
||||
@ -2856,8 +2856,7 @@ class FlatCAMGeoEditor(QtCore.QObject):
|
||||
|
||||
self.app.ui.geo_edit_toolbar.setDisabled(False)
|
||||
self.app.ui.geo_edit_toolbar.setVisible(True)
|
||||
self.app.ui.grb_edit_toolbar.setDisabled(False)
|
||||
self.app.ui.grb_edit_toolbar.setVisible(True)
|
||||
|
||||
self.app.ui.snap_toolbar.setDisabled(False)
|
||||
|
||||
# prevent the user to change anything in the Selected Tab while the Geo Editor is active
|
||||
@ -2937,7 +2936,6 @@ class FlatCAMGeoEditor(QtCore.QObject):
|
||||
self.canvas.vis_connect('mouse_move', self.on_canvas_move)
|
||||
self.canvas.vis_connect('mouse_release', self.on_canvas_click_release)
|
||||
|
||||
|
||||
def disconnect_canvas_event_handlers(self):
|
||||
|
||||
self.canvas.vis_disconnect('mouse_press', self.on_canvas_click)
|
||||
@ -3089,10 +3087,6 @@ class FlatCAMGeoEditor(QtCore.QObject):
|
||||
paint_tool = PaintOptionsTool(self.app, self)
|
||||
paint_tool.run()
|
||||
|
||||
def on_transform_tool(self):
|
||||
transform_tool = TransformEditorTool(self.app, self)
|
||||
transform_tool.run()
|
||||
|
||||
def on_tool_select(self, tool):
|
||||
"""
|
||||
Behavior of the toolbar. Tool initialization.
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -472,6 +472,9 @@ class FlatCAMGUI(QtWidgets.QMainWindow):
|
||||
_('Buffer\tB'))
|
||||
self.grb_add_scale_menuitem = self.grb_editor_menu.addAction(QtGui.QIcon('share/scale32.png'),
|
||||
_('Scale\tS'))
|
||||
self.grb_transform_menuitem = self.grb_editor_menu.addAction(
|
||||
QtGui.QIcon('share/transform.png'),_( "Transform\tALT+R")
|
||||
)
|
||||
self.grb_editor_menu.addSeparator()
|
||||
|
||||
self.grb_copy_menuitem = self.grb_editor_menu.addAction(QtGui.QIcon('share/copy32.png'), _('Copy\tC'))
|
||||
@ -692,6 +695,8 @@ class FlatCAMGUI(QtWidgets.QMainWindow):
|
||||
self.aperture_copy_btn = self.grb_edit_toolbar.addAction(QtGui.QIcon('share/copy32.png'), _("Copy"))
|
||||
self.aperture_delete_btn = self.grb_edit_toolbar.addAction(QtGui.QIcon('share/trash32.png'),
|
||||
_("Delete"))
|
||||
self.grb_transform_btn = self.grb_edit_toolbar.addAction(QtGui.QIcon('share/transform.png'),
|
||||
_("Transformations"))
|
||||
self.grb_edit_toolbar.addSeparator()
|
||||
self.aperture_move_btn = self.grb_edit_toolbar.addAction(QtGui.QIcon('share/move32.png'), _("Move"))
|
||||
|
||||
@ -1784,6 +1789,8 @@ class FlatCAMGUI(QtWidgets.QMainWindow):
|
||||
self.aperture_copy_btn = self.grb_edit_toolbar.addAction(QtGui.QIcon('share/copy32.png'), _("Copy"))
|
||||
self.aperture_delete_btn = self.grb_edit_toolbar.addAction(QtGui.QIcon('share/trash32.png'),
|
||||
_("Delete"))
|
||||
self.grb_transform_btn = self.grb_edit_toolbar.addAction(QtGui.QIcon('share/transform.png'),
|
||||
_("Transformations"))
|
||||
self.grb_edit_toolbar.addSeparator()
|
||||
self.aperture_move_btn = self.grb_edit_toolbar.addAction(QtGui.QIcon('share/move32.png'), _("Move"))
|
||||
|
||||
@ -2268,7 +2275,7 @@ class FlatCAMGUI(QtWidgets.QMainWindow):
|
||||
self.app.geo_editor.delete_selected()
|
||||
self.app.geo_editor.replot()
|
||||
|
||||
# Move
|
||||
# Rotate
|
||||
if key == QtCore.Qt.Key_Space or key == 'Space':
|
||||
self.app.geo_editor.transform_tool.on_rotate_key()
|
||||
|
||||
@ -2484,6 +2491,10 @@ class FlatCAMGUI(QtWidgets.QMainWindow):
|
||||
self.app.on_toggle_notebook()
|
||||
return
|
||||
|
||||
# Rotate
|
||||
if key == QtCore.Qt.Key_Space or key == 'Space':
|
||||
self.app.grb_editor.transform_tool.on_rotate_key()
|
||||
|
||||
# Switch to Project Tab
|
||||
if key == QtCore.Qt.Key_1 or key == '1':
|
||||
self.app.grb_editor.launched_from_shortcuts = True
|
||||
@ -2515,7 +2526,6 @@ class FlatCAMGUI(QtWidgets.QMainWindow):
|
||||
self.app.inform.emit(_("[WARNING_NOTCL] Cancelled. Nothing selected to copy."))
|
||||
return
|
||||
|
||||
|
||||
# Scale Tool
|
||||
if key == QtCore.Qt.Key_B or key == 'B':
|
||||
self.app.grb_editor.launched_from_shortcuts = True
|
||||
|
Loading…
Reference in New Issue
Block a user