diff options
author | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-12-16 16:59:33 +0100 |
---|---|---|
committer | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-12-16 16:59:33 +0100 |
commit | 3f3be55835427ea9f1bbcc046e05ee538ca214d7 (patch) | |
tree | 09d1f54d114855c2b06cc505dfbf74c5890c8419 /src/printsupport | |
parent | ae293c1cb220847194fba6dcebdbb9194837bb56 (diff) | |
parent | 9764f8602719676d1fa15e6fd1e7980af16bfc63 (diff) |
Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
src/gui/kernel/qplatformtheme.h
tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp
tests/auto/widgets/widgets/qspinbox/tst_qspinbox.cpp
Change-Id: Iecd3343d6a050b8764f78d809c4a1532aeba69e5
Diffstat (limited to 'src/printsupport')
-rw-r--r-- | src/printsupport/dialogs/qpagesetupdialog_unix.cpp | 3 | ||||
-rw-r--r-- | src/printsupport/dialogs/qprintdialog.h | 1 | ||||
-rw-r--r-- | src/printsupport/dialogs/qprintdialog_unix.cpp | 20 | ||||
-rw-r--r-- | src/printsupport/kernel/qprintengine_win.cpp | 4 |
4 files changed, 8 insertions, 20 deletions
diff --git a/src/printsupport/dialogs/qpagesetupdialog_unix.cpp b/src/printsupport/dialogs/qpagesetupdialog_unix.cpp index 8809b52751..c1b9828a23 100644 --- a/src/printsupport/dialogs/qpagesetupdialog_unix.cpp +++ b/src/printsupport/dialogs/qpagesetupdialog_unix.cpp @@ -457,9 +457,6 @@ void QPageSetupWidget::selectPrinter() unitChanged(widget.unit->currentIndex()); m_pagePreview->setMargins(m_leftMargin, m_topMargin, m_rightMargin, m_bottomMargin); - - // setup printer here the first time - setupPrinter(); } void QPageSetupWidget::selectPdfPsPrinter(const QPrinter *p) diff --git a/src/printsupport/dialogs/qprintdialog.h b/src/printsupport/dialogs/qprintdialog.h index c822aa0533..886cd1e08d 100644 --- a/src/printsupport/dialogs/qprintdialog.h +++ b/src/printsupport/dialogs/qprintdialog.h @@ -106,7 +106,6 @@ Q_SIGNALS: private: #if defined (Q_OS_UNIX) && !defined(Q_OS_MAC) - Q_PRIVATE_SLOT(d_func(), void _q_chbPrintLastFirstToggled(bool)) Q_PRIVATE_SLOT(d_func(), void _q_togglePageSetCombo(bool)) Q_PRIVATE_SLOT(d_func(), void _q_collapseOrExpandDialog()) # if !defined(QT_NO_MESSAGEBOX) diff --git a/src/printsupport/dialogs/qprintdialog_unix.cpp b/src/printsupport/dialogs/qprintdialog_unix.cpp index fe7e43814c..a903d170f2 100644 --- a/src/printsupport/dialogs/qprintdialog_unix.cpp +++ b/src/printsupport/dialogs/qprintdialog_unix.cpp @@ -203,7 +203,6 @@ public: void selectPrinter(const QPrinter::OutputFormat outputFormat); - void _q_chbPrintLastFirstToggled(bool); void _q_togglePageSetCombo(bool); #ifndef QT_NO_MESSAGEBOX void _q_checkFields(); @@ -363,9 +362,6 @@ void QPrintDialogPrivate::init() #endif QObject::connect(buttons, SIGNAL(rejected()), q, SLOT(reject())); - QObject::connect(options.reverse, SIGNAL(toggled(bool)), - q, SLOT(_q_chbPrintLastFirstToggled(bool))); - QObject::connect(options.printSelection, SIGNAL(toggled(bool)), q, SLOT(_q_togglePageSetCombo(bool))); @@ -416,6 +412,10 @@ void QPrintDialogPrivate::applyPrinterProperties() void QPrintDialogPrivate::setupPrinter() { + // First setup the requested OutputFormat, Printer and Page Size first + top->d->setupPrinter(); + + // Then setup Print Job options Q_Q(QPrintDialog); QPrinter* p = q->printer(); @@ -429,6 +429,7 @@ void QPrintDialogPrivate::setupPrinter() } p->setColorMode(options.color->isChecked() ? QPrinter::Color : QPrinter::GrayScale); + p->setPageOrder(options.reverse->isChecked() ? QPrinter::LastPageFirst : QPrinter::FirstPageFirst); // print range if (options.printAll->isChecked()) { @@ -482,17 +483,6 @@ void QPrintDialogPrivate::setupPrinter() // copies p->setCopyCount(options.copies->value()); p->setCollateCopies(options.collate->isChecked()); - - top->d->setupPrinter(); -} - -void QPrintDialogPrivate::_q_chbPrintLastFirstToggled(bool checked) -{ - Q_Q(QPrintDialog); - if (checked) - q->printer()->setPageOrder(QPrinter::LastPageFirst); - else - q->printer()->setPageOrder(QPrinter::FirstPageFirst); } void QPrintDialogPrivate::_q_togglePageSetCombo(bool checked) diff --git a/src/printsupport/kernel/qprintengine_win.cpp b/src/printsupport/kernel/qprintengine_win.cpp index e4c4fd25e3..0b338c535f 100644 --- a/src/printsupport/kernel/qprintengine_win.cpp +++ b/src/printsupport/kernel/qprintengine_win.cpp @@ -1448,6 +1448,7 @@ void QWin32PrintEngine::setProperty(PrintEnginePropertyKey key, const QVariant & d->devMode->dmPaperLength = qRound(sizeMM.height() * 10.0); d->devMode->dmPaperWidth = qRound(sizeMM.width() * 10.0); } + d->doReinit(); break; } @@ -1941,8 +1942,9 @@ static void draw_text_item_win(const QPointF &pos, const QTextItemInt &ti, HDC h void QWin32PrintEnginePrivate::updateCustomPaperSize() { const uint paperSize = devMode->dmPaperSize; - has_custom_paper_size = true; + has_custom_paper_size = false; if (paperSize > 0 && mapDevmodePaperSize(paperSize) == QPrinter::Custom) { + has_custom_paper_size = true; const QList<QPair<QSizeF, int> > paperSizes = printerPaperSizes(name); for (int i=0; i<paperSizes.size(); i++) { if ((uint)paperSizes.at(i).second == paperSize) { |