diff options
author | Daniel Silva <danielfaleirosilva@gmail.com> | 2018-06-21 10:20:54 -0300 |
---|---|---|
committer | Daniel Silva <danielfaleirosilva@gmail.com> | 2018-11-29 13:02:16 -0200 |
commit | 1a2ebd24e5daaefa209dea7f4b1889a8295b5794 (patch) | |
tree | ea4b55e8e4dc5947740f4d061c891d74ccb88ca3 /vcl/source/window | |
parent | bc34eaa0a87ff89b07581551991ac83d69f64d63 (diff) |
Adds More options dialog with single jobs checkbox in print dialog
Change-Id: I5f88e48edb5dfd966bcafca7866ee2a982a7f020
Reviewed-on: https://gerrit.libreoffice.org/56236
Tested-by: Jenkins
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
Diffstat (limited to 'vcl/source/window')
-rw-r--r-- | vcl/source/window/printdlg.cxx | 53 |
1 files changed, 52 insertions, 1 deletions
diff --git a/vcl/source/window/printdlg.cxx b/vcl/source/window/printdlg.cxx index 9ace0dd8ef7a..d410e62d1261 100644 --- a/vcl/source/window/printdlg.cxx +++ b/vcl/source/window/printdlg.cxx @@ -79,6 +79,48 @@ namespace { } } +MoreOptionsDialog::MoreOptionsDialog( VclPtr<PrintDialog> i_pParent ) + : ModalDialog(i_pParent, "MoreOptionsDialog", "vcl/ui/moreoptionsdialog.ui") + , mpParent( i_pParent ) +{ + get(mpOKButton, "ok"); + get(mpCancelButton, "cancel"); + get(mpSingleJobsBox, "singlejobs"); + + mpSingleJobsBox->Check( mpParent->isSingleJobs() ); + + mpOKButton->SetClickHdl( LINK( this, MoreOptionsDialog, ClickHdl ) ); + mpCancelButton->SetClickHdl( LINK( this, MoreOptionsDialog, ClickHdl ) ); +} + +MoreOptionsDialog::~MoreOptionsDialog() +{ + disposeOnce(); +} + +void MoreOptionsDialog::dispose() +{ + mpOKButton.clear(); + mpCancelButton.clear(); + mpSingleJobsBox.clear(); + mpParent.clear(); + ModalDialog::dispose(); +} + +IMPL_LINK ( MoreOptionsDialog, ClickHdl, Button*, pButton, void ) +{ + if ( pButton == mpOKButton ) + { + mpParent->mbSingleJobs = mpSingleJobsBox->IsChecked(); + EndDialog( RET_OK ); + } + else if ( pButton == mpCancelButton ) + { + EndDialog( RET_CANCEL ); + } +} + + PrintDialog::PrintPreviewWindow::PrintPreviewWindow( vcl::Window* i_pParent ) : Window( i_pParent, 0 ) , maMtf() @@ -497,11 +539,12 @@ PrintDialog::PrintDialog(vcl::Window* i_pWindow, const std::shared_ptr<PrinterCo , maNoCollateBmp(SV_PRINT_NOCOLLATE_BMP) , mnCollateUIMode(0) , mbShowLayoutFrame( true ) +, mbSingleJobs( false ) { - get(mpOKButton, "ok"); get(mpCancelButton, "cancel"); get(mpHelpButton, "help"); + get(mpMoreOptionsBtn, "moreoptionsbtn"); get(mpTabCtrl, "tabcontrol"); get(mpPageLayoutFrame, "layoutframe"); get(mpForwardBtn, "forward"); @@ -620,6 +663,7 @@ PrintDialog::PrintDialog(vcl::Window* i_pWindow, const std::shared_ptr<PrinterCo mpCancelButton->SetClickHdl(LINK(this, PrintDialog, ClickHdl)); mpHelpButton->SetClickHdl(LINK(this, PrintDialog, ClickHdl)); mpSetupButton->SetClickHdl( LINK( this, PrintDialog, ClickHdl ) ); + mpMoreOptionsBtn->SetClickHdl( LINK( this, PrintDialog, ClickHdl ) ); mpBackwardBtn->SetClickHdl(LINK(this, PrintDialog, ClickHdl)); mpForwardBtn->SetClickHdl(LINK(this, PrintDialog, ClickHdl)); mpPreviewBox->SetClickHdl( LINK( this, PrintDialog, ClickHdl ) ); @@ -667,6 +711,7 @@ void PrintDialog::dispose() mpOKButton.clear(); mpCancelButton.clear(); mpHelpButton.clear(); + mpMoreOptionsBtn.clear(); maPController.reset(); maControlToPropertyMap.clear(); maControlToNumValMap.clear(); @@ -696,6 +741,7 @@ void PrintDialog::dispose() mpNupOrderWin.clear(); mpNupOrderTxt.clear(); mpBorderCB.clear(); + mpMoreOptionsDlg.disposeAndClear(); ModalDialog::dispose(); } @@ -1630,6 +1676,11 @@ IMPL_LINK ( PrintDialog, ClickHdl, Button*, pButton, void ) { updateNup(); } + else if ( pButton == mpMoreOptionsBtn ) + { + mpMoreOptionsDlg = VclPtr< MoreOptionsDialog >::Create( this ); + mpMoreOptionsDlg->Execute(); + } else { if( pButton == mpSetupButton ) |