- some fixes in the app_Main class

- removed the "follow" functionality from the Isolation Tool
- created a new application Tool named Follow Tool
- added the "follow" functionality in the Follow Tool and added the new feature of allowing to perform "follow" on an area selection
This commit is contained in:
Marius Stanciu
2020-11-12 16:22:50 +02:00
parent 23c4589a5e
commit 1a131eb71e
17 changed files with 814 additions and 195 deletions

View File

@@ -1050,6 +1050,8 @@ class MainGUI(QtWidgets.QMainWindow):
QtGui.QIcon(self.app.resource_location + '/paint20_1.png'), _("Paint Tool"))
self.isolation_btn = self.toolbartools.addAction(
QtGui.QIcon(self.app.resource_location + '/iso_16.png'), _("Isolation Tool"))
self.follow_btn = self.toolbartools.addAction(
QtGui.QIcon(self.app.resource_location + '/follow32.png'), _("Follow Tool"))
self.drill_btn = self.toolbartools.addAction(
QtGui.QIcon(self.app.resource_location + '/extract_drill32.png'), _("Drilling Tool"))
self.toolbartools.addSeparator()
@@ -2219,6 +2221,8 @@ class MainGUI(QtWidgets.QMainWindow):
QtGui.QIcon(self.app.resource_location + '/paint20_1.png'), _("Paint Tool"))
self.isolation_btn = self.toolbartools.addAction(
QtGui.QIcon(self.app.resource_location + '/iso_16.png'), _("Isolation Tool"))
self.follow_btn = self.toolbartools.addAction(
QtGui.QIcon(self.app.resource_location + '/follow32.png'), _("Follow Tool"))
self.drill_btn = self.toolbartools.addAction(
QtGui.QIcon(self.app.resource_location + '/extract_drill32.png'), _("Drilling Tool"))
self.toolbartools.addSeparator()

View File

@@ -398,10 +398,21 @@ class GerberObjectUI(ObjectUI):
# """)
grid0.addWidget(self.generate_cutout_button, 20, 0, 1, 3)
# Follow Tool
self.generate_follow_button = FCButton(_('Follow Tool'))
self.generate_follow_button.setIcon(QtGui.QIcon(self.app.resource_location + '/follow32.png'))
self.generate_follow_button.setToolTip(
_("Generate a 'Follow' geometry.\n"
"This means that it will cut through\n"
"the middle of the trace."))
# self.generate_cutout_button.setStyleSheet("""
grid0.addWidget(self.generate_follow_button, 22, 0, 1, 3)
separator_line = QtWidgets.QFrame()
separator_line.setFrameShape(QtWidgets.QFrame.HLine)
separator_line.setFrameShadow(QtWidgets.QFrame.Sunken)
grid0.addWidget(separator_line, 22, 0, 1, 3)
grid0.addWidget(separator_line, 24, 0, 1, 3)
# UTILITIES BUTTON
self.util_button = FCButton('%s' % _("UTILTIES"), checkable=True)
@@ -413,12 +424,12 @@ class GerberObjectUI(ObjectUI):
font-weight: bold;
}
""")
grid0.addWidget(self.util_button, 24, 0, 1, 3)
grid0.addWidget(self.util_button, 26, 0, 1, 3)
# UTILITIES Frame
self.util_frame = QtWidgets.QFrame()
self.util_frame.setContentsMargins(0, 0, 0, 0)
grid0.addWidget(self.util_frame, 25, 0, 1, 3)
grid0.addWidget(self.util_frame, 28, 0, 1, 3)
self.util_box = QtWidgets.QVBoxLayout()
self.util_box.setContentsMargins(0, 0, 0, 0)
self.util_frame.setLayout(self.util_box)

View File

@@ -347,7 +347,6 @@ class PreferencesUIManager:
"tools_iso_passes": self.ui.tools_defaults_form.tools_iso_group.passes_entry,
"tools_iso_overlap": self.ui.tools_defaults_form.tools_iso_group.overlap_entry,
"tools_iso_milling_type": self.ui.tools_defaults_form.tools_iso_group.milling_type_radio,
"tools_iso_follow": self.ui.tools_defaults_form.tools_iso_group.follow_cb,
"tools_iso_isotype": self.ui.tools_defaults_form.tools_iso_group.iso_type_radio,
"tools_iso_rest": self.ui.tools_defaults_form.tools_iso_group.rest_cb,

View File

@@ -197,23 +197,6 @@ class ToolsISOPrefGroupUI(OptionsGroupUI):
grid0.addWidget(self.milling_type_label, 10, 0)
grid0.addWidget(self.milling_type_radio, 10, 1, 1, 2)
# Follow
self.follow_label = QtWidgets.QLabel('%s:' % _('Follow'))
self.follow_label.setToolTip(
_("Generate a 'Follow' geometry.\n"
"This means that it will cut through\n"
"the middle of the trace.")
)
self.follow_cb = FCCheckBox()
self.follow_cb.setToolTip(_("Generate a 'Follow' geometry.\n"
"This means that it will cut through\n"
"the middle of the trace."))
self.follow_cb.setObjectName("i_follow")
grid0.addWidget(self.follow_label, 11, 0)
grid0.addWidget(self.follow_cb, 11, 1, 1, 2)
# Isolation Type
self.iso_type_label = QtWidgets.QLabel('%s:' % _('Isolation Type'))
self.iso_type_label.setToolTip(