vcl: VclPtr conversion in filter

Change-Id: I355315e19545610c1f26c94abe4e7d3fe19af867
diff --git a/filter/source/pdf/impdialog.cxx b/filter/source/pdf/impdialog.cxx
index e8d1e1e..4d08f14 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 dc4a787..a913c9c 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 5fd3e6d..228598b 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 657cd9a..ada5b71 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 271db0b..57d8a3d 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 85bb4d7..beadad3 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 4494a74..b5e28d1 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 1ec8594..c07610e 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 359300e..5db2fac 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 4595348..776d7bc 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 );