diff --git a/src/Gui/View3DInventor.cpp b/src/Gui/View3DInventor.cpp index 17086f6eeb..2b378dfb2f 100644 --- a/src/Gui/View3DInventor.cpp +++ b/src/Gui/View3DInventor.cpp @@ -38,6 +38,7 @@ # include # include # include +# include # include # include # include @@ -513,13 +514,19 @@ void View3DInventor::printPreview() { QPrinter printer(QPrinter::ScreenResolution); printer.setFullPage(true); - printer.setPageSize(QPageSize(QPageSize::A4)); - printer.setPageOrientation(QPageLayout::Landscape); + hGrp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Preferences/View"); + int initialDefaultPageSize = !QPrinterInfo::defaultPrinter().isNull() ? QPrinterInfo::defaultPrinter().defaultPageSize().id() : QPageSize::A4; + int defaultPageSize = hGrp->GetInt("DefaultPageSize", initialDefaultPageSize); + int defaultPageOrientation = hGrp->GetInt("DefaultPageOrientation", QPageLayout::Portrait); + printer.setPageSize(QPageSize(static_cast(defaultPageSize))); + printer.setPageOrientation(static_cast(defaultPageOrientation)); QPrintPreviewDialog dlg(&printer, this); connect(&dlg, SIGNAL(paintRequested (QPrinter *)), this, SLOT(print(QPrinter *))); dlg.exec(); + hGrp -> SetInt("DefaultPageSize", printer.pageLayout().pageSize().id()); + hGrp -> SetInt("DefaultPageOrientation", static_cast(printer.pageLayout().orientation())); } void View3DInventor::print(QPrinter* printer)