diff options
author | John Layt <jlayt@kde.org> | 2014-01-20 15:40:23 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-02-26 12:58:00 +0100 |
commit | f05e48381b309447297a290f699a3389ac41af41 (patch) | |
tree | ec69b3247b7db8f48ef782feea03f4a120e08a69 /src/printsupport/dialogs/qpagesetupdialog_win.cpp | |
parent | 5ddc5df3501675fc4cd2a6994b46b00969b7c02c (diff) |
QPrintEngine - Improve devMode handling
Improve the sharing of the devMode between the QPrintEngine and the
print dialogs, in particular start to change the dialogs from directly
accessing the QPrintEngine internals.
Change-Id: Ieb4649c19b936433c85207297a0b6e59356c3880
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src/printsupport/dialogs/qpagesetupdialog_win.cpp')
-rw-r--r-- | src/printsupport/dialogs/qpagesetupdialog_win.cpp | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/src/printsupport/dialogs/qpagesetupdialog_win.cpp b/src/printsupport/dialogs/qpagesetupdialog_win.cpp index 688f4ac314..345e698b82 100644 --- a/src/printsupport/dialogs/qpagesetupdialog_win.cpp +++ b/src/printsupport/dialogs/qpagesetupdialog_win.cpp @@ -82,7 +82,7 @@ int QPageSetupDialog::exec() // we need a temp DEVMODE struct if we don't have a global DEVMODE HGLOBAL hDevMode = 0; int devModeSize = 0; - if (!ep->globalDevMode) { + if (!engine->globalDevMode()) { devModeSize = sizeof(DEVMODE) + ep->devMode->dmDriverExtra; hDevMode = GlobalAlloc(GHND, devModeSize); if (hDevMode) { @@ -92,10 +92,10 @@ int QPageSetupDialog::exec() } psd.hDevMode = hDevMode; } else { - psd.hDevMode = ep->devMode; + psd.hDevMode = engine->globalDevMode(); } - HGLOBAL *tempDevNames = ep->createDevNames(); + HGLOBAL *tempDevNames = engine->createGlobalDevNames(); psd.hDevNames = tempDevNames; QWidget *parent = parentWidget(); @@ -129,8 +129,7 @@ int QPageSetupDialog::exec() bool result = PageSetupDlg(&psd); QDialog::setVisible(false); if (result) { - ep->readDevnames(psd.hDevNames); - ep->readDevmode(psd.hDevMode); + engine->setGlobalDevMode(psd.hDevNames, psd.hDevMode); QRect theseMargins = QRect(psd.rtMargin.left * multiplier, psd.rtMargin.top * multiplier, @@ -144,17 +143,15 @@ int QPageSetupDialog::exec() psd.rtMargin.bottom * multiplier); } - ep->updateCustomPaperSize(); - // copy from our temp DEVMODE struct - if (!ep->globalDevMode && hDevMode) { + if (!engine->globalDevMode() && hDevMode) { void *src = GlobalLock(hDevMode); memcpy(ep->devMode, src, devModeSize); GlobalUnlock(hDevMode); } } - if (!ep->globalDevMode && hDevMode) + if (!engine->globalDevMode() && hDevMode) GlobalFree(hDevMode); GlobalFree(tempDevNames); done(result); |