summaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/platforms/cocoa/qcocoaprintersupport.mm19
-rw-r--r--src/plugins/printsupport/cups/qcupsprintersupport.cpp16
-rw-r--r--src/plugins/printsupport/cups/qcupsprintersupport_p.h2
-rw-r--r--src/plugins/printsupport/windows/qwindowsprintersupport.cpp6
4 files changed, 13 insertions, 30 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoaprintersupport.mm b/src/plugins/platforms/cocoa/qcocoaprintersupport.mm
index b77d5a20ea..ed436844cb 100644
--- a/src/plugins/platforms/cocoa/qcocoaprintersupport.mm
+++ b/src/plugins/platforms/cocoa/qcocoaprintersupport.mm
@@ -128,14 +128,13 @@ QPrinterInfo QCocoaPrinterSupport::printerInfoFromPMPrinter(const PMPrinter &pri
if (!printer)
return QPrinterInfo();
- QPrinterInfo pi = QPrinterInfo(QCFString::toQString(PMPrinterGetID(printer)));
-
- pi.d_func()->description = QCFString::toQString(PMPrinterGetName(printer));
- pi.d_func()->location = QCFString::toQString(PMPrinterGetLocation(printer));
- CFStringRef makeAndModel;
- PMPrinterGetMakeAndModelName(printer, &makeAndModel);
- pi.d_func()->makeAndModel = QCFString::toQString(makeAndModel);
- pi.d_func()->isDefault = PMPrinterIsDefault(printer);
-
- return pi;
+ QString name = QCFString::toQString(PMPrinterGetID(printer));
+ QString description = QCFString::toQString(PMPrinterGetName(printer));
+ QString location = QCFString::toQString(PMPrinterGetLocation(printer));
+ CFStringRef cfMakeAndModel;
+ PMPrinterGetMakeAndModelName(printer, &cfMakeAndModel);
+ QString makeAndModel = QCFString::toQString(cfMakeAndModel);
+ bool isDefault = PMPrinterIsDefault(printer);
+
+ return createPrinterInfo(name, description, location, makeAndModel, isDefault, 0);
}
diff --git a/src/plugins/printsupport/cups/qcupsprintersupport.cpp b/src/plugins/printsupport/cups/qcupsprintersupport.cpp
index 279c26ad72..83d4068d16 100644
--- a/src/plugins/printsupport/cups/qcupsprintersupport.cpp
+++ b/src/plugins/printsupport/cups/qcupsprintersupport.cpp
@@ -71,29 +71,17 @@ QPaintEngine *QCupsPrinterSupport::createPaintEngine(QPrintEngine *engine, QPrin
QList<QPrinter::PaperSize> QCupsPrinterSupport::supportedPaperSizes(const QPrinterInfo &printerInfo) const
{
- return QCUPSSupport::getCupsPrinterPaperSizes(printerInfoCupsPrinterIndex(printerInfo));
+ return QCUPSSupport::getCupsPrinterPaperSizes(printerIndex(printerInfo));
}
QList<QPrinterInfo> QCupsPrinterSupport::availablePrinters()
{
QList<QPrinterInfo> printers;
foreach (const QCUPSSupport::Printer &p, QCUPSSupport::availableUnixPrinters()) {
- QPrinterInfo printer(p.name);
- printer.d_func()->isDefault = p.isDefault;
- setPrinterInfoCupsPrinterIndex(&printer, p.cupsPrinterIndex);
+ QPrinterInfo printer = createPrinterInfo(p.name, QString(), QString(), QString(), p.isDefault, p.cupsPrinterIndex);
printers.append(printer);
}
return printers;
}
-int QCupsPrinterSupport::printerInfoCupsPrinterIndex(const QPrinterInfo &p)
-{
- return p.isNull() ? -1 : p.d_func()->cupsPrinterIndex;
-}
-
-void QCupsPrinterSupport::setPrinterInfoCupsPrinterIndex(QPrinterInfo *p, int index)
-{
- p->d_func()->cupsPrinterIndex = index;
-}
-
QT_END_NAMESPACE
diff --git a/src/plugins/printsupport/cups/qcupsprintersupport_p.h b/src/plugins/printsupport/cups/qcupsprintersupport_p.h
index 81887e3dd8..13b65a5cb5 100644
--- a/src/plugins/printsupport/cups/qcupsprintersupport_p.h
+++ b/src/plugins/printsupport/cups/qcupsprintersupport_p.h
@@ -60,8 +60,6 @@ public:
virtual QList<QPrinterInfo> availablePrinters();
private:
- static int printerInfoCupsPrinterIndex(const QPrinterInfo &p);
- static void setPrinterInfoCupsPrinterIndex(QPrinterInfo *p, int index);
};
QT_END_NAMESPACE
diff --git a/src/plugins/printsupport/windows/qwindowsprintersupport.cpp b/src/plugins/printsupport/windows/qwindowsprintersupport.cpp
index 476889890d..3715aa1da9 100644
--- a/src/plugins/printsupport/windows/qwindowsprintersupport.cpp
+++ b/src/plugins/printsupport/windows/qwindowsprintersupport.cpp
@@ -64,10 +64,8 @@ QWindowsPrinterSupport::QWindowsPrinterSupport()
QWin32PrintEngine::queryDefaultPrinter(defaultPrinterName, program, port);
for (uint i = 0; i < returned; ++i) {
QString printerName(QString::fromWCharArray(infoList[i].pPrinterName));
-
- QPrinterInfo printerInfo(printerName);
- if (printerInfo.printerName() == defaultPrinterName)
- printerInfo.d_ptr->isDefault = true;
+ bool isDefault = (printerName == defaultPrinterName);
+ QPrinterInfo printerInfo = createPrinterInfo(printerName, QString(), QString(), QString(), isDefault, i);
mPrinterList.append(printerInfo);
}
}