1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 28#ifndef __com_sun_star_sheet_XExternalSheetCache_idl__ 29#define __com_sun_star_sheet_XExternalSheetCache_idl__ 30 31#include <com/sun/star/lang/IllegalArgumentException.idl> 32 33module com { module sun { module star { module sheet { 34 35/** Primary interface for the <type scope="com::sun::star::sheet">ExternalSheetCache</type> service. 36 37 @see com::sun::star::sheet::ExternalSheetCache 38 39 @since OOo 3.1 40 */ 41interface XExternalSheetCache 42{ 43 /** It sets a cached value for a specified cell position. The value is expected 44 to be either of type <type>string</type> or of type <type>double</type>. No 45 other data types are supported. 46 47 @param nRow row position (0-based) 48 @param nColumn column position (0-based) 49 @param aValue cell value to be cached 50 */ 51 void setCellValue( [in] long nColumn, [in] long nRow, [in] any aValue ) 52 raises (com::sun::star::lang::IllegalArgumentException); 53 54 /** It retrieves a cached value from a specified cell position. The cached 55 value can be either <type>string</type> or <type>double</type>. 56 57 @return any cached cell value 58 */ 59 any getCellValue( [in] long nColumn, [in] long nRow ) 60 raises (com::sun::star::lang::IllegalArgumentException); 61 62 /** It returns a list of all row numbers where a cached cell or cells exist. 63 The row numbers are sorted in ascending order. 64 65 @return sequence<long> list of all row numbers with cached cell(s) 66 */ 67 sequence< long > getAllRows(); 68 69 /** Given a row number, this method returns a list of all columns numbers 70 that store cached cell values in that row. The column numbers are 71 sorted in ascending order. 72 73 @return sequence<long> list of all columns numbers with cached cell values 74 */ 75 sequence< long > getAllColumns( [in] long nRow ) 76 raises (com::sun::star::lang::IllegalArgumentException); 77 78 //------------------------------------------------------------------------- 79 80 /** Index corresponding to this instance of an external sheet cache for 81 usage in formula tokens. 82 83 <p>This index to the external sheet cache is expected in the 84 <member>SingleReference::Sheet</member> member if it is part of an 85 external reference token. 86 87 <p>Each external sheet cache has a unique index value inside the 88 <type>ExternalDocLink</type> instance.</p> 89 90 @see FormulaToken 91 @see ExternalReference 92 */ 93 [attribute, readonly] long TokenIndex; 94 95}; 96 97}; }; }; }; 98 99#endif 100