summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOliver Bolte <obo@openoffice.org>2004-11-16 10:02:32 +0000
committerOliver Bolte <obo@openoffice.org>2004-11-16 10:02:32 +0000
commit5969bfa8e93018d3d3e98f750fa9988117ee8a29 (patch)
tree600baf84d05656aff543a040fbaca5c286e5e235
parenta3732443cf927fdc08801d2598263ae7e73571d6 (diff)
INTEGRATION: CWS eforms2 (1.1.2); FILE ADDED
2004/09/23 09:26:45 dvo 1.1.2.2: implement current() XPath extensions function (from XForms 1.1 spec) Issue number: Submitted by: Reviewed by: 2004/05/10 09:35:20 lo 1.1.2.1: #i28981# xpath extensions
-rw-r--r--forms/source/xforms/xpathlib/xpathlib.hxx83
1 files changed, 83 insertions, 0 deletions
diff --git a/forms/source/xforms/xpathlib/xpathlib.hxx b/forms/source/xforms/xpathlib/xpathlib.hxx
new file mode 100644
index 000000000..d9fe96e59
--- /dev/null
+++ b/forms/source/xforms/xpathlib/xpathlib.hxx
@@ -0,0 +1,83 @@
+
+
+#include <libxml/tree.h>
+#include <libxml/xpath.h>
+#include <libxml/xpathInternals.h>
+
+/*
+ entry functions for libxml xpath engine
+
+*/
+
+/**
+ * xmlXPathParserContext:
+ *
+ * An XPath parser context. It contains pure parsing informations,
+ * an xmlXPathContext, and the stack of objects.
+ */
+#if 0
+// for reference from xpath.h
+struct _xmlXPathParserContext {
+ const xmlChar *cur; /* the current char being parsed */
+ const xmlChar *base; /* the full expression */
+
+ int error; /* error code */
+
+ xmlXPathContextPtr context; /* the evaluation context */
+ xmlXPathObjectPtr value; /* the current value */
+ int valueNr; /* number of values stacked */
+ int valueMax; /* max number of values stacked */
+ xmlXPathObjectPtr *valueTab; /* stack of values */
+
+ xmlXPathCompExprPtr comp; /* the precompiled expression */
+ int xptr; /* it this an XPointer expression */
+ xmlNodePtr ancestor; /* used for walking preceding axis */
+};
+
+#endif
+
+extern "C"
+{
+
+// XForms
+/*
+void xforms_getInstanceDocumentFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_rebuildFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_recalculateFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_revalidateFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_refreshFunction(xmlXPathParserContextPtr ctxt, int nargs);
+*/
+
+// XForms Core Functions
+// boolean functions
+void xforms_booleanFromStringFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_ifFunction(xmlXPathParserContextPtr ctxt, int nargs);
+
+// Number Functions
+void xforms_avgFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_minFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_maxFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_countNonEmptyFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_indexFunction(xmlXPathParserContextPtr ctxt, int nargs);
+
+// String Functions
+void xforms_propertyFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_versionFunction(xmlXPathParserContextPtr ctxt, int nargs);
+
+// Date and Time Functions
+void xforms_nowFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_daysFromDateFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_secondsFromDateTimeFunction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_secondsFuction(xmlXPathParserContextPtr ctxt, int nargs);
+void xforms_monthsFuction(xmlXPathParserContextPtr ctxt, int nargs);
+
+// Node-set Functions
+void xforms_instanceFuction(xmlXPathParserContextPtr ctxt, int nargs);
+
+// Node-set Functions; XForms 1.1
+void xforms_currentFunction(xmlXPathParserContextPtr ctxt, int nargs);
+
+// --- lookup ---
+xmlXPathFunction xforms_lookupFunc(void *ctxt, const xmlChar *name, const xmlChar *ns_uri);
+
+}