summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl')
-rw-r--r--offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl210
1 files changed, 210 insertions, 0 deletions
diff --git a/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl b/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl
new file mode 100644
index 000000000000..06008bbc059d
--- /dev/null
+++ b/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl
@@ -0,0 +1,210 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FormulaMapGroupSpecialOffset_idl__
+#define __com_sun_star_sheet_FormulaMapGroupSpecialOffset_idl__
+
+// ===========================================================================
+
+module com { module sun { module star { module sheet {
+
+// ===========================================================================
+
+/** Constants designating the offsets within the sequence returned by
+ <member>XFormulaOpCodeMapper::getAvailableMappings</member> when
+ called for group <const>FormulaMapGroup::SPECIAL</const>.
+
+ <p>The number of constants may grow in future versions!</p>
+ */
+constants FormulaMapGroupSpecialOffset
+{
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe a formula operand token that will be pushed onto the formula
+ stack while the formula is interpreted.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain one of
+ the following values:</p>
+
+ <ul>
+ <li>A value of type <atom>double</atom> for literal floating-point
+ constants.</li>
+ <li>A <atom>string</atom> for literal text.</li>
+ <li>A <atom dim="[][]">any</atom> for a literal array. The contained
+ values shall be of type <atom>double</atom> or atom>string</atom>.
+ Floating-point values and strings may occur together in an array.</li>
+ <li>A struct of type <type>SingleReference</type> for a reference to a
+ single cell in the own document.</li>
+ <li>A struct of type <type>ComplexReference</type> for a reference to
+ a range of cells in the own document.</li>
+ <li>A struct of type <type>ExternalReference</type> for a reference to
+ a cell, a range of cells, or a defined name in an external document.</li>
+ </ul>
+ */
+ const long PUSH = 0;
+
+ // -----------------------------------------------------------------------
+
+ const long CALL = 1;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ instruct the formula interpreter to immediately stop interpreting the
+ formula.
+
+ <p>The <member>FormulaToken::Data</member> member is not used
+ and should be empty.</p>
+ */
+ const long STOP = 2;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe the reference to an external function (e.g. add-in function)
+ used in formulas.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain a
+ <atom>string</atom> with the programmatical name of the function, e.g.
+ "com.sun.star.sheet.addin.Analysis.getEomonth" for the EOMONTH
+ function from the Analsysis add-in.</p>
+ */
+ const long EXTERNAL = 3;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe the reference to a defined name (also known as named range)
+ used in formulas.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain an
+ integer value of type <atom>long</atom> specifying the index of the
+ defined name. This index can be obtained from the defined name using
+ its <member>NamedRange::TokenIndex</member> property.</p>
+
+ @see NamedRange
+ */
+ const long NAME = 4;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe an invalid name that resolves to the #NAME? error in formulas.
+
+ <p>The <member>FormulaToken::Data</member> member is not used
+ and should be empty.</p>
+ */
+ const long NO_NAME = 5;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe an empty function parameter.
+
+ <p>Example: In the formula <code>=SUM(1;;2)</code> the second
+ parameter is empty and represented by a formula token containing the
+ "missing" op-code.</p>
+
+ <p>The <member>FormulaToken::Data</member> member is not used
+ and should be empty.</p>
+ */
+ const long MISSING = 6;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe "bad" data in a formula, e.g. data the formula parser was not
+ able to parse.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain a
+ <atom>string</string> with the bad data. This string will be displayed
+ literally in the formula.</p>
+ */
+ const long BAD = 7;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe whitespace characters within the string representation of a
+ formula.
+
+ <p>Whitespace characters in formulas are used for readability and do
+ not affect the result of the formula.</p>
+
+ <p>The <member>FormulaToken::Data</member> member shall contain a
+ positive integer value of type <atom>long</atom> specifying the number
+ of space characters.</p>
+
+ <p>Attention: This may change in next versions to support other
+ characters than simple space characters (e.g. line feeds, horizontal
+ tabulators, non-breakable spaces).</p>
+ */
+ const long SPACES = 8;
+
+ // -----------------------------------------------------------------------
+
+ const long MAT_REF = 9;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe the reference to a database range used in formulas.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain an
+ integer value of type <atom>long</atom> specifying the index of the
+ database range. This index can be obtained from the database range
+ using its <member>DatabaseRange::TokenIndex</member> property.</p>
+
+ @see DatabaseRange
+ */
+ const long DB_AREA = 10;
+
+ // -----------------------------------------------------------------------
+
+ /** Formula tokens containing the op-code obtained from this offset
+ describe the reference to a macro function called in a formula.
+
+ <p>The <member>FormulaToken::Data</member> member shall contain a
+ <atom>string</atom> specifying the name of the macro function.</p>
+ */
+ const long MACRO = 11;
+
+ // -----------------------------------------------------------------------
+
+ const long COL_ROW_NAME = 12;
+
+ // -----------------------------------------------------------------------
+
+};
+
+// ===========================================================================
+
+}; }; }; };
+
+#endif
+