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_XSheetCellRanges_idl__
25#define __com_sun_star_sheet_XSheetCellRanges_idl__
26
27#ifndef __com_sun_star_container_XIndexAccess_idl__
28#include <com/sun/star/container/XIndexAccess.idl>
29#endif
30
31#ifndef __com_sun_star_container_XEnumerationAccess_idl__
32#include <com/sun/star/container/XEnumerationAccess.idl>
33#endif
34
35#ifndef __com_sun_star_table_CellRangeAddress_idl__
36#include <com/sun/star/table/CellRangeAddress.idl>
37#endif
38
39//=============================================================================
40
41module com {  module sun {  module star {  module sheet {
42
43//=============================================================================
44
45/** provides methods to access cell ranges in a collection via index and
46	other helper methods.
47
48	@see com::sun::star::sheet::SheetCellRanges
49 */
50published interface XSheetCellRanges: com::sun::star::container::XIndexAccess
51{
52	//-------------------------------------------------------------------------
53
54	/** returns the collection of all used cells.
55
56		@see com::sun::star::sheet::Cells
57	 */
58	com::sun::star::container::XEnumerationAccess getCells();
59
60	//-------------------------------------------------------------------------
61
62	/** creates a string with addresses of all contained cell ranges.
63
64		<p>The range addresses are separated with semicolons. For instance
65		the string could have the form "Sheet1.A1:C3;Sheet2.D5:F8".</p>
66
67		@returns
68			a string containing the addresses of all cell ranges.
69	 */
70	string getRangeAddressesAsString();
71
72	//-------------------------------------------------------------------------
73
74	/** creates a sequence with addresses of all contained cell ranges.
75
76		@returns
77			a sequence with the addresses of all cell ranges.
78	 */
79	sequence<com::sun::star::table::CellRangeAddress> getRangeAddresses();
80
81};
82
83//=============================================================================
84
85}; }; }; };
86
87#endif
88
89