summaryrefslogtreecommitdiff
path: root/sw/source/ui/dialog
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2018-10-31 12:38:56 +0000
committerCaolán McNamara <caolanm@redhat.com>2018-11-01 11:00:12 +0100
commitc86728655415ea507cb5f8d7f0588014db2d6098 (patch)
tree61765a8d10547cbbd183b6317c8f0601839cd785 /sw/source/ui/dialog
parent52bbb04f1e39b2d778275c91f77b6c0714ecd0d0 (diff)
replace VclAbstractDialog2 with VclAbstractDialog
and drop Dialog::GetResult as a consequence Change-Id: Id80a9dc1eab1a23daf4489719b3bafec976bb048 Reviewed-on: https://gerrit.libreoffice.org/62700 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sw/source/ui/dialog')
-rw-r--r--sw/source/ui/dialog/swdlgfact.cxx20
-rw-r--r--sw/source/ui/dialog/swdlgfact.hxx6
2 files changed, 9 insertions, 17 deletions
diff --git a/sw/source/ui/dialog/swdlgfact.cxx b/sw/source/ui/dialog/swdlgfact.cxx
index 39db3b0a1f10..c30b671d3b29 100644
--- a/sw/source/ui/dialog/swdlgfact.cxx
+++ b/sw/source/ui/dialog/swdlgfact.cxx
@@ -721,23 +721,17 @@ void AbstractMailMergeWizard_Impl::dispose()
AbstractMailMergeWizard::dispose();
}
-void AbstractMailMergeWizard_Impl::StartExecuteModal( const Link<Dialog&,void>& rEndDialogHdl )
+bool AbstractMailMergeWizard_Impl::StartExecuteAsync(AsyncContext &rCtx)
{
- aEndDlgHdl = rEndDialogHdl;
- pDlg->StartExecuteAsync([=](sal_Int32 nResult){
- EndDialogHdl(nResult);
- });
+ // SwMailMergeWizardExecutor wants to run the lifecycle of this dialog
+ // so clear mxOwner here and leave it up to SwMailMergeWizardExecutor
+ rCtx.mxOwner.clear();
+ return pDlg->StartExecuteAsync(rCtx);
}
-sal_Int32 AbstractMailMergeWizard_Impl::GetResult()
+short AbstractMailMergeWizard_Impl::Execute()
{
- return pDlg->GetResult();
-}
-
-void AbstractMailMergeWizard_Impl::EndDialogHdl(sal_Int32 /*nResult*/)
-{
- aEndDlgHdl.Call( *pDlg );
- aEndDlgHdl = Link<Dialog&,void>();
+ return pDlg->Execute();
}
OUString AbstractMailMergeWizard_Impl::GetReloadDocument() const
diff --git a/sw/source/ui/dialog/swdlgfact.hxx b/sw/source/ui/dialog/swdlgfact.hxx
index 8f2cf77a04c3..103b04b35a02 100644
--- a/sw/source/ui/dialog/swdlgfact.hxx
+++ b/sw/source/ui/dialog/swdlgfact.hxx
@@ -570,17 +570,15 @@ class SwMailMergeWizard;
class AbstractMailMergeWizard_Impl : public AbstractMailMergeWizard
{
VclPtr<SwMailMergeWizard> pDlg;
- Link<Dialog&,void> aEndDlgHdl;
- void EndDialogHdl(sal_Int32 nResult);
public:
explicit AbstractMailMergeWizard_Impl( SwMailMergeWizard* p )
: pDlg(p)
{}
virtual ~AbstractMailMergeWizard_Impl() override;
virtual void dispose() override;
- virtual void StartExecuteModal( const Link<Dialog&,void>& rEndDialogHdl ) override;
- virtual sal_Int32 GetResult() override;
+ virtual bool StartExecuteAsync(VclAbstractDialog::AsyncContext &rCtx) override;
+ virtual short Execute() override;
virtual OUString GetReloadDocument() const override;
virtual void ShowPage( sal_uInt16 nLevel ) override;