Files
loongoffice/offapi/com/sun/star/sheet/FormulaMapGroupSpecialOffset.idl
Michael Stahl b7ba598ced *api: clean up multi-line and mal-formed XML tags
It is amazing what some people believe autodoc supports.

Also, com::sun::uno::Any does not exist in IDL, that is part of
the C++ language binding.

Change-Id: I1f1f5cf5d27663ace6ff618ecbecb41fd2dfa1fc
2013-06-04 12:01:05 +02:00

187 lines
6.2 KiB
Plaintext

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#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
XFormulaOpCodeMapper::getAvailableMappings() when
called for group FormulaMapGroup::SPECIAL.
<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 FormulaToken::Data member shall contain one of
the following values:</p>
<ul>
<li>A value of type `double` for literal floating-point
constants.</li>
<li>A `string` for literal text.</li>
<li>A `any[][]` for a literal array. The contained
values shall be of type `double` or `string`.
Floating-point values and strings may occur together in an array.</li>
<li>A struct of type SingleReference for a reference to a
single cell in the own document.</li>
<li>A struct of type ComplexReference for a reference to
a range of cells in the own document.</li>
<li>A struct of type ExternalReference 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 FormulaToken::Data 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 FormulaToken::Data member shall contain a
`string` with the programmatic name of the function, e.g.
"com.sun.star.sheet.addin.Analysis.getEomonth" for the EOMONTH
function from the Analysis 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 FormulaToken::Data member shall contain an
integer value of type `long` specifying the index of the
defined name. This index can be obtained from the defined name using
its NamedRange::TokenIndex 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 FormulaToken::Data 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 FormulaToken::Data 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 FormulaToken::Data member shall contain a
`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 FormulaToken::Data member shall contain a
positive integer value of type `long` 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 FormulaToken::Data member shall contain an
integer value of type `long` specifying the index of the
database range. This index can be obtained from the database range
using its DatabaseRange::TokenIndex 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 FormulaToken::Data member shall contain a
`string` specifying the name of the macro function.</p>
*/
const long MACRO = 11;
const long COL_ROW_NAME = 12;
};
}; }; }; };
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */