diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-10-20 18:12:22 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-10-20 18:12:23 +0200 |
commit | 03bb5d52fecd6c613c6cc36508eb44e5e1c3456a (patch) | |
tree | c96d4cf398cea8ffe1ea5f1de8c071477d4b4a5d | |
parent | fd612a144c0028972513a18167a13d29326a1798 (diff) |
sc: initial png export
Change-Id: Iae0e89646eab794879529274f09839ad34aa4696
-rw-r--r-- | desktop/qa/desktop_lib/test_desktop_lib.cxx | 10 | ||||
-rw-r--r-- | desktop/source/lib/init.cxx | 1 | ||||
-rw-r--r-- | filter/Configuration_filter.mk | 9 | ||||
-rw-r--r-- | filter/source/config/fragments/filters/calc_png_Export.xcu | 20 | ||||
-rw-r--r-- | postprocess/CustomTarget_registry.mk | 2 | ||||
-rw-r--r-- | svtools/source/filter/DocumentToGraphicRenderer.cxx | 2 |
6 files changed, 44 insertions, 0 deletions
diff --git a/desktop/qa/desktop_lib/test_desktop_lib.cxx b/desktop/qa/desktop_lib/test_desktop_lib.cxx index 204fc6d0b9e5..3e8544c6c5d2 100644 --- a/desktop/qa/desktop_lib/test_desktop_lib.cxx +++ b/desktop/qa/desktop_lib/test_desktop_lib.cxx @@ -64,6 +64,7 @@ public: void testSearchCalc(); void testPaintTile(); void testSaveAs(); + void testSaveAsCalc(); CPPUNIT_TEST_SUITE(DesktopLOKTest); CPPUNIT_TEST(testGetStyles); @@ -74,6 +75,7 @@ public: CPPUNIT_TEST(testSearchCalc); CPPUNIT_TEST(testPaintTile); CPPUNIT_TEST(testSaveAs); + CPPUNIT_TEST(testSaveAsCalc); CPPUNIT_TEST_SUITE_END(); uno::Reference<lang::XComponent> mxComponent; @@ -320,6 +322,14 @@ void DesktopLOKTest::testSaveAs() CPPUNIT_ASSERT(pDocument->pClass->saveAs(pDocument, aTempFile.GetURL().toUtf8().getStr(), "png", 0)); } +void DesktopLOKTest::testSaveAsCalc() +{ + LibLODocument_Impl* pDocument = loadDoc("search.ods"); + utl::TempFile aTempFile; + aTempFile.EnableKillingFile(); + CPPUNIT_ASSERT(pDocument->pClass->saveAs(pDocument, aTempFile.GetURL().toUtf8().getStr(), "png", 0)); +} + CPPUNIT_TEST_SUITE_REGISTRATION(DesktopLOKTest); CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index 15c27ad85b45..405e5ff12165 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -132,6 +132,7 @@ static const ExtensionMap aCalcExtensionMap[] = { "xhtml", "XHTML Calc File" }, { "xls", "MS Excel 97" }, { "xlsx", "Calc MS Excel 2007 XML" }, + { "png", "calc_png_Export" }, { NULL, NULL } }; diff --git a/filter/Configuration_filter.mk b/filter/Configuration_filter.mk index 03579263a51b..5e093ca4ad57 100644 --- a/filter/Configuration_filter.mk +++ b/filter/Configuration_filter.mk @@ -843,6 +843,15 @@ $(eval $(call filter_Configuration_add_filters,fcfg_langpack,fcfg_writergraphics writer_png_Export \ )) +# fcfg_calcgraphics +$(eval $(call filter_Configuration_add_types,fcfg_langpack,fcfg_calcgraphics_types.xcu,filter/source/config/fragments/types,\ + png_Portable_Network_Graphic \ +)) + +$(eval $(call filter_Configuration_add_filters,fcfg_langpack,fcfg_calcgraphics_filters.xcu,filter/source/config/fragments/filters,\ + calc_png_Export \ +)) + # fcfg_internalgraphics $(eval $(call filter_Configuration_add_types,fcfg_langpack,fcfg_internalgraphics_types.xcu,filter/source/config/fragments/types,\ bmp_MS_Windows \ diff --git a/filter/source/config/fragments/filters/calc_png_Export.xcu b/filter/source/config/fragments/filters/calc_png_Export.xcu new file mode 100644 index 000000000000..999bef299a75 --- /dev/null +++ b/filter/source/config/fragments/filters/calc_png_Export.xcu @@ -0,0 +1,20 @@ +<!-- + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. +--> + <node oor:name="calc_png_Export" oor:op="replace"> + <prop oor:name="Flags"><value>EXPORT ALIEN 3RDPARTYFILTER</value></prop> + <prop oor:name="UIComponent"><value>com.sun.star.comp.GraphicExportDialog</value></prop> + <prop oor:name="FilterService"><value>com.sun.star.comp.GraphicExportFilter</value></prop> + <prop oor:name="UserData"><value></value></prop> + <prop oor:name="UIName"> + <value xml:lang="en-US">PNG - Portable Network Graphic</value> + </prop> + <prop oor:name="FileFormatVersion"><value>0</value></prop> + <prop oor:name="Type"><value>png_Portable_Network_Graphic</value></prop> + <prop oor:name="TemplateName"/> + <prop oor:name="DocumentService"><value>com.sun.star.sheet.SpreadsheetDocument</value></prop> + </node> diff --git a/postprocess/CustomTarget_registry.mk b/postprocess/CustomTarget_registry.mk index 897ad6a8e3ff..effafab2ccee 100644 --- a/postprocess/CustomTarget_registry.mk +++ b/postprocess/CustomTarget_registry.mk @@ -87,6 +87,8 @@ postprocess_FILES_graphicfilter := \ $(call gb_XcuFilterTypesTarget_get_target,fcfg_drawgraphics_types.xcu) \ $(call gb_XcuFilterFiltersTarget_get_target,fcfg_impressgraphics_filters.xcu) \ $(call gb_XcuFilterTypesTarget_get_target,fcfg_impressgraphics_types.xcu) \ + $(call gb_XcuFilterFiltersTarget_get_target,fcfg_calcgraphics_filters.xcu) \ + $(call gb_XcuFilterTypesTarget_get_target,fcfg_calcgraphics_types.xcu) \ $(call gb_XcuFilterFiltersTarget_get_target,fcfg_writergraphics_filters.xcu) \ $(call gb_XcuFilterTypesTarget_get_target,fcfg_writergraphics_types.xcu) diff --git a/svtools/source/filter/DocumentToGraphicRenderer.cxx b/svtools/source/filter/DocumentToGraphicRenderer.cxx index e33a94ec416e..e78b0f1ad8ab 100644 --- a/svtools/source/filter/DocumentToGraphicRenderer.cxx +++ b/svtools/source/filter/DocumentToGraphicRenderer.cxx @@ -148,6 +148,8 @@ Graphic DocumentToGraphicRenderer::renderToGraphic( sal_Int32 DocumentToGraphicRenderer::getCurrentPageWriter() { Reference<text::XTextViewCursorSupplier> xTextViewCursorSupplier(mxModel->getCurrentController(), UNO_QUERY); + if (!xTextViewCursorSupplier.is()) + return 1; Reference<text::XPageCursor> xCursor(xTextViewCursorSupplier->getViewCursor(), UNO_QUERY); return xCursor->getPage(); } |