123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142 |
- // Copyright (c) 2022 UltiMaker
- // Cura is released under the terms of the LGPLv3 or higher.
- import QtQuick 2.10
- import QtQuick.Controls 2.3
- import QtQuick.Layouts 1.3
- import UM 1.5 as UM
- import Cura 1.1 as Cura
- Control
- {
- UM.I18nCatalog { id: catalog; name: "cura" }
- property var goToThirdPartyPrinter
- signal cloudPrintersDetected(bool newCloudPrintersDetected)
- Component.onCompleted: CuraApplication.getDiscoveredCloudPrintersModel().cloudPrintersDetectedChanged.connect(cloudPrintersDetected)
- onCloudPrintersDetected: function(newCloudPrintersDetected)
- {
- if(newCloudPrintersDetected)
- {
- base.goToPage("add_cloud_printers")
- }
- }
- contentItem: ColumnLayout
- {
- Layout.fillWidth: true
- UM.Label
- {
- Layout.fillWidth: true
- text: catalog.i18nc("@label", "New UltiMaker printers can be connected to Digital Factory and monitored remotely.")
- wrapMode: Text.WordWrap
- }
- RowLayout
- {
- Layout.alignment: Qt.AlignHCenter
- Layout.fillWidth: true
- Item
- {
- Layout.fillWidth: true
- Layout.minimumWidth: childrenRect.width
- Layout.preferredHeight: childrenRect.height
- Image
- {
- anchors.right: parent.right
- source: UM.Theme.getImage("add_printer")
- Layout.preferredWidth: 200 * screenScaleFactor
- Layout.preferredHeight: 200 * screenScaleFactor
- }
- }
- ColumnLayout
- {
- Layout.fillHeight: true
- Layout.fillWidth: true
- Layout.alignment: Qt.AlignVCenter
- spacing: UM.Theme.getSize("default_margin").height
- UM.Label
- {
- Layout.fillWidth: true
- Layout.alignment: Qt.AlignTop
- wrapMode: Text.WordWrap
- font: UM.Theme.getFont("default_bold")
- text: catalog.i18nc("@label", "If you are trying to add a new UltiMaker printer to Cura")
- }
- ColumnLayout
- {
- spacing: 0
- Layout.fillWidth: true
- Repeater {
- model: [
- catalog.i18nc("@info", "Sign in into UltiMaker Digital Factory"),
- catalog.i18nc("@info", "Follow the procedure to add a new printer"),
- catalog.i18nc("@info", "Your new printer will automatically appear in Cura"),
- ]
- UM.Label
- {
- Layout.alignment: Qt.AlignTop
- Layout.fillWidth: true
- wrapMode: Text.WordWrap
- text: `${index + 1}. ${modelData}`
- }
- }
- }
- Cura.TertiaryButton
- {
- id: learnMoreButton
- Layout.fillWidth: true
- Layout.alignment: Qt.AlignTop
- leftPadding: 0
- text: catalog.i18nc("@button", "Learn more")
- iconSource: UM.Theme.getIcon("LinkExternal")
- isIconOnRightSide: true
- textFont: UM.Theme.getFont("small")
- onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=onboarding-add-printer")
- }
- }
- }
- Control
- {
- Layout.alignment: Qt.AlignBottom
- Layout.fillWidth: true
- contentItem: RowLayout
- {
- Cura.SecondaryButton
- {
- id: addLocalPrinterButton
- Layout.alignment: Qt.AlignLeft
- text: catalog.i18nc("@button", "Add local printer")
- onClicked: goToThirdPartyPrinter()
- }
- Cura.PrimaryButton
- {
- id: signInButton
- Layout.alignment: Qt.AlignRight
- text: catalog.i18nc("@button", "Sign in to Digital Factory")
- onClicked: function()
- {
- Qt.openUrlExternally("https://digitalfactory.ultimaker.com/app/printers?add_printer=true&utm_source=cura&utm_medium=software&utm_campaign=onboarding-add-printer")
- text = catalog.i18nc("@button", "Waiting for new printers")
- busy = true;
- enabled = false;
- Cura.API.account.isLoggedIn? Cura.API.account.sync():Cura.API.account.login();
- }
- }
- }
- }
- }
- }
|