diff options
author | hb <hbrinkm@openoffice.org> | 2009-10-07 17:22:29 +0200 |
---|---|---|
committer | hb <hbrinkm@openoffice.org> | 2009-10-07 17:22:29 +0200 |
commit | fb594a758cb8d89e5cc419a5189c90778f2eb558 (patch) | |
tree | 2ea480b089f11663aedee5efbc39efdb7dfb8989 /writerfilter/source/ooxml/OOXMLFactory.cxx | |
parent | 23d014057e84b4b31d193e985764ee6c0ae8db07 (diff) |
added handling for actions on attributes
changed writerfilter/source/ooxml/OOXMLFactory.cxx
OOXMLFactory::attributes:
call attributeAction on factory for each attribute
changed writerfilter/source/ooxml/OOXMLFactory.hxx
new: void attributeAction(OOXMLFastContextHandler * pHandler, Token_t nToken, OOXMLValue::Pointer_t pValue);
changed writerfilter/source/ooxml/OOXMLFastContextHandler.cxx
changed writerfilter/source/ooxml/OOXMLFastContextHandler.hxx
new: void OOXMLFastContextHandler::setXNoteId(OOXMLValue::Pointer_t pValue)
changed signature: void OOXMLFastContextHandlerXNote::checkId(OOXMLValue::Pointer_t pValue)
changed writerfilter/source/ooxml/factory_ns.xsl
new in factorydecl: declaration of attributeAction
changed writerfilter/source/ooxml/factoryimpl_ns.xsl
new: implementation of attributeAction
moved here: factorycreateelementmapfromstart
changed writerfilter/source/ooxml/factorytools.xsl
moved from here: factorycreateelementmapfromstart
changed writerfilter/source/ooxml/model.xml
removed unhandled action "checkXNoteType"
annotated "footnotes", "CT_Footnotes", "endnotes", "CT_Endnotes"
Diffstat (limited to 'writerfilter/source/ooxml/OOXMLFactory.cxx')
-rwxr-xr-x | writerfilter/source/ooxml/OOXMLFactory.cxx | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/writerfilter/source/ooxml/OOXMLFactory.cxx b/writerfilter/source/ooxml/OOXMLFactory.cxx index 0a045c3f91c9..6fac03898e42 100755 --- a/writerfilter/source/ooxml/OOXMLFactory.cxx +++ b/writerfilter/source/ooxml/OOXMLFactory.cxx @@ -164,6 +164,9 @@ void OOXMLFactory::attributes(OOXMLFastContextHandler * pHandler, #endif ::rtl::OUString aValue(Attribs->getValue(aIt->first)); OOXMLFastHelper<OOXMLBooleanValue>::newProperty(pHandler, nId, aValue); + + OOXMLValue::Pointer_t pValue(new OOXMLBooleanValue(aValue)); + pFactory->attributeAction(pHandler, aIt->first, pValue); } break; case RT_String: @@ -175,6 +178,8 @@ void OOXMLFactory::attributes(OOXMLFastContextHandler * pHandler, OOXMLFastHelper<OOXMLStringValue>::newProperty (pHandler, nId, aValue); + OOXMLValue::Pointer_t pValue(new OOXMLStringValue(aValue)); + pFactory->attributeAction(pHandler, aIt->first, pValue); } break; case RT_Integer: @@ -185,6 +190,9 @@ void OOXMLFactory::attributes(OOXMLFastContextHandler * pHandler, ::rtl::OUString aValue(Attribs->getValue(aIt->first)); OOXMLFastHelper<OOXMLIntegerValue>::newProperty (pHandler, nId, aValue); + + OOXMLValue::Pointer_t pValue(new OOXMLIntegerValue(aValue)); + pFactory->attributeAction(pHandler, aIt->first, pValue); } break; case RT_Hex: @@ -195,6 +203,9 @@ void OOXMLFactory::attributes(OOXMLFastContextHandler * pHandler, ::rtl::OUString aValue(Attribs->getValue(aIt->first)); OOXMLFastHelper<OOXMLHexValue>::newProperty (pHandler, nId, aValue); + + OOXMLValue::Pointer_t pValue(new OOXMLHexValue(aValue)); + pFactory->attributeAction(pHandler, aIt->first, pValue); } break; case RT_List: @@ -217,6 +228,9 @@ void OOXMLFactory::attributes(OOXMLFastContextHandler * pHandler, OOXMLFastHelper<OOXMLIntegerValue>::newProperty (pHandler, nId, nValue); + + OOXMLValue::Pointer_t pValue(new OOXMLIntegerValue(nValue)); + pFactory->attributeAction(pHandler, aIt->first, pValue); } #ifdef DEBUG_ATTRIBUTES debug_logger->endElement("list"); @@ -310,6 +324,10 @@ void OOXMLFactory_ns::charactersAction(OOXMLFastContextHandler *, const ::rtl::O { } +void OOXMLFactory_ns::attributeAction(OOXMLFastContextHandler *, Token_t, OOXMLValue::Pointer_t) +{ +} + } } |