From 57929ce5ccbb0ddf213d2182b94e939ba6a337bb Mon Sep 17 00:00:00 2001 From: Katarina Behrens Date: Wed, 22 Apr 2015 15:19:45 +0200 Subject: tdf#88056: Implement import of page title field from ODF the field seems to get imported now, but still ain't displayed in Impress *sigh* Change-Id: I095b9a2c59145f984bc9db853cc22501ca103bb7 --- xmloff/source/text/txtfldi.cxx | 32 ++++++++++++++++++++++++++++++++ xmloff/source/text/txtimp.cxx | 2 ++ 2 files changed, 34 insertions(+) (limited to 'xmloff/source/text') diff --git a/xmloff/source/text/txtfldi.cxx b/xmloff/source/text/txtfldi.cxx index 2a226997e6cc..a4288e22a6c2 100644 --- a/xmloff/source/text/txtfldi.cxx +++ b/xmloff/source/text/txtfldi.cxx @@ -138,6 +138,7 @@ const sal_Char sAPI_drop_down[] = "DropDown"; const sal_Char sAPI_header[] = "Header"; const sal_Char sAPI_footer[] = "Footer"; const sal_Char sAPI_datetime[] = "DateTime"; +const sal_Char sAPI_pagetitle[] = "PageTitle"; // property names const sal_Char sAPI_is_fixed[] = "IsFixed"; @@ -580,6 +581,10 @@ XMLTextFieldImportContext::CreateTextFieldImportContext( pContext = new XMLDateTimeFieldImportContext( rImport, rHlp, nPrefix, rName ); break; + case XML_TOK_DRAW_PAGE_TITLE: + pContext = new XMLPageTitleFieldImportContext( rImport, rHlp, + nPrefix, rName ); + break; default: // ignore! May not even be a textfield. @@ -4154,4 +4159,31 @@ void XMLDateTimeFieldImportContext::PrepareField( { } +/** import page|slide title fields () */ +TYPEINIT1( XMLPageTitleFieldImportContext, XMLTextFieldImportContext ); + +XMLPageTitleFieldImportContext::XMLPageTitleFieldImportContext( + SvXMLImport& rImport, /// XML Import + XMLTextImportHelper& rHlp, /// Text import helper + sal_uInt16 nPrfx, /// namespace prefix + const OUString& sLocalName) /// element name w/o prefix +: XMLTextFieldImportContext(rImport, rHlp, sAPI_datetime, nPrfx, sLocalName ) +{ + sServicePrefix = sAPI_presentation_prefix; + bValid = true; +} + +/// process attribute values +void XMLPageTitleFieldImportContext::ProcessAttribute( sal_uInt16, + const OUString& ) +{ +} + +/// prepare XTextField for insertion into document +void XMLPageTitleFieldImportContext::PrepareField( + const ::com::sun::star::uno::Reference< + ::com::sun::star::beans::XPropertySet> &) +{ +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/xmloff/source/text/txtimp.cxx b/xmloff/source/text/txtimp.cxx index e1b39832d38b..afd5ec9cfaac 100644 --- a/xmloff/source/text/txtimp.cxx +++ b/xmloff/source/text/txtimp.cxx @@ -281,6 +281,8 @@ static const SvXMLTokenMapEntry aTextPElemTokenMap[] = { XML_NAMESPACE_PRESENTATION, XML_HEADER, XML_TOK_DRAW_HEADER }, { XML_NAMESPACE_PRESENTATION, XML_FOOTER, XML_TOK_DRAW_FOOTER }, { XML_NAMESPACE_PRESENTATION, XML_DATE_TIME, XML_TOK_DRAW_DATE_TIME }, + { XML_NAMESPACE_LO_EXT, XML_PAGE_TITLE, XML_TOK_DRAW_PAGE_TITLE }, + { XML_NAMESPACE_PRESENTATION, XML_PAGE_TITLE, XML_TOK_DRAW_PAGE_TITLE }, { XML_NAMESPACE_TEXT, XML_PAGE_CONTINUATION, XML_TOK_TEXT_PAGE_CONTINUATION }, { XML_NAMESPACE_FIELD, XML_FIELDMARK, XML_TOK_TEXT_FIELDMARK }, -- cgit