summaryrefslogtreecommitdiff
path: root/lib/update.py
diff options
context:
space:
mode:
authorKaalleen <36401965+kaalleen@users.noreply.github.com>2024-10-19 08:34:45 +0200
committerGitHub <noreply@github.com>2024-10-19 08:34:45 +0200
commitd9293893ab26f49f67a44a68dc80cf93b7136d5f (patch)
tree36e3e8180336479d1934bdf780fe08a82cf1a1c5 /lib/update.py
parentf33f9c0f9c162ce8f0921b207b63a7a0463d718e (diff)
Request permission to update if inkstitch svg version is not specified (#3228)
Diffstat (limited to 'lib/update.py')
-rw-r--r--lib/update.py23
1 files changed, 20 insertions, 3 deletions
diff --git a/lib/update.py b/lib/update.py
index 84522934..5b092a8f 100644
--- a/lib/update.py
+++ b/lib/update.py
@@ -1,6 +1,12 @@
+# Authors: see git history
+#
+# Copyright (c) 2024 Authors
+# Licensed under the GNU GPL version 3.0 or later. See the file LICENSE for details.
+
from inkex import errormsg
from .elements import EmbroideryElement
+from .gui.request_update_svg_version import RequestUpdate
from .i18n import _
from .metadata import InkStitchMetadata
from .svg import PIXELS_PER_MM
@@ -47,12 +53,23 @@ def update_inkstitch_document(svg, selection=None):
update_legacy_params(EmbroideryElement(element), file_version, INKSTITCH_SVG_VERSION)
else:
# this is the automatic update when a legacy inkstitch svg version was recognized
- for element in document.iterdescendants():
- if element.tag in EMBROIDERABLE_TAGS:
- update_legacy_params(EmbroideryElement(element), file_version, INKSTITCH_SVG_VERSION)
+ automatic_version_update(document, file_version, INKSTITCH_SVG_VERSION)
+
_update_inkstitch_svg_version(svg)
+def automatic_version_update(document, file_version, INKSTITCH_SVG_VERSION):
+ # make sure the user really wants to update
+ if file_version == 0:
+ do_update = RequestUpdate()
+ if do_update.cancelled is True:
+ return
+ # well then, let's update legeacy params
+ for element in document.iterdescendants():
+ if element.tag in EMBROIDERABLE_TAGS:
+ update_legacy_params(EmbroideryElement(element), file_version, INKSTITCH_SVG_VERSION)
+
+
def _update_inkstitch_svg_version(svg):
# set inkstitch svg version
metadata = InkStitchMetadata(svg.getroot())