Browse Source

Changed setting value to enum value while saving ucp

CURA-11783
Saumya Jain 11 months ago
parent
commit
b34865e9c8

+ 6 - 1
plugins/3MFWriter/SettingExport.py

@@ -6,11 +6,12 @@ from PyQt6.QtCore import QObject, pyqtProperty, pyqtSignal
 
 class SettingExport(QObject):
 
-    def __init__(self, id, name, value, selectable, show):
+    def __init__(self, id, name, value, value_name, selectable, show):
         super().__init__()
         self.id = id
         self._name = name
         self._value = value
+        self._value_name = value_name
         self._selected = selectable
         self._selectable = selectable
         self._show_in_menu = show
@@ -23,6 +24,10 @@ class SettingExport(QObject):
     def value(self):
         return self._value
 
+    @pyqtProperty(str, constant=True)
+    def valuename(self):
+        return str(self._value_name)
+
     selectedChanged = pyqtSignal(bool)
 
     def setSelected(self, selected):

+ 1 - 1
plugins/3MFWriter/SettingSelection.qml

@@ -24,7 +24,7 @@ RowLayout
 
     UM.Label
     {
-        text: modelData.value
+        text: modelData.valuename
     }
 
     UM.HelpIcon

+ 3 - 0
plugins/3MFWriter/SettingsExportModel.py

@@ -121,6 +121,8 @@ class SettingsExportModel(QObject):
             label = settings_stack.getProperty(setting_to_export, "label")
             value = settings_stack.getProperty(setting_to_export, "value")
             unit = settings_stack.getProperty(setting_to_export, "unit")
+            options = settings_stack.getProperty(setting_to_export, "options")
+            value_name = value if options == {} else options[value]
 
             setting_type = settings_stack.getProperty(setting_to_export, "type")
             if setting_type is not None:
@@ -131,6 +133,7 @@ class SettingsExportModel(QObject):
             settings_export.append(SettingExport(setting_to_export,
                                                  label,
                                                  value,
+                                                 value_name,
                                                  is_exportable or setting_to_export in exportable_settings,
                                                  show_in_menu))