diff options
| -rw-r--r-- | dbus/select_elements.py | 2 | ||||
| -rw-r--r-- | lib/extensions/select_elements.py | 8 | ||||
| -rw-r--r-- | templates/select_elements.xml | 10 |
3 files changed, 17 insertions, 3 deletions
diff --git a/dbus/select_elements.py b/dbus/select_elements.py index 2b663aed..ad016751 100644 --- a/dbus/select_elements.py +++ b/dbus/select_elements.py @@ -49,7 +49,7 @@ class DBusActions: # start dbus dbus = DBusActions() # give it some time to start -sleep(0.2) +sleep(0.5) # clear previous selection dbus.run_action('select-clear', None) # select with the list of ids diff --git a/lib/extensions/select_elements.py b/lib/extensions/select_elements.py index 8fa9ca9d..896e04b0 100644 --- a/lib/extensions/select_elements.py +++ b/lib/extensions/select_elements.py @@ -21,6 +21,7 @@ class SelectElements(InkstitchExtension): pars.add_argument("--info", type=str, dest="info") pars.add_argument("--select-running-stitch", type=Boolean, dest="running", default=False) + pars.add_argument("--running-stitch-condition", type=str, dest="running_stitch_condition", default="all") pars.add_argument("--select-ripples", type=Boolean, dest="ripples", default=False) pars.add_argument("--select-zigzag", type=Boolean, dest="zigzag", default=False) pars.add_argument("--select-manual", type=Boolean, dest="manual", default=False) @@ -101,7 +102,7 @@ class SelectElements(InkstitchExtension): def _select_stroke(self, element): select = False method = element.stroke_method - if self.options.running and method == 'running_stitch': + if self.options.running and method == 'running_stitch' and self._running_condition(element): select = True if self.options.ripples and method == 'ripple_stitch': select = True @@ -130,6 +131,11 @@ class SelectElements(InkstitchExtension): select = True return select + def _running_condition(self, element): + element_id = element.node.get_id() or '' + conditions = {'all': True, 'autorun-top': element_id.startswith('autorun'), 'autorun-underpath': element_id.startswith('underpath')} + return conditions[self.options.running_stitch_condition] + def _select_fill_underlay(self, element): underlay = {'all': True, 'no': not element.fill_underlay, 'yes': element.fill_underlay} return underlay[self.options.fill_underlay] diff --git a/templates/select_elements.xml b/templates/select_elements.xml index fee1f467..a4ed148a 100644 --- a/templates/select_elements.xml +++ b/templates/select_elements.xml @@ -8,7 +8,15 @@ <page name="stitch-type" gui-text="Select options"> <label appearance="header">Select Stitch Type</label> <label>Stroke type</label> + <hbox> <param indent="1" name="select-running-stitch" type="boolean" gui-text="Running Stitch">false</param> + <param indent="1" name="running-stitch-condition" type="optiongroup" appearance="combo" gui-text="Select" + gui-description="Only select specific running stitches"> + <option value="all">All</option> + <option value="autorun-top">Auto-Run Top Stitching</option> + <option value="autorun-underpath">Auto-Run Underpath</option> + </param> + </hbox> <param indent="1" name="select-ripples" type="boolean" gui-text="Ripples">false</param> <param indent="1" name="select-zigzag" type="boolean" gui-text="ZigZag Stitch">false</param> <param indent="1" name="select-manual" type="boolean" gui-text="Manual Stitch">false</param> @@ -53,7 +61,7 @@ <label>If this isn't working for you, you may need to insert your path to a python executable manualy.</label> <spacer /> <label>* Windows: Open the "Command Prompt" and type "where python". Copy the path and paste it here.</label> - <label>* Linux: Open the command line and type "which python". Copy the path and paste it here.</label> + <label>* Linux: Open the command line and type "which python3". Copy the path and paste it here.</label> <label>* macOS: doesn't work, sorry</label> <param name="python-path" type="string" gui-text="Python Path"></param> </page> |
