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_XMultipleOperation_idl__
25#define __com_sun_star_sheet_XMultipleOperation_idl__
26
27#ifndef __com_sun_star_uno_XInterface_idl__
28#include <com/sun/star/uno/XInterface.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_TableOperationMode_idl__
36#include <com/sun/star/sheet/TableOperationMode.idl>
37#endif
38
39#ifndef __com_sun_star_table_CellAddress_idl__
40#include <com/sun/star/table/CellAddress.idl>
41#endif
42
43//=============================================================================
44
45module com {  module sun {  module star {  module sheet {
46
47//=============================================================================
48
49/** provides a method to apply a Multiple Operations Table to the
50	cell range.
51 */
52published interface XMultipleOperation: com::sun::star::uno::XInterface
53{
54	//-------------------------------------------------------------------------
55
56	/** creates a table of formulas (a "Multiple Operations Table").
57
58		<p>The specified formulas are repeated, with references to the
59		specified cells replaced by references to values in the first
60		column and/or row of the range.</p>
61
62		@param aFormulaRange
63			the range that contains formula cells (modes
64			<const>TableOperationMode::ROW</const> or
65			<const>TableOperationMode::COLUMN</const>) or a single formula
66			cell (mode <const>TableOperationMode::BOTH</const>).
67
68		@param nMode
69			specifies the calculation mode to fill the cells.
70
71		@param aColumnCell
72			contains the address of the cell that is referenced by
73			formulas in a row (mode <const>TableOperationMode::ROW</const>)
74			or by the formula cell used for two value series (mode
75			<const>TableOperationMode::BOTH</const>). This parameter is not
76			used if mode is <const>TableOperationMode::COLUMN</const>.
77
78		@param aRowCell
79			contains the address of the cell that is referenced by
80			formulas in a column (mode <const>TableOperationMode::COLUMN</const>)
81			or by the formula cell used for two value series (mode
82			<const>TableOperationMode::BOTH</const>). This parameter is not
83			used if mode is <const>TableOperationMode::ROW</const>.
84	 */
85	void setTableOperation(
86			[in] com::sun::star::table::CellRangeAddress aFormulaRange,
87			[in] com::sun::star::sheet::TableOperationMode nMode,
88			[in] com::sun::star::table::CellAddress aColumnCell,
89			[in] com::sun::star::table::CellAddress aRowCell );
90
91};
92
93//=============================================================================
94
95}; }; }; };
96
97#endif
98
99