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_XCellRangeMovement_idl__ 25#define __com_sun_star_sheet_XCellRangeMovement_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_CellInsertMode_idl__ 36#include <com/sun/star/sheet/CellInsertMode.idl> 37#endif 38 39#ifndef __com_sun_star_sheet_CellDeleteMode_idl__ 40#include <com/sun/star/sheet/CellDeleteMode.idl> 41#endif 42 43#ifndef __com_sun_star_table_CellAddress_idl__ 44#include <com/sun/star/table/CellAddress.idl> 45#endif 46 47//============================================================================= 48 49module com { module sun { module star { module sheet { 50 51//============================================================================= 52 53/** provides methods for moving ranges of cells in a sheet. 54 */ 55published interface XCellRangeMovement: com::sun::star::uno::XInterface 56{ 57 //------------------------------------------------------------------------- 58 59 /** inserts cells, moving other cells down or right. 60 61 <p>Non-empty cells cannot be moved off the sheet.</p> 62 63 @param aRange 64 the cell range in which empty cells will be inserted. 65 66 @param nMode 67 describes how to move existing cells. 68 */ 69 void insertCells( 70 [in] com::sun::star::table::CellRangeAddress aRange, 71 [in] com::sun::star::sheet::CellInsertMode nMode ); 72 73 //------------------------------------------------------------------------- 74 75 /** deletes cells, moving other cells up or left. 76 77 @param aRange 78 the cell range to remove. 79 80 @param nMode 81 describes how to move following cells. 82 */ 83 void removeRange( 84 [in] com::sun::star::table::CellRangeAddress aRange, 85 [in] com::sun::star::sheet::CellDeleteMode nMode ); 86 87 //------------------------------------------------------------------------- 88 89 /** moves a cell range to another position in the document. 90 91 <p>After copying the contents of the cell range, all cells 92 will be cleared.</p> 93 94 @param aDestination 95 the address of the top left cell of the destination range. 96 97 @param aSource 98 the cell range which will be copied. 99 */ 100 void moveRange( 101 [in] com::sun::star::table::CellAddress aDestination, 102 [in] com::sun::star::table::CellRangeAddress aSource ); 103 104 //------------------------------------------------------------------------- 105 106 /** copies a cell range to another position in the document. 107 108 <p>The source cell range keeps unchanged.</p> 109 110 @param aDestination 111 the address of the top left cell of the destination range. 112 113 @param aSource 114 the cell range which will be copied. 115 */ 116 void copyRange( 117 [in] com::sun::star::table::CellAddress aDestination, 118 [in] com::sun::star::table::CellRangeAddress aSource ); 119 120}; 121 122//============================================================================= 123 124}; }; }; }; 125 126#endif 127 128