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_XSpreadsheets_idl__
25#define __com_sun_star_sheet_XSpreadsheets_idl__
26
27#ifndef __com_sun_star_container_XNameContainer_idl__
28#include <com/sun/star/container/XNameContainer.idl>
29#endif
30
31//=============================================================================
32
33module com {  module sun {  module star {  module sheet {
34
35//=============================================================================
36
37/** provides methods to access the spreadsheets by name and to insert,
38	copy, remove and rearrange spreadsheets.
39
40	@see com::sun::star::sheet::Spreadsheets
41 */
42published interface XSpreadsheets: com::sun::star::container::XNameContainer
43{
44	//-------------------------------------------------------------------------
45
46	/** inserts a new sheet into the collection.
47
48		@param aName
49			the name of the new spreadsheet.
50		@param nPosition
51			the index of the new spreadsheet in the collection.
52	 */
53	void insertNewByName( [in] string aName, [in] short nPosition );
54
55	//-------------------------------------------------------------------------
56
57	/** moves a sheet within the collection.
58
59		@param aName
60			the name of the spreadsheet to move.
61		@param nDestination
62			the new index of the spreadsheet in the collection.
63	 */
64	void moveByName( [in] string aName, [in] short nDestination );
65
66	//-------------------------------------------------------------------------
67
68	/** copies a sheet within the collection.
69
70		@param aName
71			the name of the spreadsheet to copy.
72		@param aCopy
73			the name of the copy of the spreadsheet.
74		@param nDestination
75			the index of the copy in the collection.
76	 */
77	void copyByName(
78			[in] string aName,
79			[in] string aCopy,
80			[in] short nDestination );
81
82};
83
84//=============================================================================
85
86}; }; }; };
87
88#endif
89
90