From df3485aaec04c6ba5fb080e47a7eacd8c0e9237f Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Wed, 13 Feb 2019 13:37:10 +0100 Subject: [PATCH] Add a where to buy link underneath the install button for material CURA-6148 --- .../resources/qml/ToolboxDetailTile.qml | 2 +- .../qml/ToolboxDetailTileActions.qml | 22 +++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/plugins/Toolbox/resources/qml/ToolboxDetailTile.qml b/plugins/Toolbox/resources/qml/ToolboxDetailTile.qml index 43f97baf3f..c7bb1f60ac 100644 --- a/plugins/Toolbox/resources/qml/ToolboxDetailTile.qml +++ b/plugins/Toolbox/resources/qml/ToolboxDetailTile.qml @@ -54,7 +54,7 @@ Item anchors.top: tile.top width: childrenRect.width height: childrenRect.height - + packageData: model } ToolboxCompatibilityChart diff --git a/plugins/Toolbox/resources/qml/ToolboxDetailTileActions.qml b/plugins/Toolbox/resources/qml/ToolboxDetailTileActions.qml index 87fc5d6955..60fe095537 100644 --- a/plugins/Toolbox/resources/qml/ToolboxDetailTileActions.qml +++ b/plugins/Toolbox/resources/qml/ToolboxDetailTileActions.qml @@ -12,6 +12,7 @@ Column property bool installed: toolbox.isInstalled(model.id) property bool canUpdate: toolbox.canUpdate(model.id) property bool loginRequired: model.login_required && !Cura.API.account.isLoggedIn + property var packageData width: UM.Theme.getSize("toolbox_action_button").width spacing: UM.Theme.getSize("narrow_margin").height @@ -66,6 +67,27 @@ Column } } + Label + { + property var whereToBuyUrl: + { + var pg_name = "whereToBuy" + return (pg_name in packageData.links) ? packageData.links[pg_name] : undefined + } + + renderType: Text.NativeRendering + text: catalog.i18nc("@label:The string between and is the highlighted link", "Buy material spools") + linkColor: UM.Theme.getColor("text_link") + visible: whereToBuyUrl != undefined + font: UM.Theme.getFont("default") + color: UM.Theme.getColor("text") + MouseArea + { + anchors.fill: parent + onClicked: Qt.openUrlExternally(parent.whereToBuyUrl) + } + } + ToolboxProgressButton { id: updateButton