18
18
* Authored-by: Andrew Hayzen <andrew.hayzen@canonical.com>
21
import Ubuntu_Printing_App 1.0
22
import Ubuntu.Settings.Printers 0.1
25
readonly property var model: Printers.allPrintersWithPdf
26
readonly property bool pdfMode: printer ? printer.isPdf : true
27
readonly property var printer: {
28
if (Printers.allPrintersWithPdf.count > 0
29
&& 0 <= printerSelectedIndex
30
&& printerSelectedIndex < Printers.allPrintersWithPdf.count) {
31
Printers.allPrintersWithPdf.get(printerSelectedIndex)
36
readonly property PrinterJob printerJob: PrinterJob {
37
printerName: printer ? printer.name : ""
22
import UbuntuPrintingApp 1.0
23
import Ubuntu.Components.Extras.Printers 0.1
26
readonly property bool isEditable: isLoaded && !pdfMode && !printer.isRaw
27
readonly property bool isLoaded: printer && printer.isLoaded
28
readonly property alias model: instantiator.model
29
readonly property bool pdfMode: isLoaded && printer.isPdf
31
// This is the current printer and is preloaded
32
readonly property var printer: instantiator.printer && instantiator.printer.isLoaded ? instantiator.printer : null
34
property var printerJob: Printers.createJob("")
39
35
property int printerSelectedIndex: -1
39
model: Printers.allPrintersWithPdf
41
readonly property var printer: model
44
// Extract the printer from the Instantiator so we can use it
45
// this printer may not be loaded yet
46
readonly property var printer: {
48
&& 0 <= printerSelectedIndex
49
&& printerSelectedIndex < model.count) {
50
instantiator.objectAt(printerSelectedIndex).printer
56
// The information about the Printer is lazy loaded, this requests
57
// the loading of a Printer's information
58
function loadPrinter() {
60
Printers.loadPrinter(printer.name)
64
onPrinterChanged: loadPrinter()
66
Component.onCompleted: loadPrinter()
72
when: printer && isLoaded
73
value: printer ? printer.printer : null