From 660d48599ce3c5a23838a441e1bd51c3f2b8dc20 Mon Sep 17 00:00:00 2001 From: osnola Date: Wed, 28 May 2014 18:13:06 +0200 Subject: [PATCH 04/18] add new libmwaw drawing formats (forgotten files) Change-Id: Ib9ecd643a552063e2a09874776b3ea0f30e8440a (cherry picked from commit ba0b63869ace532720bd7c13099e62c478d8cc31) --- filter/Configuration_filter.mk | 17 +++++++++++++++-- writerperfect/Library_wpftdraw.mk | 2 ++ writerperfect/source/draw/ImportFilterBase.cxx | 6 ++++++ writerperfect/source/draw/ImportFilterBase.hxx | 3 +++ writerperfect/source/draw/wpftdraw.component | 4 ++++ writerperfect/source/draw/wpftdraw_genericfilter.cxx | 5 +++++ 6 files changed, 35 insertions(+), 2 deletions(-) diff --git a/filter/Configuration_filter.mk b/filter/Configuration_filter.mk index fcc989b..9783f50 100644 --- a/filter/Configuration_filter.mk +++ b/filter/Configuration_filter.mk @@ -599,10 +599,17 @@ $(call filter_Configuration_add_types,fcfg_langpack,fcfg_draw_types.xcu,filter/s draw8_template \ draw_WordPerfect_Graphics \ draw_Visio_Document \ - draw_Publisher_Document \ + draw_Publisher_Document \ draw_CorelDraw_Document \ draw_Corel_Presentation_Exchange \ draw_Freehand_Document \ + draw_Visio_Document \ + draw_Beagle_Works \ + draw_ClarisWorks \ + draw_Great_Works \ + draw_Mac_Works \ + draw_MacPaint \ + draw_SuperPaint \ ) $(call filter_Configuration_add_filters,fcfg_langpack,fcfg_draw_filters.xcu,filter/source/config/fragments/filters,\ @@ -613,10 +620,16 @@ $(call filter_Configuration_add_filters,fcfg_langpack,fcfg_draw_filters.xcu,filt draw8_template \ WordPerfectGraphics \ VisioDocument \ - PublisherDocument \ + PublisherDocument \ CorelDrawDocument \ CorelPresentationExchange \ FreehandDocument \ + Beagle_Works_Draw \ + ClarisWorks_Draw \ + Great_Works_Draw \ + Mac_Works_Draw \ + MacPaint_Draw \ + SuperPaint_Draw \ ) $(call filter_Configuration_add_ui_filters,fcfg_langpack,filter/source/config/fragments/filters,\ diff --git a/writerperfect/Library_wpftdraw.mk b/writerperfect/Library_wpftdraw.mk index 807afc9..01a1ebe 100644 --- a/writerperfect/Library_wpftdraw.mk +++ b/writerperfect/Library_wpftdraw.mk @@ -40,6 +40,7 @@ $(eval $(call gb_Library_use_externals,wpftdraw,\ cdr \ freehand \ mspub \ + mwaw \ odfgen \ revenge \ visio \ @@ -58,6 +59,7 @@ $(eval $(call gb_Library_add_exception_objects,wpftdraw,\ writerperfect/source/draw/FreehandImportFilter \ writerperfect/source/draw/ImportFilterBase \ writerperfect/source/draw/MSPUBImportFilter \ + writerperfect/source/draw/MWAWDrawImportFilter \ writerperfect/source/draw/VisioImportFilter \ writerperfect/source/draw/WPGImportFilter \ writerperfect/source/draw/wpftdraw_genericfilter \ diff --git a/writerperfect/source/draw/ImportFilterBase.cxx b/writerperfect/source/draw/ImportFilterBase.cxx index 6fc09b2..fc6c8ee 100644 --- a/writerperfect/source/draw/ImportFilterBase.cxx +++ b/writerperfect/source/draw/ImportFilterBase.cxx @@ -95,6 +95,8 @@ throw (RuntimeException, std::exception) OdgGenerator exporter; exporter.addDocumentHandler(&xHandler, ODF_FLAT_XML); + doRegisterHandlers(exporter); + return doImportDocument(input, exporter); } @@ -170,6 +172,10 @@ throw (Exception, RuntimeException, std::exception) } } +void ImportFilterImpl::doRegisterHandlers( OdgGenerator & ) +{ +} + } } diff --git a/writerperfect/source/draw/ImportFilterBase.hxx b/writerperfect/source/draw/ImportFilterBase.hxx index 56a1808..f326d98 100644 --- a/writerperfect/source/draw/ImportFilterBase.hxx +++ b/writerperfect/source/draw/ImportFilterBase.hxx @@ -39,6 +39,8 @@ namespace xml { namespace sax { } } } } +class OdgGenerator; + namespace writerperfect { namespace draw @@ -80,6 +82,7 @@ public: private: virtual bool doDetectFormat( librevenge::RVNGInputStream &rInput, OUString &rTypeName ) = 0; virtual bool doImportDocument( librevenge::RVNGInputStream &rInput, librevenge::RVNGDrawingInterface &rGenerator ) = 0; + virtual void doRegisterHandlers( OdgGenerator &rGenerator ); private: ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > mxContext; diff --git a/writerperfect/source/draw/wpftdraw.component b/writerperfect/source/draw/wpftdraw.component index d524116..cc65f3c 100644 --- a/writerperfect/source/draw/wpftdraw.component +++ b/writerperfect/source/draw/wpftdraw.component @@ -25,6 +25,10 @@ + + + + diff --git a/writerperfect/source/draw/wpftdraw_genericfilter.cxx b/writerperfect/source/draw/wpftdraw_genericfilter.cxx index 43cabc1..821ac7c 100644 --- a/writerperfect/source/draw/wpftdraw_genericfilter.cxx +++ b/writerperfect/source/draw/wpftdraw_genericfilter.cxx @@ -32,6 +32,7 @@ #include "CDRImportFilter.hxx" #include "CMXImportFilter.hxx" #include "MSPUBImportFilter.hxx" +#include "MWAWDrawImportFilter.hxx" #include "FreehandImportFilter.hxx" #include "VisioImportFilter.hxx" #include "WPGImportFilter.hxx" @@ -53,6 +54,10 @@ static cppu::ImplementationEntry const services[] = { &MSPUBImportFilter_getImplementationName, &MSPUBImportFilter_getSupportedServiceNames, &cppu::createSingleComponentFactory, 0, 0 }, + { &MWAWDrawImportFilter_createInstance, + &MWAWDrawImportFilter_getImplementationName, + &MWAWDrawImportFilter_getSupportedServiceNames, + &cppu::createSingleComponentFactory, 0, 0 }, { &VisioImportFilter_createInstance, &VisioImportFilter_getImplementationName, &VisioImportFilter_getSupportedServiceNames, -- 1.9.3