summaryrefslogtreecommitdiff
path: root/sw/source/ui/dbui/mmresultdialogs.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sw/source/ui/dbui/mmresultdialogs.cxx')
-rw-r--r--sw/source/ui/dbui/mmresultdialogs.cxx87
1 files changed, 37 insertions, 50 deletions
diff --git a/sw/source/ui/dbui/mmresultdialogs.cxx b/sw/source/ui/dbui/mmresultdialogs.cxx
index b2f8cb2c3d7e..b0c82cbc2ac5 100644
--- a/sw/source/ui/dbui/mmresultdialogs.cxx
+++ b/sw/source/ui/dbui/mmresultdialogs.cxx
@@ -208,50 +208,36 @@ public:
void SetBCC(const OUString& rSet) {m_xBCCED->set_text(rSet);}
};
-SwMMResultSaveDialog::SwMMResultSaveDialog()
- : SfxModalDialog(nullptr, "MMResultSaveDialog", "modules/swriter/ui/mmresultsavedialog.ui"),
- m_bCancelSaving(false)
+SwMMResultSaveDialog::SwMMResultSaveDialog(weld::Window* pParent)
+ : GenericDialogController(pParent, "modules/swriter/ui/mmresultsavedialog.ui", "MMResultSaveDialog")
+ , m_bCancelSaving(false)
+ , m_xSaveAsOneRB(m_xBuilder->weld_radio_button("singlerb"))
+ , m_xSaveIndividualRB(m_xBuilder->weld_radio_button("individualrb"))
+ , m_xFromRB(m_xBuilder->weld_radio_button("fromrb"))
+ , m_xFromNF(m_xBuilder->weld_spin_button("from"))
+ , m_xToFT(m_xBuilder->weld_label("toft"))
+ , m_xToNF(m_xBuilder->weld_spin_button("to"))
+ , m_xOKButton(m_xBuilder->weld_button("ok"))
{
- get(m_pSaveAsOneRB, "singlerb");
- get(m_pSaveIndividualRB, "individualrb");
- get(m_pFromRB, "fromrb");
- get(m_pFromNF, "from-nospin");
- get(m_pToFT, "toft");
- get(m_pToNF, "to-nospin");
- get(m_pOKButton, "ok");
-
- Link<Button*,void> aLink = LINK(this, SwMMResultSaveDialog, DocumentSelectionHdl_Impl);
- m_pSaveAsOneRB->SetClickHdl(aLink);
- m_pSaveIndividualRB->SetClickHdl(aLink);
- m_pFromRB->SetClickHdl(aLink);
+ Link<weld::ToggleButton&,void> aLink = LINK(this, SwMMResultSaveDialog, DocumentSelectionHdl_Impl);
+ m_xSaveAsOneRB->connect_toggled(aLink);
+ m_xSaveIndividualRB->connect_toggled(aLink);
+ m_xFromRB->connect_toggled(aLink);
// m_pSaveAsOneRB is the default, so disable m_pFromNF and m_pToNF initially.
- aLink.Call(m_pSaveAsOneRB);
+ aLink.Call(*m_xSaveAsOneRB);
SwView* pView = ::GetActiveView();
std::shared_ptr<SwMailMergeConfigItem> xConfigItem = pView->GetMailMergeConfigItem();
assert(xConfigItem);
sal_Int32 nCount = xConfigItem->GetMergedDocumentCount();
- m_pToNF->SetMax(nCount);
- m_pToNF->SetValue(nCount);
+ m_xFromNF->set_max(nCount);
+ m_xToNF->set_max(nCount);
+ m_xToNF->set_value(nCount);
- m_pOKButton->SetClickHdl(LINK(this, SwMMResultSaveDialog, SaveOutputHdl_Impl));
+ m_xOKButton->connect_clicked(LINK(this, SwMMResultSaveDialog, SaveOutputHdl_Impl));
}
SwMMResultSaveDialog::~SwMMResultSaveDialog()
{
- disposeOnce();
-}
-
-void SwMMResultSaveDialog::dispose()
-{
- m_pSaveAsOneRB.clear();
- m_pSaveIndividualRB.clear();
- m_pFromRB.clear();
- m_pFromNF.clear();
- m_pToFT.clear();
- m_pToNF.clear();
- m_pOKButton.clear();
-
- SfxModalDialog::dispose();
}
SwMMResultPrintDialog::SwMMResultPrintDialog(weld::Window* pParent)
@@ -440,12 +426,12 @@ void SwMMResultEmailDialog::FillInEmailSettings()
}
-IMPL_LINK(SwMMResultSaveDialog, DocumentSelectionHdl_Impl, Button*, pButton, void)
+IMPL_LINK(SwMMResultSaveDialog, DocumentSelectionHdl_Impl, weld::ToggleButton&, rButton, void)
{
- bool bEnableFromTo = pButton == m_pFromRB;
- m_pFromNF->Enable(bEnableFromTo);
- m_pToFT->Enable(bEnableFromTo);
- m_pToNF->Enable(bEnableFromTo);
+ bool bEnableFromTo = &rButton == m_xFromRB.get();
+ m_xFromNF->set_sensitive(bEnableFromTo);
+ m_xToFT->set_sensitive(bEnableFromTo);
+ m_xToNF->set_sensitive(bEnableFromTo);
}
IMPL_LINK(SwMMResultPrintDialog, DocumentSelectionHdl_Impl, weld::ToggleButton&, rButton, void)
@@ -536,7 +522,7 @@ void endDialog(Button* pButton)
} // anonymous namespace
-IMPL_LINK(SwMMResultSaveDialog, SaveOutputHdl_Impl, Button*, pButton, void)
+IMPL_LINK_NOARG(SwMMResultSaveDialog, SaveOutputHdl_Impl, weld::Button&, void)
{
SwView* pView = ::GetActiveView();
std::shared_ptr<SwMailMergeConfigItem> xConfigItem = pView->GetMailMergeConfigItem();
@@ -547,10 +533,10 @@ IMPL_LINK(SwMMResultSaveDialog, SaveOutputHdl_Impl, Button*, pButton, void)
SwView* pTargetView = xConfigItem->GetTargetView();
assert(pTargetView);
- if(m_pSaveAsOneRB->IsChecked())
+ if (m_xSaveAsOneRB->get_active())
{
OUString sFilter;
- const OUString sPath = SwMailMergeHelper::CallSaveAsDialog(GetFrameWeld(), sFilter);
+ const OUString sPath = SwMailMergeHelper::CallSaveAsDialog(m_xDialog.get(), sFilter);
if (sPath.isEmpty())
{
// just return back to the dialog
@@ -587,20 +573,20 @@ IMPL_LINK(SwMMResultSaveDialog, SaveOutputHdl_Impl, Button*, pButton, void)
sal_uInt32 nEnd = 0;
sal_uInt32 documentCount = xConfigItem->GetMergedDocumentCount();
- if(m_pSaveIndividualRB->IsChecked())
+ if (m_xSaveIndividualRB->get_active())
{
nBegin = 0;
nEnd = documentCount;
}
else
{
- nBegin = static_cast< sal_Int32 >(m_pFromNF->GetValue() - 1);
- nEnd = static_cast< sal_Int32 >(m_pToNF->GetValue());
+ nBegin = static_cast< sal_Int32 >(m_xFromNF->get_value() - 1);
+ nEnd = static_cast< sal_Int32 >(m_xToNF->get_value());
if(nEnd > documentCount)
nEnd = documentCount;
}
OUString sFilter;
- OUString sPath = SwMailMergeHelper::CallSaveAsDialog(GetFrameWeld(), sFilter);
+ OUString sPath = SwMailMergeHelper::CallSaveAsDialog(m_xDialog.get(), sFilter);
if (sPath.isEmpty())
{
// just return back to the dialog
@@ -639,7 +625,8 @@ IMPL_LINK(SwMMResultSaveDialog, SaveOutputHdl_Impl, Button*, pButton, void)
}
SwView* pSourceView = xConfigItem->GetSourceView();
- ScopedVclPtrInstance< PrintMonitor > aSaveMonitor(this, false, PrintMonitor::MONITOR_TYPE_SAVE);
+//TODO ScopedVclPtrInstance< PrintMonitor > aSaveMonitor(this, false, PrintMonitor::MONITOR_TYPE_SAVE);
+ ScopedVclPtrInstance< PrintMonitor > aSaveMonitor(nullptr, false, PrintMonitor::MONITOR_TYPE_SAVE);
aSaveMonitor->m_pDocName->SetText(pSourceView->GetDocShell()->GetTitle(22));
aSaveMonitor->SetCancelHdl(LINK(this, SwMMResultSaveDialog, SaveCancelHdl_Impl));
aSaveMonitor->m_pPrinter->SetText( INetURLObject( sPath ).getFSysPath( FSysStyle::Detect ) );
@@ -703,20 +690,20 @@ IMPL_LINK(SwMMResultSaveDialog, SaveOutputHdl_Impl, Button*, pButton, void)
if(bFailed)
{
- std::unique_ptr<SwSaveWarningBox_Impl> xWarning(new SwSaveWarningBox_Impl(pButton->GetFrameWeld(), sOutPath));
+ std::unique_ptr<SwSaveWarningBox_Impl> xWarning(new SwSaveWarningBox_Impl(m_xDialog.get(), sOutPath));
if (RET_OK == xWarning->run())
sOutPath = xWarning->GetFileName();
else
{
xTempDocShell->DoClose();
- endDialog(pButton);
+ m_xDialog->response(RET_OK);
return;
}
}
else
{
xTempDocShell->DoClose();
- endDialog(pButton);
+ m_xDialog->response(RET_OK);
break;
}
}
@@ -724,7 +711,7 @@ IMPL_LINK(SwMMResultSaveDialog, SaveOutputHdl_Impl, Button*, pButton, void)
::osl::File::remove( sTargetTempURL );
}
- endDialog(pButton);
+ m_xDialog->response(RET_OK);
}
IMPL_LINK(SwMMResultPrintDialog, PrinterChangeHdl_Impl, weld::ComboBoxText&, rBox, void)