summaryrefslogtreecommitdiffstats
path: root/src/printsupport
diff options
context:
space:
mode:
authorJohn Layt <jlayt@kde.org>2012-05-14 21:02:13 +0100
committerQt by Nokia <qt-info@nokia.com>2012-05-29 23:48:15 +0200
commit44f7df439f729aff50f9d1b9dbba06391f151604 (patch)
treefbe08fcf66c619b0677d6be33b8b6fbc10d4002b /src/printsupport
parentb7104d6645e25892d85e6e0aad6ddebbd2babdc0 (diff)
QtPrintSupport - Add QPrinterInfo api for more printer details
A previous commit changed the Mac behaviour for printerName() from returning the CUPS Description to returning the CUPS Name. In case anyone was relying on this for a human-readable name add new api to return the CUPS Description. Also add the Location and Make and Model which will be used in the Unix print dialog instead of directly calling CUPS. Change-Id: I9901bf8d6368466adf111580f5db5a3f01ca9170 Reviewed-by: Teemu Katajisto <teemu.katajisto@digia.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: John Layt <jlayt@kde.org>
Diffstat (limited to 'src/printsupport')
-rw-r--r--src/printsupport/kernel/qprinterinfo.cpp41
-rw-r--r--src/printsupport/kernel/qprinterinfo.h5
-rw-r--r--src/printsupport/kernel/qprinterinfo_p.h3
3 files changed, 49 insertions, 0 deletions
diff --git a/src/printsupport/kernel/qprinterinfo.cpp b/src/printsupport/kernel/qprinterinfo.cpp
index dc60d7a50f..5ce0165a15 100644
--- a/src/printsupport/kernel/qprinterinfo.cpp
+++ b/src/printsupport/kernel/qprinterinfo.cpp
@@ -137,6 +137,9 @@ QPrinterInfo &QPrinterInfo::operator=(const QPrinterInfo &other)
/*!
Returns the name of the printer.
+ This is a unique id to identify the printer and may not be human-readable.
+
+ \sa QPrinterInfo::description()
\sa QPrinter::setPrinterName()
*/
QString QPrinterInfo::printerName() const
@@ -146,6 +149,44 @@ QString QPrinterInfo::printerName() const
}
/*!
+ \fn QString QPrinterInfo::description()
+ \since 5.0
+
+ Returns the human-readable description of the printer.
+
+ \sa QPrinterInfo::printerName()
+*/
+QString QPrinterInfo::description() const
+{
+ const Q_D(QPrinterInfo);
+ return d->description;
+}
+
+/*!
+ \fn QString QPrinterInfo::location()
+ \since 5.0
+
+ Returns the human-readable location of the printer.
+*/
+QString QPrinterInfo::location() const
+{
+ const Q_D(QPrinterInfo);
+ return d->location;
+}
+
+/*!
+ \fn QString QPrinterInfo::makeAndModel()
+ \since 5.0
+
+ Returns the human-readable make and model of the printer.
+*/
+QString QPrinterInfo::makeAndModel() const
+{
+ const Q_D(QPrinterInfo);
+ return d->makeAndModel;
+}
+
+/*!
Returns whether this QPrinterInfo object holds a printer definition.
An empty QPrinterInfo object could result for example from calling
diff --git a/src/printsupport/kernel/qprinterinfo.h b/src/printsupport/kernel/qprinterinfo.h
index 8b3ab448c8..634b68ceb0 100644
--- a/src/printsupport/kernel/qprinterinfo.h
+++ b/src/printsupport/kernel/qprinterinfo.h
@@ -65,8 +65,13 @@ public:
QPrinterInfo &operator=(const QPrinterInfo &other);
QString printerName() const;
+ QString description() const;
+ QString location() const;
+ QString makeAndModel() const;
+
bool isNull() const;
bool isDefault() const;
+
QList<QPrinter::PaperSize> supportedPaperSizes() const;
static QList<QPrinterInfo> availablePrinters();
diff --git a/src/printsupport/kernel/qprinterinfo_p.h b/src/printsupport/kernel/qprinterinfo_p.h
index ee139762c4..6e1c088f79 100644
--- a/src/printsupport/kernel/qprinterinfo_p.h
+++ b/src/printsupport/kernel/qprinterinfo_p.h
@@ -77,6 +77,9 @@ public:
static QPrinterInfoPrivate shared_null;
QString name;
+ QString description;
+ QString location;
+ QString makeAndModel;
bool isDefault;
#if !defined(QT_NO_CUPS) && !defined(QT_NO_LIBRARY)