From 309dbb132eef18a275ee2d3545f461b3a81bf968 Mon Sep 17 00:00:00 2001 From: Victor Benso Date: Wed, 3 Apr 2019 12:20:53 -0400 Subject: [PATCH 1/3] Issue #284 - Sanitize the entered Overlap value. --- flatcamTools/ToolPaint.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/flatcamTools/ToolPaint.py b/flatcamTools/ToolPaint.py index a3051b8d..355512ce 100644 --- a/flatcamTools/ToolPaint.py +++ b/flatcamTools/ToolPaint.py @@ -157,7 +157,7 @@ class ToolPaint(FlatCAMTool, Gerber): self.tools_box.addLayout(grid3) # Overlap - ovlabel = QtWidgets.QLabel(_('Overlap:')) + ovlabel = QtWidgets.QLabel(_('Overlap Rate:')) ovlabel.setToolTip( _("How much (fraction) of the tool width to overlap each tool pass.\n" "Example:\n" @@ -732,7 +732,6 @@ class ToolPaint(FlatCAMTool, Gerber): self.app.report_usage(_("geometry_on_paint_button")) # self.app.call_source = 'paint' - self.app.inform.emit(_("[WARNING_NOTCL] Click inside the desired polygon.")) try: overlap = float(self.paintoverlap_entry.get_value()) except ValueError: @@ -744,6 +743,13 @@ class ToolPaint(FlatCAMTool, Gerber): "use a number.")) return + if not overlap < 1 and overlap >= 0: + self.app.inform.emit(_("[ERROR_NOTCL] Overlap value must be between " + "0 (inclusive) and 1 (exclusive), ")) + return + + self.app.inform.emit(_("[WARNING_NOTCL] Click inside the desired polygon.")) + connect = self.pathconnect_cb.get_value() contour = self.paintcontour_cb.get_value() select_method = self.selectmethod_combo.get_value() From ece153823901baa377cd108d198676f30fbf8318 Mon Sep 17 00:00:00 2001 From: Victor Benso Date: Wed, 3 Apr 2019 12:28:20 -0400 Subject: [PATCH 2/3] Issue #284 - Sanitize the entered Overlap value --- flatcamTools/ToolPaint.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flatcamTools/ToolPaint.py b/flatcamTools/ToolPaint.py index 355512ce..c6aff23c 100644 --- a/flatcamTools/ToolPaint.py +++ b/flatcamTools/ToolPaint.py @@ -743,7 +743,7 @@ class ToolPaint(FlatCAMTool, Gerber): "use a number.")) return - if not overlap < 1 and overlap >= 0: + if overlap >= 1 or overlap < 0: self.app.inform.emit(_("[ERROR_NOTCL] Overlap value must be between " "0 (inclusive) and 1 (exclusive), ")) return From 1f67158e353ef5b3a5252ab6cc4a91966e47d80c Mon Sep 17 00:00:00 2001 From: Victor Benso Date: Wed, 3 Apr 2019 12:41:25 -0400 Subject: [PATCH 3/3] Issue #284 - Sanitize the entered Overlap value for the Copper Clear Tool as well. Change the "Overlap:" label occurrences to "Overlap Rate:" for clarity. --- flatcamEditors/FlatCAMGeoEditor.py | 2 +- flatcamGUI/FlatCAMGUI.py | 4 ++-- flatcamTools/ToolNonCopperClear.py | 7 ++++++- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/flatcamEditors/FlatCAMGeoEditor.py b/flatcamEditors/FlatCAMGeoEditor.py index c50d91d8..3c206ae4 100644 --- a/flatcamEditors/FlatCAMGeoEditor.py +++ b/flatcamEditors/FlatCAMGeoEditor.py @@ -437,7 +437,7 @@ class PaintOptionsTool(FlatCAMTool): grid.addWidget(self.painttooldia_entry, 0, 1) # Overlap - ovlabel = QtWidgets.QLabel(_('Overlap:')) + ovlabel = QtWidgets.QLabel(_('Overlap Rate:')) ovlabel.setToolTip( _("How much (fraction) of the tool width to overlap each tool pass.\n" "Example:\n" diff --git a/flatcamGUI/FlatCAMGUI.py b/flatcamGUI/FlatCAMGUI.py index 9e1357e4..e6c92393 100644 --- a/flatcamGUI/FlatCAMGUI.py +++ b/flatcamGUI/FlatCAMGUI.py @@ -4865,7 +4865,7 @@ class ToolsNCCPrefGroupUI(OptionsGroupUI): self.ncc_tool_dia_entry = FCEntry() grid0.addWidget(self.ncc_tool_dia_entry, 0, 1) - nccoverlabel = QtWidgets.QLabel(_('Overlap:')) + nccoverlabel = QtWidgets.QLabel(_('Overlap Rate:')) nccoverlabel.setToolTip( _( "How much (fraction) of the tool width to overlap each tool pass.\n" "Example:\n" @@ -5110,7 +5110,7 @@ class ToolsPaintPrefGroupUI(OptionsGroupUI): grid0.addWidget(self.painttooldia_entry, 0, 1) # Overlap - ovlabel = QtWidgets.QLabel(_('Overlap:')) + ovlabel = QtWidgets.QLabel(_('Overlap Rate:')) ovlabel.setToolTip( _("How much (fraction) of the tool\n" "width to overlap each tool pass.") diff --git a/flatcamTools/ToolNonCopperClear.py b/flatcamTools/ToolNonCopperClear.py index aab53abc..4b7ee0de 100644 --- a/flatcamTools/ToolNonCopperClear.py +++ b/flatcamTools/ToolNonCopperClear.py @@ -162,7 +162,7 @@ class NonCopperClear(FlatCAMTool, Gerber): e_lab_1 = QtWidgets.QLabel('') grid3.addWidget(e_lab_1, 0, 0) - nccoverlabel = QtWidgets.QLabel(_('Overlap:')) + nccoverlabel = QtWidgets.QLabel(_('Overlap Rate:')) nccoverlabel.setToolTip( _("How much (fraction) of the tool width to overlap each tool pass.\n" "Example:\n" @@ -628,6 +628,11 @@ class NonCopperClear(FlatCAMTool, Gerber): return over = over if over else self.app.defaults["tools_nccoverlap"] + if over >= 1 or over < 0: + self.app.inform.emit(_("[ERROR_NOTCL] Overlap value must be between " + "0 (inclusive) and 1 (exclusive), ")) + return + try: margin = float(self.ncc_margin_entry.get_value()) except ValueError: