Browse Source

Allow DigitalFactory bundled-plugin to autoselect format on save.

There was an earlier implementation of this, which was hacky, and didn't work anymore.

CURA-11958
Remco Burema 7 months ago
parent
commit
39d9ab7afb

+ 9 - 0
cura/Settings/GlobalStack.py

@@ -83,6 +83,15 @@ class GlobalStack(CuraContainerStack):
         """
         """
         return self.getMetaDataEntry("supports_material_export", False)
         return self.getMetaDataEntry("supports_material_export", False)
 
 
+    @pyqtProperty("QVariantList", constant = True)
+    def getOutputFileFormats(self) -> List[str]:
+        """
+        Which output formats the printer supports.
+        :return: A list of strings with MIME-types.
+        """
+        all_formats_str = self.getMetaDataEntry("file_formats", "")
+        return all_formats_str.split(";")
+
     @classmethod
     @classmethod
     def getLoadingPriority(cls) -> int:
     def getLoadingPriority(cls) -> int:
         return 2
         return 2

+ 1 - 1
plugins/DigitalLibrary/resources/qml/SaveProjectFilesPage.qml

@@ -208,7 +208,7 @@ Item
         anchors.rightMargin: UM.Theme.getSize("thin_margin").height
         anchors.rightMargin: UM.Theme.getSize("thin_margin").height
 
 
         enabled: UM.Backend.state == UM.Backend.Done
         enabled: UM.Backend.state == UM.Backend.Done
-        currentIndex: UM.Backend.state == UM.Backend.Done ? dfFilenameTextfield.text.startsWith("MM")? 1 : 0 : 2
+        currentIndex: UM.Backend.state == UM.Backend.Done ? (Cura.MachineManager.activeMachine.getOutputFileFormats.includes("application/x-makerbot") ? 1 : 0) : 2
 
 
         textRole: "text"
         textRole: "text"
         valueRole: "value"
         valueRole: "value"