123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- // Copyright (c) 2018 Ultimaker B.V.
- // Cura is released under the terms of the LGPLv3 or higher.
- import QtQuick 2.2
- import QtQuick.Window 2.2
- import QtQuick.Controls 1.2
- import UM 1.1 as UM
- UM.Dialog
- {
- id: base;
- minimumWidth: 500 * screenScaleFactor
- minimumHeight: 140 * screenScaleFactor
- maximumWidth: minimumWidth
- maximumHeight: minimumHeight
- width: minimumWidth
- height: minimumHeight
- visible: true
- modality: Qt.ApplicationModal
- onVisibleChanged:
- {
- if(visible)
- {
- resetPrintersModel()
- }
- }
- title: catalog.i18nc("@title:window", "Print over network")
- property var printersModel: ListModel{}
- function resetPrintersModel() {
- printersModel.clear()
- printersModel.append({ name: "Automatic", key: ""})
- for (var index in OutputDevice.printers)
- {
- printersModel.append({name: OutputDevice.printers[index].name, key: OutputDevice.printers[index].key})
- }
- }
- Column
- {
- id: printerSelection
- anchors.fill: parent
- anchors.top: parent.top
- anchors.topMargin: UM.Theme.getSize("default_margin").height
- anchors.leftMargin: UM.Theme.getSize("default_margin").width
- anchors.rightMargin: UM.Theme.getSize("default_margin").width
- height: 50 * screenScaleFactor
- Label
- {
- id: manualPrinterSelectionLabel
- anchors
- {
- left: parent.left
- topMargin: UM.Theme.getSize("default_margin").height
- right: parent.right
- }
- text: catalog.i18nc("@label", "Printer selection")
- wrapMode: Text.Wrap
- height: 20 * screenScaleFactor
- }
- ComboBox
- {
- id: printerSelectionCombobox
- model: base.printersModel
- textRole: "name"
- width: parent.width
- height: 40 * screenScaleFactor
- Behavior on height { NumberAnimation { duration: 100 } }
- }
- SystemPalette
- {
- id: palette
- }
- UM.I18nCatalog { id: catalog; name: "cura"; }
- }
- leftButtons: [
- Button
- {
- text: catalog.i18nc("@action:button","Cancel")
- enabled: true
- onClicked: {
- base.visible = false;
- printerSelectionCombobox.currentIndex = 0
- OutputDevice.cancelPrintSelection()
- }
- }
- ]
- rightButtons: [
- Button
- {
- text: catalog.i18nc("@action:button","Print")
- enabled: true
- onClicked: {
- base.visible = false;
- OutputDevice.selectPrinter(printerSelectionCombobox.model.get(printerSelectionCombobox.currentIndex).key)
- // reset to defaults
- printerSelectionCombobox.currentIndex = 0
- }
- }
- ]
- }
|