Browse Source

Merge remote-tracking branch 'origin/3.6'

Lipu Fei 6 years ago
parent
commit
c2e6bb8bc6

+ 121 - 103
plugins/Toolbox/resources/qml/ToolboxCompatibilityChart.qml

@@ -15,141 +15,159 @@ Item
         var link = undefined
         if ("Technical Data Sheet" in packageData.links)
         {
+            // HACK: This is the way the old API (used in 3.6-beta) used to do it. For safety it's still here,
+            // but it can be removed over time.
             link = packageData.links["Technical Data Sheet"]
         }
+        else if ("technicalDataSheet" in packageData.links)
+        {
+            link = packageData.links["technicalDataSheet"]
+        }
         return link
     }
-
     anchors.topMargin: UM.Theme.getSize("default_margin").height
     height: visible ? childrenRect.height : 0
-    visible: packageData.type == "material" && packageData.has_configs
-    Label
-    {
-        id: heading
-        anchors.topMargin: UM.Theme.getSize("default_margin").height
-        width: parent.width
-        text: catalog.i18nc("@label", "Compatibility")
-        wrapMode: Text.WordWrap
-        color: UM.Theme.getColor("text_medium")
-        font: UM.Theme.getFont("medium")
-    }
-    TableView
+
+    visible: packageData.type == "material" && (packageData.has_configs || technicalDataSheetUrl != undefined)
+
+    Item
     {
-        id: table
-        anchors.top: heading.bottom
-        anchors.topMargin: UM.Theme.getSize("default_margin").height
+        id: combatibilityItem
+        visible: packageData.has_configs
         width: parent.width
-        frameVisible: false
+        // This is a bit of a hack, but the whole QML is pretty messy right now. This needs a big overhaul.
+        height: visible ? heading.height + table.height: 0
 
-        // Workaround for scroll issues (QTBUG-49652)
-        flickableItem.interactive: false
-        Component.onCompleted:
+        Label
         {
-            for (var i = 0; i < flickableItem.children.length; ++i)
-            {
-                flickableItem.children[i].enabled = false
-            }
+            id: heading
+            anchors.topMargin: UM.Theme.getSize("default_margin").height
+            width: parent.width
+            text: catalog.i18nc("@label", "Compatibility")
+            wrapMode: Text.WordWrap
+            color: UM.Theme.getColor("text_medium")
+            font: UM.Theme.getFont("medium")
         }
-        selectionMode: 0
-        model: packageData.supported_configs
-        headerDelegate: Rectangle
+
+        TableView
         {
-            color: UM.Theme.getColor("sidebar")
-            height: UM.Theme.getSize("toolbox_chart_row").height
-            Label
+            id: table
+            anchors.top: heading.bottom
+            anchors.topMargin: UM.Theme.getSize("default_margin").height
+            width: parent.width
+            frameVisible: false
+
+            // Workaround for scroll issues (QTBUG-49652)
+            flickableItem.interactive: false
+            Component.onCompleted:
             {
-                anchors.verticalCenter: parent.verticalCenter
-                elide: Text.ElideRight
-                text: styleData.value || ""
-                color: UM.Theme.getColor("text")
-                font: UM.Theme.getFont("default_bold")
+                for (var i = 0; i < flickableItem.children.length; ++i)
+                {
+                    flickableItem.children[i].enabled = false
+                }
             }
-            Rectangle
+            selectionMode: 0
+            model: packageData.supported_configs
+            headerDelegate: Rectangle
             {
-                anchors.bottom: parent.bottom
-                height: UM.Theme.getSize("default_lining").height
-                width: parent.width
-                color: "black"
+                color: UM.Theme.getColor("sidebar")
+                height: UM.Theme.getSize("toolbox_chart_row").height
+                Label
+                {
+                    anchors.verticalCenter: parent.verticalCenter
+                    elide: Text.ElideRight
+                    text: styleData.value || ""
+                    color: UM.Theme.getColor("text")
+                    font: UM.Theme.getFont("default_bold")
+                }
+                Rectangle
+                {
+                    anchors.bottom: parent.bottom
+                    height: UM.Theme.getSize("default_lining").height
+                    width: parent.width
+                    color: "black"
+                }
             }
-        }
-        rowDelegate: Item
-        {
-            height: UM.Theme.getSize("toolbox_chart_row").height
-            Label
+            rowDelegate: Item
             {
-                anchors.verticalCenter: parent.verticalCenter
-                elide: Text.ElideRight
-                text: styleData.value || ""
-                color: UM.Theme.getColor("text_medium")
-                font: UM.Theme.getFont("default")
+                height: UM.Theme.getSize("toolbox_chart_row").height
+                Label
+                {
+                    anchors.verticalCenter: parent.verticalCenter
+                    elide: Text.ElideRight
+                    text: styleData.value || ""
+                    color: UM.Theme.getColor("text_medium")
+                    font: UM.Theme.getFont("default")
+                }
             }
-        }
-        itemDelegate: Item
-        {
-            height: UM.Theme.getSize("toolbox_chart_row").height
-            Label
+            itemDelegate: Item
             {
-                anchors.verticalCenter: parent.verticalCenter
-                elide: Text.ElideRight
-                text: styleData.value || ""
-                color: UM.Theme.getColor("text_medium")
-                font: UM.Theme.getFont("default")
+                height: UM.Theme.getSize("toolbox_chart_row").height
+                Label
+                {
+                    anchors.verticalCenter: parent.verticalCenter
+                    elide: Text.ElideRight
+                    text: styleData.value || ""
+                    color: UM.Theme.getColor("text_medium")
+                    font: UM.Theme.getFont("default")
+                }
             }
-        }
 
-        Component
-        {
-            id: columnTextDelegate
-            Label
+            Component
             {
-                anchors.fill: parent
-                verticalAlignment: Text.AlignVCenter
-                text: styleData.value || ""
-                elide: Text.ElideRight
-                color: UM.Theme.getColor("text_medium")
-                font: UM.Theme.getFont("default")
+                id: columnTextDelegate
+                Label
+                {
+                    anchors.fill: parent
+                    verticalAlignment: Text.AlignVCenter
+                    text: styleData.value || ""
+                    elide: Text.ElideRight
+                    color: UM.Theme.getColor("text_medium")
+                    font: UM.Theme.getFont("default")
+                }
             }
-        }
 
-        TableViewColumn
-        {
-            role: "machine"
-            title: "Machine"
-            width: Math.floor(table.width * 0.25)
-            delegate: columnTextDelegate
-        }
-        TableViewColumn
-        {
-            role: "print_core"
-            title: "Print Core"
-            width: Math.floor(table.width * 0.2)
-        }
-        TableViewColumn
-        {
-            role: "build_plate"
-            title: "Build Plate"
-            width: Math.floor(table.width * 0.225)
-        }
-        TableViewColumn
-        {
-            role: "support_material"
-            title: "Support"
-            width: Math.floor(table.width * 0.225)
-        }
-        TableViewColumn
-        {
-            role: "quality"
-            title: "Quality"
-            width: Math.floor(table.width * 0.1)
+            TableViewColumn
+            {
+                role: "machine"
+                title: "Machine"
+                width: Math.floor(table.width * 0.25)
+                delegate: columnTextDelegate
+            }
+            TableViewColumn
+            {
+                role: "print_core"
+                title: "Print Core"
+                width: Math.floor(table.width * 0.2)
+            }
+            TableViewColumn
+            {
+                role: "build_plate"
+                title: "Build Plate"
+                width: Math.floor(table.width * 0.225)
+            }
+            TableViewColumn
+            {
+                role: "support_material"
+                title: "Support"
+                width: Math.floor(table.width * 0.225)
+            }
+            TableViewColumn
+            {
+                role: "quality"
+                title: "Quality"
+                width: Math.floor(table.width * 0.1)
+            }
         }
     }
 
     Label
     {
         id: technical_data_sheet
-        anchors.top: table.bottom
+        anchors.top: combatibilityItem.bottom
         anchors.topMargin: UM.Theme.getSize("default_margin").height / 2
         visible: base.technicalDataSheetUrl !== undefined
+        height: visible ? contentHeight : 0
         text:
         {
             if (base.technicalDataSheetUrl !== undefined)

+ 5 - 0
plugins/VersionUpgrade/VersionUpgrade33to34/__init__.py

@@ -11,6 +11,7 @@ def getMetaData():
             # From                           To                              Upgrade function
             ("definition_changes", 3000004): ("definition_changes", 4000004, upgrade.upgradeInstanceContainer),
             ("quality_changes", 3000004):    ("quality_changes", 4000004,    upgrade.upgradeInstanceContainer),
+            ("quality", 3000004):            ("quality", 4000004,            upgrade.upgradeInstanceContainer),
             ("user", 3000004):               ("user", 4000004,               upgrade.upgradeInstanceContainer),
         },
         "sources": {
@@ -22,6 +23,10 @@ def getMetaData():
                 "get_version": upgrade.getCfgVersion,
                 "location": {"./quality_changes"}
             },
+            "quality": {
+                "get_version": upgrade.getCfgVersion,
+                "location": {"./quality"}
+            },
             "user": {
                 "get_version": upgrade.getCfgVersion,
                 "location": {"./user"}

+ 5 - 0
plugins/VersionUpgrade/VersionUpgrade34to35/__init__.py

@@ -13,6 +13,7 @@ def getMetaData():
 
             ("definition_changes", 4000004): ("definition_changes", 4000005, upgrade.upgradeInstanceContainer),
             ("quality_changes", 4000004):    ("quality_changes", 4000005,    upgrade.upgradeInstanceContainer),
+            ("quality", 4000004):            ("quality", 4000005,            upgrade.upgradeInstanceContainer),
             ("user", 4000004):               ("user", 4000005,               upgrade.upgradeInstanceContainer),
 
             ("machine_stack", 4000004):      ("machine_stack", 4000005,      upgrade.upgradeStack),
@@ -39,6 +40,10 @@ def getMetaData():
                 "get_version": upgrade.getCfgVersion,
                 "location": {"./quality_changes"}
             },
+            "quality": {
+                "get_version": upgrade.getCfgVersion,
+                "location": {"./quality"}
+            },
             "user": {
                 "get_version": upgrade.getCfgVersion,
                 "location": {"./user"}