From f70924e9ccc016b979bc74bba156600639184be7 Mon Sep 17 00:00:00 2001 From: John Layt Date: Wed, 9 May 2012 23:47:14 +0100 Subject: QtPrintSupport: Add CUPS printsupport plugin Move CUPS code around to create a new CUPS printsupport plugin, this fixes QPrinterInfo for CUPS which depends on the plugin to work. It QT_NO_CUPS is defined then the plugin is not built and only Print to PDF is supported under Linux. * Move unused genericiunixprintersupport plugin to start new CUPS printsupport plugin * Split QPdfPrintEngine to create QCupsPrintEngine * Remove LPR related code from QPdfPrintEngine * Move CUPS specific code from plugin base class to derived CUPS class * Remove forcing CUPS print engine to use PDF mode as PDF is now Native * Move qt_getCupsPrinterPaperSizes from qprinterinfo_unix to QCUPSSupport * Remove qprinterinfo_unix as no longer used * Remove all QT_NO_LPR uses There is now no CUPS specific code left in printsupport/kernel except QCUPSSupport which is needed for the dialogs. Task-number: QTBUG-23060 Change-Id: Ie8fa4512a2424edc8943068e0fa9fb714cc42db9 Reviewed-by: Teemu Katajisto Reviewed-by: Lars Knoll Reviewed-by: John Layt --- src/printsupport/dialogs/dialogs.pri | 1 + src/printsupport/dialogs/qpagesetupdialog_unix.cpp | 3 +-- src/printsupport/dialogs/qprintdialog_unix.cpp | 25 ++-------------------- 3 files changed, 4 insertions(+), 25 deletions(-) (limited to 'src/printsupport/dialogs') diff --git a/src/printsupport/dialogs/dialogs.pri b/src/printsupport/dialogs/dialogs.pri index 2b92f43bec..c9acae7767 100644 --- a/src/printsupport/dialogs/dialogs.pri +++ b/src/printsupport/dialogs/dialogs.pri @@ -21,6 +21,7 @@ win32 { } unix:!mac { + INCLUDEPATH += $$QT_SOURCE_TREE/src/plugins/printsupport/cups HEADERS += dialogs/qpagesetupdialog_unix_p.h SOURCES += dialogs/qprintdialog_unix.cpp \ dialogs/qpagesetupdialog_unix.cpp diff --git a/src/printsupport/dialogs/qpagesetupdialog_unix.cpp b/src/printsupport/dialogs/qpagesetupdialog_unix.cpp index 90fb3ef542..ac8338b739 100644 --- a/src/printsupport/dialogs/qpagesetupdialog_unix.cpp +++ b/src/printsupport/dialogs/qpagesetupdialog_unix.cpp @@ -52,11 +52,10 @@ #include #include #include +#include #if !defined(QT_NO_CUPS) && !defined(QT_NO_LIBRARY) # include -# include -# include #endif diff --git a/src/printsupport/dialogs/qprintdialog_unix.cpp b/src/printsupport/dialogs/qprintdialog_unix.cpp index 9633c1358e..49d523e2eb 100644 --- a/src/printsupport/dialogs/qprintdialog_unix.cpp +++ b/src/printsupport/dialogs/qprintdialog_unix.cpp @@ -52,6 +52,7 @@ #include #include #include +#include #include @@ -62,14 +63,11 @@ #if !defined(QT_NO_CUPS) && !defined(QT_NO_LIBRARY) # include -# include -# include #else # include +# include #endif -#include - QT_BEGIN_NAMESPACE class QOptionTreeItem; @@ -165,7 +163,6 @@ public: Ui::QPrintWidget widget; QAbstractPrintDialog * q; QPrinter *printer; - QList lprPrinters; void updateWidget(); private: @@ -664,14 +661,6 @@ QUnixPrintWidgetPrivate::QUnixPrintWidgetPrivate(QUnixPrintWidget *p) widget.properties->setEnabled(true); } currentPrinterIndex = cups->currentPrinterIndex(); - } else { -#endif - currentPrinterIndex = qt_getLprPrinters(lprPrinters); - // populating printer combo - QList::const_iterator i = lprPrinters.constBegin(); - for(; i != lprPrinters.constEnd(); ++i) - widget.printers->addItem((*i).name); -#if !defined(QT_NO_CUPS) && !defined(QT_NO_LIBRARY) } #endif @@ -783,16 +772,6 @@ void QUnixPrintWidgetPrivate::_q_printerChanged(int index) } else { if (optionsPane) optionsPane->selectPrinter(0); -#endif - if (lprPrinters.count() > 0) { - QString type = lprPrinters.at(index).name + QLatin1Char('@') + lprPrinters.at(index).host; - if (!lprPrinters.at(index).comment.isEmpty()) - type += QLatin1String(", ") + lprPrinters.at(index).comment; - widget.type->setText(type); - if (propertiesDialog) - propertiesDialog->selectPrinter(); - } -#if !defined(QT_NO_CUPS) && !defined(QT_NO_LIBRARY) } #endif } -- cgit v1.2.3