summaryrefslogtreecommitdiff
path: root/xmloff/source/script
diff options
context:
space:
mode:
authorBjoern Michaelsen <b_michaelsen@openoffice.org>2010-07-13 14:36:24 +0200
committerBjoern Michaelsen <b_michaelsen@openoffice.org>2010-07-13 14:36:24 +0200
commitfd90f23f3a727dc80e4fa0be1a2a967feee8cb43 (patch)
treed5dd671ec5249774c3efdd741a0964181b802c49 /xmloff/source/script
parente8ec11b41233376724acd0f58bf3f6439c0e21d8 (diff)
parenta2e7c2e0d002d75a6b77a629a4e904ab54bf8375 (diff)
CWS gnumake2: resync to DEV300_m84
Diffstat (limited to 'xmloff/source/script')
-rw-r--r--xmloff/source/script/XMLEventExport.cxx25
-rw-r--r--xmloff/source/script/XMLScriptExportHandler.cxx3
2 files changed, 25 insertions, 3 deletions
diff --git a/xmloff/source/script/XMLEventExport.cxx b/xmloff/source/script/XMLEventExport.cxx
index e42db4dc164e..2675ecb4b98f 100644
--- a/xmloff/source/script/XMLEventExport.cxx
+++ b/xmloff/source/script/XMLEventExport.cxx
@@ -62,7 +62,8 @@ using ::xmloff::token::XML_EVENT_LISTENERS;
XMLEventExport::XMLEventExport(SvXMLExport& rExp,
const XMLEventNameTranslation* pTranslationTable) :
sEventType(RTL_CONSTASCII_USTRINGPARAM("EventType")),
- rExport(rExp)
+ rExport(rExp),
+ bExtNamespace(false)
{
AddTranslationTable(pTranslationTable);
}
@@ -175,6 +176,16 @@ void XMLEventExport::Export( Reference<XNameAccess> & rAccess,
}
}
+void XMLEventExport::ExportExt( Reference<XNameAccess> & rAccess,
+ sal_Bool bWhitespace )
+{
+ // set bExtNamespace flag to use XML_NAMESPACE_OFFICE_EXT namespace
+ // for events element (not for child elements)
+ bExtNamespace = true;
+ Export(rAccess, bWhitespace);
+ bExtNamespace = false; // reset for future Export calls
+}
+
/// export a singular event and wirte <office:events> container
void XMLEventExport::ExportSingleEvent(
Sequence<PropertyValue>& rEventValues,
@@ -270,13 +281,17 @@ void XMLEventExport::StartElement(sal_Bool bWhitespace)
{
rExport.IgnorableWhitespace();
}
- rExport.StartElement( XML_NAMESPACE_OFFICE, XML_EVENT_LISTENERS,
+ sal_uInt16 nNamespace = bExtNamespace ? XML_NAMESPACE_OFFICE_EXT
+ : XML_NAMESPACE_OFFICE;
+ rExport.StartElement( nNamespace, XML_EVENT_LISTENERS,
bWhitespace);
}
void XMLEventExport::EndElement(sal_Bool bWhitespace)
{
- rExport.EndElement(XML_NAMESPACE_OFFICE, XML_EVENT_LISTENERS, bWhitespace);
+ sal_uInt16 nNamespace = bExtNamespace ? XML_NAMESPACE_OFFICE_EXT
+ : XML_NAMESPACE_OFFICE;
+ rExport.EndElement(nNamespace, XML_EVENT_LISTENERS, bWhitespace);
if (bWhitespace)
{
rExport.IgnorableWhitespace();
@@ -343,6 +358,10 @@ const XMLEventNameTranslation aStandardEventTable[] =
{ "OnFieldMerge", XML_NAMESPACE_OFFICE, "field-merge" },
{ "OnFieldMergeFinished", XML_NAMESPACE_OFFICE, "field-merge-finished" },
{ "OnLayoutFinished", XML_NAMESPACE_OFFICE, "layout-finished" },
+ { "OnDoubleClick", XML_NAMESPACE_OFFICE, "dblclick" },
+ { "OnRightClick", XML_NAMESPACE_OFFICE, "contextmenu" },
+ { "OnChange", XML_NAMESPACE_OFFICE, "content-changed" },
+ { "OnCalculate", XML_NAMESPACE_OFFICE, "calculated" },
{ NULL, 0, 0 }
};
diff --git a/xmloff/source/script/XMLScriptExportHandler.cxx b/xmloff/source/script/XMLScriptExportHandler.cxx
index 6f0b6bebc7ac..9cfc7211f3b9 100644
--- a/xmloff/source/script/XMLScriptExportHandler.cxx
+++ b/xmloff/source/script/XMLScriptExportHandler.cxx
@@ -75,6 +75,9 @@ void XMLScriptExportHandler::Export(
OUString sTmp;
rValues[i].Value >>= sTmp;
rExport.AddAttribute(XML_NAMESPACE_XLINK, XML_HREF, sTmp);
+
+ // #i110911# xlink:type="simple" is required
+ rExport.AddAttribute(XML_NAMESPACE_XLINK, XML_TYPE, XML_SIMPLE);
}
// else: disregard
}