summaryrefslogtreecommitdiff
path: root/writerfilter/source/ooxml/OOXMLFactory.cxx
diff options
context:
space:
mode:
authorhb <hbrinkm@openoffice.org>2009-10-07 17:22:29 +0200
committerhb <hbrinkm@openoffice.org>2009-10-07 17:22:29 +0200
commitfb594a758cb8d89e5cc419a5189c90778f2eb558 (patch)
tree2ea480b089f11663aedee5efbc39efdb7dfb8989 /writerfilter/source/ooxml/OOXMLFactory.cxx
parent23d014057e84b4b31d193e985764ee6c0ae8db07 (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-xwriterfilter/source/ooxml/OOXMLFactory.cxx18
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)
+{
+}
+
}
}