diff options
author | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-10-24 12:48:39 +0200 |
---|---|---|
committer | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-10-24 12:48:42 +0200 |
commit | 840f6a40e6218992b5b9d451ee3c0886a4846c89 (patch) | |
tree | 2b808decc7adf5218b810d2de6b45c5a8b4cfc42 /src/printsupport/kernel | |
parent | 109bf980b37fed405c6c1eb14cb9c83ff897e389 (diff) | |
parent | 2e3870fe37d36ccf4bd84eb90e1d5e08ad00c1bc (diff) |
Merge remote-tracking branch 'origin/stable' into dev
Change-Id: Ie56539b2e0be611a363b5f15ae5412a78d6945a2
Diffstat (limited to 'src/printsupport/kernel')
-rw-r--r-- | src/printsupport/kernel/qcups.cpp | 15 | ||||
-rw-r--r-- | src/printsupport/kernel/qcups_p.h | 1 |
2 files changed, 15 insertions, 1 deletions
diff --git a/src/printsupport/kernel/qcups.cpp b/src/printsupport/kernel/qcups.cpp index 643ffef192..e237d44dcd 100644 --- a/src/printsupport/kernel/qcups.cpp +++ b/src/printsupport/kernel/qcups.cpp @@ -144,11 +144,13 @@ QCUPSSupport::QCUPSSupport() for (int i = 0; i < prnCount; ++i) { if (printers[i].is_default) { currPrinterIndex = i; - setCurrentPrinter(i); break; } } + if (prnCount > 0) + setCurrentPrinter(currPrinterIndex); + #ifndef QT_NO_TEXTCODEC cups_lang_t *cupsLang = _cupsLangGet(0); codec = QTextCodec::codecForName(_cupsLangEncoding(cupsLang)); @@ -213,6 +215,17 @@ const ppd_file_t* QCUPSSupport::setCurrentPrinter(int index) return currPPD; } +const ppd_file_t* QCUPSSupport::setCurrentPrinter(const QString &printerName) +{ + Q_FOREACH (const QCUPSSupport::Printer &printer, QCUPSSupport::availableUnixPrinters()) { + if (printer.name == printerName) { + return setCurrentPrinter(printer.cupsPrinterIndex); + } + } + + return 0; +} + int QCUPSSupport::currentPrinterIndex() const { return currPrinterIndex; diff --git a/src/printsupport/kernel/qcups_p.h b/src/printsupport/kernel/qcups_p.h index 726bc7eba6..95ca323c22 100644 --- a/src/printsupport/kernel/qcups_p.h +++ b/src/printsupport/kernel/qcups_p.h @@ -149,6 +149,7 @@ public: const cups_dest_t* availablePrinters() const; int currentPrinterIndex() const; const ppd_file_t* setCurrentPrinter(int index); + const ppd_file_t* setCurrentPrinter(const QString &printerName); const ppd_file_t* currentPPD() const; const ppd_option_t* ppdOption(const char *key) const; |