1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23#ifndef __com_sun_star_sheet_DatabaseRange_idl__
24#define __com_sun_star_sheet_DatabaseRange_idl__
25
26#ifndef __com_sun_star_sheet_XDatabaseRange_idl__
27#include <com/sun/star/sheet/XDatabaseRange.idl>
28#endif
29
30#ifndef __com_sun_star_sheet_XCellRangeReferrer_idl__
31#include <com/sun/star/sheet/XCellRangeReferrer.idl>
32#endif
33
34#ifndef __com_sun_star_beans_XPropertySet_idl__
35#include <com/sun/star/beans/XPropertySet.idl>
36#endif
37
38#ifndef __com_sun_star_container_XNamed_idl__
39#include <com/sun/star/container/XNamed.idl>
40#endif
41
42#ifndef __com_sun_star_util_XRefreshable_idl__
43#include <com/sun/star/util/XRefreshable.idl>
44#endif
45
46#ifndef __com_sun_star_table_CellRangeAddress_idl__
47#include <com/sun/star/table/CellRangeAddress.idl>
48#endif
49
50
51//=============================================================================
52
53 module com {  module sun {  module star {  module sheet {
54
55//=============================================================================
56
57/** represents a database range in a spreadsheet document.
58
59	<p>A database range is a name for a cell range that also stores filtering,
60	sorting, subtotal and data import settings and options.</p>
61
62	@see com::sun::star::sheet::DatabaseRanges
63 */
64published service DatabaseRange
65{
66	// DocMerge: empty anyway
67	interface com::sun::star::sheet::XDatabaseRange;
68
69	// DocMerge: empty anyway
70	interface com::sun::star::sheet::XCellRangeReferrer;
71
72	// DocMerge: empty anyway
73	interface com::sun::star::beans::XPropertySet;
74
75	// DocMerge: empty anyway
76	interface com::sun::star::container::XNamed;
77
78	[optional] interface com::sun::star::util::XRefreshable;
79
80	//-------------------------------------------------------------------------
81
82	// DocMerge from xml: property com::sun::star::sheet::DatabaseRange::MoveCells
83	/** if this property is set, columns or rows are inserted or deleted
84		when the size of the range is changed by an update operation.
85	 */
86	[property] boolean MoveCells;
87
88	//-------------------------------------------------------------------------
89
90	// DocMerge from xml: property com::sun::star::sheet::DatabaseRange::KeepFormats
91	/** if this property is set, cell formats are extended
92		when the size of the range is changed by an update operation.
93	 */
94	[property] boolean KeepFormats;
95
96	//-------------------------------------------------------------------------
97
98	// DocMerge from xml: property com::sun::star::sheet::DatabaseRange::StripData
99	/** if this property is set, the cell contents within the database
100		range are left out when the document is saved.
101	 */
102	[property] boolean StripData;
103
104	//-------------------------------------------------------------------------
105
106	/** specifies whether the AutoFilter is enabled or not.
107
108		@since OpenOffice 1.1.2
109	 */
110	[optional, property] boolean AutoFilter;
111
112	//-------------------------------------------------------------------------
113
114	/** specifies whether the filter criteria should be taken from a CellRange.
115
116		@since OpenOffice 1.1.2
117	 */
118	[optional, property] boolean UseFilterCriteriaSource;
119
120	//-------------------------------------------------------------------------
121
122	/** specifies the range where the filter can find the filter criterias.
123		<p>This is only used if <member>SheetFilterDescriptor::UseFilterCriteriaSource</member> is <TRUE/>.</p>
124
125		@since OpenOffice 1.1.2
126	 */
127	[optional, property] com::sun::star::table::CellRangeAddress FilterCriteriaSource;
128
129	//-------------------------------------------------------------------------
130
131	/** specifies the time between two refresh actions in seconds.
132
133		@since OpenOffice 2.0
134	 */
135	[optional, property] long RefreshPeriod;
136
137	//-------------------------------------------------------------------------
138
139	/** specifies whether the imported data is only a selection of the database.
140
141		@since OpenOffice 2.0
142	 */
143	[optional, property] boolean FromSelection;
144
145    //-------------------------------------------------------------------------
146
147    /** returns the index used to refer to this range in token arrays.
148
149        <p>A token describing a database range shall contain the op-code
150        obtained from the <const>FormulaMapGroupSpecialOffset::DB_AREA</const>
151        and this index as data part.</p>
152
153        @see com::sun::star::sheet::FormulaToken
154        @see com::sun::star::sheet::FormulaMapGroupSpecialOffset::DB_AREA
155
156        @since OpenOffice 3.0
157     */
158    [optional, readonly, property] long TokenIndex;
159};
160
161//=============================================================================
162
163}; }; }; };
164
165/*=============================================================================
166
167=============================================================================*/
168#endif
169