- changed how the import of svg.path module is done in the ParseSVG.py file

- Tool Isolation - new feature that allow to isolate interiors of polygons (holes in polygons). It is possible that the isolation to be reported as successful (internal limitations) but some interiors to not be isolated. This way the user get to fix the isolation by doing an extra isolation.
This commit is contained in:
Marius Stanciu
2020-06-05 07:10:18 +03:00
committed by Marius
parent 487e7bbfe8
commit 2107a4766f
6 changed files with 360 additions and 243 deletions

View File

@@ -348,6 +348,7 @@ class PreferencesUIManager:
"tools_iso_combine_passes": self.ui.tools_defaults_form.tools_iso_group.combine_passes_cb,
"tools_iso_isoexcept": self.ui.tools_defaults_form.tools_iso_group.except_cb,
"tools_iso_selection": self.ui.tools_defaults_form.tools_iso_group.select_combo,
"tools_iso_poly_ints": self.ui.tools_defaults_form.tools_iso_group.poly_int_cb,
"tools_iso_area_shape": self.ui.tools_defaults_form.tools_iso_group.area_shape_radio,
"tools_iso_plotting": self.ui.tools_defaults_form.tools_iso_group.plotting_radio,

View File

@@ -301,10 +301,21 @@ class ToolsISOPrefGroupUI(OptionsGroupUI):
grid0.addWidget(self.area_shape_label, 21, 0)
grid0.addWidget(self.area_shape_radio, 21, 1, 1, 2)
# Polygon interiors selection
self.poly_int_label = QtWidgets.QLabel('%s:' % _("Interiors"))
self.poly_int_label.setToolTip(
_("When checked the user can select interiors of a polygon.\n"
"(holes in the polygon).")
)
self.poly_int_cb = FCCheckBox()
grid0.addWidget(self.poly_int_label, 22, 0)
grid0.addWidget(self.poly_int_cb, 22, 1)
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)
# ## Plotting type
self.plotting_radio = RadioSet([{'label': _('Normal'), 'value': 'normal'},
@@ -314,7 +325,7 @@ class ToolsISOPrefGroupUI(OptionsGroupUI):
_("- 'Normal' - normal plotting, done at the end of the job\n"
"- 'Progressive' - each shape is plotted after it is generated")
)
grid0.addWidget(plotting_label, 23, 0)
grid0.addWidget(self.plotting_radio, 23, 1, 1, 2)
grid0.addWidget(plotting_label, 25, 0)
grid0.addWidget(self.plotting_radio, 25, 1, 1, 2)
self.layout.addStretch()