diff options
author | Noel Grandin <noel@peralex.com> | 2015-01-26 13:11:48 +0200 |
---|---|---|
committer | Michael Meeks <michael.meeks@collabora.com> | 2015-04-09 21:36:27 +0100 |
commit | 78626422af9ae7f8d7ab66b4cf9eb7551b322c8e (patch) | |
tree | 802298bba0eef0864ad19446c7329cfaebdb1194 | |
parent | 33d7f6dcfee48a33ce34e483a4249f0be0ffa4fe (diff) |
vcl: VclPtr conversion in filter
Change-Id: I355315e19545610c1f26c94abe4e7d3fe19af867
-rw-r--r-- | filter/source/pdf/impdialog.cxx | 12 | ||||
-rw-r--r-- | filter/source/pdf/impdialog.hxx | 2 | ||||
-rw-r--r-- | filter/source/svg/impsvgdialog.cxx | 91 | ||||
-rw-r--r-- | filter/source/svg/impsvgdialog.hxx | 19 | ||||
-rw-r--r-- | filter/source/xsltdialog/xmlfiltersettingsdialog.cxx | 6 | ||||
-rw-r--r-- | filter/source/xsltdialog/xmlfiltersettingsdialog.hxx | 1 | ||||
-rw-r--r-- | filter/source/xsltdialog/xmlfiltertabdialog.cxx | 6 | ||||
-rw-r--r-- | filter/source/xsltdialog/xmlfiltertabdialog.hxx | 1 | ||||
-rw-r--r-- | filter/source/xsltdialog/xmlfiltertestdialog.cxx | 6 | ||||
-rw-r--r-- | filter/source/xsltdialog/xmlfiltertestdialog.hxx | 1 |
10 files changed, 97 insertions, 48 deletions
diff --git a/filter/source/pdf/impdialog.cxx b/filter/source/pdf/impdialog.cxx index e8d1e1eb91ab..4d08f140d2c4 100644 --- a/filter/source/pdf/impdialog.cxx +++ b/filter/source/pdf/impdialog.cxx @@ -312,6 +312,11 @@ IMPL_LINK_NOARG(ImpPDFTabDialog, CancelHdl) ImpPDFTabDialog::~ImpPDFTabDialog() { + dispose(); +} + +void ImpPDFTabDialog::dispose() +{ //delete the pages, needed because otherwise the child tab pages //don't get destroyed RemoveTabPage(mnGeneralPageId); @@ -320,6 +325,7 @@ ImpPDFTabDialog::~ImpPDFTabDialog() RemoveTabPage(mnLinksPage); RemoveTabPage(mnSecurityPageId); RemoveTabPage(mnSigningPageId); + SfxTabDialog::dispose(); } @@ -1511,9 +1517,15 @@ ImplErrorDialog::ImplErrorDialog(const std::set< vcl::PDFWriter::ErrorCode >& rE ImplErrorDialog::~ImplErrorDialog() { + dispose(); +} + +void ImplErrorDialog::dispose() +{ // free strings again for( sal_uInt16 n = 0; n < m_pErrors->GetEntryCount(); n++ ) delete static_cast<OUString*>(m_pErrors->GetEntryData( n )); + MessageDialog::dispose(); } IMPL_LINK_NOARG(ImplErrorDialog, SelectHdl) diff --git a/filter/source/pdf/impdialog.hxx b/filter/source/pdf/impdialog.hxx index dc4a78789ce3..a913c9cca14f 100644 --- a/filter/source/pdf/impdialog.hxx +++ b/filter/source/pdf/impdialog.hxx @@ -63,6 +63,7 @@ class ImplErrorDialog : public MessageDialog public: ImplErrorDialog( const std::set< vcl::PDFWriter::ErrorCode >& ); virtual ~ImplErrorDialog(); + virtual void dispose() SAL_OVERRIDE; }; class ImpPDFTabSecurityPage; @@ -171,6 +172,7 @@ public: const css::uno::Reference< XComponent >& rDoc ); virtual ~ImpPDFTabDialog(); + virtual void dispose() SAL_OVERRIDE; Sequence< PropertyValue > GetFilterData(); diff --git a/filter/source/svg/impsvgdialog.cxx b/filter/source/svg/impsvgdialog.cxx index 5fd3e6d218b4..228598b85d65 100644 --- a/filter/source/svg/impsvgdialog.cxx +++ b/filter/source/svg/impsvgdialog.cxx @@ -36,73 +36,86 @@ inline sal_Int32 implMap( vcl::Window& /*rWnd*/, sal_Int32 nVal ) ImpSVGDialog::ImpSVGDialog( vcl::Window* pParent, Sequence< PropertyValue >& rFilterData ) : ModalDialog( pParent ), - maFI( this ), - maCBTinyProfile( this ), - maCBEmbedFonts( this ), - maCBUseNativeDecoration( this ), - maBTOK( this, WB_DEF_OK ), - maBTCancel( this ), - maBTHelp( this ), + maFI( new FixedLine(this) ), + maCBTinyProfile( new CheckBox(this) ), + maCBEmbedFonts( new CheckBox(this) ), + maCBUseNativeDecoration( new CheckBox(this) ), + maBTOK( new OKButton(this, WB_DEF_OK) ), + maBTCancel( new CancelButton(this) ), + maBTHelp( new HelpButton(this) ), maConfigItem( SVG_EXPORTFILTER_CONFIGPATH, &rFilterData ), mbOldNativeDecoration( false ) { SetText( "SVG Export Options" ); SetOutputSizePixel( Size( implMap( *this, 177 ), implMap( *this, 77 ) ) ); - maFI.SetText( "Export" ); - maFI.SetPosSizePixel( Point( implMap( *this, 6 ), implMap( *this, 3 ) ), + maFI->SetText( "Export" ); + maFI->SetPosSizePixel( Point( implMap( *this, 6 ), implMap( *this, 3 ) ), Size( implMap( *this, 165 ), implMap( *this, 8 ) ) ); - maCBTinyProfile.SetText( "Use SVG Tiny profile" ); - maCBTinyProfile.SetPosSizePixel( Point( implMap( *this, 12 ), implMap( *this, 14 ) ), + maCBTinyProfile->SetText( "Use SVG Tiny profile" ); + maCBTinyProfile->SetPosSizePixel( Point( implMap( *this, 12 ), implMap( *this, 14 ) ), Size( implMap( *this, 142 ), implMap( *this, 10 ) ) ); - maCBEmbedFonts.SetText( "Embed fonts" ); - maCBEmbedFonts.SetPosSizePixel( Point( implMap( *this, 12 ), implMap( *this, 27 ) ), + maCBEmbedFonts->SetText( "Embed fonts" ); + maCBEmbedFonts->SetPosSizePixel( Point( implMap( *this, 12 ), implMap( *this, 27 ) ), Size( implMap( *this, 142 ), implMap( *this, 10 ) ) ); - maCBUseNativeDecoration.SetText( "Use SVG native text decoration" ); - maCBUseNativeDecoration.SetPosSizePixel( Point( implMap( *this, 12 ), implMap( *this, 41 ) ), + maCBUseNativeDecoration->SetText( "Use SVG native text decoration" ); + maCBUseNativeDecoration->SetPosSizePixel( Point( implMap( *this, 12 ), implMap( *this, 41 ) ), Size( implMap( *this, 142 ), implMap( *this, 10 ) ) ); - maCBTinyProfile.Check( maConfigItem.ReadBool( OUString( SVG_PROP_TINYPROFILE ), false ) ); - maCBEmbedFonts.Check( maConfigItem.ReadBool( OUString( SVG_PROP_EMBEDFONTS ), true ) ); - maCBUseNativeDecoration.Check( maConfigItem.ReadBool( OUString( SVG_PROP_NATIVEDECORATION ), true ) ); + maCBTinyProfile->Check( maConfigItem.ReadBool( OUString( SVG_PROP_TINYPROFILE ), false ) ); + maCBEmbedFonts->Check( maConfigItem.ReadBool( OUString( SVG_PROP_EMBEDFONTS ), true ) ); + maCBUseNativeDecoration->Check( maConfigItem.ReadBool( OUString( SVG_PROP_NATIVEDECORATION ), true ) ); - maBTOK.SetPosSizePixel( Point( implMap( *this, 12 ), implMap( *this, 57 ) ), + maBTOK->SetPosSizePixel( Point( implMap( *this, 12 ), implMap( *this, 57 ) ), Size( implMap( *this, 50 ), implMap( *this, 14 ) ) ); - maBTCancel.SetPosSizePixel( Point( implMap( *this, 65 ), implMap( *this, 57 ) ), + maBTCancel->SetPosSizePixel( Point( implMap( *this, 65 ), implMap( *this, 57 ) ), Size( implMap( *this, 50 ), implMap( *this, 14 ) ) ); - maBTHelp.SetPosSizePixel( Point( implMap( *this, 121 ), implMap( *this, 57 ) ), + maBTHelp->SetPosSizePixel( Point( implMap( *this, 121 ), implMap( *this, 57 ) ), Size( implMap( *this, 50 ), implMap( *this, 14 ) ) ); - maCBTinyProfile.SetToggleHdl( LINK( this, ImpSVGDialog, OnToggleCheckbox ) ); - OnToggleCheckbox( &maCBTinyProfile ); + maCBTinyProfile->SetToggleHdl( LINK( this, ImpSVGDialog, OnToggleCheckbox ) ); + OnToggleCheckbox( maCBTinyProfile.get() ); - maFI.Show(); + maFI->Show(); - maCBTinyProfile.Show(); - maCBEmbedFonts.Show(); - maCBUseNativeDecoration.Show(); + maCBTinyProfile->Show(); + maCBEmbedFonts->Show(); + maCBUseNativeDecoration->Show(); - maBTOK.Show(); - maBTCancel.Show(); - maBTHelp.Show(); + maBTOK->Show(); + maBTCancel->Show(); + maBTHelp->Show(); } ImpSVGDialog::~ImpSVGDialog() { + dispose(); +} + +void ImpSVGDialog::dispose() +{ + maFI.disposeAndClear(); + maCBTinyProfile.disposeAndClear(); + maCBEmbedFonts.disposeAndClear(); + maCBUseNativeDecoration.disposeAndClear(); + maBTOK.disposeAndClear(); + maBTCancel.disposeAndClear(); + maBTHelp.disposeAndClear(); + ModalDialog::dispose(); } Sequence< PropertyValue > ImpSVGDialog::GetFilterData() { - maConfigItem.WriteBool( OUString( SVG_PROP_TINYPROFILE ), maCBTinyProfile.IsChecked() ); - maConfigItem.WriteBool( OUString( SVG_PROP_EMBEDFONTS ), maCBEmbedFonts.IsChecked() ); - maConfigItem.WriteBool( OUString( SVG_PROP_NATIVEDECORATION ), maCBUseNativeDecoration.IsChecked() ); + maConfigItem.WriteBool( OUString( SVG_PROP_TINYPROFILE ), maCBTinyProfile->IsChecked() ); + maConfigItem.WriteBool( OUString( SVG_PROP_EMBEDFONTS ), maCBEmbedFonts->IsChecked() ); + maConfigItem.WriteBool( OUString( SVG_PROP_NATIVEDECORATION ), maCBUseNativeDecoration->IsChecked() ); return( maConfigItem.GetFilterData() ); } @@ -111,19 +124,19 @@ Sequence< PropertyValue > ImpSVGDialog::GetFilterData() IMPL_LINK( ImpSVGDialog, OnToggleCheckbox, CheckBox*, pBox ) { - if( pBox == &maCBTinyProfile ) + if( pBox == maCBTinyProfile.get() ) { if( pBox->IsChecked() ) { - mbOldNativeDecoration = maCBUseNativeDecoration.IsChecked(); + mbOldNativeDecoration = maCBUseNativeDecoration->IsChecked(); - maCBUseNativeDecoration.Check( false ); - maCBUseNativeDecoration.Disable(); + maCBUseNativeDecoration->Check( false ); + maCBUseNativeDecoration->Disable(); } else { - maCBUseNativeDecoration.Enable(); - maCBUseNativeDecoration.Check( mbOldNativeDecoration ); + maCBUseNativeDecoration->Enable(); + maCBUseNativeDecoration->Check( mbOldNativeDecoration ); } } diff --git a/filter/source/svg/impsvgdialog.hxx b/filter/source/svg/impsvgdialog.hxx index 657cd9a47bb9..ada5b71df1e3 100644 --- a/filter/source/svg/impsvgdialog.hxx +++ b/filter/source/svg/impsvgdialog.hxx @@ -48,17 +48,17 @@ class ImpSVGDialog : public ModalDialog { private: - FixedLine maFI; - CheckBox maCBTinyProfile; - CheckBox maCBEmbedFonts; - CheckBox maCBUseNativeDecoration; + VclPtr<FixedLine> maFI; + VclPtr<CheckBox> maCBTinyProfile; + VclPtr<CheckBox> maCBEmbedFonts; + VclPtr<CheckBox> maCBUseNativeDecoration; - OKButton maBTOK; - CancelButton maBTCancel; - HelpButton maBTHelp; + VclPtr<OKButton> maBTOK; + VclPtr<CancelButton> maBTCancel; + VclPtr<HelpButton> maBTHelp; - FilterConfigItem maConfigItem; - bool mbOldNativeDecoration; + FilterConfigItem maConfigItem; + bool mbOldNativeDecoration; DECL_LINK( OnToggleCheckbox, CheckBox* ); @@ -67,6 +67,7 @@ public: ImpSVGDialog( vcl::Window* pParent, /*ResMgr& rResMgr,*/ com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue >& rFilterData ); virtual ~ImpSVGDialog(); + virtual void dispose() SAL_OVERRIDE; com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue > GetFilterData(); }; diff --git a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx index 271db0b60a38..57d8a3d2f5d7 100644 --- a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx +++ b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx @@ -1399,8 +1399,14 @@ Size SvxPathControl::GetOptimalSize() const SvxPathControl::~SvxPathControl() { + dispose(); +} + +void SvxPathControl::dispose() +{ delete m_pFocusCtrl; delete m_pHeaderBar; + vcl::Window::dispose(); } extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSvxPathControl(vcl::Window *pParent, VclBuilder::stringmap &) diff --git a/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx b/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx index 85bb4d79094a..beadad3609b8 100644 --- a/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx +++ b/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx @@ -50,6 +50,7 @@ public: HeaderBar* getHeaderBar() { return m_pHeaderBar; } XMLFilterListBox* getListBox() { return m_pFocusCtrl; } virtual ~SvxPathControl(); + virtual void dispose() SAL_OVERRIDE; virtual bool Notify( NotifyEvent& rNEvt ) SAL_OVERRIDE; }; diff --git a/filter/source/xsltdialog/xmlfiltertabdialog.cxx b/filter/source/xsltdialog/xmlfiltertabdialog.cxx index 4494a74ba799..b5e28d1053aa 100644 --- a/filter/source/xsltdialog/xmlfiltertabdialog.cxx +++ b/filter/source/xsltdialog/xmlfiltertabdialog.cxx @@ -75,9 +75,15 @@ XMLFilterTabDialog::XMLFilterTabDialog(vcl::Window *pParent, ResMgr& rResMgr, XMLFilterTabDialog::~XMLFilterTabDialog() { + dispose(); +} + +void XMLFilterTabDialog::dispose() +{ delete mpBasicPage; delete mpXSLTPage; delete mpNewInfo; + TabDialog::dispose(); } diff --git a/filter/source/xsltdialog/xmlfiltertabdialog.hxx b/filter/source/xsltdialog/xmlfiltertabdialog.hxx index 1ec8594ceac4..c07610ed34c4 100644 --- a/filter/source/xsltdialog/xmlfiltertabdialog.hxx +++ b/filter/source/xsltdialog/xmlfiltertabdialog.hxx @@ -36,6 +36,7 @@ class XMLFilterTabDialog: public TabDialog public: XMLFilterTabDialog(vcl::Window *pParent, ResMgr& rResMgr, const com::sun::star::uno::Reference< com::sun::star::uno::XComponentContext >& rxContext, const filter_info_impl* pInfo); virtual ~XMLFilterTabDialog(); + virtual void dispose() SAL_OVERRIDE; bool onOk(); diff --git a/filter/source/xsltdialog/xmlfiltertestdialog.cxx b/filter/source/xsltdialog/xmlfiltertestdialog.cxx index 359300e31ea9..5db2fac635f7 100644 --- a/filter/source/xsltdialog/xmlfiltertestdialog.cxx +++ b/filter/source/xsltdialog/xmlfiltertestdialog.cxx @@ -178,6 +178,11 @@ XMLFilterTestDialog::XMLFilterTestDialog(vcl::Window* pParent, XMLFilterTestDialog::~XMLFilterTestDialog() { + dispose(); +} + +void XMLFilterTestDialog::dispose() +{ try { if( mxGlobalBroadcaster.is() ) @@ -189,6 +194,7 @@ XMLFilterTestDialog::~XMLFilterTestDialog() } delete m_pFilterInfo; + ModalDialog::dispose(); } void XMLFilterTestDialog::test( const filter_info_impl& rFilterInfo ) diff --git a/filter/source/xsltdialog/xmlfiltertestdialog.hxx b/filter/source/xsltdialog/xmlfiltertestdialog.hxx index 45953483b43a..776d7bc792f5 100644 --- a/filter/source/xsltdialog/xmlfiltertestdialog.hxx +++ b/filter/source/xsltdialog/xmlfiltertestdialog.hxx @@ -37,6 +37,7 @@ public: XMLFilterTestDialog(vcl::Window* pParent, const com::sun::star::uno::Reference< com::sun::star::uno::XComponentContext >& rxContext); virtual ~XMLFilterTestDialog(); + virtual void dispose() SAL_OVERRIDE; void test( const filter_info_impl& rFilterInfo ); |