summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/table
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/table')
-rw-r--r--offapi/com/sun/star/table/AccessibleCellView.idl157
-rw-r--r--offapi/com/sun/star/table/AccessibleTableView.idl161
-rw-r--r--offapi/com/sun/star/table/BorderLine.idl82
-rw-r--r--offapi/com/sun/star/table/Cell.idl78
-rw-r--r--offapi/com/sun/star/table/CellAddress.idl66
-rw-r--r--offapi/com/sun/star/table/CellContentType.idl72
-rw-r--r--offapi/com/sun/star/table/CellCursor.idl61
-rw-r--r--offapi/com/sun/star/table/CellHoriJustify.idl84
-rw-r--r--offapi/com/sun/star/table/CellOrientation.idl73
-rw-r--r--offapi/com/sun/star/table/CellProperties.idl265
-rw-r--r--offapi/com/sun/star/table/CellRange.idl68
-rw-r--r--offapi/com/sun/star/table/CellRangeAddress.idl78
-rw-r--r--offapi/com/sun/star/table/CellRangeListSource.idl93
-rw-r--r--offapi/com/sun/star/table/CellValueBinding.idl106
-rw-r--r--offapi/com/sun/star/table/CellVertJustify.idl72
-rw-r--r--offapi/com/sun/star/table/ListPositionCellBinding.idl61
-rw-r--r--offapi/com/sun/star/table/ShadowFormat.idl80
-rw-r--r--offapi/com/sun/star/table/ShadowLocation.idl78
-rw-r--r--offapi/com/sun/star/table/TableBorder.idl154
-rw-r--r--offapi/com/sun/star/table/TableBorderDistances.idl109
-rw-r--r--offapi/com/sun/star/table/TableChart.idl83
-rw-r--r--offapi/com/sun/star/table/TableCharts.idl82
-rw-r--r--offapi/com/sun/star/table/TableChartsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/table/TableColumn.idl112
-rw-r--r--offapi/com/sun/star/table/TableColumns.idl85
-rw-r--r--offapi/com/sun/star/table/TableColumnsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/table/TableOrientation.idl60
-rw-r--r--offapi/com/sun/star/table/TableRow.idl100
-rw-r--r--offapi/com/sun/star/table/TableRows.idl72
-rw-r--r--offapi/com/sun/star/table/TableRowsEnumeration.idl62
-rw-r--r--offapi/com/sun/star/table/TableSortDescriptor.idl104
-rw-r--r--offapi/com/sun/star/table/TableSortDescriptor2.idl87
-rw-r--r--offapi/com/sun/star/table/TableSortField.idl107
-rw-r--r--offapi/com/sun/star/table/TableSortFieldType.idl65
-rw-r--r--offapi/com/sun/star/table/XAutoFormattable.idl69
-rw-r--r--offapi/com/sun/star/table/XCell.idl116
-rw-r--r--offapi/com/sun/star/table/XCellCursor.idl100
-rw-r--r--offapi/com/sun/star/table/XCellRange.idl135
-rw-r--r--offapi/com/sun/star/table/XColumnRowRange.idl79
-rw-r--r--offapi/com/sun/star/table/XMergeableCell.idl76
-rw-r--r--offapi/com/sun/star/table/XMergeableCellRange.idl97
-rw-r--r--offapi/com/sun/star/table/XTable.idl147
-rw-r--r--offapi/com/sun/star/table/XTableChart.idl100
-rw-r--r--offapi/com/sun/star/table/XTableCharts.idl102
-rw-r--r--offapi/com/sun/star/table/XTableChartsSupplier.idl65
-rw-r--r--offapi/com/sun/star/table/XTableColumns.idl85
-rw-r--r--offapi/com/sun/star/table/XTableRows.idl84
-rw-r--r--offapi/com/sun/star/table/makefile.mk92
48 files changed, 4488 insertions, 0 deletions
diff --git a/offapi/com/sun/star/table/AccessibleCellView.idl b/offapi/com/sun/star/table/AccessibleCellView.idl
new file mode 100644
index 000000000000..8f42e9227c3a
--- /dev/null
+++ b/offapi/com/sun/star/table/AccessibleCellView.idl
@@ -0,0 +1,157 @@
+/*************************************************************************
+ *
+ * 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_AccessibleSpreadsheetDocumentView_idl__
+#define __com_sun_star_sheet_AccessibleSpreadsheetDocumentView_idl__
+
+#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
+#include <com/sun/star/accessibility/XAccessibleContext.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
+#include <com/sun/star/accessibility/XAccessibleComponent.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleValue_idl__
+#include <com/sun/star/accessibility/XAccessibleValue.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleText_idl__
+#include <com/sun/star/accessibility/XAccessibleText.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleSelection_idl__
+#include <com/sun/star/accessibility/XAccessibleSelection.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleEventBroadcaster_idl__
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** The accessible view of a cell in a text document or in the page preview
+ of a spreadsheet document. See
+ <type scope="::com::sun::star::sheet">AccessibleCell</type> for cells in
+ the edit view of a spreadsheet.
+ @since OOo 1.1.2
+*/
+published service AccessibleCellView
+{
+ /** This interface gives access to the visible content of a cell in a
+ accessible spreadsheet page preview or accessible text document view.
+ <ul>
+ <li>The parent returned by <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleParent</method>
+ is the accessible table view.</li>
+ <li>The children returned by
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleChild</method> all
+ support the interface XAccessible. Calling
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleContext</method> for these
+ children returns an object that supports the service
+ <type scope="::com::sun::star::text"
+ >AccessibleParagraphView</type>:
+ A child of this kind is returned for every paragraph
+ fragment that is contained in the cell and
+ is at least partially visible. A paragraph fragment is
+ the part of a paragraph that is displayed on a
+ certain page.
+ <li>The name is something like A10 or B23 or so on.</li>
+ <li>The description is the name or the content of the given note.</li>
+ <li>The role is <const scope="::com::sun::star::accessibility"
+ >AccessibleRole::TABLE_CELL</const></li>
+ <li>For spreadsheets, there are relations between the cell and the
+ shapes with an anchor on this cell.</li>
+ <li>The following states are supported:
+ <ul>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::DEFUNC</const> is always false if the
+ cell is showed, otherwise it is true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::EDITABLE</const> is false if the cell
+ is showed in a page preview or the cell or the table is
+ protected, otherwise it is true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::ENABLED</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::MULTI_LINE</const> is always true in
+ spreadsheets and false otherwise.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::OPAQUE</const> is false if the cell
+ has no background color or graphic, otherwise it is true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SELECTABLE</const> is true if the
+ cell is not showed in a page preview, otherwise is it
+ false.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SELECTED</const> is true, if the cell
+ is selected. This is not possible in the page preview.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SHOWING</const>Is true if the
+ Bounding Box lies in the Bounding Box of the parent.
+ Otherwise it is false.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::TRANSIENT</const>Is true if the cell
+ is showed in a spreadsheet page preview. Otherwise it is
+ false.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::VISIBLE</const>Is always true.</li>
+ </ul>
+ </li>
+ </ul>
+ */
+ interface ::com::sun::star::accessibility::XAccessibleContext;
+
+ /** This interface gives access to the visibility of the cell.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleComponent;
+
+ /** This interface gives access to the value of the cell.
+ Only a readonly access is possible.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleValue;
+
+ /** This interface is for selecting the text, value or parts of this in the
+ cell. This interface is optional.
+ */
+ [optional] interface ::com::sun::star::accessibility::XAccessibleSelection;
+
+ /** This is the interface for listeners */
+ [optional] interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/table/AccessibleTableView.idl b/offapi/com/sun/star/table/AccessibleTableView.idl
new file mode 100644
index 000000000000..54d41dcb499b
--- /dev/null
+++ b/offapi/com/sun/star/table/AccessibleTableView.idl
@@ -0,0 +1,161 @@
+/*************************************************************************
+ *
+ * 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_AccessibleSpreadsheetDocumentView_idl__
+#define __com_sun_star_sheet_AccessibleSpreadsheetDocumentView_idl__
+
+#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
+#include <com/sun/star/accessibility/XAccessibleContext.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
+#include <com/sun/star/accessibility/XAccessibleComponent.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleTable_idl__
+#include <com/sun/star/accessibility/XAccessibleTable.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleSelection_idl__
+#include <com/sun/star/accessibility/XAccessibleSelection.idl>
+#endif
+
+#ifndef __com_sun_star_accessibility_XAccessibleEventBroadcaster_idl__
+#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** The accessible view of a table in a text document or in the page preview
+ of a spreadsheet document. See
+ <type scope="::com::sun::star::sheet">AccessibleSpreadsheet</type> for
+ tables in the edit view of a spreadsheet.
+ @since OOo 1.1.2
+*/
+published service AccessibleTableView
+{
+ /** This interface gives access to any table cell that is contained in
+ a table fragment that is at least partially visible. A table fragment
+ is the part of a table that is displayed at a single page.
+
+ <ul>
+ <li>The parent returned by
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleParent</method>
+ is the accessible text document view, a page of the accessible
+ text documenent page preview, or the accessible spreadsheet
+ page preview.</li>
+ <li>The children returned by
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleChild</method> all
+ support the interface XAccessible. Calling
+ <method scope="::com::sun::star::accessibility"
+ >XAccessible::getAccessibleContext</method> for these children
+ returns an object that supports the service.
+ <type scope="::com::sun::star::table">AccessibleCellView</type>:
+ A child where calling
+ <method scope="::com::sun::star::accessibility"
+ >XAccessibleContext::getAccessibleChild</method>
+ an object that supports this service is returned for
+ every partially visible cell in this table.
+ <p>The following rules apply to the children order.</p>
+ <ul>
+ <li>All the children are cells. The order of this cells is to
+ the order on the screen. This means that the first cell is the
+ cell in the left top edge of the table and the last one is the
+ cell in the right bottom edge of the table. The second is the
+ cell in the first row and second xolumn and so on.</li>
+ </ul>
+ <li>The description is ???.</li>
+ <li>The name is the given table name and a number to make it non-ambiguous.</li>
+ <li>The role is <const scope="::com::sun::star::accessibility"
+ >AccessibleRole::TABLE</const></li>
+ <li>In a spreadsheet page preview there are relations between the
+ table and the shapes with an anchor
+ on this table (not with an anchor on a cell in this table).</li>
+ <li>The following states are supported:
+ <ul>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::DEFUNC</const> is always false if the
+ table is not deleted, the document is open. Also it is
+ false if the table was showed in a page preview and the
+ page preview is allready opend, otherwise it is true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::EDITABLE</const> is false if the
+ table is showed in a page preview or the table is
+ protected, otherwise it is true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::ENABLED</const> is always true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::MULTI_SELECTABLE</const> is false
+ if the table is showed in a page preview, otherwise it is
+ true.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::OPAQUE</const> is false, if the table
+ has no background color or graphic, otherwise it is
+ false.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::SHOWING</const>Is true if the
+ Bounding Box lies in the Bounding Box of the parent.
+ Otherwise it is false.</li>
+ <li><const scope="::com::sun::star::accessibility"
+ >AccessibleStateType::VISIBLE</const>Is always true.</li>
+ </ul>
+ </li>
+ </ul>
+
+ */
+ interface ::com::sun::star::accessibility::XAccessibleContext;
+
+ /** This interface gives access to the visibility of the document.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleComponent;
+
+ /** This interface gives access to any cell that is at least partially
+ visible on the screen. So this interface gives access to the same
+ things like the XAccessibleContext interface. Therefor it use more
+ usable methods. Also it gives access to some table specific data.
+ */
+ interface ::com::sun::star::accessibility::XAccessibleTable;
+
+ /** This interface is for selecting the cells. This interface is optional.
+ */
+ [optional] interface ::com::sun::star::accessibility::XAccessibleSelection;
+
+ /** This is the interface for listeners */
+ interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/table/BorderLine.idl b/offapi/com/sun/star/table/BorderLine.idl
new file mode 100644
index 000000000000..81e71b42dbf9
--- /dev/null
+++ b/offapi/com/sun/star/table/BorderLine.idl
@@ -0,0 +1,82 @@
+/*************************************************************************
+ *
+ * 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_table_BorderLine_idl__
+#define __com_sun_star_table_BorderLine_idl__
+
+#ifndef __com_sun_star_util_Color_idl__
+#include <com/sun/star/util/Color.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** describes the line type for a single cell edge.
+ */
+published struct BorderLine
+{
+ //-------------------------------------------------------------------------
+
+ /** contains the color value of the line.
+ */
+ com::sun::star::util::Color Color;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the width of the inner part of a double line (in 1/100 mm).
+
+ <p>If this value is zero, only a single line is drawn.</p>
+ */
+ short InnerLineWidth;
+
+ //-------------------------------------------------------------------------
+
+ /** contaions the width of a single line or the width of outer part of
+ a double line (in 1/100 mm).
+
+ <p>If this value is zero, no line is drawn.</p>
+ */
+ short OuterLineWidth;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the distance between the inner and outer parts of a
+ double line (in 1/100 mm).
+ */
+ short LineDistance;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/Cell.idl b/offapi/com/sun/star/table/Cell.idl
new file mode 100644
index 000000000000..9cd81fb80fce
--- /dev/null
+++ b/offapi/com/sun/star/table/Cell.idl
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * 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_table_Cell_idl__
+#define __com_sun_star_table_Cell_idl__
+
+#ifndef __com_sun_star_table_CellProperties_idl__
+#include <com/sun/star/table/CellProperties.idl>
+#endif
+
+#ifndef __com_sun_star_table_XCell_idl__
+#include <com/sun/star/table/XCell.idl>
+#endif
+
+#ifndef __com_sun_star_text_XText_idl__
+#include <com/sun/star/text/XText.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents a singe cell within a table.
+ */
+published service Cell
+{
+ //-------------------------------------------------------------------------
+
+ /** contains the properties of the table cell.
+ */
+ service com::sun::star::table::CellProperties;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the cell contents.
+ */
+ interface com::sun::star::table::XCell;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to formatted and unformatted text contents.
+ */
+ interface com::sun::star::text::XText;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/CellAddress.idl b/offapi/com/sun/star/table/CellAddress.idl
new file mode 100644
index 000000000000..de5439e94517
--- /dev/null
+++ b/offapi/com/sun/star/table/CellAddress.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * 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_table_CellAddress_idl__
+#define __com_sun_star_table_CellAddress_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** contains a cell address within a spreadsheet document.
+ */
+published struct CellAddress
+{
+ //-------------------------------------------------------------------------
+
+ /** is the index of the sheet that contains the cell.
+ */
+ short Sheet;
+
+ //-------------------------------------------------------------------------
+
+ /** is the index of the column where the cell is located.
+ */
+ long Column;
+
+ //-------------------------------------------------------------------------
+
+ /** is the index of the row where the cell is located.
+ */
+ long Row;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/CellContentType.idl b/offapi/com/sun/star/table/CellContentType.idl
new file mode 100644
index 000000000000..fea75a3b51b5
--- /dev/null
+++ b/offapi/com/sun/star/table/CellContentType.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * 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_table_CellContentType_idl__
+#define __com_sun_star_table_CellContentType_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** is used to determine the type of contents in a cell.
+ */
+published enum CellContentType
+{
+ //-------------------------------------------------------------------------
+
+ /** cell is empty.
+ */
+ EMPTY,
+
+ //-------------------------------------------------------------------------
+
+ /** cell contains a constant value.
+ */
+ VALUE,
+
+ //-------------------------------------------------------------------------
+
+ /** cell contains text.
+ */
+ TEXT,
+
+ //-------------------------------------------------------------------------
+
+ /** cell contains a formula.
+ */
+ FORMULA
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/CellCursor.idl b/offapi/com/sun/star/table/CellCursor.idl
new file mode 100644
index 000000000000..996f1d80e75c
--- /dev/null
+++ b/offapi/com/sun/star/table/CellCursor.idl
@@ -0,0 +1,61 @@
+/*************************************************************************
+ *
+ * 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_table_CellCursor_idl__
+#define __com_sun_star_table_CellCursor_idl__
+
+#ifndef __com_sun_star_table_XCellCursor_idl__
+#include <com/sun/star/table/XCellCursor.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents a cell cursor in a table.
+
+ <p>A cell cursor is simply a cell range which provides methods to move
+ through the table (i.e. relative to the current position).</p>
+ */
+published service CellCursor
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to control the position of the cursor.
+ */
+ interface com::sun::star::table::XCellCursor;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/CellHoriJustify.idl b/offapi/com/sun/star/table/CellHoriJustify.idl
new file mode 100644
index 000000000000..c2f350899f72
--- /dev/null
+++ b/offapi/com/sun/star/table/CellHoriJustify.idl
@@ -0,0 +1,84 @@
+/*************************************************************************
+ *
+ * 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_table_CellHoriJustify_idl__
+#define __com_sun_star_table_CellHoriJustify_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** specifies how cell contents are aligned horizontally.
+ */
+published enum CellHoriJustify
+{
+ //-------------------------------------------------------------------------
+
+ /** default alignment is used (left for numbers, right for text).
+ */
+ STANDARD,
+
+ //-------------------------------------------------------------------------
+
+ /** contents are aligned to the left edge of the cell.
+ */
+ LEFT,
+
+ //-------------------------------------------------------------------------
+
+ /** contents are horizontally centered.
+ */
+ CENTER,
+
+ //-------------------------------------------------------------------------
+
+ /** contents are aligned to the right edge of the cell.
+ */
+ RIGHT,
+
+ //-------------------------------------------------------------------------
+
+ /** contents are justified to the cell width.
+ */
+ BLOCK,
+
+ //-------------------------------------------------------------------------
+
+ /** contents are repeated to fill the cell.
+ */
+ REPEAT
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/CellOrientation.idl b/offapi/com/sun/star/table/CellOrientation.idl
new file mode 100644
index 000000000000..0c58eee17cfc
--- /dev/null
+++ b/offapi/com/sun/star/table/CellOrientation.idl
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * 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_table_CellOrientation_idl__
+#define __com_sun_star_table_CellOrientation_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** specifies the orientation of a cell.
+ */
+published enum CellOrientation
+{
+ //-------------------------------------------------------------------------
+
+ /** contents are printed from left to right.
+ */
+ STANDARD,
+
+ //-------------------------------------------------------------------------
+
+ /** contents are printed from top to bottom.
+ */
+ TOPBOTTOM,
+
+ //-------------------------------------------------------------------------
+
+ /** contents are printed from bottom to top.
+ */
+ BOTTOMTOP,
+
+ //-------------------------------------------------------------------------
+
+ /** contents are printed from top to bottom with individual
+ characters in normal (horizontal) orientation.
+ */
+ STACKED
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/CellProperties.idl b/offapi/com/sun/star/table/CellProperties.idl
new file mode 100644
index 000000000000..0528415bdea3
--- /dev/null
+++ b/offapi/com/sun/star/table/CellProperties.idl
@@ -0,0 +1,265 @@
+/*************************************************************************
+ *
+ * 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_table_CellProperties_idl__
+#define __com_sun_star_table_CellProperties_idl__
+
+#ifndef __com_sun_star_util_Color_idl__
+#include <com/sun/star/util/Color.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_table_ShadowFormat_idl__
+#include <com/sun/star/table/ShadowFormat.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellHoriJustify_idl__
+#include <com/sun/star/table/CellHoriJustify.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellVertJustify_idl__
+#include <com/sun/star/table/CellVertJustify.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellOrientation_idl__
+#include <com/sun/star/table/CellOrientation.idl>
+#endif
+
+#ifndef __com_sun_star_util_CellProtection_idl__
+#include <com/sun/star/util/CellProtection.idl>
+#endif
+
+#ifndef __com_sun_star_table_TableBorder_idl__
+#include <com/sun/star/table/TableBorder.idl>
+#endif
+
+#ifndef __com_sun_star_table_BorderLine_idl__
+#include <com/sun/star/table/BorderLine.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameContainer_idl__
+#include <com/sun/star/container/XNameContainer.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** contains the properties of a table cell.
+
+ @see com::sun::star::table::Cell
+ @see com::sun::star::table::CellRange
+ */
+published service CellProperties
+{
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the properties.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** contains the name of the style of the cell.
+ */
+ [optional, property] string CellStyle;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the cell background color.
+ */
+ [property] com::sun::star::util::Color CellBackColor;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/>, if the cell background is transparent.
+
+ <p>In this case the <member>CellProperties::CellBackColor</member>
+ value is not used.</p>
+ */
+ [property] boolean IsCellBackgroundTransparent;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the horizontal alignment of the cell contents.
+ */
+ [property] com::sun::star::table::CellHoriJustify HoriJustify;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the vertical alignment of the cell contents.
+ */
+ [property] com::sun::star::table::CellVertJustify VertJustify;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/>, if text in the cells will be wrapped automatically
+ at the right border.
+ */
+ [property] boolean IsTextWrapped;
+
+ //-------------------------------------------------------------------------
+
+ /** defines the indentation of the cell contents (in 1/100 mm).
+ */
+ [property] short ParaIndent;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the orientation of the cell contents.
+
+ <p>If the <member>CellProperties::RotateAngle</member> property
+ is non-zero, this value is not used.</p>
+ */
+ [property] com::sun::star::table::CellOrientation Orientation;
+
+ //-------------------------------------------------------------------------
+
+ /** defines how much the content of cells is rotated (in 1/100 degrees).
+ */
+ [property] long RotateAngle;
+
+ //-------------------------------------------------------------------------
+
+ /** defines at which edge rotated cells are aligned.
+ */
+ [property] com::sun::star::table::CellVertJustify RotateReference;
+
+ //-------------------------------------------------------------------------
+
+ /** selects Asian character orientation in vertical orientation.
+
+ <p>If the <member>CellProperties::Orientation</member> property is
+ <const>CellOrientation::STACKED</const>, in Asian mode only Asian
+ characters are printed in horizontal orientation instead of all
+ characters.
+ For other values of <member>CellProperties::Orientation</member>,
+ this value is not used.</p>
+ */
+ [optional, property] boolean AsianVerticalMode;
+
+ //-------------------------------------------------------------------------
+
+ /** contains a description of the cell or cell range border.
+
+ <p>If used with a cell range, the top, left, right, and bottom
+ lines are at the edges of the entire range, not at the edges of
+ the individual cell.</p>
+ */
+ [property] com::sun::star::table::TableBorder TableBorder;
+
+ //-------------------------------------------------------------------------
+
+ /** contains a description of the top border line of each cell.
+ */
+ [property] com::sun::star::table::BorderLine TopBorder;
+
+ //-------------------------------------------------------------------------
+
+ /** contains a description of the bottom border line of each cell.
+ */
+ [property] com::sun::star::table::BorderLine BottomBorder;
+
+ //-------------------------------------------------------------------------
+
+ /** contains a description of the left border line of each cell.
+ */
+ [property] com::sun::star::table::BorderLine LeftBorder;
+
+ //-------------------------------------------------------------------------
+
+ /** contains a description of the right border line of each cell.
+ */
+ [property] com::sun::star::table::BorderLine RightBorder;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the index of the number format that is used in the cells.
+
+ <p>The proper value can be determined by using the
+ <type scope="com::sun::star::util">NumberFormatter</type>
+ interface of the document.</p>
+ */
+ [property] long NumberFormat;
+
+ //-------------------------------------------------------------------------
+
+ /** contains a description of the shadow.
+ */
+ [property] com::sun::star::table::ShadowFormat ShadowFormat;
+
+ //-------------------------------------------------------------------------
+
+ /** contains a description of the cell protection.
+
+ <p>Cell protection is active only if the sheet is protected.</p>
+ */
+ [property] com::sun::star::util::CellProtection CellProtection;
+
+ //-------------------------------------------------------------------------
+
+ /** stores additional attributes.
+
+ <p>This property is used i.e. by the XML filters to load and
+ restore unknown attributes.</p>
+ */
+ [optional, property] com::sun::star::container::XNameContainer
+ UserDefinedAttributes;
+
+ //-------------------------------------------------------------------------
+
+ /** contains a description of the top left to bottom right diagonal line of each cell.
+ */
+ [optional, property] com::sun::star::table::BorderLine DiagonalTLBR;
+
+ //-------------------------------------------------------------------------
+
+ /** contains a description of the bottom left to top right diagonal line of each cell.
+ */
+ [optional, property] com::sun::star::table::BorderLine DiagonalBLTR;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/>, if the cell content will be shrinked to fit in the cell.
+ */
+ [optional, property] boolean ShrinkToFit;
+
+ //-------------------------------------------------------------------------
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/CellRange.idl b/offapi/com/sun/star/table/CellRange.idl
new file mode 100644
index 000000000000..3b1387f859f3
--- /dev/null
+++ b/offapi/com/sun/star/table/CellRange.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * 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_table_CellRange_idl__
+#define __com_sun_star_table_CellRange_idl__
+
+#ifndef __com_sun_star_table_CellProperties_idl__
+#include <com/sun/star/table/CellProperties.idl>
+#endif
+
+#ifndef __com_sun_star_table_XCellRange_idl__
+#include <com/sun/star/table/XCellRange.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents a range of of cells within a table.
+ */
+published service CellRange
+{
+ //-------------------------------------------------------------------------
+
+ /** contains the properties of the cells of this cell range.
+ */
+ service com::sun::star::table::CellProperties;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the cells or to sub-ranges of this cell range.
+ */
+ interface com::sun::star::table::XCellRange;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/CellRangeAddress.idl b/offapi/com/sun/star/table/CellRangeAddress.idl
new file mode 100644
index 000000000000..7475369f870c
--- /dev/null
+++ b/offapi/com/sun/star/table/CellRangeAddress.idl
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * 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_table_CellRangeAddress_idl__
+#define __com_sun_star_table_CellRangeAddress_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** contains a cell range address within a spreadsheet document.
+ */
+published struct CellRangeAddress
+{
+ //-------------------------------------------------------------------------
+
+ /** is the index of the sheet that contains the cell range.
+ */
+ short Sheet;
+
+ //-------------------------------------------------------------------------
+
+ /** is the index of the column of the left edge of the range.
+ */
+ long StartColumn;
+
+ //-------------------------------------------------------------------------
+
+ /** is the index of the row of the top edge of the range.
+ */
+ long StartRow;
+
+ //-------------------------------------------------------------------------
+
+ /** is the index of the column of the right edge of the range.
+ */
+ long EndColumn;
+
+ //-------------------------------------------------------------------------
+
+ /** is the index of the row of the bottom edge of the range.
+ */
+ long EndRow;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/CellRangeListSource.idl b/offapi/com/sun/star/table/CellRangeListSource.idl
new file mode 100644
index 000000000000..c6c5d710b8fe
--- /dev/null
+++ b/offapi/com/sun/star/table/CellRangeListSource.idl
@@ -0,0 +1,93 @@
+/*************************************************************************
+ *
+ * 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_CellRangeListSource_idl__
+#define __com_sun_star_sheet_CellRangeListSource_idl__
+
+#ifndef __com_sun_star_form_binding_ListEntrySource_idl__
+#include <com/sun/star/form/binding/ListEntrySource.idl>
+#endif
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+#ifndef __com_sun_star_lang_XInitialization_idl__
+#include <com/sun/star/lang/XInitialization.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+
+//=============================================================================
+
+/** defines the a source of list entries coming from a cell range in a tbale document
+
+ <p>The component cannot be instantiated at a global service factory, instead
+ it's usually provided by a document instance.</p>
+
+ @see com::sun::star::document::OfficeDocument
+*/
+service CellRangeListSource
+{
+ /** ensures the basic functionality for supplying list entries
+ */
+ service com::sun::star::form::binding::ListEntrySource;
+
+ /** specifies the cell range within a document to which the component
+ is bound.
+ */
+ [property, bound, readonly] com::sun::star::table::CellRangeAddress CellRange;
+
+ /** allows setting initial, creation-time properties of the component
+
+ <p>This interface is used to initialize the component after creation. It has
+ to be used exactly once in the life time of the component, every second call
+ to <member scope"com::sun::star::lang">XInitialization::initialize</member>
+ will throw an exception.</p>
+
+ <p>The arguments passed to the <member scope"com::sun::star::lang">XInitialization::initialize</member>
+ method must be instances of <type scope="com::sun::star::beans">NamedValue</type>, where
+ the <member scope"com::sun::star::beans">NamedValue::Name</member> denotes the type of information
+ to initialize, and the <member scope"com::sun::star::beans">NamedValue::Value</member>
+ the inital value.</p>
+
+ <p>The following aspects of the components can be initialized:<br/>
+ <ul><li><b>CellRange</b><br/>
+ specifies the address of the cell range to bind this instance to. Must be a
+ <type scope="com::sun::star::table">CellRangeAddress</type> instance.</li>
+ </ul>
+ </p>
+ */
+ interface com::sun::star::lang::XInitialization;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/table/CellValueBinding.idl b/offapi/com/sun/star/table/CellValueBinding.idl
new file mode 100644
index 000000000000..3115a8834f5f
--- /dev/null
+++ b/offapi/com/sun/star/table/CellValueBinding.idl
@@ -0,0 +1,106 @@
+/*************************************************************************
+ *
+ * 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_table_CellValueBinding_idl__
+#define __com_sun_star_table_CellValueBinding_idl__
+
+#ifndef __com_sun_star_form_binding_ValueBinding_idl__
+#include <com/sun/star/form/binding/ValueBinding.idl>
+#endif
+#ifndef __com_sun_star_table_CellAddress_idl__
+#include <com/sun/star/table/CellAddress.idl>
+#endif
+#ifndef __com_sun_star_lang_XInitialization_idl__
+#include <com/sun/star/lang/XInitialization.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** defines the binding to a single cell in a table document
+
+ <p>Read/Write access to the cell represented by this component is supported,
+ as well as active broadcasting of value changes.</p>
+
+ <p>The binding supports exchanging <em>double</em> values, <em>string</em>
+ values.</p>
+
+ <p>The component cannot be instantiated at a global service factory, instead
+ it's usually provided by a document instance.</p>
+
+ @see com::sun::star::document::OfficeDocument
+*/
+service CellValueBinding
+{
+ /** ensures the basic functionality for binding to a value
+ */
+ service com::sun::star::form::binding::ValueBinding;
+
+ /** specifies the cell within a document whose value is reflected
+ by the binding.
+ */
+ [property, bound, readonly] com::sun::star::table::CellAddress BoundCell;
+
+ /** allows notifications of changes in the content of the underlying cell.
+
+ <p>Note that this interface is already optionally allowed in the
+ underlying service (<type scope="com::sun::star::form::binding">ValueBinding</type>),
+ but it loses it's optionality here.</p>
+ */
+ interface com::sun::star::util::XModifyBroadcaster;
+
+ /** allows setting initial, creation-time properties of the component
+
+ <p>This interface is used to initialize the component after creation. It has
+ to be used exactly once in the life time of the component, every second call
+ to <member scope"com::sun::star::lang">XInitialization::initialize</member>
+ will throw an exception.</p>
+
+ <p>The arguments passed to the <member scope"com::sun::star::lang">XInitialization::initialize</member>
+ method must be instances of <type scope="com::sun::star::beans">NamedValue</type>, where
+ the <member scope"com::sun::star::beans">NamedValue::Name</member> denotes the type of information
+ to initialize, and the <member scope"com::sun::star::beans">NamedValue::Value</member>
+ the inital value.</p>
+
+ <p>The following aspects of the components can be initialized:<br/>
+ <ul><li><b>BoundCell</b><br/>
+ specifies the address of the cell to bind this instance to. Must be a
+ <type scope="com::sun::star::table">CellAddress</type> instance.</li>
+ </ul>
+ </p>
+ */
+ interface com::sun::star::lang::XInitialization;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/table/CellVertJustify.idl b/offapi/com/sun/star/table/CellVertJustify.idl
new file mode 100644
index 000000000000..c4b0dcb741bc
--- /dev/null
+++ b/offapi/com/sun/star/table/CellVertJustify.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * 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_table_CellVertJustify_idl__
+#define __com_sun_star_table_CellVertJustify_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** specifies how cell contents are aligned vertically.
+ */
+published enum CellVertJustify
+{
+ //-------------------------------------------------------------------------
+
+ /** default alignment is used.
+ */
+ STANDARD,
+
+ //-------------------------------------------------------------------------
+
+ /** contents are aligned with the upper edge of the cell.
+ */
+ TOP,
+
+ //-------------------------------------------------------------------------
+
+ /** contents are aligned to the vertical middle of the cell.
+ */
+ CENTER,
+
+ //-------------------------------------------------------------------------
+
+ /** contents are aligned to the lower edge of the cell.
+ */
+ BOTTOM
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/ListPositionCellBinding.idl b/offapi/com/sun/star/table/ListPositionCellBinding.idl
new file mode 100644
index 000000000000..5058a30d870c
--- /dev/null
+++ b/offapi/com/sun/star/table/ListPositionCellBinding.idl
@@ -0,0 +1,61 @@
+/*************************************************************************
+ *
+ * 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_table_ListPositionCellBinding_idl__
+#define __com_sun_star_table_ListPositionCellBinding_idl__
+
+#ifndef __com_sun_star_table_CellValueBinding_idl__
+#include <com/sun/star/table/CellValueBinding.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+
+//=============================================================================
+
+/** defines the binding to a single cell in a table document, which can be used to
+ transfer a list position into the cell.
+*/
+service ListPositionCellBinding
+{
+ /** provides the basic functionality for exchanging values with a table cell.
+
+ <p>Additionally to the types supported by the super service, the
+ <type>ListPositionCellBinding</type> allows exchanging integer values.</p>
+
+ @see com::sun::star::form::binding::XValueBinding::getSupportedTypes
+ */
+ service CellValueBinding;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/table/ShadowFormat.idl b/offapi/com/sun/star/table/ShadowFormat.idl
new file mode 100644
index 000000000000..d88445d4a18d
--- /dev/null
+++ b/offapi/com/sun/star/table/ShadowFormat.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * 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_table_ShadowFormat_idl__
+#define __com_sun_star_table_ShadowFormat_idl__
+
+#ifndef __com_sun_star_util_Color_idl__
+#include <com/sun/star/util/Color.idl>
+#endif
+
+#ifndef __com_sun_star_table_ShadowLocation_idl__
+#include <com/sun/star/table/ShadowLocation.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** describes the settings of a cell shadow.
+ */
+published struct ShadowFormat
+{
+ //-------------------------------------------------------------------------
+
+ /** contains the location of the shadow.
+ */
+ com::sun::star::table::ShadowLocation Location;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the size of the shadow.
+ */
+ short ShadowWidth;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/>, if shadow is transparent.
+ */
+ boolean IsTransparent;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the color value of the shadow.
+ */
+ com::sun::star::util::Color Color;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/ShadowLocation.idl b/offapi/com/sun/star/table/ShadowLocation.idl
new file mode 100644
index 000000000000..3ff56787700b
--- /dev/null
+++ b/offapi/com/sun/star/table/ShadowLocation.idl
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * 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_table_ShadowLocation_idl__
+#define __com_sun_star_table_ShadowLocation_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** specifies the location of the shadow in a <type>ShadowFormat</type>.
+ */
+published enum ShadowLocation
+{
+ //-------------------------------------------------------------------------
+
+ /** no shadow.
+ */
+ NONE,
+
+ //-------------------------------------------------------------------------
+
+ /** shadow is located along the upper and left sides.
+ */
+ TOP_LEFT,
+
+ //-------------------------------------------------------------------------
+
+ /** shadow is located along the upper and right sides.
+ */
+ TOP_RIGHT,
+
+ //-------------------------------------------------------------------------
+
+ /** shadow is located along the lower and left sides.
+ */
+ BOTTOM_LEFT,
+
+ //-------------------------------------------------------------------------
+
+ /** shadow is located along the lower and right sides.
+ */
+ BOTTOM_RIGHT
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableBorder.idl b/offapi/com/sun/star/table/TableBorder.idl
new file mode 100644
index 000000000000..8688e6c8a3f0
--- /dev/null
+++ b/offapi/com/sun/star/table/TableBorder.idl
@@ -0,0 +1,154 @@
+/*************************************************************************
+ *
+ * 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_table_TableBorder_idl__
+#define __com_sun_star_table_TableBorder_idl__
+
+#ifndef __com_sun_star_table_BorderLine_idl__
+#include <com/sun/star/table/BorderLine.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** contains the style settings of the border lines of all cells in a cell
+ range.
+
+ <p>In a queried structure, the flags in
+ <member>TableBorder::Is...LineValid</member> indicate that not all
+ lines of the boxes have the same values.</p>
+
+ <p>In a structure which is used for setting, these flags determine
+ if the corresponding line should be set or if the old value should
+ be kept.</p>
+ */
+published struct TableBorder
+{
+ //-------------------------------------------------------------------------
+
+ /** determines the line style at the top edge.
+ */
+ com::sun::star::table::BorderLine TopLine;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the value of <member>TableBorder::TopLine</member>
+ is used.
+ */
+ boolean IsTopLineValid;
+
+ //-------------------------------------------------------------------------
+
+ /** determines the line style at the bottom edge.
+ */
+ com::sun::star::table::BorderLine BottomLine;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the value of
+ <member>TableBorder::BottomLine</member> is used.
+ */
+ boolean IsBottomLineValid;
+
+ //-------------------------------------------------------------------------
+
+ /** determines the line style at the left edge.
+ */
+ com::sun::star::table::BorderLine LeftLine;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the value of <member>TableBorder::LeftLine</member>
+ is used.
+ */
+ boolean IsLeftLineValid;
+
+ //-------------------------------------------------------------------------
+
+ /** determines the line style at the right edge.
+ */
+ com::sun::star::table::BorderLine RightLine;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the value of <member>TableBorder::RightLine</member>
+ is used.
+ */
+ boolean IsRightLineValid;
+
+ //-------------------------------------------------------------------------
+
+ /** determines the line style of horizontal lines for the inner part
+ of a cell range.
+ */
+ com::sun::star::table::BorderLine HorizontalLine;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the value of
+ <member>TableBorder::HorizontalLine</member> is used.
+ */
+ boolean IsHorizontalLineValid;
+
+ //-------------------------------------------------------------------------
+
+ /** determines the line style of vertical lines for the inner part
+ of a cell range.
+ */
+ com::sun::star::table::BorderLine VerticalLine;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the value of
+ <member>TableBorder::VerticalLine</member> is used.
+ */
+ boolean IsVerticalLineValid;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the distance between the lines and other contents.
+ */
+ short Distance;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the value of <member>TableBorder::Distance</member>
+ is used.
+ */
+ boolean IsDistanceValid;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableBorderDistances.idl b/offapi/com/sun/star/table/TableBorderDistances.idl
new file mode 100644
index 000000000000..86db15d99b64
--- /dev/null
+++ b/offapi/com/sun/star/table/TableBorderDistances.idl
@@ -0,0 +1,109 @@
+/*************************************************************************
+ *
+ * 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_table_TableBorderDistances_idl__
+#define __com_sun_star_table_TableBorderDistances_idl__
+
+#ifndef __com_sun_star_table_BorderLine_idl__
+#include <com/sun/star/table/BorderLine.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** contains the distance settings of the border lines of all cells in a cell
+ range.
+
+ <p>In a queried structure, the flags in
+ <member>TableBorderDistances::Is...DistanceValid</member> indicate that not all
+ lines of the boxes have the same values.</p>
+
+ <p>In a structure which is used for setting, these flags determine
+ if the corresponding distance should be set or if the old value should
+ be kept.</p>
+ */
+published struct TableBorderDistances
+{
+
+ /** contains the distance between the top lines and other contents.
+ */
+ short TopDistance;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the value of <member>TableBorder::TopDistance</member>
+ is used.
+ */
+ boolean IsTopDistanceValid;
+ //-------------------------------------------------------------------------
+
+ /** contains the distance between the bottom lines and other contents.
+ */
+ short BottomDistance;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the value of <member>TableBorder::BottomDistance</member>
+ is used.
+ */
+ boolean IsBottomDistanceValid;
+ //-------------------------------------------------------------------------
+
+ /** contains the distance between the left lines and other contents.
+ */
+ short LeftDistance;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the value of <member>TableBorder::LeftDistance</member>
+ is used.
+ */
+ boolean IsLeftDistanceValid;
+ //-------------------------------------------------------------------------
+
+ /** contains the distance between the right lines and other contents.
+ */
+ short RightDistance;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the value of <member>TableBorder::RightDistance</member>
+ is used.
+ */
+ boolean IsRightDistanceValid;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableChart.idl b/offapi/com/sun/star/table/TableChart.idl
new file mode 100644
index 000000000000..c12262019785
--- /dev/null
+++ b/offapi/com/sun/star/table/TableChart.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * 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_table_TableChart_idl__
+#define __com_sun_star_table_TableChart_idl__
+
+#ifndef __com_sun_star_table_XTableChart_idl__
+#include <com/sun/star/table/XTableChart.idl>
+#endif
+
+#ifndef __com_sun_star_document_XEmbeddedObjectSupplier_idl__
+#include <com/sun/star/document/XEmbeddedObjectSupplier.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents a chart based on data in a table or spreadsheet.
+
+ <p>This service does not represent the chart document model itself,
+ but the object in the table that contains this chart document.<p/>
+ */
+published service TableChart
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the settings of this chart.
+ */
+ interface com::sun::star::table::XTableChart;
+
+ //-------------------------------------------------------------------------
+
+ /** provides access to the chart document model.
+
+ @see com::sun::star::chart::ChartDocument
+ */
+ interface com::sun::star::document::XEmbeddedObjectSupplier;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the name of the chart.
+ */
+ interface com::sun::star::container::XNamed;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableCharts.idl b/offapi/com/sun/star/table/TableCharts.idl
new file mode 100644
index 000000000000..f2c646f6233b
--- /dev/null
+++ b/offapi/com/sun/star/table/TableCharts.idl
@@ -0,0 +1,82 @@
+/*************************************************************************
+ *
+ * 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_table_TableCharts_idl__
+#define __com_sun_star_table_TableCharts_idl__
+
+#ifndef __com_sun_star_table_XTableCharts_idl__
+#include <com/sun/star/table/XTableCharts.idl>
+#endif
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents a collection of all charts based on data in a table.
+
+ @see com::sun::star::table::TableChart
+ */
+published service TableCharts
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to insert and remove charts.
+ */
+ interface com::sun::star::table::XTableCharts;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the charts via index.
+ */
+ interface com::sun::star::container::XIndexAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all contained charts.
+
+ @see com::sun::star::table::TableChartsEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableChartsEnumeration.idl b/offapi/com/sun/star/table/TableChartsEnumeration.idl
new file mode 100644
index 000000000000..c29e3abbae46
--- /dev/null
+++ b/offapi/com/sun/star/table/TableChartsEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * 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_table_TableChartsEnumeration_idl__
+#define __com_sun_star_table_TableChartsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents an enumeration of table charts.
+
+ @see com::sun::star::table::TableCharts
+ */
+published service TableChartsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the charts in the enumeration.
+
+ @see com::sun::star::table::TableChart
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableColumn.idl b/offapi/com/sun/star/table/TableColumn.idl
new file mode 100644
index 000000000000..985cc3f7c401
--- /dev/null
+++ b/offapi/com/sun/star/table/TableColumn.idl
@@ -0,0 +1,112 @@
+/*************************************************************************
+ *
+ * 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_table_TableColumn_idl__
+#define __com_sun_star_table_TableColumn_idl__
+
+#ifndef __com_sun_star_table_XCellRange_idl__
+#include <com/sun/star/table/XCellRange.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNamed_idl__
+#include <com/sun/star/container/XNamed.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents a special cell range containing all cells of a single
+ specific column in a table or spreadsheet.
+ */
+published service TableColumn
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the cells of this column.
+
+ @see com::sun::star::table::CellRange
+ */
+ interface com::sun::star::table::XCellRange;
+
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the cell properties of all cells of this column.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the name of the column.
+
+ <p>In spreadsheets, the name of a column cannot be changed.<p/>
+ */
+ interface com::sun::star::container::XNamed;
+
+ //=========================================================================
+
+ /** contains the width of the column (in 1/100th mm).
+
+ <p>When hidden, it returns the width which the column would have,
+ if it were visible. </p>
+ */
+ [property] long Width;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/>, if the column always keeps its optimal width.
+ */
+ [property] boolean OptimalWidth;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/>, if the column is visible.
+ */
+ [property] boolean IsVisible;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/>, if there is a manual horizontal page break attached
+ to the column.
+ */
+ [property] boolean IsStartOfNewPage;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableColumns.idl b/offapi/com/sun/star/table/TableColumns.idl
new file mode 100644
index 000000000000..9a3a32c062a1
--- /dev/null
+++ b/offapi/com/sun/star/table/TableColumns.idl
@@ -0,0 +1,85 @@
+/*************************************************************************
+ *
+ * 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_table_TableColumns_idl__
+#define __com_sun_star_table_TableColumns_idl__
+
+#ifndef __com_sun_star_table_XTableColumns_idl__
+#include <com/sun/star/table/XTableColumns.idl>
+#endif
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents a collection of all columns of a table or spreadsheet.
+
+ @see com::sun::star::table::TableColumn
+ */
+published service TableColumns
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to insert and remove columns.
+ */
+ interface com::sun::star::table::XTableColumns;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all contained columns.
+
+ @see com::sun::star::table::TableColumnsEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the columns via their names.
+
+ <p>The names of the columns are always absolute even if the current
+ cell range is a sub-range of a spreadsheet.</p>
+ */
+ [optional] interface com::sun::star::container::XNameAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableColumnsEnumeration.idl b/offapi/com/sun/star/table/TableColumnsEnumeration.idl
new file mode 100644
index 000000000000..b43bf7d320e6
--- /dev/null
+++ b/offapi/com/sun/star/table/TableColumnsEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * 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_table_TableColumnsEnumeration_idl__
+#define __com_sun_star_table_TableColumnsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents an enumeration of table columns.
+
+ @see com::sun::star::table::TableColumns
+ */
+published service TableColumnsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the columns in the enumeration.
+
+ @see com::sun::star::table::TableColumn
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableOrientation.idl b/offapi/com/sun/star/table/TableOrientation.idl
new file mode 100644
index 000000000000..a142d212ef2f
--- /dev/null
+++ b/offapi/com/sun/star/table/TableOrientation.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * 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_table_TableOrientation_idl__
+#define __com_sun_star_table_TableOrientation_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** used to select whether operations are carried out on columns or rows.
+ */
+published enum TableOrientation
+{
+ //-------------------------------------------------------------------------
+
+ /** operations are carried out on columns.
+ */
+ COLUMNS,
+
+ //-------------------------------------------------------------------------
+
+ /** operations are carried out on rows.
+ */
+ ROWS
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableRow.idl b/offapi/com/sun/star/table/TableRow.idl
new file mode 100644
index 000000000000..f3f87e7258a9
--- /dev/null
+++ b/offapi/com/sun/star/table/TableRow.idl
@@ -0,0 +1,100 @@
+/*************************************************************************
+ *
+ * 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_table_TableRow_idl__
+#define __com_sun_star_table_TableRow_idl__
+
+#ifndef __com_sun_star_table_XCellRange_idl__
+#include <com/sun/star/table/XCellRange.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents a special cell range containing all cells of a single
+ specific row in a table or spreadsheet.
+ */
+published service TableRow
+{
+ //-------------------------------------------------------------------------
+
+ /** provides access to the cells of this row.
+
+ @see com::sun::star::table::CellRange
+ */
+ interface com::sun::star::table::XCellRange;
+
+ //-------------------------------------------------------------------------
+
+//!published service PropertySet
+ /** provides access to the cell properties of all cells of this row.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ //=========================================================================
+
+ /** contains the height of the row (in 1/100 mm).
+
+ <p>When hidden, it returns the height which the row would have,
+ if it were visible. </p>
+ */
+ [property] long Height;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/>, if the row always keeps its optimal height.
+ */
+ [property] boolean OptimalHeight;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/>, if the row is visible.
+ */
+ [property] boolean IsVisible;
+
+ //-------------------------------------------------------------------------
+
+ /** is <TRUE/>, if there is a manual vertical page break attached
+ to the row.
+ */
+ [property] boolean IsStartOfNewPage;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableRows.idl b/offapi/com/sun/star/table/TableRows.idl
new file mode 100644
index 000000000000..dfb7db26c84b
--- /dev/null
+++ b/offapi/com/sun/star/table/TableRows.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * 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_table_TableRows_idl__
+#define __com_sun_star_table_TableRows_idl__
+
+#ifndef __com_sun_star_table_XTableRows_idl__
+#include <com/sun/star/table/XTableRows.idl>
+#endif
+
+#ifndef __com_sun_star_container_XEnumerationAccess_idl__
+#include <com/sun/star/container/XEnumerationAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents a collection of all rows of a table or spreadsheet.
+
+ @see com::sun::star::table::TableRow
+ */
+published service TableRows
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to insert and remove rows.
+ */
+ interface com::sun::star::table::XTableRows;
+
+ //-------------------------------------------------------------------------
+
+ /** creates an enumeration of all contained rows.
+
+ @see com::sun::star::table::TableRowsEnumeration
+ */
+ interface com::sun::star::container::XEnumerationAccess;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableRowsEnumeration.idl b/offapi/com/sun/star/table/TableRowsEnumeration.idl
new file mode 100644
index 000000000000..1ff0c074bd6f
--- /dev/null
+++ b/offapi/com/sun/star/table/TableRowsEnumeration.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * 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_table_TableRowsEnumeration_idl__
+#define __com_sun_star_table_TableRowsEnumeration_idl__
+
+#ifndef __com_sun_star_container_XEnumeration_idl__
+#include <com/sun/star/container/XEnumeration.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents an enumeration of table rows.
+
+ @see com::sun::star::table::TableRows
+ */
+published service TableRowsEnumeration
+{
+ //-------------------------------------------------------------------------
+
+ /** provides methods to access the rows in the enumeration.
+
+ @see com::sun::star::table::TableRow
+ */
+ interface com::sun::star::container::XEnumeration;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableSortDescriptor.idl b/offapi/com/sun/star/table/TableSortDescriptor.idl
new file mode 100644
index 000000000000..9e2277389be0
--- /dev/null
+++ b/offapi/com/sun/star/table/TableSortDescriptor.idl
@@ -0,0 +1,104 @@
+/*************************************************************************
+ *
+ * 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_table_TableSortDescriptor_idl__
+#define __com_sun_star_table_TableSortDescriptor_idl__
+
+#ifndef __com_sun_star_util_SortDescriptor_idl__
+#include <com/sun/star/util/SortDescriptor.idl>
+#endif
+
+#ifndef __com_sun_star_util_SortField_idl__
+#include <com/sun/star/util/SortField.idl>
+#endif
+
+#ifndef __com_sun_star_table_TableOrientation_idl__
+#include <com/sun/star/table/TableOrientation.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** contains properties which describe sorting of rows or columns in a table.
+
+ <p>It extends the general
+ <type scope="com::sun::star::util">SortDescriptor</type> with
+ table-specific properties.</p>
+
+ @deprecated
+ */
+published service TableSortDescriptor
+{
+ //-------------------------------------------------------------------------
+
+ /** contains common sorting properties.
+ */
+ service com::sun::star::util::SortDescriptor;
+
+ //=========================================================================
+
+ /** specifies the descriptions of the individual sort fields.
+ */
+ [property] sequence<com::sun::star::util::SortField> SortFields;
+
+ //-------------------------------------------------------------------------
+
+ /** contains the maximum number of sort fields the descriptor can hold.
+ */
+ [readonly, property] long MaxFieldCount;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies the sorting orientation (sort rows or columns).
+
+ <p>Some implementations may not support sorting columns.</p>
+
+ @deprecated
+ use the property <member scope="com::sun::star::util">SortDescriptor::SortColumns</member>
+ instead.
+ */
+ [property] com::sun::star::table::TableOrientation Orientation;
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the first row or column (depending on
+ <member scope="com::sun::star::util">SortDescriptor::SortColumns</member>) is a
+ header which should not be sorted.
+ */
+ [property] boolean ContainsHeader;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableSortDescriptor2.idl b/offapi/com/sun/star/table/TableSortDescriptor2.idl
new file mode 100644
index 000000000000..ff62fa490f18
--- /dev/null
+++ b/offapi/com/sun/star/table/TableSortDescriptor2.idl
@@ -0,0 +1,87 @@
+/*************************************************************************
+ *
+ * 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_table_TableSortDescriptor2_idl__
+#define __com_sun_star_table_TableSortDescriptor2_idl__
+
+#ifndef __com_sun_star_util_SortDescriptor2_idl__
+#include <com/sun/star/util/SortDescriptor2.idl>
+#endif
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+#ifndef __com_sun_star_table_TableSortField_idl__
+#include <com/sun/star/table/TableSortField.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** specifies properties which describe sorting of fields (rows or columns)
+ in a table.
+
+ @since OOo 1.1.2
+ */
+published service TableSortDescriptor2
+{
+ service com::sun::star::util::SortDescriptor2;
+
+ //-------------------------------------------------------------------------
+ /** specifies a list of individual sort fields.
+
+ <p>Each entry specifies properties that state the
+ row/column to be sorted and how that should be done.</p>
+ */
+ [property] sequence< com::sun::star::table::TableSortField > SortFields;
+
+ //-------------------------------------------------------------------------
+ /** contains the maximum number of sort fields the descriptor can hold.
+ */
+ [readonly, property] long MaxSortFieldsCount;
+
+ //-------------------------------------------------------------------------
+ /** specifies if the columns or rows are to be sorted.
+
+ <dl>
+ <dt><TRUE/></dt>
+ <dd>The columns are to be sorted.</dd>
+ <dt><FALSE/></dt>
+ <dd>The rows are to be sorted.</dd>
+ </dl>
+ */
+ [property] boolean IsSortColumns;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/TableSortField.idl b/offapi/com/sun/star/table/TableSortField.idl
new file mode 100644
index 000000000000..3fb8d718b588
--- /dev/null
+++ b/offapi/com/sun/star/table/TableSortField.idl
@@ -0,0 +1,107 @@
+/*************************************************************************
+ *
+ * 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_table_TableSortField_idl__
+#define __com_sun_star_table_TableSortField_idl__
+
+#ifndef __com_sun_star_lang_Locale_idl__
+#include <com/sun/star/lang/Locale.idl>
+#endif
+#ifndef __com_sun_star_table_TableSortFieldType_idl__
+#include <com/sun/star/table/TableSortFieldType.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+/** describes how to sort a single field (row/column) in a tables
+ sort descriptor.
+
+ @see com::sun::star::table::TableSortDescriptor2
+
+ @since OOo 1.1.2
+ */
+published struct TableSortField
+{
+ //-------------------------------------------------------------------------
+ /** index of the row or column in the table to be sorted; 0-based.
+ */
+ long Field;
+
+ //-------------------------------------------------------------------------
+ /** <TRUE/> if data are sorted in ascending order,
+ <FALSE/> if in descending order.
+ */
+ boolean IsAscending;
+
+ //-------------------------------------------------------------------------
+ /** specifies if the case of letters is important when comparing entries.
+ */
+ boolean IsCaseSensitive;
+
+ //-------------------------------------------------------------------------
+ /** type of contents in the field.
+
+ <p>If the value is
+ <member scope="com::sun::star::table::TableSortFieldType">AUTOMATIC</member>
+ the algorithm used for sorting is application specific.
+ Especially it may or may not use the values given by
+ 'CollatorLocale' and 'CollatorAlgorithm'.</p>
+ */
+ com::sun::star::table::TableSortFieldType FieldType;
+
+ //-------------------------------------------------------------------------
+ /** the locale used by the collator when comparing/sorting text.
+
+ <p>This property will not be used when the 'FieldType' is
+ <member scope="com::sun::star::table::TableSortFieldType">NUMERIC</member>
+ </p>
+
+ @ see com::sun::star::i18n::XCollator
+ */
+ com::sun::star::lang::Locale CollatorLocale;
+
+ //-------------------------------------------------------------------------
+ /** the algorithm used by the collator when comparing/sorting text.
+
+ <p>This property will not be used when the 'FieldType' is
+ <member scope="com::sun::star::table::TableSortFieldType">NUMERIC</member>
+ </p>
+
+ @ see com::sun::star::i18n::XCollator
+ */
+ string CollatorAlgorithm;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/table/TableSortFieldType.idl b/offapi/com/sun/star/table/TableSortFieldType.idl
new file mode 100644
index 000000000000..99a546237358
--- /dev/null
+++ b/offapi/com/sun/star/table/TableSortFieldType.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * 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_table_TableSortFieldType_idl__
+#define __com_sun_star_table_TableSortFieldType_idl__
+
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** enumeration used to specify the type of contents in a sort field
+ (row/column) of a table.
+
+ @since OOo 1.1.2
+ */
+published enum TableSortFieldType
+{
+ //-------------------------------------------------------------------------
+ /** type is determined automatically.
+ */
+ AUTOMATIC,
+
+ //-------------------------------------------------------------------------
+ /** sort field contains numerical data.
+ */
+ NUMERIC,
+
+ //-------------------------------------------------------------------------
+ /** sort field contains text data.
+ */
+ ALPHANUMERIC
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/table/XAutoFormattable.idl b/offapi/com/sun/star/table/XAutoFormattable.idl
new file mode 100644
index 000000000000..113c3a17de0a
--- /dev/null
+++ b/offapi/com/sun/star/table/XAutoFormattable.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * 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_table_XAutoFormattable_idl__
+#define __com_sun_star_table_XAutoFormattable_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** provides a method to apply TableAutoFormats to a cell range.
+ */
+published interface XAutoFormattable: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** applies an AutoFormat to the cell range of the current context.
+
+ @param aName
+ is the name of the AutoFormat to apply.
+
+ @throws <type scope="com::sun::star::lang">IllegalArgumentException</type>
+ if the specified AutoFormat does not exist.
+ */
+ void autoFormat( [in] string aName )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/XCell.idl b/offapi/com/sun/star/table/XCell.idl
new file mode 100644
index 000000000000..7bc0fdffcafa
--- /dev/null
+++ b/offapi/com/sun/star/table/XCell.idl
@@ -0,0 +1,116 @@
+/*************************************************************************
+ *
+ * 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_table_XCell_idl__
+#define __com_sun_star_table_XCell_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellContentType_idl__
+#include <com/sun/star/table/CellContentType.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** provides methods to access the contents of a cell in a table.
+
+ @see com::sun::star::table::Cell
+ */
+published interface XCell: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the formula string of a cell.
+
+ <p>Even if the cell does not contain a formula, an assignment of
+ this attribute's value to another cell's formula attribute would
+ create the same cell content. This is because this attribute contains
+ the original text value of a string cell. The value of a
+ <em>value cell</em> will be formatted using the number format's
+ default format or the formula string, including "=", of a formula
+ cell.</p>
+ */
+ string getFormula();
+
+ //-------------------------------------------------------------------------
+
+ /** sets a formula into the cell.
+
+ <p>When assigned, the string will be interpreted and a value, text
+ or formula cell is created, depending on the text and the number
+ format.</p>
+ */
+ void setFormula( [in] string aFormula );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the floating point value of the cell.
+
+ <p>For a <em>value cell</em> the value is returnd, for a
+ <em>string cell</em> zero is returned and for a <em>formula cell</em>
+ the result value of a formula is returned.</p>
+ */
+ double getValue();
+
+ //-------------------------------------------------------------------------
+
+ /** sets a floating point value into the cell.
+
+ <p>After a call to this method the type of the cell is
+ <member>CellContentType::VALUE</member>.</p>
+ */
+ void setValue( [in] double nValue );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the type of the cell.
+ */
+ com::sun::star::table::CellContentType getType();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the error value of the cell.
+
+ <P>If the cell does not contain a formula, the error is always
+ zero.</p>
+ */
+ long getError();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/XCellCursor.idl b/offapi/com/sun/star/table/XCellCursor.idl
new file mode 100644
index 000000000000..e2b1a195ed98
--- /dev/null
+++ b/offapi/com/sun/star/table/XCellCursor.idl
@@ -0,0 +1,100 @@
+/*************************************************************************
+ *
+ * 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_table_XCellCursor_idl__
+#define __com_sun_star_table_XCellCursor_idl__
+
+#ifndef __com_sun_star_table_XCellRange_idl__
+#include <com/sun/star/table/XCellRange.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** provides methods to control the position of a cell cursor.
+
+ @see com::sun::star::table::CellCursor
+ */
+published interface XCellCursor: com::sun::star::table::XCellRange
+{
+ //-------------------------------------------------------------------------
+
+ /** points the cursor to a single cell which is the beginning of a
+ contiguous series of (filled) cells.
+ */
+ void gotoStart();
+
+ //-------------------------------------------------------------------------
+
+ /** points the cursor to a single cell which is the end of a contiguous
+ series of (filled) cells.
+ */
+ void gotoEnd();
+
+ //-------------------------------------------------------------------------
+
+ /** points the cursor to the next unprotected cell.
+
+ <p>If the sheet is not protected, this is the next cell to the
+ right.</p>
+ */
+ void gotoNext();
+
+ //-------------------------------------------------------------------------
+
+ /** points the cursor to the previous unprotected cell.
+
+ <p>If the sheet is not protected, this is the next cell to the
+ left.</p>
+ */
+ void gotoPrevious();
+
+ //-------------------------------------------------------------------------
+
+ /** moves the origin of the cursor relative to the current position.
+
+ @param nColumnOffset
+ is the count of columns to move. A negative value moves the
+ cursor to the left.
+
+ @param nRowOffset
+ is the count of rows to move. A negative value moves the
+ cursor to the top.
+ */
+ void gotoOffset( [in] long nColumnOffset, [in] long nRowOffset );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/XCellRange.idl b/offapi/com/sun/star/table/XCellRange.idl
new file mode 100644
index 000000000000..433d1173865f
--- /dev/null
+++ b/offapi/com/sun/star/table/XCellRange.idl
@@ -0,0 +1,135 @@
+/*************************************************************************
+ *
+ * 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_table_XCellRange_idl__
+#define __com_sun_star_table_XCellRange_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__
+#include <com/sun/star/lang/IndexOutOfBoundsException.idl>
+#endif
+
+#ifndef __com_sun_star_table_XCell_idl__
+#include <com/sun/star/table/XCell.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** provides access to the cells or to sub-ranges of a cell range.
+
+ @see com::sun::star::table::CellRange
+ */
+published interface XCellRange: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** Returns a single cell within the range.
+
+ @param nColumn
+ is the column index of the cell inside the range.
+
+ @param nRow
+ is the row index of the cell inside the range.
+
+ @returns
+ the specified cell.
+
+ @throws <type scope="com::sun::star::lang">IndexOutOfBoundsException</type>
+ if an index is outside the dimensions of this range.
+
+ @see com::sun::star::table::Cell
+ */
+ com::sun::star::table::XCell getCellByPosition(
+ [in] long nColumn,
+ [in] long nRow )
+ raises( com::sun::star::lang::IndexOutOfBoundsException );
+
+ //-------------------------------------------------------------------------
+
+ /** Returns a sub-range of cells within the range.
+
+ @param nLeft
+ is the column index of the first cell inside the range.
+
+ @param nTop
+ is the row index of the first cell inside the range.
+
+ @param nRight
+ is the column index of the last cell inside the range.
+
+ @param nBottom
+ is the row index of the last cell inside the range.
+
+ @returns
+ the specified cell range.
+
+ @throws <type scope="com::sun::star::lang">IndexOutOfBoundsException</type>
+ if an index is outside the dimensions of this range.
+
+ @see com::sun::star::table::CellRange
+ */
+ com::sun::star::table::XCellRange getCellRangeByPosition(
+ [in] long nLeft,
+ [in] long nTop,
+ [in] long nRight,
+ [in] long nBottom )
+ raises( com::sun::star::lang::IndexOutOfBoundsException );
+
+ //-------------------------------------------------------------------------
+
+ /** Returns a sub-range of cells within the range.
+
+ <p>The sub-range is specified by its name. The format of the range
+ name is dependent of the context of the table. In spreadsheets valid
+ names may be "A1:C5" or "$B$2" or even defined names for cell ranges
+ such as "MySpecialCell".</p>
+
+ @param aRange
+ the name of the sub-range.
+
+ @returns
+ the specified cell range.
+
+ @see com::sun::star::table::CellRange
+ */
+ com::sun::star::table::XCellRange getCellRangeByName( [in] string aRange );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/XColumnRowRange.idl b/offapi/com/sun/star/table/XColumnRowRange.idl
new file mode 100644
index 000000000000..b72e583495d5
--- /dev/null
+++ b/offapi/com/sun/star/table/XColumnRowRange.idl
@@ -0,0 +1,79 @@
+/*************************************************************************
+ *
+ * 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_table_XColumnRowRange_idl__
+#define __com_sun_star_table_XColumnRowRange_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_XTableColumns_idl__
+#include <com/sun/star/table/XTableColumns.idl>
+#endif
+
+#ifndef __com_sun_star_table_XTableRows_idl__
+#include <com/sun/star/table/XTableRows.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** provides methods to access the collections of columns and rows
+ of a cell range.
+
+ @see com::sun::star::table::CellRange
+ */
+published interface XColumnRowRange: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of columns in the range.
+
+ @see com::sun::star::table::TableColumns
+ */
+ com::sun::star::table::XTableColumns getColumns();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of rows in the range.
+
+ @see com::sun::star::table::TableRows
+ */
+ com::sun::star::table::XTableRows getRows();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/XMergeableCell.idl b/offapi/com/sun/star/table/XMergeableCell.idl
new file mode 100644
index 000000000000..6f1158f4a80f
--- /dev/null
+++ b/offapi/com/sun/star/table/XMergeableCell.idl
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ * 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_table_XMergeableCell_idl__
+#define __com_sun_star_table_XMergeableCell_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_XCell_idl__
+#include <com/sun/star/table/XCell.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** provides methods to access information about a cell that is mergeable with
+ other sells.
+
+ @see com::sun::star::table::Cell
+ */
+interface XMergeableCell: com::sun::star::table::XCell
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the number of columns this cell spans.
+ */
+ long getRowSpan();
+
+ //-------------------------------------------------------------------------
+
+ /** returns the number of rows this cell spans.
+ */
+ long getColumnSpan();
+
+ //-------------------------------------------------------------------------
+
+ /** returns <TRUE/> if this cell is merged with another cell.
+ */
+ boolean isMerged();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/XMergeableCellRange.idl b/offapi/com/sun/star/table/XMergeableCellRange.idl
new file mode 100644
index 000000000000..51bf1cbc1a74
--- /dev/null
+++ b/offapi/com/sun/star/table/XMergeableCellRange.idl
@@ -0,0 +1,97 @@
+/*************************************************************************
+ *
+ * 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_table_XMergeableCellRange_idl__
+#define __com_sun_star_table_XMergeableCellRange_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+#ifndef __com_sun_star_lang_NoSupportException_idl__
+#include <com/sun/star/lang/NoSupportException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** represents a range of cells that can possibly be merged or unmerged.
+ */
+interface XMergeableCellRange : com::sun::star::uno::XInterface
+{
+ /** merges the area specified by this range.
+
+ @throws <type scope="com::sun::star::lang">NoSupportException</type>
+ if a merge is not possible for this range. You can use
+ <method>isMergeable()</method> to check if a merge is possible.
+ */
+ void merge() raises( ::com::sun::star::lang::NoSupportException );
+
+ //-------------------------------------------------------------------------
+
+ /** splits the cells in this range.
+ This will be done by inserting rows and columns if needed or unmerging
+ cells taht are already splitted.
+
+ @param Columns
+ this is the number of columns that will be added to each cell. Zero
+ means no new columns
+
+ @param Rows
+ this is the number of rows that will be added to each cell. Zero
+ means no new rows
+
+ @throws <type scope="com::sun::star::lang">IllegalArgumentException</type>
+ if at least one of the parameters is less than zero.
+
+ @throws <type scope="com::sun::star::lang">NoSupportException</type>
+ if a split is not possible for this range.
+ */
+ void split( [in] long Columns, [in] long Rows )
+ raises( ::com::sun::star::lang::NoSupportException,
+ ::com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ <TRUE/> if all cells from this range can be merged to one
+ or <FALSE/> otherwise.
+ */
+ boolean isMergeable();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/table/XTable.idl b/offapi/com/sun/star/table/XTable.idl
new file mode 100644
index 000000000000..51e33324a797
--- /dev/null
+++ b/offapi/com/sun/star/table/XTable.idl
@@ -0,0 +1,147 @@
+/*************************************************************************
+ *
+ * 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_table_XTable_idl__
+#define __com_sun_star_table_XTable_idl__
+
+#ifndef __com_sun_star_lang_XComponent_idl__
+#include <com/sun/star/lang/XComponent.idl>
+#endif
+
+#ifndef __com_sun_star_table_XCellRange_idl__
+#include <com/sun/star/table/XCellRange.idl>
+#endif
+
+#ifndef __com_sun_star_table_XColumnRowRange_idl__
+#include <com/sun/star/table/XColumnRowRange.idl>
+#endif
+
+#ifndef __com_sun_star_table_XCellCursor_idl__
+#include <com/sun/star/table/XCellCursor.idl>
+#endif
+
+#ifndef __com_sun_star_util_XModifiable_idl__
+#include <com/sun/star/util/XModifiable.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XMultiPropertySet_idl__
+#include <com/sun/star/beans/XMultiPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XFastPropertySet_idl__
+#include <com/sun/star/beans/XFastPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/**
+*/
+interface XTable
+{
+
+ interface com::sun::star::lang::XComponent;
+
+ //-------------------------------------------------------------------------
+
+ interface com::sun::star::table::XCellRange;
+
+ //-------------------------------------------------------------------------
+
+ interface com::sun::star::table::XColumnRowRange;
+
+ //-------------------------------------------------------------------------
+
+ /** interface to make the modify state of the table accessible.
+ <p>Additionally, it makes it possible to register listener objects, which
+ get notification whenever the content of the table changes.
+ */
+ interface ::com::sun::star::util::XModifiable;
+
+ //-------------------------------------------------------------------------
+
+ /* interface ::com::sun::star::beans::XMultiPropertySet; */
+
+ //-------------------------------------------------------------------------
+
+ interface ::com::sun::star::beans::XPropertySet;
+
+ //-------------------------------------------------------------------------
+
+ interface ::com::sun::star::beans::XFastPropertySet;
+
+ //-------------------------------------------------------------------------
+
+ /** creates a cell cursor including the whole table
+
+ @see com::sun::star::table::CellCursor
+ */
+ com::sun::star::table::XCellCursor createCursor();
+
+ //-------------------------------------------------------------------------
+
+ /** creates a cell cursor to travel in the given range context.
+
+ @param aRange
+ the cell range for the cursor.
+
+ @throws <type scope="com::sun::star::lang">IllegalArgumentException</type>
+ if the given reference is empty or not a range from this table.
+
+ @see com::sun::star::table::CellCursor
+ */
+ com::sun::star::table::XCellCursor createCursorByRange( [in] com::sun::star::table::XCellRange Range )
+ raises ( com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+
+ /** stores the current row count of this table */
+ [readonly, attribute] long RowCount;
+
+ //-------------------------------------------------------------------------
+
+ /** stores the current column count of this table */
+ [readonly, attribute] long ColumnCount;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/XTableChart.idl b/offapi/com/sun/star/table/XTableChart.idl
new file mode 100644
index 000000000000..745efea0e973
--- /dev/null
+++ b/offapi/com/sun/star/table/XTableChart.idl
@@ -0,0 +1,100 @@
+/*************************************************************************
+ *
+ * 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_table_XTableChart_idl__
+#define __com_sun_star_table_XTableChart_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** provides access to the settings of a chart object in a table or
+ spreadsheet.
+
+ @see com::sun::star::table::TableChart
+ */
+published interface XTableChart: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns, whether the cells of the topmost row of the source data
+ are interpreted as column headers.
+ */
+ boolean getHasColumnHeaders();
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the cells of the topmost row of the source data
+ are interpreted as column headers.
+ */
+ void setHasColumnHeaders( [in] boolean bHasColumnHeaders );
+
+ //-------------------------------------------------------------------------
+
+ /** returns, whether the cells of the leftmost column of the source
+ data are interpreted as row headers.
+ */
+ boolean getHasRowHeaders();
+
+ //-------------------------------------------------------------------------
+
+ /** specifies whether the cells of the leftmost column of the source
+ data are interpreted as row headers.
+ */
+ void setHasRowHeaders( [in] boolean bHasRowHeaders );
+
+ //-------------------------------------------------------------------------
+
+ /** returns the cell ranges that contain the data for the chart.
+ */
+ sequence<com::sun::star::table::CellRangeAddress> getRanges();
+
+ //-------------------------------------------------------------------------
+
+ /** sets the cell ranges that contain the data for the chart.
+ */
+ void setRanges(
+ [in] sequence<com::sun::star::table::CellRangeAddress> aRanges );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/XTableCharts.idl b/offapi/com/sun/star/table/XTableCharts.idl
new file mode 100644
index 000000000000..6e7a5ea679bc
--- /dev/null
+++ b/offapi/com/sun/star/table/XTableCharts.idl
@@ -0,0 +1,102 @@
+/*************************************************************************
+ *
+ * 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_table_XTableCharts_idl__
+#define __com_sun_star_table_XTableCharts_idl__
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+#ifndef __com_sun_star_awt_Rectangle_idl__
+#include <com/sun/star/awt/Rectangle.idl>
+#endif
+
+#ifndef __com_sun_star_table_CellRangeAddress_idl__
+#include <com/sun/star/table/CellRangeAddress.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** provides methods to access charts via name and to insert and remove
+ charts.
+
+ @see com::sun::star::table::TableCharts
+ */
+published interface XTableCharts: com::sun::star::container::XNameAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** creates a chart and adds it to the collection.
+
+ @param aName
+ is the name of the chart. This name is used to reference the
+ chart in the collection.
+
+ @param aRect
+ contains the rectangular location of the chart within the table
+ (in 1/100th mm).
+
+ @param aRanges
+ all cell ranges containing the source data of the chart.
+
+ @param bColumnHeaders
+ if set to <TRUE/>, the topmost row of the source data will be
+ used to set labels for the category axis or the legend.
+
+ @param bRowHeaders
+ if set to <TRUE/>, the leftmost column of the source data will
+ be used to set labels for the category axis or the legend.
+ */
+ void addNewByName(
+ [in] string aName,
+ [in] com::sun::star::awt::Rectangle aRect,
+ [in] sequence<com::sun::star::table::CellRangeAddress> aRanges,
+ [in] boolean bColumnHeaders,
+ [in] boolean bRowHeaders );
+
+ //-------------------------------------------------------------------------
+
+ /** removes a chart from the collection.
+
+ @param aName
+ is the name of the chart to remove.
+ */
+ void removeByName( [in] string aName );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/XTableChartsSupplier.idl b/offapi/com/sun/star/table/XTableChartsSupplier.idl
new file mode 100644
index 000000000000..351557fbf1a9
--- /dev/null
+++ b/offapi/com/sun/star/table/XTableChartsSupplier.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * 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_table_XTableChartsSupplier_idl__
+#define __com_sun_star_table_XTableChartsSupplier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_table_XTableCharts_idl__
+#include <com/sun/star/table/XTableCharts.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** provides a method to access a collection of charts in a table or
+ spreadsheet.
+ */
+published interface XTableChartsSupplier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** returns the collection of charts.
+
+ @see com::sun::star::table::TableCharts
+ */
+ com::sun::star::table::XTableCharts getCharts();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/XTableColumns.idl b/offapi/com/sun/star/table/XTableColumns.idl
new file mode 100644
index 000000000000..a6a81b49f96a
--- /dev/null
+++ b/offapi/com/sun/star/table/XTableColumns.idl
@@ -0,0 +1,85 @@
+/*************************************************************************
+ *
+ * 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_table_XTableColumns_idl__
+#define __com_sun_star_table_XTableColumns_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** provides methods to access columns via index and to insert and remove
+ columns.
+
+ @see com::sun::star::table::TableColumns
+ */
+published interface XTableColumns: com::sun::star::container::XIndexAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** inserts new columns.
+
+ <p>When the index or combination of index and count is out
+ of bounds an exception will be thrown.</p>
+
+ @param nIndex
+ is the index the first inserted column will have.
+
+ @param nCount
+ is the number of columns to insert.
+ */
+ void insertByIndex( [in] long nIndex, [in] long nCount );
+
+ //-------------------------------------------------------------------------
+
+ /** deletes columns.
+
+ <p>When the index or combination of index and count is out
+ of bounds an exception will be thrown.</p>
+
+ @param nIndex
+ is the index of the first column to delete.
+
+ @param nCount
+ is the number of columns to delete.
+ */
+ void removeByIndex( [in] long nIndex, [in] long nCount );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/XTableRows.idl b/offapi/com/sun/star/table/XTableRows.idl
new file mode 100644
index 000000000000..bd05abfc2a8f
--- /dev/null
+++ b/offapi/com/sun/star/table/XTableRows.idl
@@ -0,0 +1,84 @@
+/*************************************************************************
+ *
+ * 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_table_XTableRows_idl__
+#define __com_sun_star_table_XTableRows_idl__
+
+#ifndef __com_sun_star_container_XIndexAccess_idl__
+#include <com/sun/star/container/XIndexAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module table {
+
+//=============================================================================
+
+/** provides methods to access rows via index and to insert and remove rows.
+
+ @see com::sun::star::table::TableRows
+ */
+published interface XTableRows: com::sun::star::container::XIndexAccess
+{
+ //-------------------------------------------------------------------------
+
+ /** inserts new rows.
+
+ <p>When the index or combination of index and count is out
+ of bounds an exception will be thrown.</p>
+
+ @param nIndex
+ is the index the first inserted row will have.
+
+ @param nCount
+ is the number of rows to insert.
+ */
+ void insertByIndex( [in] long nIndex, [in] long nCount );
+
+ //-------------------------------------------------------------------------
+
+ /** deletes rows.
+
+ <p>When the index or combination of index and count is out
+ of bounds an exception will be thrown.</p>
+
+ @param nIndex
+ is the index of the first row to delete.
+
+ @param nCount
+ is the number of rows to delete.
+ */
+ void removeByIndex( [in] long nIndex, [in] long nCount );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/table/makefile.mk b/offapi/com/sun/star/table/makefile.mk
new file mode 100644
index 000000000000..8b78c4b989b7
--- /dev/null
+++ b/offapi/com/sun/star/table/makefile.mk
@@ -0,0 +1,92 @@
+#*************************************************************************
+#
+# 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.
+#
+#*************************************************************************
+
+PRJ=..$/..$/..$/..
+
+PRJNAME=offapi
+
+TARGET=csstable
+PACKAGE=com$/sun$/star$/table
+
+# --- Settings -----------------------------------------------------
+.INCLUDE : $(PRJ)$/util$/makefile.pmk
+
+# ------------------------------------------------------------------------
+
+IDLFILES=\
+ AccessibleCellView.idl \
+ AccessibleTableView.idl \
+ BorderLine.idl\
+ Cell.idl\
+ CellAddress.idl\
+ CellContentType.idl\
+ CellCursor.idl\
+ CellHoriJustify.idl\
+ CellOrientation.idl\
+ CellProperties.idl\
+ CellRange.idl\
+ CellRangeAddress.idl\
+ CellVertJustify.idl\
+ ShadowFormat.idl\
+ ShadowLocation.idl\
+ TableBorder.idl\
+ TableBorderDistances.idl\
+ TableChart.idl\
+ TableCharts.idl\
+ TableChartsEnumeration.idl\
+ TableColumn.idl\
+ TableColumns.idl\
+ TableColumnsEnumeration.idl\
+ TableOrientation.idl\
+ TableRow.idl\
+ TableRows.idl\
+ TableRowsEnumeration.idl\
+ TableSortDescriptor.idl\
+ TableSortDescriptor2.idl\
+ TableSortField.idl\
+ TableSortFieldType.idl\
+ XAutoFormattable.idl\
+ XCell.idl\
+ XMergeableCell.idl\
+ XMergeableCellRange.idl\
+ XCellCursor.idl\
+ XCellRange.idl\
+ XColumnRowRange.idl\
+ XTableChart.idl\
+ XTableCharts.idl\
+ XTableChartsSupplier.idl\
+ XTableColumns.idl\
+ XTableRows.idl\
+ CellRangeListSource.idl\
+ CellValueBinding.idl\
+ ListPositionCellBinding.idl\
+ XTable.idl
+
+# ------------------------------------------------------------------
+
+.INCLUDE : target.mk
+.INCLUDE : $(PRJ)$/util$/target.pmk