diff --git a/resources/qml/AddMachineWizard.qml b/resources/qml/AddMachineWizard.qml index 4a59f798a5..5f88be3e13 100644 --- a/resources/qml/AddMachineWizard.qml +++ b/resources/qml/AddMachineWizard.qml @@ -8,12 +8,20 @@ import QtQuick.Window 2.1 import UM 1.0 as UM +<<<<<<< Updated upstream UM.Dialog { +======= +UM.Wizard{ +>>>>>>> Stashed changes id: base + property bool printer: true + file: "ultimaker2.json" + firstRun: printer ? false : true //: Add Printer dialog title title: qsTr("Add Printer"); +<<<<<<< Updated upstream ColumnLayout { @@ -124,4 +132,6 @@ UM.Dialog onClicked: base.visible = false; } ] +======= +>>>>>>> Stashed changes } diff --git a/resources/qml/Cura.qml b/resources/qml/Cura.qml index 35a1ad5e6c..a2f3f20763 100644 --- a/resources/qml/Cura.qml +++ b/resources/qml/Cura.qml @@ -368,7 +368,7 @@ UM.MainWindow { resetAll.onTriggered: Printer.resetAll() reloadAll.onTriggered: Printer.reloadAll() - addMachine.onTriggered: addMachine.visible = true; + addMachine.onTriggered: addMachineWizard.visible = true; preferences.onTriggered: preferences.visible = true; configureMachines.onTriggered: { preferences.visible = true; preferences.setPage(2); } @@ -460,16 +460,20 @@ UM.MainWindow { } AddMachineWizard { - id: addMachine; + id: addMachineWizard } + AboutDialog { id: aboutDialog } Connections { target: Printer - onRequestAddPrinter: addMachine.visible = true; + onRequestAddPrinter: { + addMachineWizard.visible = true + addMachineWizard.printer = false + } onWriteToLocalFileRequested: saveDialog.open(); } diff --git a/resources/qml/WizardPages/AddMachine.qml b/resources/qml/WizardPages/AddMachine.qml new file mode 100644 index 0000000000..c6be542713 --- /dev/null +++ b/resources/qml/WizardPages/AddMachine.qml @@ -0,0 +1,89 @@ +// Copyright (c) 2015 Ultimaker B.V. +// Cura is released under the terms of the AGPLv3 or higher. + +import QtQuick 2.2 +import QtQuick.Controls 1.1 +import QtQuick.Layouts 1.1 +import QtQuick.Window 2.1 + +import UM 1.0 as UM +import ".." + +ColumnLayout { + id: wizardPage + property string title + anchors.fill: parent + signal openFile(string fileName) + signal closeWizard() + + Connections { + target: rootElement + onFinalClicked: {//You can add functions here that get triggered when the final button is clicked in the wizard-element + saveMachine() + } + } + + Label { + text: parent.title + font.pointSize: 18; + } + + Label { + //: Add Printer wizard page description + text: qsTr("Please select the type of printer:"); + } + + ScrollView { + Layout.fillWidth: true; + ListView { + id: machineList; + model: UM.Models.availableMachinesModel + delegate: RadioButton { + exclusiveGroup: printerGroup; + checked: ListView.view.currentIndex == index ? true : false + text: model.name; + onClicked: { + ListView.view.currentIndex = index; + + } + } + } + } + + Label { + //: Add Printer wizard field label + text: qsTr("Printer Name:"); + } + + TextField { id: machineName; Layout.fillWidth: true; text: machineList.model.getItem(machineList.currentIndex).name } + + Item { Layout.fillWidth: true; Layout.fillHeight: true; } + + ExclusiveGroup { id: printerGroup; } + + function getSpecialMachineType(machineId){ + for (var i = 0; i < UM.Models.addMachinesModel.rowCount(); i++) { + if (UM.Models.addMachinesModel.getItem(i).id == machineId){ + return UM.Models.addMachinesModel.getItem(i).file + } + } + } + + function saveMachine(){ + if(machineList.currentIndex != -1) { + UM.Models.availableMachinesModel.createMachine(machineList.currentIndex, machineName.text) + + var chosenMachineType = UM.Models.availableMachinesModel.getItem(machineList.currentIndex).type + var originalMachineType = getSpecialMachineType("ultimaker_original") + var orginalPlusMachineType = getSpecialMachineType("ultimaker_original_plus") + + if (chosenMachineType == originalMachineType) + wizardPage.openFile(originalMachineType) + if (chosenMachineType == orginalPlusMachineType) + wizardPage.openFile(orginalPlusMachineType) + else + wizardPage.closeWizard() + } + } +} + diff --git a/resources/qml/WizardPages/Bedleveling.qml b/resources/qml/WizardPages/Bedleveling.qml new file mode 100644 index 0000000000..eb8207b37d --- /dev/null +++ b/resources/qml/WizardPages/Bedleveling.qml @@ -0,0 +1,52 @@ +// Copyright (c) 2015 Ultimaker B.V. +// Cura is released under the terms of the AGPLv3 or higher. + +import QtQuick 2.2 +import QtQuick.Controls 1.1 +import QtQuick.Layouts 1.1 +import QtQuick.Window 2.1 + +import UM 1.0 as UM + +ColumnLayout { + property string title + anchors.fill: parent; + + Label { + text: parent.title + font.pointSize: 18; + } + + Label { + //: Add Printer wizard page description + text: qsTr("Please select the type of printer:"); + } + + ScrollView { + Layout.fillWidth: true; + + ListView { + id: machineList; + model: UM.Models.availableMachinesModel + delegate: RadioButton { + exclusiveGroup: printerGroup; + text: model.name; + onClicked: { + ListView.view.currentIndex = index; + + } + } + } + } + + Label { + //: Add Printer wizard field label + text: qsTr("Printer Name:"); + } + + TextField { id: machineName; Layout.fillWidth: true; text: machineList.model.getItem(machineList.currentIndex).name } + + Item { Layout.fillWidth: true; Layout.fillHeight: true; } + + ExclusiveGroup { id: printerGroup; } +} \ No newline at end of file diff --git a/resources/qml/WizardPages/SelectUpgradedParts.qml b/resources/qml/WizardPages/SelectUpgradedParts.qml new file mode 100644 index 0000000000..eb8207b37d --- /dev/null +++ b/resources/qml/WizardPages/SelectUpgradedParts.qml @@ -0,0 +1,52 @@ +// Copyright (c) 2015 Ultimaker B.V. +// Cura is released under the terms of the AGPLv3 or higher. + +import QtQuick 2.2 +import QtQuick.Controls 1.1 +import QtQuick.Layouts 1.1 +import QtQuick.Window 2.1 + +import UM 1.0 as UM + +ColumnLayout { + property string title + anchors.fill: parent; + + Label { + text: parent.title + font.pointSize: 18; + } + + Label { + //: Add Printer wizard page description + text: qsTr("Please select the type of printer:"); + } + + ScrollView { + Layout.fillWidth: true; + + ListView { + id: machineList; + model: UM.Models.availableMachinesModel + delegate: RadioButton { + exclusiveGroup: printerGroup; + text: model.name; + onClicked: { + ListView.view.currentIndex = index; + + } + } + } + } + + Label { + //: Add Printer wizard field label + text: qsTr("Printer Name:"); + } + + TextField { id: machineName; Layout.fillWidth: true; text: machineList.model.getItem(machineList.currentIndex).name } + + Item { Layout.fillWidth: true; Layout.fillHeight: true; } + + ExclusiveGroup { id: printerGroup; } +} \ No newline at end of file diff --git a/resources/qml/WizardPages/UltimakerCheckup.qml b/resources/qml/WizardPages/UltimakerCheckup.qml new file mode 100644 index 0000000000..eb8207b37d --- /dev/null +++ b/resources/qml/WizardPages/UltimakerCheckup.qml @@ -0,0 +1,52 @@ +// Copyright (c) 2015 Ultimaker B.V. +// Cura is released under the terms of the AGPLv3 or higher. + +import QtQuick 2.2 +import QtQuick.Controls 1.1 +import QtQuick.Layouts 1.1 +import QtQuick.Window 2.1 + +import UM 1.0 as UM + +ColumnLayout { + property string title + anchors.fill: parent; + + Label { + text: parent.title + font.pointSize: 18; + } + + Label { + //: Add Printer wizard page description + text: qsTr("Please select the type of printer:"); + } + + ScrollView { + Layout.fillWidth: true; + + ListView { + id: machineList; + model: UM.Models.availableMachinesModel + delegate: RadioButton { + exclusiveGroup: printerGroup; + text: model.name; + onClicked: { + ListView.view.currentIndex = index; + + } + } + } + } + + Label { + //: Add Printer wizard field label + text: qsTr("Printer Name:"); + } + + TextField { id: machineName; Layout.fillWidth: true; text: machineList.model.getItem(machineList.currentIndex).name } + + Item { Layout.fillWidth: true; Layout.fillHeight: true; } + + ExclusiveGroup { id: printerGroup; } +} \ No newline at end of file diff --git a/resources/qml/WizardPages/UpgradeFirmware.qml b/resources/qml/WizardPages/UpgradeFirmware.qml new file mode 100644 index 0000000000..9369df6e42 --- /dev/null +++ b/resources/qml/WizardPages/UpgradeFirmware.qml @@ -0,0 +1,52 @@ +// Copyright (c) 2015 Ultimaker B.V. +// Cura is released under the terms of the AGPLv3 or higher. + +import QtQuick 2.2 +import QtQuick.Controls 1.1 +import QtQuick.Layouts 1.1 +import QtQuick.Window 2.1 + +import UM 1.0 as UM + +ColumnLayout { + property string title + anchors.fill: parent; + signal openFile(string fileName) + + Label { + text: parent.title + font.pointSize: 18; + } + + Label { + //: Add Printer wizard page description + text: qsTr("Please select the type of printer:"); + } + + ScrollView { + Layout.fillWidth: true; + + ListView { + id: machineList; + model: UM.Models.availableMachinesModel + delegate: RadioButton { + exclusiveGroup: printerGroup; + text: model.name; + onClicked: { + ListView.view.currentIndex = index; + } + } + } + } + + Label { + //: Add Printer wizard field label + text: qsTr("Printer Name:"); + } + + TextField { id: machineName; Layout.fillWidth: true; text: machineList.model.getItem(machineList.currentIndex).name } + + Item { Layout.fillWidth: true; Layout.fillHeight: true; } + + ExclusiveGroup { id: printerGroup; } +} \ No newline at end of file diff --git a/resources/settings/fdmprinter.json b/resources/settings/fdmprinter.json index 7d7c396228..62133f1858 100644 --- a/resources/settings/fdmprinter.json +++ b/resources/settings/fdmprinter.json @@ -1,6 +1,13 @@ { "visible": false, +<<<<<<< Updated upstream "manufacturer": "other", +======= + "add_pages": [ + {"page": "AddMachine", "title": "Add new printer"} + ], + +>>>>>>> Stashed changes "machine_settings": { "machine_start_gcode": { "default": "G28 ; Home\nG1 Z15.0 F6000 ;move the platform down 15mm\n;Prime the extruder\nG92 E0\nG1 F200 E3\nG92 E0" diff --git a/resources/settings/ultimaker_original.json b/resources/settings/ultimaker_original.json index 4fd921466f..a517e6e244 100644 --- a/resources/settings/ultimaker_original.json +++ b/resources/settings/ultimaker_original.json @@ -7,6 +7,13 @@ "inherits": "fdmprinter.json", + "add_pages": [ + {"page": "SelectUpgradedParts", "title": "Select Upgraded Parts"}, + {"page": "UpgradeFirmware", "title": "Upgrade Ultimaker Firmware"}, + {"page": "UltimakerCheckup", "title": "Ultimaker Checkup"}, + {"page": "Bedleveling", "title": "Bedleveling Wizard"} + ], + "machine_settings": { "machine_width": { "default": 205 }, "machine_height": { "default": 200 },