diff options
-rw-r--r-- | desktop/source/app/app.cxx | 2 | ||||
-rw-r--r-- | include/vcl/graphicfilter.hxx | 4 | ||||
-rw-r--r-- | test/source/bootstrapfixture.cxx | 2 | ||||
-rw-r--r-- | vcl/source/filter/graphicfilter.cxx | 71 |
4 files changed, 38 insertions, 41 deletions
diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx index de739c8b4976..4baa27d434df 100644 --- a/desktop/source/app/app.cxx +++ b/desktop/source/app/app.cxx @@ -1699,7 +1699,7 @@ int Desktop::doShutdown() IMPL_STATIC_LINK_TYPED( Desktop, ImplInitFilterHdl, ::ConvertData&, rData, bool ) { - return GraphicFilter::GetGraphicFilter().GetFilterCallback().Call( &rData ); + return GraphicFilter::GetGraphicFilter().GetFilterCallback().Call( rData ); } bool Desktop::InitializeConfiguration() diff --git a/include/vcl/graphicfilter.hxx b/include/vcl/graphicfilter.hxx index a802474999cf..005c146ef14b 100644 --- a/include/vcl/graphicfilter.hxx +++ b/include/vcl/graphicfilter.hxx @@ -241,7 +241,7 @@ private: sal_uLong ImplSetError( sal_uLong nError, const SvStream* pStm = NULL ); sal_uInt16 ImpTestOrFindFormat( const OUString& rPath, SvStream& rStream, sal_uInt16& rFormat ); - DECL_LINK( FilterCallback, ConvertData* ); + DECL_LINK_TYPED( FilterCallback, ConvertData&, bool ); protected: @@ -324,7 +324,7 @@ public: const FilterErrorEx& GetLastError() const { return *pErrorEx;} void ResetLastError(); - const Link<> GetFilterCallback() const; + const Link<ConvertData&,bool> GetFilterCallback() const; static GraphicFilter& GetGraphicFilter(); static int LoadGraphic( const OUString& rPath, const OUString& rFilter, Graphic& rGraphic, diff --git a/test/source/bootstrapfixture.cxx b/test/source/bootstrapfixture.cxx index 45fb98a2fb93..d8633d23fc10 100644 --- a/test/source/bootstrapfixture.cxx +++ b/test/source/bootstrapfixture.cxx @@ -236,7 +236,7 @@ void test::BootstrapFixture::validate(const OUString& rPath, test::ValidationFor IMPL_STATIC_LINK_TYPED( test::BootstrapFixture, ImplInitFilterHdl, ConvertData&, rData, bool) { - return GraphicFilter::GetGraphicFilter().GetFilterCallback().Call( &rData ); + return GraphicFilter::GetGraphicFilter().GetFilterCallback().Call( rData ); } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/vcl/source/filter/graphicfilter.cxx b/vcl/source/filter/graphicfilter.cxx index 45480f4be204..84cdfcac5ac8 100644 --- a/vcl/source/filter/graphicfilter.cxx +++ b/vcl/source/filter/graphicfilter.cxx @@ -2177,53 +2177,50 @@ void GraphicFilter::ResetLastError() pErrorEx->nFilterError = pErrorEx->nStreamError = 0UL; } -const Link<> GraphicFilter::GetFilterCallback() const +const Link<ConvertData&,bool> GraphicFilter::GetFilterCallback() const { - const Link<> aLink( LINK( const_cast<GraphicFilter*>(this), GraphicFilter, FilterCallback ) ); + const Link<ConvertData&,bool> aLink( LINK( const_cast<GraphicFilter*>(this), GraphicFilter, FilterCallback ) ); return aLink; } -IMPL_LINK( GraphicFilter, FilterCallback, ConvertData*, pData ) +IMPL_LINK_TYPED( GraphicFilter, FilterCallback, ConvertData&, rData, bool ) { bool nRet = false; - if( pData ) + sal_uInt16 nFormat = GRFILTER_FORMAT_DONTKNOW; + OString aShortName; + switch( rData.mnFormat ) + { + case( ConvertDataFormat::BMP ): aShortName = BMP_SHORTNAME; break; + case( ConvertDataFormat::GIF ): aShortName = GIF_SHORTNAME; break; + case( ConvertDataFormat::JPG ): aShortName = JPG_SHORTNAME; break; + case( ConvertDataFormat::MET ): aShortName = MET_SHORTNAME; break; + case( ConvertDataFormat::PCT ): aShortName = PCT_SHORTNAME; break; + case( ConvertDataFormat::PNG ): aShortName = PNG_SHORTNAME; break; + case( ConvertDataFormat::SVM ): aShortName = SVM_SHORTNAME; break; + case( ConvertDataFormat::TIF ): aShortName = TIF_SHORTNAME; break; + case( ConvertDataFormat::WMF ): aShortName = WMF_SHORTNAME; break; + case( ConvertDataFormat::EMF ): aShortName = EMF_SHORTNAME; break; + case( ConvertDataFormat::SVG ): aShortName = SVG_SHORTNAME; break; + + default: + break; + } + if( GRAPHIC_NONE == rData.maGraphic.GetType() || rData.maGraphic.GetContext() ) // Import { - sal_uInt16 nFormat = GRFILTER_FORMAT_DONTKNOW; - OString aShortName; - switch( pData->mnFormat ) - { - case( ConvertDataFormat::BMP ): aShortName = BMP_SHORTNAME; break; - case( ConvertDataFormat::GIF ): aShortName = GIF_SHORTNAME; break; - case( ConvertDataFormat::JPG ): aShortName = JPG_SHORTNAME; break; - case( ConvertDataFormat::MET ): aShortName = MET_SHORTNAME; break; - case( ConvertDataFormat::PCT ): aShortName = PCT_SHORTNAME; break; - case( ConvertDataFormat::PNG ): aShortName = PNG_SHORTNAME; break; - case( ConvertDataFormat::SVM ): aShortName = SVM_SHORTNAME; break; - case( ConvertDataFormat::TIF ): aShortName = TIF_SHORTNAME; break; - case( ConvertDataFormat::WMF ): aShortName = WMF_SHORTNAME; break; - case( ConvertDataFormat::EMF ): aShortName = EMF_SHORTNAME; break; - case( ConvertDataFormat::SVG ): aShortName = SVG_SHORTNAME; break; - - default: - break; - } - if( GRAPHIC_NONE == pData->maGraphic.GetType() || pData->maGraphic.GetContext() ) // Import - { - // Import - nFormat = GetImportFormatNumberForShortName( OStringToOUString( aShortName, RTL_TEXTENCODING_UTF8) ); - nRet = ImportGraphic( pData->maGraphic, OUString(), pData->mrStm, nFormat ) == 0; - } + // Import + nFormat = GetImportFormatNumberForShortName( OStringToOUString( aShortName, RTL_TEXTENCODING_UTF8) ); + nRet = ImportGraphic( rData.maGraphic, OUString(), rData.mrStm, nFormat ) == 0; + } #ifndef DISABLE_EXPORT - else if( !aShortName.isEmpty() ) - { - // Export - nFormat = GetExportFormatNumberForShortName( OStringToOUString(aShortName, RTL_TEXTENCODING_UTF8) ); - nRet = ExportGraphic( pData->maGraphic, OUString(), pData->mrStm, nFormat ) == 0; - } -#endif + else if( !aShortName.isEmpty() ) + { + // Export + nFormat = GetExportFormatNumberForShortName( OStringToOUString(aShortName, RTL_TEXTENCODING_UTF8) ); + nRet = ExportGraphic( rData.maGraphic, OUString(), rData.mrStm, nFormat ) == 0; } - return long(nRet); +#endif + return nRet; } namespace |