summaryrefslogtreecommitdiff
path: root/extensions/source/abpilot/typeselectionpage.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/source/abpilot/typeselectionpage.cxx')
-rw-r--r--extensions/source/abpilot/typeselectionpage.cxx21
1 files changed, 19 insertions, 2 deletions
diff --git a/extensions/source/abpilot/typeselectionpage.cxx b/extensions/source/abpilot/typeselectionpage.cxx
index 79361869e8b7..f732eff901b4 100644
--- a/extensions/source/abpilot/typeselectionpage.cxx
+++ b/extensions/source/abpilot/typeselectionpage.cxx
@@ -151,11 +151,28 @@ namespace abp
TypeSelectionPage::~TypeSelectionPage()
{
+ disposeOnce();
+ }
+
+ void TypeSelectionPage::dispose()
+ {
for ( ::std::vector< ButtonItem >::iterator loop = m_aAllTypes.begin();
loop != m_aAllTypes.end(); ++loop )
{
loop->m_bVisible = false;
}
+ m_pEvolution.clear();
+ m_pEvolutionGroupwise.clear();
+ m_pEvolutionLdap.clear();
+ m_pMORK.clear();
+ m_pThunderbird.clear();
+ m_pKab.clear();
+ m_pMacab.clear();
+ m_pLDAP.clear();
+ m_pOutlook.clear();
+ m_pOE.clear();
+ m_pOther.clear();
+ AddressBookSourcePage::dispose();
}
@@ -226,8 +243,8 @@ namespace abp
if (AST_INVALID == getSelectedType( ))
{
- MessageDialog aError(this, ModuleRes(RID_STR_NEEDTYPESELECTION));
- aError.Execute();
+ ScopedVclPtrInstance< MessageDialog > aError(this, ModuleRes(RID_STR_NEEDTYPESELECTION));
+ aError->Execute();
return false;
}