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
24#ifndef __com_sun_star_sheet_XDataPilotDescriptor_idl__
25#define __com_sun_star_sheet_XDataPilotDescriptor_idl__
26
27#ifndef __com_sun_star_container_XNamed_idl__
28#include <com/sun/star/container/XNamed.idl>
29#endif
30
31#ifndef __com_sun_star_table_CellRangeAddress_idl__
32#include <com/sun/star/table/CellRangeAddress.idl>
33#endif
34
35#ifndef __com_sun_star_sheet_XSheetFilterDescriptor_idl__
36#include <com/sun/star/sheet/XSheetFilterDescriptor.idl>
37#endif
38
39#ifndef __com_sun_star_container_XIndexAccess_idl__
40#include <com/sun/star/container/XIndexAccess.idl>
41#endif
42
43//=============================================================================
44
45module com {  module sun {  module star {  module sheet {
46
47//=============================================================================
48
49/** provides access to the layout settings of a data pilot table.
50
51	<p>This interface extends the interface
52	<type scope="com::sun::star::container">XNamed</type> which provides
53    access to the name of the data pilot table used e.g. in collections.</p>
54
55	@see com::sun::star::sheet::DataPilotDescriptor
56	@see com::sun::star::sheet::DataPilotTable
57 */
58published interface XDataPilotDescriptor: com::sun::star::container::XNamed
59{
60	//-------------------------------------------------------------------------
61
62	/** returns an additional string stored in the data pilot table.
63	 */
64	string getTag();
65
66	//-------------------------------------------------------------------------
67
68	/** sets an additional string stored in the data pilot table.
69	 */
70	void setTag( [in] string aTag );
71
72	//-------------------------------------------------------------------------
73
74	/** returns the cell range containing the data for the data pilot table.
75	 */
76	com::sun::star::table::CellRangeAddress getSourceRange();
77
78	//-------------------------------------------------------------------------
79
80	/** sets the cell range containing the data for the data pilot table.
81	 */
82	void setSourceRange(
83			[in] com::sun::star::table::CellRangeAddress aSourceRange );
84
85	//-------------------------------------------------------------------------
86
87	/** returns the filter descriptor specifying which data from the
88		source cell range are used for the data pilot table.
89	 */
90	com::sun::star::sheet::XSheetFilterDescriptor getFilterDescriptor();
91
92	//-------------------------------------------------------------------------
93
94	/** returns the collection of all the data pilot fields.
95	 */
96	com::sun::star::container::XIndexAccess getDataPilotFields();
97
98	//-------------------------------------------------------------------------
99
100	/** returns the collection of the data pilot fields used as column fields.
101
102		@see com::sun::star::sheet::DataPilotFields
103	 */
104	com::sun::star::container::XIndexAccess getColumnFields();
105
106	//-------------------------------------------------------------------------
107
108	/** returns the collection of the data pilot fields used as row fields.
109
110		@see com::sun::star::sheet::DataPilotFields
111	 */
112	com::sun::star::container::XIndexAccess getRowFields();
113
114	//-------------------------------------------------------------------------
115
116	/** returns the collection of the data pilot fields used as page fields.
117
118		@see com::sun::star::sheet::DataPilotFields
119	 */
120	com::sun::star::container::XIndexAccess getPageFields();
121
122	//-------------------------------------------------------------------------
123
124	/** returns the collection of the data pilot fields used as data fields.
125
126		@see com::sun::star::sheet::DataPilotFields
127	 */
128	com::sun::star::container::XIndexAccess getDataFields();
129
130	//-------------------------------------------------------------------------
131
132	/** returns the collection of the data pilot fields not used as
133		column, row, page, or data fields.
134
135		@see com::sun::star::sheet::DataPilotFields
136	 */
137	com::sun::star::container::XIndexAccess getHiddenFields();
138
139};
140
141//=============================================================================
142
143}; }; }; };
144
145#endif
146
147