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 __ooo_vba_excel_XWorksheet_idl__
24#define __ooo_vba_excel_XWorksheet_idl__
25
26#ifndef __com_sun_star_uno_XInterface_idl__
27#include <com/sun/star/uno/XInterface.idl>
28#endif
29
30#ifndef __ooo_vba_XHelperInterface_idl__
31#include <ooo/vba/XHelperInterface.idl>
32#endif
33
34#ifndef __com_sun_star_script_XInvocation_idl__
35#include <com/sun/star/script/XInvocation.idl>
36#endif
37
38#ifndef __com_sun_star_container_XNamed_idl__
39#include <com/sun/star/container/XNamed.idl>
40#endif
41//=============================================================================
42
43module ooo {  module vba {  module excel {
44
45//=============================================================================
46
47interface XComments;
48interface XRange;
49interface XOutline;
50interface XPageSetup;
51interface XHPageBreaks;
52interface XVPageBreaks;
53interface XWorksheet
54{
55	interface ::ooo::vba::XHelperInterface;
56	interface ::com::sun::star::script::XInvocation;
57	interface ::com::sun::star::container::XNamed;
58
59	[attribute] long Visible;
60	[attribute, readonly] long StandardHeight;
61	[attribute, readonly] long StandardWidth;
62	[attribute, readonly] boolean ProtectionMode;
63	[attribute, readonly] boolean ProtectContents;
64	[attribute, readonly] boolean ProtectDrawingObjects;
65	[attribute, readonly] boolean ProtectScenarios;
66	[attribute, readonly] XRange UsedRange;
67	[attribute, readonly] XWorksheet Next;
68	[attribute, readonly] XWorksheet Previous;
69	[attribute, readonly] string CodeName;
70 	[attribute, readonly] short Index;
71 	[attribute] long EnableSelection;
72	[attribute] boolean AutoFilterMode;
73
74	void Activate();
75	void Calculate( );
76	void Select();
77	void Move([in] any Before,[in] any After );
78	void Copy([in] any Before,[in] any After );
79	void Paste([in] any Destination,[in] any Link);
80	void Delete( );
81	void Protect([in] any Password,[in] any DrawingObjects ,[in] any Contents,[in] any Scenarios,[in] any UserInterfaceOnly);
82	void Unprotect([in] any Password );
83	void CheckSpelling([in] any CustomDictionary,[in] any IgnoreUppercase, [in] any AlwaysSuggest,[in] any SpellingLang );
84	void ShowDataForm();
85
86	XRange Range([in] any Cell1, [in] any Cell2 );
87	any ChartObjects([in] any Index);
88	any PivotTables([in] any Index);
89	any Comments([in] any Index);
90	XOutline Outline();
91	XPageSetup PageSetup();
92	any HPageBreaks([in] any Index);
93	any VPageBreaks([in] any Index);
94	any OLEObjects([in] any Index);
95	any Shapes([in] any Index);
96
97    /*  The following form control related symbols do not refer to ActiveX form
98        controls embedded in the sheet, but to the old-style drawing controls
99        of Excel. This is an Excel-only feature. */
100    any Buttons( [in] any Index );
101    any CheckBoxes( [in] any Index );
102    any DropDowns( [in] any Index );
103    any GroupBoxes( [in] any Index );
104    any Labels( [in] any Index );
105    any ListBoxes( [in] any Index );
106    any OptionButtons( [in] any Index );
107    any ScrollBars( [in] any Index );
108    any Spinners( [in] any Index );
109
110// FIXME: should prolly inherit from Range somehow...
111	XRange Cells( [in] any RowIndex, [in] any ColumnIndex );
112	XRange Rows( [in] any Index );
113	XRange Columns( [in] any Index );
114    any Hyperlinks( [in] any Index );
115	any Names( [in] any Index );
116
117	any Evaluate( [in] string Name );
118
119	void setEnableCalculation( [in] boolean EnableCalculation ) raises(com::sun::star::script::BasicErrorException);
120	boolean getEnableCalculation() raises(com::sun::star::script::BasicErrorException);
121	void PrintOut( [in] any From, [in] any To, [in] any Copies, [in] any Preview, [in] any ActivePrinter, [in] any PrintToFile, [in] any Collate, [in] any PrToFileName, [in] any IgnorePrintAreas );
122};
123
124//=============================================================================
125
126}; }; };
127
128#endif
129