summaryrefslogtreecommitdiff
path: root/sw/source
diff options
context:
space:
mode:
Diffstat (limited to 'sw/source')
-rw-r--r--sw/source/ui/dialog/swdlgfact.cxx206
-rw-r--r--sw/source/ui/dialog/swdlgfact.hxx101
-rw-r--r--sw/source/uibase/app/apphdl.cxx11
-rw-r--r--sw/source/uibase/app/docsh2.cxx5
-rw-r--r--sw/source/uibase/app/docst.cxx2
-rw-r--r--sw/source/uibase/dbui/dbmgr.cxx8
-rw-r--r--sw/source/uibase/dialog/wordcountwrapper.cxx5
-rw-r--r--sw/source/uibase/inc/fldwrap.hxx4
-rw-r--r--sw/source/uibase/inc/idxmrk.hxx4
-rw-r--r--sw/source/uibase/inc/wordcountdialog.hxx4
-rw-r--r--sw/source/uibase/wrtsh/wrtsh2.cxx2
11 files changed, 182 insertions, 170 deletions
diff --git a/sw/source/ui/dialog/swdlgfact.cxx b/sw/source/ui/dialog/swdlgfact.cxx
index 5efee1fc9985..d19b2e7d7d8c 100644
--- a/sw/source/ui/dialog/swdlgfact.cxx
+++ b/sw/source/ui/dialog/swdlgfact.cxx
@@ -590,7 +590,13 @@ void AbstractSwWordCountFloatDlg_Impl::SetCounts(const SwDocStat &rCurrCnt, cons
AbstractMailMergeWizard_Impl::~AbstractMailMergeWizard_Impl()
{
+ disposeOnce();
+}
+
+void AbstractMailMergeWizard_Impl::dispose()
+{
pDlg.disposeAndClear();
+ AbstractMailMergeWizard::dispose();
}
void AbstractMailMergeWizard_Impl::StartExecuteModal( const Link<Dialog&,void>& rEndDialogHdl )
@@ -629,13 +635,13 @@ sal_uInt16 AbstractMailMergeWizard_Impl::GetRestartPage() const
return pDlg->GetRestartPage();
}
-AbstractSwInsertAbstractDlg * SwAbstractDialogFactory_Impl::CreateSwInsertAbstractDlg()
+VclPtr<AbstractSwInsertAbstractDlg> SwAbstractDialogFactory_Impl::CreateSwInsertAbstractDlg()
{
VclPtr<SwInsertAbstractDlg> pDlg = VclPtr<SwInsertAbstractDlg>::Create(nullptr);
- return new AbstractSwInsertAbstractDlg_Impl(pDlg);
+ return VclPtr<AbstractSwInsertAbstractDlg_Impl>::Create(pDlg);
}
-SfxAbstractDialog* SwAbstractDialogFactory_Impl::CreateSfxDialog( vcl::Window* pParent,
+VclPtr<SfxAbstractDialog> SwAbstractDialogFactory_Impl::CreateSfxDialog( vcl::Window* pParent,
const SfxItemSet& rSet,
const css::uno::Reference< css::frame::XFrame >&,
sal_uInt32 nResId
@@ -661,92 +667,92 @@ SfxAbstractDialog* SwAbstractDialogFactory_Impl::CreateSfxDialog( vcl::Window* p
}
if ( pDlg )
- return new SwAbstractSfxDialog_Impl( pDlg );
+ VclPtr<SwAbstractSfxDialog_Impl>::Create( pDlg );
return nullptr;
}
-AbstractSwAsciiFilterDlg* SwAbstractDialogFactory_Impl::CreateSwAsciiFilterDlg( SwDocShell& rDocSh,
+VclPtr<AbstractSwAsciiFilterDlg> SwAbstractDialogFactory_Impl::CreateSwAsciiFilterDlg( SwDocShell& rDocSh,
SvStream* pStream )
{
VclPtr<SwAsciiFilterDlg> pDlg = VclPtr<SwAsciiFilterDlg>::Create( nullptr, rDocSh, pStream );
- return new AbstractSwAsciiFilterDlg_Impl( pDlg );
+ return VclPtr<AbstractSwAsciiFilterDlg_Impl>::Create( pDlg );
}
-VclAbstractDialog* SwAbstractDialogFactory_Impl::CreateSwInsertBookmarkDlg( vcl::Window *pParent,
+VclPtr<VclAbstractDialog> SwAbstractDialogFactory_Impl::CreateSwInsertBookmarkDlg( vcl::Window *pParent,
SwWrtShell &rSh,
SfxRequest& rReq )
{
VclPtr<SwInsertBookmarkDlg> pDlg = VclPtr<SwInsertBookmarkDlg>::Create( pParent, rSh, rReq );
- return new VclAbstractDialog_Impl( pDlg );
+ return VclPtr<VclAbstractDialog_Impl>::Create( pDlg );
}
-AbstractSwBreakDlg * SwAbstractDialogFactory_Impl::CreateSwBreakDlg(vcl::Window *pParent,
+VclPtr<AbstractSwBreakDlg> SwAbstractDialogFactory_Impl::CreateSwBreakDlg(vcl::Window *pParent,
SwWrtShell &rSh)
{
VclPtr<SwBreakDlg> pDlg = VclPtr<SwBreakDlg>::Create(pParent, rSh);
- return new AbstractSwBreakDlg_Impl(pDlg);
+ return VclPtr<AbstractSwBreakDlg_Impl>::Create(pDlg);
}
-VclAbstractDialog * SwAbstractDialogFactory_Impl::CreateSwChangeDBDlg(SwView& rVw)
+VclPtr<VclAbstractDialog> SwAbstractDialogFactory_Impl::CreateSwChangeDBDlg(SwView& rVw)
{
VclPtr<Dialog> pDlg = VclPtr<SwChangeDBDlg>::Create(rVw);
- return new VclAbstractDialog_Impl(pDlg);
+ return VclPtr<VclAbstractDialog_Impl>::Create(pDlg);
}
-SfxAbstractTabDialog * SwAbstractDialogFactory_Impl::CreateSwCharDlg(vcl::Window* pParent, SwView& pVw,
+VclPtr<SfxAbstractTabDialog> SwAbstractDialogFactory_Impl::CreateSwCharDlg(vcl::Window* pParent, SwView& pVw,
const SfxItemSet& rCoreSet, SwCharDlgMode nDialogMode, const OUString* pFormatStr)
{
VclPtr<SfxTabDialog> pDlg = VclPtr<SwCharDlg>::Create(pParent, pVw, rCoreSet, nDialogMode, pFormatStr);
- return new AbstractTabDialog_Impl(pDlg);
+ return VclPtr<AbstractTabDialog_Impl>::Create(pDlg);
}
-AbstractSwConvertTableDlg* SwAbstractDialogFactory_Impl::CreateSwConvertTableDlg(SwView& rView, bool bToTable)
+VclPtr<AbstractSwConvertTableDlg> SwAbstractDialogFactory_Impl::CreateSwConvertTableDlg(SwView& rView, bool bToTable)
{
VclPtr<SwConvertTableDlg> pDlg = VclPtr<SwConvertTableDlg>::Create(rView, bToTable);
- return new AbstractSwConvertTableDlg_Impl(pDlg);
+ return VclPtr<AbstractSwConvertTableDlg_Impl>::Create(pDlg);
}
-VclAbstractDialog * SwAbstractDialogFactory_Impl::CreateSwCaptionDialog ( vcl::Window *pParent, SwView &rV)
+VclPtr<VclAbstractDialog> SwAbstractDialogFactory_Impl::CreateSwCaptionDialog ( vcl::Window *pParent, SwView &rV)
{
VclPtr<Dialog> pDlg = VclPtr<SwCaptionDialog>::Create( pParent, rV );
- return new VclAbstractDialog_Impl( pDlg );
+ return VclPtr<VclAbstractDialog_Impl>::Create( pDlg );
}
-AbstractSwInsertDBColAutoPilot* SwAbstractDialogFactory_Impl::CreateSwInsertDBColAutoPilot( SwView& rView,
+VclPtr<AbstractSwInsertDBColAutoPilot> SwAbstractDialogFactory_Impl::CreateSwInsertDBColAutoPilot( SwView& rView,
uno::Reference< sdbc::XDataSource> rxSource,
uno::Reference<sdbcx::XColumnsSupplier> xColSupp,
const SwDBData& rData)
{
VclPtr<SwInsertDBColAutoPilot> pDlg = VclPtr<SwInsertDBColAutoPilot>::Create( rView, rxSource, xColSupp, rData );
- return new AbstractSwInsertDBColAutoPilot_Impl( pDlg );
+ return VclPtr<AbstractSwInsertDBColAutoPilot_Impl>::Create( pDlg );
}
-SfxAbstractTabDialog * SwAbstractDialogFactory_Impl::CreateSwFootNoteOptionDlg(vcl::Window *pParent, SwWrtShell &rSh)
+VclPtr<SfxAbstractTabDialog> SwAbstractDialogFactory_Impl::CreateSwFootNoteOptionDlg(vcl::Window *pParent, SwWrtShell &rSh)
{
VclPtr<SfxTabDialog> pDlg = VclPtr<SwFootNoteOptionDlg>::Create( pParent, rSh );
- return new AbstractTabDialog_Impl( pDlg );
+ return VclPtr<AbstractTabDialog_Impl>::Create( pDlg );
}
-AbstractDropDownFieldDialog * SwAbstractDialogFactory_Impl::CreateDropDownFieldDialog(
+VclPtr<AbstractDropDownFieldDialog> SwAbstractDialogFactory_Impl::CreateDropDownFieldDialog(
SwWrtShell &rSh, SwField* pField, bool bNextButton)
{
VclPtr<sw::DropDownFieldDialog> pDlg = VclPtr<sw::DropDownFieldDialog>::Create(nullptr, rSh, pField, bNextButton);
- return new AbstractDropDownFieldDialog_Impl( pDlg );
+ return VclPtr<AbstractDropDownFieldDialog_Impl>::Create( pDlg );
}
-SfxAbstractTabDialog* SwAbstractDialogFactory_Impl::CreateSwEnvDlg ( vcl::Window* pParent, const SfxItemSet& rSet,
+VclPtr<SfxAbstractTabDialog> SwAbstractDialogFactory_Impl::CreateSwEnvDlg ( vcl::Window* pParent, const SfxItemSet& rSet,
SwWrtShell* pWrtSh, Printer* pPrt,
bool bInsert )
{
VclPtr<SfxTabDialog> pDlg = VclPtr<SwEnvDlg>::Create( pParent, rSet, pWrtSh,pPrt, bInsert );
- return new AbstractTabDialog_Impl( pDlg );
+ return VclPtr<AbstractTabDialog_Impl>::Create( pDlg );
}
-AbstractSwLabDlg* SwAbstractDialogFactory_Impl::CreateSwLabDlg(const SfxItemSet& rSet,
+VclPtr<AbstractSwLabDlg> SwAbstractDialogFactory_Impl::CreateSwLabDlg(const SfxItemSet& rSet,
SwDBManager* pDBManager, bool bLabel)
{
VclPtr<SwLabDlg> pDlg = VclPtr<SwLabDlg>::Create(nullptr, rSet, pDBManager, bLabel);
- return new AbstractSwLabDlg_Impl(pDlg);
+ return VclPtr<AbstractSwLabDlg_Impl>::Create(pDlg);
}
SwLabDlgMethod SwAbstractDialogFactory_Impl::GetSwLabDlgStaticMethod ()
@@ -754,16 +760,16 @@ SwLabDlgMethod SwAbstractDialogFactory_Impl::GetSwLabDlgStaticMethod ()
return SwLabDlg::UpdateFieldInformation;
}
-SfxAbstractTabDialog* SwAbstractDialogFactory_Impl::CreateSwParaDlg ( vcl::Window *pParent, SwView& rVw,
+VclPtr<SfxAbstractTabDialog> SwAbstractDialogFactory_Impl::CreateSwParaDlg ( vcl::Window *pParent, SwView& rVw,
const SfxItemSet& rCoreSet ,
bool bDraw ,
const OString& sDefPage)
{
VclPtr<SfxTabDialog> pDlg = VclPtr<SwParaDlg>::Create( pParent, rVw, rCoreSet, DLG_STD, nullptr, bDraw, sDefPage );
- return new AbstractTabDialog_Impl( pDlg );
+ return VclPtr<AbstractTabDialog_Impl>::Create( pDlg );
}
-VclAbstractDialog * SwAbstractDialogFactory_Impl::CreateVclAbstractDialog ( vcl::Window *pParent, SwWrtShell &rSh, int nResId )
+VclPtr<VclAbstractDialog> SwAbstractDialogFactory_Impl::CreateVclAbstractDialog ( vcl::Window *pParent, SwWrtShell &rSh, int nResId )
{
VclPtr<Dialog> pDlg;
switch ( nResId )
@@ -785,96 +791,96 @@ VclAbstractDialog * SwAbstractDialogFactory_Impl::CreateVclAbstractDialog ( vcl:
}
if ( pDlg.get() )
- return new VclAbstractDialog_Impl( pDlg );
+ return VclPtr<VclAbstractDialog_Impl>::Create( pDlg );
return nullptr;
}
-AbstractSplitTableDialog * SwAbstractDialogFactory_Impl::CreateSplitTableDialog ( vcl::Window *pParent, SwWrtShell &rSh )
+VclPtr<AbstractSplitTableDialog> SwAbstractDialogFactory_Impl::CreateSplitTableDialog ( vcl::Window *pParent, SwWrtShell &rSh )
{
- return new AbstractSplitTableDialog_Impl( VclPtr<SwSplitTableDlg>::Create( pParent, rSh) );
+ return VclPtr<AbstractSplitTableDialog_Impl>::Create( VclPtr<SwSplitTableDlg>::Create( pParent, rSh) );
}
-AbstractSwSelGlossaryDlg * SwAbstractDialogFactory_Impl::CreateSwSelGlossaryDlg(const OUString &rShortName)
+VclPtr<AbstractSwSelGlossaryDlg> SwAbstractDialogFactory_Impl::CreateSwSelGlossaryDlg(const OUString &rShortName)
{
VclPtr<SwSelGlossaryDlg> pDlg = VclPtr<SwSelGlossaryDlg>::Create(nullptr, rShortName);
- return new AbstractSwSelGlossaryDlg_Impl(pDlg);
+ return VclPtr<AbstractSwSelGlossaryDlg_Impl>::Create(pDlg);
}
-AbstractSwAutoFormatDlg * SwAbstractDialogFactory_Impl::CreateSwAutoFormatDlg(vcl::Window* pParent,
+VclPtr<AbstractSwAutoFormatDlg> SwAbstractDialogFactory_Impl::CreateSwAutoFormatDlg(vcl::Window* pParent,
SwWrtShell* pShell, bool bSetAutoFormat, const SwTableAutoFormat* pSelFormat)
{
VclPtr<SwAutoFormatDlg> pDlg = VclPtr<SwAutoFormatDlg>::Create(pParent, pShell, bSetAutoFormat, pSelFormat);
- return new AbstractSwAutoFormatDlg_Impl(pDlg);
+ return VclPtr<AbstractSwAutoFormatDlg_Impl>::Create(pDlg);
}
-SfxAbstractDialog * SwAbstractDialogFactory_Impl::CreateSwBorderDlg(vcl::Window* pParent, SfxItemSet& rSet, SwBorderModes nType )
+VclPtr<SfxAbstractDialog> SwAbstractDialogFactory_Impl::CreateSwBorderDlg(vcl::Window* pParent, SfxItemSet& rSet, SwBorderModes nType )
{
VclPtr<SfxModalDialog> pDlg = VclPtr<SwBorderDlg>::Create( pParent, rSet, nType );
- return new SwAbstractSfxDialog_Impl( pDlg );
+ return VclPtr<SwAbstractSfxDialog_Impl>::Create( pDlg );
}
-SfxAbstractDialog* SwAbstractDialogFactory_Impl::CreateSwWrapDlg ( vcl::Window* pParent, SfxItemSet& rSet, SwWrtShell* pSh )
+VclPtr<SfxAbstractDialog> SwAbstractDialogFactory_Impl::CreateSwWrapDlg ( vcl::Window* pParent, SfxItemSet& rSet, SwWrtShell* pSh )
{
VclPtr<SfxModalDialog> pDlg = VclPtr<SwWrapDlg>::Create( pParent, rSet, pSh, true/*bDrawMode*/ );
- return new SwAbstractSfxDialog_Impl( pDlg );
+ return VclPtr<SwAbstractSfxDialog_Impl>::Create( pDlg );
}
-VclAbstractDialog * SwAbstractDialogFactory_Impl::CreateSwTableWidthDlg(vcl::Window *pParent, SwTableFUNC &rFnc)
+VclPtr<VclAbstractDialog> SwAbstractDialogFactory_Impl::CreateSwTableWidthDlg(vcl::Window *pParent, SwTableFUNC &rFnc)
{
VclPtr<Dialog> pDlg = VclPtr<SwTableWidthDlg>::Create(pParent, rFnc);
- return new VclAbstractDialog_Impl( pDlg );
+ return VclPtr<VclAbstractDialog_Impl>::Create( pDlg );
}
-SfxAbstractTabDialog* SwAbstractDialogFactory_Impl::CreateSwTableTabDlg(vcl::Window* pParent, SfxItemPool& Pool,
+VclPtr<SfxAbstractTabDialog> SwAbstractDialogFactory_Impl::CreateSwTableTabDlg(vcl::Window* pParent, SfxItemPool& Pool,
const SfxItemSet* pItemSet, SwWrtShell* pSh)
{
VclPtr<SfxTabDialog> pDlg = VclPtr<SwTableTabDlg>::Create(pParent, Pool, pItemSet, pSh);
- return new AbstractTabDialog_Impl(pDlg);
+ return VclPtr<AbstractTabDialog_Impl>::Create(pDlg);
}
-AbstractSwFieldDlg * SwAbstractDialogFactory_Impl::CreateSwFieldDlg(SfxBindings* pB, SwChildWinWrapper* pCW, vcl::Window *pParent)
+VclPtr<AbstractSwFieldDlg> SwAbstractDialogFactory_Impl::CreateSwFieldDlg(SfxBindings* pB, SwChildWinWrapper* pCW, vcl::Window *pParent)
{
VclPtr<SwFieldDlg> pDlg = VclPtr<SwFieldDlg>::Create(pB, pCW, pParent);
- return new AbstractSwFieldDlg_Impl(pDlg);
+ return VclPtr<AbstractSwFieldDlg_Impl>::Create(pDlg);
}
-SfxAbstractDialog* SwAbstractDialogFactory_Impl::CreateSwFieldEditDlg ( SwView& rVw )
+VclPtr<SfxAbstractDialog> SwAbstractDialogFactory_Impl::CreateSwFieldEditDlg ( SwView& rVw )
{
VclPtr<SfxModalDialog> pDlg = VclPtr<SwFieldEditDlg>::Create( rVw );
- return new SwAbstractSfxDialog_Impl( pDlg );
+ return VclPtr<SwAbstractSfxDialog_Impl>::Create( pDlg );
}
-AbstractSwRenameXNamedDlg * SwAbstractDialogFactory_Impl::CreateSwRenameXNamedDlg(vcl::Window* pParent,
+VclPtr<AbstractSwRenameXNamedDlg> SwAbstractDialogFactory_Impl::CreateSwRenameXNamedDlg(vcl::Window* pParent,
css::uno::Reference< css::container::XNamed > & xNamed,
css::uno::Reference< css::container::XNameAccess > & xNameAccess)
{
VclPtr<SwRenameXNamedDlg> pDlg = VclPtr<SwRenameXNamedDlg>::Create( pParent,xNamed, xNameAccess);
- return new AbstractSwRenameXNamedDlg_Impl( pDlg );
+ return VclPtr<AbstractSwRenameXNamedDlg_Impl>::Create( pDlg );
}
-AbstractSwModalRedlineAcceptDlg * SwAbstractDialogFactory_Impl::CreateSwModalRedlineAcceptDlg(vcl::Window *pParent)
+VclPtr<AbstractSwModalRedlineAcceptDlg> SwAbstractDialogFactory_Impl::CreateSwModalRedlineAcceptDlg(vcl::Window *pParent)
{
VclPtr<SwModalRedlineAcceptDlg> pDlg = VclPtr<SwModalRedlineAcceptDlg>::Create( pParent );
- return new AbstractSwModalRedlineAcceptDlg_Impl( pDlg );
+ return VclPtr<AbstractSwModalRedlineAcceptDlg_Impl>::Create( pDlg );
}
-VclAbstractDialog * SwAbstractDialogFactory_Impl::CreateTableMergeDialog(vcl::Window* pParent, bool& rWithPrev)
+VclPtr<VclAbstractDialog> SwAbstractDialogFactory_Impl::CreateTableMergeDialog(vcl::Window* pParent, bool& rWithPrev)
{
VclPtr<Dialog> pDlg = VclPtr<SwMergeTableDlg>::Create( pParent, rWithPrev );
- return new VclAbstractDialog_Impl( pDlg );
+ return VclPtr<VclAbstractDialog_Impl>::Create( pDlg );
}
-SfxAbstractTabDialog* SwAbstractDialogFactory_Impl::CreateFrameTabDialog(const OUString &rDialogType,
+VclPtr<SfxAbstractTabDialog> SwAbstractDialogFactory_Impl::CreateFrameTabDialog(const OUString &rDialogType,
SfxViewFrame *pFrame, vcl::Window *pParent,
const SfxItemSet& rCoreSet,
bool bNewFrame,
const OString& sDefPage )
{
VclPtr<SfxTabDialog> pDlg = VclPtr<SwFrameDlg>::Create(pFrame, pParent, rCoreSet, bNewFrame, rDialogType, false/*bFormat*/, sDefPage, nullptr);
- return new AbstractTabDialog_Impl(pDlg);
+ return VclPtr<AbstractTabDialog_Impl>::Create(pDlg);
}
-SfxAbstractApplyTabDialog* SwAbstractDialogFactory_Impl::CreateTemplateDialog(
+VclPtr<SfxAbstractApplyTabDialog> SwAbstractDialogFactory_Impl::CreateTemplateDialog(
vcl::Window *pParent,
SfxStyleSheetBase& rBase,
SfxStyleFamily nRegion,
@@ -883,57 +889,57 @@ SfxAbstractApplyTabDialog* SwAbstractDialogFactory_Impl::CreateTemplateDialog(
bool bNew )
{
VclPtr<SfxTabDialog> pDlg = VclPtr<SwTemplateDlg>::Create(pParent, rBase, nRegion, sPage, pActShell, bNew);
- return new AbstractApplyTabDialog_Impl(pDlg);
+ return VclPtr<AbstractApplyTabDialog_Impl>::Create(pDlg);
}
-AbstractGlossaryDlg* SwAbstractDialogFactory_Impl::CreateGlossaryDlg(SfxViewFrame* pViewFrame,
+VclPtr<AbstractGlossaryDlg> SwAbstractDialogFactory_Impl::CreateGlossaryDlg(SfxViewFrame* pViewFrame,
SwGlossaryHdl* pGlosHdl,
SwWrtShell *pWrtShell)
{
VclPtr<SwGlossaryDlg> pDlg = VclPtr<SwGlossaryDlg>::Create(pViewFrame, pGlosHdl, pWrtShell);
- return new AbstractGlossaryDlg_Impl( pDlg );
+ return VclPtr<AbstractGlossaryDlg_Impl>::Create( pDlg );
}
-AbstractFieldInputDlg* SwAbstractDialogFactory_Impl::CreateFieldInputDlg(vcl::Window *pParent,
+VclPtr<AbstractFieldInputDlg> SwAbstractDialogFactory_Impl::CreateFieldInputDlg(vcl::Window *pParent,
SwWrtShell &rSh, SwField* pField, bool bNextButton)
{
VclPtr<SwFieldInputDlg> pDlg = VclPtr<SwFieldInputDlg>::Create( pParent, rSh, pField, bNextButton );
- return new AbstractFieldInputDlg_Impl( pDlg );
+ return VclPtr<AbstractFieldInputDlg_Impl>::Create( pDlg );
}
-AbstractInsFootNoteDlg* SwAbstractDialogFactory_Impl::CreateInsFootNoteDlg(
+VclPtr<AbstractInsFootNoteDlg> SwAbstractDialogFactory_Impl::CreateInsFootNoteDlg(
vcl::Window * pParent, SwWrtShell &rSh, bool bEd )
{
VclPtr<SwInsFootNoteDlg> pDlg = VclPtr<SwInsFootNoteDlg>::Create(pParent, rSh, bEd);
- return new AbstractInsFootNoteDlg_Impl( pDlg );
+ return VclPtr<AbstractInsFootNoteDlg_Impl>::Create( pDlg );
}
-VclAbstractDialog * SwAbstractDialogFactory_Impl::CreateTitlePageDlg ( vcl::Window *pParent )
+VclPtr<VclAbstractDialog> SwAbstractDialogFactory_Impl::CreateTitlePageDlg ( vcl::Window *pParent )
{
VclPtr<Dialog> pDlg = VclPtr<SwTitlePageDlg>::Create( pParent );
- return new VclAbstractDialog_Impl( pDlg );
+ return VclPtr<VclAbstractDialog_Impl>::Create( pDlg );
}
-VclAbstractDialog * SwAbstractDialogFactory_Impl::CreateVclSwViewDialog(SwView& rView)
+VclPtr<VclAbstractDialog> SwAbstractDialogFactory_Impl::CreateVclSwViewDialog(SwView& rView)
{
VclPtr<Dialog> pDlg = VclPtr<SwLineNumberingDlg>::Create( &rView );
- return new VclAbstractDialog_Impl( pDlg );
+ return VclPtr<VclAbstractDialog_Impl>::Create( pDlg );
}
-AbstractInsTableDlg * SwAbstractDialogFactory_Impl::CreateInsTableDlg(SwView& rView)
+VclPtr<AbstractInsTableDlg> SwAbstractDialogFactory_Impl::CreateInsTableDlg(SwView& rView)
{
VclPtr<SwInsTableDlg> pDlg = VclPtr<SwInsTableDlg>::Create(rView);
- return new AbstractInsTableDlg_Impl( pDlg );
+ return VclPtr<AbstractInsTableDlg_Impl>::Create( pDlg );
}
-AbstractJavaEditDialog * SwAbstractDialogFactory_Impl::CreateJavaEditDialog(
+VclPtr<AbstractJavaEditDialog> SwAbstractDialogFactory_Impl::CreateJavaEditDialog(
vcl::Window* pParent, SwWrtShell* pWrtSh)
{
VclPtr<SwJavaEditDialog> pDlg = VclPtr<SwJavaEditDialog>::Create(pParent, pWrtSh);
- return new AbstractJavaEditDialog_Impl( pDlg );
+ return VclPtr<AbstractJavaEditDialog_Impl>::Create( pDlg );
}
-AbstractMailMergeDlg * SwAbstractDialogFactory_Impl::CreateMailMergeDlg(
+VclPtr<AbstractMailMergeDlg> SwAbstractDialogFactory_Impl::CreateMailMergeDlg(
vcl::Window* pParent, SwWrtShell& rSh,
const OUString& rSourceName,
const OUString& rTableName,
@@ -941,28 +947,28 @@ AbstractMailMergeDlg * SwAbstractDialogFactory_Impl::CreateMailMergeDlg(
const uno::Reference< sdbc::XConnection>& xConnection )
{
VclPtr<SwMailMergeDlg> pDlg = VclPtr<SwMailMergeDlg>::Create( pParent, rSh, rSourceName, rTableName, nCommandType, xConnection, nullptr );
- return new AbstractMailMergeDlg_Impl( pDlg );
+ return VclPtr<AbstractMailMergeDlg_Impl>::Create( pDlg );
}
-AbstractMailMergeCreateFromDlg * SwAbstractDialogFactory_Impl::CreateMailMergeCreateFromDlg(vcl::Window* pParent)
+VclPtr<AbstractMailMergeCreateFromDlg> SwAbstractDialogFactory_Impl::CreateMailMergeCreateFromDlg(vcl::Window* pParent)
{
VclPtr<SwMailMergeCreateFromDlg> pDlg = VclPtr<SwMailMergeCreateFromDlg>::Create(pParent);
- return new AbstractMailMergeCreateFromDlg_Impl(pDlg);
+ return VclPtr<AbstractMailMergeCreateFromDlg_Impl>::Create(pDlg);
}
-AbstractMailMergeFieldConnectionsDlg * SwAbstractDialogFactory_Impl::CreateMailMergeFieldConnectionsDlg(vcl::Window* pParent)
+VclPtr<AbstractMailMergeFieldConnectionsDlg> SwAbstractDialogFactory_Impl::CreateMailMergeFieldConnectionsDlg(vcl::Window* pParent)
{
VclPtr<SwMailMergeFieldConnectionsDlg> pDlg = VclPtr<SwMailMergeFieldConnectionsDlg>::Create( pParent );
- return new AbstractMailMergeFieldConnectionsDlg_Impl( pDlg );
+ return VclPtr<AbstractMailMergeFieldConnectionsDlg_Impl>::Create( pDlg );
}
-VclAbstractDialog * SwAbstractDialogFactory_Impl::CreateMultiTOXMarkDlg(vcl::Window* pParent, SwTOXMgr &rTOXMgr)
+VclPtr<VclAbstractDialog> SwAbstractDialogFactory_Impl::CreateMultiTOXMarkDlg(vcl::Window* pParent, SwTOXMgr &rTOXMgr)
{
VclPtr<Dialog> pDlg = VclPtr<SwMultiTOXMarkDlg>::Create(pParent, rTOXMgr);
- return new VclAbstractDialog_Impl(pDlg);
+ return VclPtr<VclAbstractDialog_Impl>::Create(pDlg);
}
-SfxAbstractTabDialog* SwAbstractDialogFactory_Impl::CreateSwTabDialog( int nResId,
+VclPtr<SfxAbstractTabDialog> SwAbstractDialogFactory_Impl::CreateSwTabDialog( int nResId,
vcl::Window* pParent,
const SfxItemSet* pSwItemSet,
SwWrtShell & rWrtSh )
@@ -981,74 +987,74 @@ SfxAbstractTabDialog* SwAbstractDialogFactory_Impl::CreateSwTabDialog( int nResI
break;
}
if ( pDlg.get() )
- return new AbstractTabDialog_Impl( pDlg );
+ return VclPtr<AbstractTabDialog_Impl>::Create( pDlg );
return nullptr;
}
-AbstractMultiTOXTabDialog * SwAbstractDialogFactory_Impl::CreateMultiTOXTabDialog(
+VclPtr<AbstractMultiTOXTabDialog> SwAbstractDialogFactory_Impl::CreateMultiTOXTabDialog(
vcl::Window* pParent, const SfxItemSet& rSet,
SwWrtShell &rShell,
SwTOXBase* pCurTOX,
bool bGlobal)
{
VclPtr<SwMultiTOXTabDialog> pDlg = VclPtr<SwMultiTOXTabDialog>::Create( pParent, rSet, rShell, pCurTOX, USHRT_MAX, bGlobal );
- return new AbstractMultiTOXTabDialog_Impl( pDlg );
+ return VclPtr<AbstractMultiTOXTabDialog_Impl>::Create( pDlg );
}
-AbstractEditRegionDlg * SwAbstractDialogFactory_Impl::CreateEditRegionDlg(vcl::Window* pParent, SwWrtShell& rWrtSh)
+VclPtr<AbstractEditRegionDlg> SwAbstractDialogFactory_Impl::CreateEditRegionDlg(vcl::Window* pParent, SwWrtShell& rWrtSh)
{
VclPtr<SwEditRegionDlg> pDlg = VclPtr<SwEditRegionDlg>::Create( pParent, rWrtSh );
- return new AbstractEditRegionDlg_Impl( pDlg );
+ return VclPtr<AbstractEditRegionDlg_Impl>::Create( pDlg );
}
-AbstractInsertSectionTabDialog * SwAbstractDialogFactory_Impl::CreateInsertSectionTabDialog(
+VclPtr<AbstractInsertSectionTabDialog> SwAbstractDialogFactory_Impl::CreateInsertSectionTabDialog(
vcl::Window* pParent, const SfxItemSet& rSet, SwWrtShell& rSh)
{
VclPtr<SwInsertSectionTabDialog> pDlg = VclPtr<SwInsertSectionTabDialog>::Create(pParent, rSet, rSh);
- return new AbstractInsertSectionTabDialog_Impl(pDlg);
+ return VclPtr<AbstractInsertSectionTabDialog_Impl>::Create(pDlg);
}
-AbstractMarkFloatDlg * SwAbstractDialogFactory_Impl::CreateIndexMarkFloatDlg(
+VclPtr<AbstractMarkFloatDlg> SwAbstractDialogFactory_Impl::CreateIndexMarkFloatDlg(
SfxBindings* pBindings,
SfxChildWindow* pChild,
vcl::Window *pParent,
SfxChildWinInfo* pInfo )
{
VclPtr<SwIndexMarkFloatDlg> pDlg = VclPtr<SwIndexMarkFloatDlg>::Create(pBindings, pChild, pParent, pInfo, true/*bNew*/);
- return new AbstractIndexMarkFloatDlg_Impl(pDlg);
+ return VclPtr<AbstractIndexMarkFloatDlg_Impl>::Create(pDlg);
}
-AbstractMarkFloatDlg * SwAbstractDialogFactory_Impl::CreateAuthMarkFloatDlg(
+VclPtr<AbstractMarkFloatDlg> SwAbstractDialogFactory_Impl::CreateAuthMarkFloatDlg(
SfxBindings* pBindings,
SfxChildWindow* pChild,
vcl::Window *pParent,
SfxChildWinInfo* pInfo)
{
VclPtr<SwAuthMarkFloatDlg> pDlg = VclPtr<SwAuthMarkFloatDlg>::Create( pBindings, pChild, pParent, pInfo, true/*bNew*/ );
- return new AbstractAuthMarkFloatDlg_Impl( pDlg );
+ return VclPtr<AbstractAuthMarkFloatDlg_Impl>::Create( pDlg );
}
-AbstractSwWordCountFloatDlg * SwAbstractDialogFactory_Impl::CreateSwWordCountDialog(
+VclPtr<AbstractSwWordCountFloatDlg> SwAbstractDialogFactory_Impl::CreateSwWordCountDialog(
SfxBindings* pBindings,
SfxChildWindow* pChild,
vcl::Window *pParent,
SfxChildWinInfo* pInfo)
{
VclPtr<SwWordCountFloatDlg> pDlg = VclPtr<SwWordCountFloatDlg>::Create( pBindings, pChild, pParent, pInfo );
- return new AbstractSwWordCountFloatDlg_Impl( pDlg );
+ return VclPtr<AbstractSwWordCountFloatDlg_Impl>::Create( pDlg );
}
-VclAbstractDialog * SwAbstractDialogFactory_Impl::CreateIndexMarkModalDlg(
+VclPtr<VclAbstractDialog> SwAbstractDialogFactory_Impl::CreateIndexMarkModalDlg(
vcl::Window *pParent, SwWrtShell& rSh, SwTOXMark* pCurTOXMark )
{
VclPtr<Dialog> pDlg = VclPtr<SwIndexMarkModalDlg>::Create( pParent, rSh, pCurTOXMark );
- return new VclAbstractDialog_Impl( pDlg );
+ return VclPtr<VclAbstractDialog_Impl>::Create( pDlg );
}
-AbstractMailMergeWizard* SwAbstractDialogFactory_Impl::CreateMailMergeWizard(
+VclPtr<AbstractMailMergeWizard> SwAbstractDialogFactory_Impl::CreateMailMergeWizard(
SwView& rView, std::shared_ptr<SwMailMergeConfigItem>& rConfigItem)
{
- return new AbstractMailMergeWizard_Impl( VclPtr<SwMailMergeWizard>::Create(rView, rConfigItem));
+ return VclPtr<AbstractMailMergeWizard_Impl>::Create( VclPtr<SwMailMergeWizard>::Create(rView, rConfigItem));
}
GlossaryGetCurrGroup SwAbstractDialogFactory_Impl::GetGlossaryCurrGroupFunc()
diff --git a/sw/source/ui/dialog/swdlgfact.hxx b/sw/source/ui/dialog/swdlgfact.hxx
index e3cc72cf7e24..63d82b707c4e 100644
--- a/sw/source/ui/dialog/swdlgfact.hxx
+++ b/sw/source/ui/dialog/swdlgfact.hxx
@@ -353,6 +353,7 @@ public:
: pDlg(p)
{}
virtual ~AbstractMailMergeWizard_Impl() override;
+ virtual void dispose() override;
virtual void StartExecuteModal( const Link<Dialog&,void>& rEndDialogHdl ) override;
virtual long GetResult() override;
@@ -368,123 +369,123 @@ class SwAbstractDialogFactory_Impl : public SwAbstractDialogFactory
public:
virtual ~SwAbstractDialogFactory_Impl() {}
- virtual SfxAbstractDialog* CreateSfxDialog( vcl::Window* pParent,
+ virtual VclPtr<SfxAbstractDialog> CreateSfxDialog( vcl::Window* pParent,
const SfxItemSet& rAttr,
const css::uno::Reference< css::frame::XFrame >& _rxFrame,
sal_uInt32 nResId
) override;
- virtual AbstractSwWordCountFloatDlg* CreateSwWordCountDialog(SfxBindings* pBindings,
+ virtual VclPtr<AbstractSwWordCountFloatDlg> CreateSwWordCountDialog(SfxBindings* pBindings,
SfxChildWindow* pChild, vcl::Window *pParent, SfxChildWinInfo* pInfo) override;
- virtual AbstractSwInsertAbstractDlg * CreateSwInsertAbstractDlg() override;
- virtual AbstractSwAsciiFilterDlg* CreateSwAsciiFilterDlg ( SwDocShell& rDocSh,
+ virtual VclPtr<AbstractSwInsertAbstractDlg> CreateSwInsertAbstractDlg() override;
+ virtual VclPtr<AbstractSwAsciiFilterDlg> CreateSwAsciiFilterDlg ( SwDocShell& rDocSh,
SvStream* pStream ) override;
- virtual VclAbstractDialog * CreateSwInsertBookmarkDlg( vcl::Window *pParent, SwWrtShell &rSh, SfxRequest& rReq ) override;
- virtual AbstractSwBreakDlg * CreateSwBreakDlg(vcl::Window *pParent, SwWrtShell &rSh) override;
- virtual VclAbstractDialog * CreateSwChangeDBDlg(SwView& rVw) override;
- virtual SfxAbstractTabDialog * CreateSwCharDlg(vcl::Window* pParent, SwView& pVw, const SfxItemSet& rCoreSet,
+ virtual VclPtr<VclAbstractDialog> CreateSwInsertBookmarkDlg( vcl::Window *pParent, SwWrtShell &rSh, SfxRequest& rReq ) override;
+ virtual VclPtr<AbstractSwBreakDlg> CreateSwBreakDlg(vcl::Window *pParent, SwWrtShell &rSh) override;
+ virtual VclPtr<VclAbstractDialog> CreateSwChangeDBDlg(SwView& rVw) override;
+ virtual VclPtr<SfxAbstractTabDialog> CreateSwCharDlg(vcl::Window* pParent, SwView& pVw, const SfxItemSet& rCoreSet,
SwCharDlgMode nDialogMode, const OUString* pFormatStr = nullptr) override;
- virtual AbstractSwConvertTableDlg* CreateSwConvertTableDlg(SwView& rView, bool bToTable) override;
- virtual VclAbstractDialog * CreateSwCaptionDialog ( vcl::Window *pParent, SwView &rV) override;
+ virtual VclPtr<AbstractSwConvertTableDlg> CreateSwConvertTableDlg(SwView& rView, bool bToTable) override;
+ virtual VclPtr<VclAbstractDialog> CreateSwCaptionDialog ( vcl::Window *pParent, SwView &rV) override;
- virtual AbstractSwInsertDBColAutoPilot* CreateSwInsertDBColAutoPilot(SwView& rView,
+ virtual VclPtr<AbstractSwInsertDBColAutoPilot> CreateSwInsertDBColAutoPilot(SwView& rView,
css::uno::Reference< css::sdbc::XDataSource> rxSource,
css::uno::Reference<css::sdbcx::XColumnsSupplier> xColSupp,
const SwDBData& rData) override;
- virtual SfxAbstractTabDialog * CreateSwFootNoteOptionDlg(vcl::Window *pParent, SwWrtShell &rSh) override;
+ virtual VclPtr<SfxAbstractTabDialog> CreateSwFootNoteOptionDlg(vcl::Window *pParent, SwWrtShell &rSh) override;
- virtual AbstractDropDownFieldDialog * CreateDropDownFieldDialog(SwWrtShell &rSh,
+ virtual VclPtr<AbstractDropDownFieldDialog> CreateDropDownFieldDialog(SwWrtShell &rSh,
SwField* pField, bool bNextButton) override;
- virtual SfxAbstractTabDialog* CreateSwEnvDlg ( vcl::Window* pParent, const SfxItemSet& rSet, SwWrtShell* pWrtSh, Printer* pPrt, bool bInsert ) override;
- virtual AbstractSwLabDlg* CreateSwLabDlg(const SfxItemSet& rSet,
+ virtual VclPtr<SfxAbstractTabDialog> CreateSwEnvDlg ( vcl::Window* pParent, const SfxItemSet& rSet, SwWrtShell* pWrtSh, Printer* pPrt, bool bInsert ) override;
+ virtual VclPtr<AbstractSwLabDlg> CreateSwLabDlg(const SfxItemSet& rSet,
SwDBManager* pDBManager, bool bLabel) override;
virtual SwLabDlgMethod GetSwLabDlgStaticMethod () override;
- virtual SfxAbstractTabDialog* CreateSwParaDlg ( vcl::Window *pParent,
+ virtual VclPtr<SfxAbstractTabDialog> CreateSwParaDlg ( vcl::Window *pParent,
SwView& rVw,
const SfxItemSet& rCoreSet,
bool bDraw,
const OString& sDefPage = OString() ) override;
- virtual AbstractSwSelGlossaryDlg * CreateSwSelGlossaryDlg(const OUString &rShortName) override;
- virtual VclAbstractDialog * CreateVclAbstractDialog ( vcl::Window * pParent, SwWrtShell &rSh, int nResId ) override;
- virtual AbstractSplitTableDialog * CreateSplitTableDialog ( vcl::Window * pParent, SwWrtShell &rSh ) override;
+ virtual VclPtr<AbstractSwSelGlossaryDlg> CreateSwSelGlossaryDlg(const OUString &rShortName) override;
+ virtual VclPtr<VclAbstractDialog> CreateVclAbstractDialog ( vcl::Window * pParent, SwWrtShell &rSh, int nResId ) override;
+ virtual VclPtr<AbstractSplitTableDialog> CreateSplitTableDialog ( vcl::Window * pParent, SwWrtShell &rSh ) override;
- virtual AbstractSwAutoFormatDlg * CreateSwAutoFormatDlg( vcl::Window* pParent, SwWrtShell* pShell,
+ virtual VclPtr<AbstractSwAutoFormatDlg> CreateSwAutoFormatDlg( vcl::Window* pParent, SwWrtShell* pShell,
bool bSetAutoFormat = true,
const SwTableAutoFormat* pSelFormat = nullptr ) override;
- virtual SfxAbstractDialog * CreateSwBorderDlg (vcl::Window* pParent, SfxItemSet& rSet, SwBorderModes nType ) override;
+ virtual VclPtr<SfxAbstractDialog> CreateSwBorderDlg (vcl::Window* pParent, SfxItemSet& rSet, SwBorderModes nType ) override;
- virtual SfxAbstractDialog * CreateSwWrapDlg ( vcl::Window* pParent, SfxItemSet& rSet, SwWrtShell* pSh ) override;
- virtual VclAbstractDialog * CreateSwTableWidthDlg(vcl::Window *pParent, SwTableFUNC &rFnc) override;
- virtual SfxAbstractTabDialog* CreateSwTableTabDlg(vcl::Window* pParent, SfxItemPool& Pool,
+ virtual VclPtr<SfxAbstractDialog> CreateSwWrapDlg ( vcl::Window* pParent, SfxItemSet& rSet, SwWrtShell* pSh ) override;
+ virtual VclPtr<VclAbstractDialog> CreateSwTableWidthDlg(vcl::Window *pParent, SwTableFUNC &rFnc) override;
+ virtual VclPtr<SfxAbstractTabDialog> CreateSwTableTabDlg(vcl::Window* pParent, SfxItemPool& Pool,
const SfxItemSet* pItemSet, SwWrtShell* pSh) override;
- virtual AbstractSwFieldDlg * CreateSwFieldDlg(SfxBindings* pB, SwChildWinWrapper* pCW, vcl::Window *pParent) override;
- virtual SfxAbstractDialog* CreateSwFieldEditDlg ( SwView& rVw ) override;
- virtual AbstractSwRenameXNamedDlg * CreateSwRenameXNamedDlg(vcl::Window* pParent,
+ virtual VclPtr<AbstractSwFieldDlg> CreateSwFieldDlg(SfxBindings* pB, SwChildWinWrapper* pCW, vcl::Window *pParent) override;
+ virtual VclPtr<SfxAbstractDialog> CreateSwFieldEditDlg ( SwView& rVw ) override;
+ virtual VclPtr<AbstractSwRenameXNamedDlg> CreateSwRenameXNamedDlg(vcl::Window* pParent,
css::uno::Reference< css::container::XNamed > & xNamed,
css::uno::Reference< css::container::XNameAccess > & xNameAccess) override;
- virtual AbstractSwModalRedlineAcceptDlg * CreateSwModalRedlineAcceptDlg(vcl::Window *pParent) override;
+ virtual VclPtr<AbstractSwModalRedlineAcceptDlg> CreateSwModalRedlineAcceptDlg(vcl::Window *pParent) override;
- virtual VclAbstractDialog* CreateTableMergeDialog(vcl::Window* pParent, bool& rWithPrev) override;
- virtual SfxAbstractTabDialog* CreateFrameTabDialog( const OUString &rDialogType,
+ virtual VclPtr<VclAbstractDialog> CreateTableMergeDialog(vcl::Window* pParent, bool& rWithPrev) override;
+ virtual VclPtr<SfxAbstractTabDialog> CreateFrameTabDialog( const OUString &rDialogType,
SfxViewFrame *pFrame, vcl::Window *pParent,
const SfxItemSet& rCoreSet,
bool bNewFrame = true,
const OString& sDefPage = OString()) override;
- virtual SfxAbstractApplyTabDialog* CreateTemplateDialog(
+ virtual VclPtr<SfxAbstractApplyTabDialog> CreateTemplateDialog(
vcl::Window *pParent,
SfxStyleSheetBase& rBase,
SfxStyleFamily nRegion,
const OString& sPage,
SwWrtShell* pActShell,
bool bNew = false) override;
- virtual AbstractGlossaryDlg* CreateGlossaryDlg(SfxViewFrame* pViewFrame,
+ virtual VclPtr<AbstractGlossaryDlg> CreateGlossaryDlg(SfxViewFrame* pViewFrame,
SwGlossaryHdl* pGlosHdl,
SwWrtShell *pWrtShell) override;
- virtual AbstractFieldInputDlg* CreateFieldInputDlg(vcl::Window *pParent,
+ virtual VclPtr<AbstractFieldInputDlg> CreateFieldInputDlg(vcl::Window *pParent,
SwWrtShell &rSh, SwField* pField, bool bNextButton) override;
- virtual AbstractInsFootNoteDlg* CreateInsFootNoteDlg(
+ virtual VclPtr<AbstractInsFootNoteDlg> CreateInsFootNoteDlg(
vcl::Window * pParent, SwWrtShell &rSh, bool bEd = false) override;
- virtual VclAbstractDialog * CreateTitlePageDlg ( vcl::Window * pParent ) override;
- virtual VclAbstractDialog * CreateVclSwViewDialog(SwView& rView) override;
- virtual AbstractInsTableDlg* CreateInsTableDlg(SwView& rView) override;
- virtual AbstractJavaEditDialog* CreateJavaEditDialog(vcl::Window* pParent,
+ virtual VclPtr<VclAbstractDialog> CreateTitlePageDlg ( vcl::Window * pParent ) override;
+ virtual VclPtr<VclAbstractDialog> CreateVclSwViewDialog(SwView& rView) override;
+ virtual VclPtr<AbstractInsTableDlg> CreateInsTableDlg(SwView& rView) override;
+ virtual VclPtr<AbstractJavaEditDialog> CreateJavaEditDialog(vcl::Window* pParent,
SwWrtShell* pWrtSh) override;
- virtual AbstractMailMergeDlg* CreateMailMergeDlg(
+ virtual VclPtr<AbstractMailMergeDlg> CreateMailMergeDlg(
vcl::Window* pParent, SwWrtShell& rSh,
const OUString& rSourceName,
const OUString& rTableName,
sal_Int32 nCommandType,
const css::uno::Reference< css::sdbc::XConnection>& xConnection ) override;
- virtual AbstractMailMergeCreateFromDlg* CreateMailMergeCreateFromDlg(vcl::Window* pParent) override;
- virtual AbstractMailMergeFieldConnectionsDlg* CreateMailMergeFieldConnectionsDlg(vcl::Window* pParent) override;
- virtual VclAbstractDialog* CreateMultiTOXMarkDlg(vcl::Window* pParent, SwTOXMgr &rTOXMgr) override;
- virtual SfxAbstractTabDialog* CreateSwTabDialog( int nResId,
+ virtual VclPtr<AbstractMailMergeCreateFromDlg> CreateMailMergeCreateFromDlg(vcl::Window* pParent) override;
+ virtual VclPtr<AbstractMailMergeFieldConnectionsDlg> CreateMailMergeFieldConnectionsDlg(vcl::Window* pParent) override;
+ virtual VclPtr<VclAbstractDialog> CreateMultiTOXMarkDlg(vcl::Window* pParent, SwTOXMgr &rTOXMgr) override;
+ virtual VclPtr<SfxAbstractTabDialog> CreateSwTabDialog( int nResId,
vcl::Window* pParent,
const SfxItemSet* pSwItemSet,
SwWrtShell &) override;
- virtual AbstractMultiTOXTabDialog* CreateMultiTOXTabDialog(
+ virtual VclPtr<AbstractMultiTOXTabDialog> CreateMultiTOXTabDialog(
vcl::Window* pParent, const SfxItemSet& rSet,
SwWrtShell &rShell,
SwTOXBase* pCurTOX,
bool bGlobal) override;
- virtual AbstractEditRegionDlg* CreateEditRegionDlg(vcl::Window* pParent, SwWrtShell& rWrtSh) override;
- virtual AbstractInsertSectionTabDialog* CreateInsertSectionTabDialog(
+ virtual VclPtr<AbstractEditRegionDlg> CreateEditRegionDlg(vcl::Window* pParent, SwWrtShell& rWrtSh) override;
+ virtual VclPtr<AbstractInsertSectionTabDialog> CreateInsertSectionTabDialog(
vcl::Window* pParent, const SfxItemSet& rSet, SwWrtShell& rSh) override;
- virtual AbstractMarkFloatDlg* CreateIndexMarkFloatDlg(
+ virtual VclPtr<AbstractMarkFloatDlg> CreateIndexMarkFloatDlg(
SfxBindings* pBindings,
SfxChildWindow* pChild,
vcl::Window *pParent,
SfxChildWinInfo* pInfo) override;
- virtual AbstractMarkFloatDlg* CreateAuthMarkFloatDlg(
+ virtual VclPtr<AbstractMarkFloatDlg> CreateAuthMarkFloatDlg(
SfxBindings* pBindings,
SfxChildWindow* pChild,
vcl::Window *pParent,
SfxChildWinInfo* pInfo) override;
- virtual VclAbstractDialog * CreateIndexMarkModalDlg(
+ virtual VclPtr<VclAbstractDialog> CreateIndexMarkModalDlg(
vcl::Window *pParent, SwWrtShell& rSh, SwTOXMark* pCurTOXMark ) override;
- virtual AbstractMailMergeWizard* CreateMailMergeWizard(SwView& rView, std::shared_ptr<SwMailMergeConfigItem>& rConfigItem) override;
+ virtual VclPtr<AbstractMailMergeWizard> CreateMailMergeWizard(SwView& rView, std::shared_ptr<SwMailMergeConfigItem>& rConfigItem) override;
virtual GlossaryGetCurrGroup GetGlossaryCurrGroupFunc() override;
virtual GlossarySetActGroup SetGlossaryActGroupFunc() override;
diff --git a/sw/source/uibase/app/apphdl.cxx b/sw/source/uibase/app/apphdl.cxx
index 8d575cc80672..00a9f81b9718 100644
--- a/sw/source/uibase/app/apphdl.cxx
+++ b/sw/source/uibase/app/apphdl.cxx
@@ -382,7 +382,7 @@ class SwMailMergeWizardExecutor : public salhelper::SimpleReferenceObject
{
SwView* m_pView; // never owner
SwView* m_pView2Close; // never owner
- AbstractMailMergeWizard* m_pWizard; // always owner
+ VclPtr<AbstractMailMergeWizard> m_pWizard; // always owner
bool m_bDestroyMMToolbarOnCancel;
DECL_LINK( EndDialogHdl, Dialog&, void );
@@ -611,15 +611,15 @@ IMPL_LINK_NOARG( SwMailMergeWizardExecutor, EndDialogHdl, Dialog&, void )
IMPL_LINK_NOARG(SwMailMergeWizardExecutor, DestroyDialogHdl, void*, void)
{
- delete m_pWizard;
- m_pWizard = nullptr;
+ m_pWizard.disposeAndClear();
release();
}
IMPL_STATIC_LINK(SwMailMergeWizardExecutor, DestroyWizardHdl, void*, pDialog, void )
{
- delete static_cast<AbstractMailMergeWizard*>(pDialog);
+ VclPtr<AbstractMailMergeWizard> p = static_cast<AbstractMailMergeWizard*>(pDialog);
+ p.disposeAndClear();
}
IMPL_LINK_NOARG(SwMailMergeWizardExecutor, CancelHdl, void*, void)
@@ -653,8 +653,7 @@ IMPL_LINK_NOARG(SwMailMergeWizardExecutor, CancelHdl, void*, void)
xMMConfig->Commit();
}
- delete m_pWizard;
- m_pWizard = nullptr;
+ m_pWizard.disposeAndClear();
release();
}
diff --git a/sw/source/uibase/app/docsh2.cxx b/sw/source/uibase/app/docsh2.cxx
index 8b5a6d95f704..28553126d76d 100644
--- a/sw/source/uibase/app/docsh2.cxx
+++ b/sw/source/uibase/app/docsh2.cxx
@@ -372,9 +372,10 @@ void SwDocShell::Execute(SfxRequest& rReq)
aSet.Put( *static_cast<const SfxBoolItem*>(pOpenSmartTagOptionsItem) );
SfxAbstractDialogFactory* pFact = SfxAbstractDialogFactory::Create();
- SfxAbstractTabDialog* pDlg = pFact->CreateAutoCorrTabDialog( &aSet );
+ VclPtr<SfxAbstractTabDialog> pDlg = pFact->CreateAutoCorrTabDialog( &aSet );
pDlg->Execute();
- delete pDlg;
+ pDlg.disposeAndClear();
+
rACW.SetLockWordLstLocked( bOldLocked );
diff --git a/sw/source/uibase/app/docst.cxx b/sw/source/uibase/app/docst.cxx
index bd551ffdc74b..cd5745715e36 100644
--- a/sw/source/uibase/app/docst.cxx
+++ b/sw/source/uibase/app/docst.cxx
@@ -554,7 +554,7 @@ private:
sal_uInt16 m_nRet;
rtl::Reference< SwDocStyleSheet > m_xTmp;
SfxStyleFamily m_nFamily;
- SfxAbstractApplyTabDialog *m_pDlg;
+ VclPtr<SfxAbstractApplyTabDialog> m_pDlg;
rtl::Reference< SfxStyleSheetBasePool > m_xBasePool;
bool m_bModified;
};
diff --git a/sw/source/uibase/dbui/dbmgr.cxx b/sw/source/uibase/dbui/dbmgr.cxx
index 55e0bcf233c0..4315cdda37d7 100644
--- a/sw/source/uibase/dbui/dbmgr.cxx
+++ b/sw/source/uibase/dbui/dbmgr.cxx
@@ -307,14 +307,14 @@ void SwDataSourceRemovedListener::Dispose()
struct SwDBManager_Impl
{
- SwDSParam* pMergeData;
- AbstractMailMergeDlg* pMergeDialog;
+ SwDSParam* pMergeData;
+ VclPtr<AbstractMailMergeDlg> pMergeDialog;
::rtl::Reference<SwConnectionDisposedListener_Impl> m_xDisposeListener;
rtl::Reference<SwDataSourceRemovedListener> m_xDataSourceRemovedListener;
explicit SwDBManager_Impl(SwDBManager& rDBManager)
:pMergeData(nullptr)
- ,pMergeDialog(nullptr)
+ ,pMergeDialog()
, m_xDisposeListener(new SwConnectionDisposedListener_Impl(rDBManager))
{}
@@ -2910,7 +2910,7 @@ void SwDBManager::ExecuteFormLetter( SwWrtShell& rSh,
//this has been done by the SwConnectionDisposedListener_Impl already
}
}
- DELETEZ(pImpl->pMergeDialog);
+ pImpl->pMergeDialog.disposeAndClear();
}
void SwDBManager::InsertText(SwWrtShell& rSh,
diff --git a/sw/source/uibase/dialog/wordcountwrapper.cxx b/sw/source/uibase/dialog/wordcountwrapper.cxx
index 2b5e963484f7..031d034e26bb 100644
--- a/sw/source/uibase/dialog/wordcountwrapper.cxx
+++ b/sw/source/uibase/dialog/wordcountwrapper.cxx
@@ -28,6 +28,11 @@ SwWordCountWrapper::SwWordCountWrapper( vcl::Window *pParentWindow,
SetWindow(xAbstDlg->GetWindow());
}
+SwWordCountWrapper::~SwWordCountWrapper()
+{
+ xAbstDlg.disposeAndClear();
+}
+
SfxChildWinInfo SwWordCountWrapper::GetInfo() const
{
SfxChildWinInfo aInfo = SfxChildWindow::GetInfo();
diff --git a/sw/source/uibase/inc/fldwrap.hxx b/sw/source/uibase/inc/fldwrap.hxx
index d7abe750b8e6..0ebd58b45a45 100644
--- a/sw/source/uibase/inc/fldwrap.hxx
+++ b/sw/source/uibase/inc/fldwrap.hxx
@@ -25,7 +25,7 @@ class AbstractSwFieldDlg;
class SwFieldDlgWrapper : public SwChildWinWrapper
{
public:
- AbstractSwFieldDlg * pDlgInterface;
+ VclPtr<AbstractSwFieldDlg> pDlgInterface;
SwFieldDlgWrapper( vcl::Window* pParent, sal_uInt16 nId,
SfxBindings* pBindings, SfxChildWinInfo* pInfo );
@@ -39,7 +39,7 @@ public:
class SwFieldDataOnlyDlgWrapper : public SwChildWinWrapper
{
public:
- AbstractSwFieldDlg * pDlgInterface;
+ VclPtr<AbstractSwFieldDlg> pDlgInterface;
SwFieldDataOnlyDlgWrapper( vcl::Window* pParent, sal_uInt16 nId,
SfxBindings* pBindings, SfxChildWinInfo* pInfo );
diff --git a/sw/source/uibase/inc/idxmrk.hxx b/sw/source/uibase/inc/idxmrk.hxx
index 99e5cbf8a32b..c29252121c09 100644
--- a/sw/source/uibase/inc/idxmrk.hxx
+++ b/sw/source/uibase/inc/idxmrk.hxx
@@ -27,7 +27,7 @@ class SwWrtShell;
class SwInsertIdxMarkWrapper : public SfxChildWindow
{
- AbstractMarkFloatDlg* pAbstDlg;
+ VclPtr<AbstractMarkFloatDlg> pAbstDlg;
protected:
SwInsertIdxMarkWrapper( vcl::Window *pParentWindow,
sal_uInt16 nId,
@@ -42,7 +42,7 @@ public:
class SwInsertAuthMarkWrapper : public SfxChildWindow
{
- AbstractMarkFloatDlg* pAbstDlg;
+ VclPtr<AbstractMarkFloatDlg> pAbstDlg;
protected:
SwInsertAuthMarkWrapper( vcl::Window *pParentWindow,
sal_uInt16 nId,
diff --git a/sw/source/uibase/inc/wordcountdialog.hxx b/sw/source/uibase/inc/wordcountdialog.hxx
index 6a2bdd66333a..b8ebc2344db4 100644
--- a/sw/source/uibase/inc/wordcountdialog.hxx
+++ b/sw/source/uibase/inc/wordcountdialog.hxx
@@ -63,16 +63,16 @@ public:
class SwWordCountWrapper : public SfxChildWindow
{
- std::unique_ptr<AbstractSwWordCountFloatDlg> xAbstDlg;
+ VclPtr<AbstractSwWordCountFloatDlg> xAbstDlg;
protected:
SwWordCountWrapper( vcl::Window *pParentWindow,
sal_uInt16 nId,
SfxBindings* pBindings,
SfxChildWinInfo* pInfo );
-
SFX_DECL_CHILDWINDOW_WITHID(SwWordCountWrapper);
public:
+ virtual ~SwWordCountWrapper() override;
void UpdateCounts();
void SetCounts(const SwDocStat &rCurrCnt, const SwDocStat &rDocStat);
};
diff --git a/sw/source/uibase/wrtsh/wrtsh2.cxx b/sw/source/uibase/wrtsh/wrtsh2.cxx
index cb9b7d3862ef..c9690a44af7e 100644
--- a/sw/source/uibase/wrtsh/wrtsh2.cxx
+++ b/sw/source/uibase/wrtsh/wrtsh2.cxx
@@ -222,7 +222,7 @@ class FieldDeletionModify : public SwModify
}
}
private:
- AbstractFieldInputDlg* mpInputFieldDlg;
+ VclPtr<AbstractFieldInputDlg> mpInputFieldDlg;
SwFormatField* mpFormatField;
};