xref: /trunk/main/offapi/com/sun/star/table/XTable.idl (revision cdf0e10c)
1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27
28#ifndef __com_sun_star_table_XTable_idl__
29#define __com_sun_star_table_XTable_idl__
30
31#ifndef __com_sun_star_lang_XComponent_idl__
32#include <com/sun/star/lang/XComponent.idl>
33#endif
34
35#ifndef __com_sun_star_table_XCellRange_idl__
36#include <com/sun/star/table/XCellRange.idl>
37#endif
38
39#ifndef __com_sun_star_table_XColumnRowRange_idl__
40#include <com/sun/star/table/XColumnRowRange.idl>
41#endif
42
43#ifndef __com_sun_star_table_XCellCursor_idl__
44#include <com/sun/star/table/XCellCursor.idl>
45#endif
46
47#ifndef __com_sun_star_util_XModifiable_idl__
48#include <com/sun/star/util/XModifiable.idl>
49#endif
50
51#ifndef __com_sun_star_beans_XMultiPropertySet_idl__
52#include <com/sun/star/beans/XMultiPropertySet.idl>
53#endif
54
55#ifndef __com_sun_star_beans_XPropertySet_idl__
56#include <com/sun/star/beans/XPropertySet.idl>
57#endif
58
59#ifndef __com_sun_star_beans_XFastPropertySet_idl__
60#include <com/sun/star/beans/XFastPropertySet.idl>
61#endif
62
63#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
64#include <com/sun/star/lang/IllegalArgumentException.idl>
65#endif
66
67//=============================================================================
68
69module com {  module sun {  module star {  module table {
70
71//=============================================================================
72
73/**
74*/
75interface XTable
76{
77
78	interface com::sun::star::lang::XComponent;
79
80	//-------------------------------------------------------------------------
81
82	interface com::sun::star::table::XCellRange;
83
84	//-------------------------------------------------------------------------
85
86	interface com::sun::star::table::XColumnRowRange;
87
88	//-------------------------------------------------------------------------
89
90	/** interface to make the modify state of the table accessible.
91		<p>Additionally, it makes it possible to register listener objects, which
92		get notification whenever the content of the table changes.
93	*/
94	interface ::com::sun::star::util::XModifiable;
95
96	//-------------------------------------------------------------------------
97
98	/* interface ::com::sun::star::beans::XMultiPropertySet; */
99
100	//-------------------------------------------------------------------------
101
102	interface ::com::sun::star::beans::XPropertySet;
103
104	//-------------------------------------------------------------------------
105
106	interface ::com::sun::star::beans::XFastPropertySet;
107
108	//-------------------------------------------------------------------------
109
110	/** creates a cell cursor including the whole table
111
112		@see com::sun::star::table::CellCursor
113	 */
114	com::sun::star::table::XCellCursor createCursor();
115
116	//-------------------------------------------------------------------------
117
118	/** creates a cell cursor to travel in the given range context.
119
120		@param aRange
121			the cell range for the cursor.
122
123		@throws <type scope="com::sun::star::lang">IllegalArgumentException</type>
124			if the given reference is empty or not a range from this table.
125
126		@see com::sun::star::table::CellCursor
127	 */
128	com::sun::star::table::XCellCursor createCursorByRange( [in] com::sun::star::table::XCellRange Range )
129		raises ( com::sun::star::lang::IllegalArgumentException );
130
131	//-------------------------------------------------------------------------
132
133	/** stores the current row count of this table */
134	[readonly, attribute] long RowCount;
135
136	//-------------------------------------------------------------------------
137
138	/** stores the current column count of this table */
139	[readonly, attribute] long ColumnCount;
140};
141
142//=============================================================================
143
144}; }; }; };
145
146#endif
147
148