diff options
Diffstat (limited to 'offapi/com/sun/star/table')
48 files changed, 4633 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..08e42c48796e --- /dev/null +++ b/offapi/com/sun/star/table/AccessibleCellView.idl @@ -0,0 +1,160 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: AccessibleCellView.idl,v $ + * $Revision: 1.8 $ + * + * 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..e2307daeff13 --- /dev/null +++ b/offapi/com/sun/star/table/AccessibleTableView.idl @@ -0,0 +1,164 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: AccessibleTableView.idl,v $ + * $Revision: 1.8 $ + * + * 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..b8ac73f5ffe6 --- /dev/null +++ b/offapi/com/sun/star/table/BorderLine.idl @@ -0,0 +1,85 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: BorderLine.idl,v $ + * $Revision: 1.8 $ + * + * 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..9689ea95ddc2 --- /dev/null +++ b/offapi/com/sun/star/table/Cell.idl @@ -0,0 +1,81 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: Cell.idl,v $ + * $Revision: 1.7 $ + * + * 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..07306de31194 --- /dev/null +++ b/offapi/com/sun/star/table/CellAddress.idl @@ -0,0 +1,69 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: CellAddress.idl,v $ + * $Revision: 1.7 $ + * + * 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..331bde1a53af --- /dev/null +++ b/offapi/com/sun/star/table/CellContentType.idl @@ -0,0 +1,75 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: CellContentType.idl,v $ + * $Revision: 1.7 $ + * + * 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..b2dc6e953d10 --- /dev/null +++ b/offapi/com/sun/star/table/CellCursor.idl @@ -0,0 +1,64 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: CellCursor.idl,v $ + * $Revision: 1.7 $ + * + * 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..94b36c4d5e5b --- /dev/null +++ b/offapi/com/sun/star/table/CellHoriJustify.idl @@ -0,0 +1,87 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: CellHoriJustify.idl,v $ + * $Revision: 1.7 $ + * + * 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..25f134f71165 --- /dev/null +++ b/offapi/com/sun/star/table/CellOrientation.idl @@ -0,0 +1,76 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: CellOrientation.idl,v $ + * $Revision: 1.7 $ + * + * 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..6e7fc0e502eb --- /dev/null +++ b/offapi/com/sun/star/table/CellProperties.idl @@ -0,0 +1,268 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: CellProperties.idl,v $ + * $Revision: 1.13 $ + * + * 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..35a7ea16b81d --- /dev/null +++ b/offapi/com/sun/star/table/CellRange.idl @@ -0,0 +1,71 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: CellRange.idl,v $ + * $Revision: 1.7 $ + * + * 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..403b57e1db19 --- /dev/null +++ b/offapi/com/sun/star/table/CellRangeAddress.idl @@ -0,0 +1,81 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: CellRangeAddress.idl,v $ + * $Revision: 1.8 $ + * + * 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..373e80793e1a --- /dev/null +++ b/offapi/com/sun/star/table/CellRangeListSource.idl @@ -0,0 +1,96 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: CellRangeListSource.idl,v $ + * $Revision: 1.4 $ + * + * 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..0777960c24d4 --- /dev/null +++ b/offapi/com/sun/star/table/CellValueBinding.idl @@ -0,0 +1,109 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: CellValueBinding.idl,v $ + * $Revision: 1.4 $ + * + * 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..c1e5b7a86bb2 --- /dev/null +++ b/offapi/com/sun/star/table/CellVertJustify.idl @@ -0,0 +1,75 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: CellVertJustify.idl,v $ + * $Revision: 1.7 $ + * + * 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..7101cfd82cfa --- /dev/null +++ b/offapi/com/sun/star/table/ListPositionCellBinding.idl @@ -0,0 +1,64 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: ListPositionCellBinding.idl,v $ + * $Revision: 1.4 $ + * + * 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..b1fc02803c57 --- /dev/null +++ b/offapi/com/sun/star/table/ShadowFormat.idl @@ -0,0 +1,83 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: ShadowFormat.idl,v $ + * $Revision: 1.9 $ + * + * 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..3230242a35d7 --- /dev/null +++ b/offapi/com/sun/star/table/ShadowLocation.idl @@ -0,0 +1,81 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: ShadowLocation.idl,v $ + * $Revision: 1.7 $ + * + * 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..dbdc47d2d186 --- /dev/null +++ b/offapi/com/sun/star/table/TableBorder.idl @@ -0,0 +1,157 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableBorder.idl,v $ + * $Revision: 1.8 $ + * + * 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..00ef075ae021 --- /dev/null +++ b/offapi/com/sun/star/table/TableBorderDistances.idl @@ -0,0 +1,112 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableBorderDistances.idl,v $ + * $Revision: 1.4 $ + * + * 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..dc9a552f574b --- /dev/null +++ b/offapi/com/sun/star/table/TableChart.idl @@ -0,0 +1,86 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableChart.idl,v $ + * $Revision: 1.7 $ + * + * 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..99b7a04f72a2 --- /dev/null +++ b/offapi/com/sun/star/table/TableCharts.idl @@ -0,0 +1,85 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableCharts.idl,v $ + * $Revision: 1.7 $ + * + * 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..4f19dd718380 --- /dev/null +++ b/offapi/com/sun/star/table/TableChartsEnumeration.idl @@ -0,0 +1,65 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableChartsEnumeration.idl,v $ + * $Revision: 1.5 $ + * + * 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..cde289614c76 --- /dev/null +++ b/offapi/com/sun/star/table/TableColumn.idl @@ -0,0 +1,115 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableColumn.idl,v $ + * $Revision: 1.9 $ + * + * 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..3a663284dce5 --- /dev/null +++ b/offapi/com/sun/star/table/TableColumns.idl @@ -0,0 +1,88 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableColumns.idl,v $ + * $Revision: 1.8 $ + * + * 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..a10aa525e95e --- /dev/null +++ b/offapi/com/sun/star/table/TableColumnsEnumeration.idl @@ -0,0 +1,65 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableColumnsEnumeration.idl,v $ + * $Revision: 1.5 $ + * + * 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..e1badc90bd93 --- /dev/null +++ b/offapi/com/sun/star/table/TableOrientation.idl @@ -0,0 +1,63 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableOrientation.idl,v $ + * $Revision: 1.7 $ + * + * 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..b5916f0e7bfc --- /dev/null +++ b/offapi/com/sun/star/table/TableRow.idl @@ -0,0 +1,103 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableRow.idl,v $ + * $Revision: 1.10 $ + * + * 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..77d0af6823c6 --- /dev/null +++ b/offapi/com/sun/star/table/TableRows.idl @@ -0,0 +1,75 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableRows.idl,v $ + * $Revision: 1.8 $ + * + * 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..b3a8739213fb --- /dev/null +++ b/offapi/com/sun/star/table/TableRowsEnumeration.idl @@ -0,0 +1,65 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableRowsEnumeration.idl,v $ + * $Revision: 1.5 $ + * + * 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..6a3a407aab82 --- /dev/null +++ b/offapi/com/sun/star/table/TableSortDescriptor.idl @@ -0,0 +1,107 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableSortDescriptor.idl,v $ + * $Revision: 1.11 $ + * + * 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..2fde4b34c0d4 --- /dev/null +++ b/offapi/com/sun/star/table/TableSortDescriptor2.idl @@ -0,0 +1,90 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableSortDescriptor2.idl,v $ + * $Revision: 1.7 $ + * + * 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..d88cb63eb0b0 --- /dev/null +++ b/offapi/com/sun/star/table/TableSortField.idl @@ -0,0 +1,110 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableSortField.idl,v $ + * $Revision: 1.8 $ + * + * 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..d83e0be6374c --- /dev/null +++ b/offapi/com/sun/star/table/TableSortFieldType.idl @@ -0,0 +1,68 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: TableSortFieldType.idl,v $ + * $Revision: 1.7 $ + * + * 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..1491f0a0e9ed --- /dev/null +++ b/offapi/com/sun/star/table/XAutoFormattable.idl @@ -0,0 +1,72 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XAutoFormattable.idl,v $ + * $Revision: 1.8 $ + * + * 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..7d7dfd5956c4 --- /dev/null +++ b/offapi/com/sun/star/table/XCell.idl @@ -0,0 +1,119 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XCell.idl,v $ + * $Revision: 1.10 $ + * + * 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..0b0cbd57199f --- /dev/null +++ b/offapi/com/sun/star/table/XCellCursor.idl @@ -0,0 +1,103 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XCellCursor.idl,v $ + * $Revision: 1.9 $ + * + * 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..1e12c4e34af9 --- /dev/null +++ b/offapi/com/sun/star/table/XCellRange.idl @@ -0,0 +1,138 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XCellRange.idl,v $ + * $Revision: 1.10 $ + * + * 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..1bbca9fe9f00 --- /dev/null +++ b/offapi/com/sun/star/table/XColumnRowRange.idl @@ -0,0 +1,82 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XColumnRowRange.idl,v $ + * $Revision: 1.9 $ + * + * 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..81984dbdb70b --- /dev/null +++ b/offapi/com/sun/star/table/XMergeableCell.idl @@ -0,0 +1,79 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XMergeableCell.idl,v $ + * $Revision: 1.3 $ + * + * 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..41583ab712b0 --- /dev/null +++ b/offapi/com/sun/star/table/XMergeableCellRange.idl @@ -0,0 +1,100 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XMergeableCellRange.idl,v $ + * $Revision: 1.3 $ + * + * 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..e26bb5277676 --- /dev/null +++ b/offapi/com/sun/star/table/XTable.idl @@ -0,0 +1,150 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XTable.idl,v $ + * $Revision: 1.3 $ + * + * 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..7ca7757d59b4 --- /dev/null +++ b/offapi/com/sun/star/table/XTableChart.idl @@ -0,0 +1,103 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XTableChart.idl,v $ + * $Revision: 1.8 $ + * + * 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..4255f870f2f4 --- /dev/null +++ b/offapi/com/sun/star/table/XTableCharts.idl @@ -0,0 +1,105 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XTableCharts.idl,v $ + * $Revision: 1.8 $ + * + * 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..08975f6aea9b --- /dev/null +++ b/offapi/com/sun/star/table/XTableChartsSupplier.idl @@ -0,0 +1,68 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XTableChartsSupplier.idl,v $ + * $Revision: 1.8 $ + * + * 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..459dba779267 --- /dev/null +++ b/offapi/com/sun/star/table/XTableColumns.idl @@ -0,0 +1,88 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XTableColumns.idl,v $ + * $Revision: 1.10 $ + * + * 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..4edb68facc14 --- /dev/null +++ b/offapi/com/sun/star/table/XTableRows.idl @@ -0,0 +1,87 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: XTableRows.idl,v $ + * $Revision: 1.10 $ + * + * 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..9d9d93e2208b --- /dev/null +++ b/offapi/com/sun/star/table/makefile.mk @@ -0,0 +1,96 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2008 by Sun Microsystems, Inc. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# $RCSfile: makefile.mk,v $ +# +# $Revision: 1.16 $ +# +# 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 |