1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
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.
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).
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.
26 ************************************************************************/
28 #ifndef __com_sun_star_sheet_XExternalSheetCache_idl__
29 #define __com_sun_star_sheet_XExternalSheetCache_idl__
31 #include
<com
/sun
/star
/lang
/IllegalArgumentException.idl
>
33 module com
{ module sun
{ module star
{ module sheet
{
35 /** Primary interface for the <type scope="com::sun::star::sheet">ExternalSheetCache</type> service.
37 @see com::sun::star::sheet::ExternalSheetCache
41 interface XExternalSheetCache
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.
47 @param nRow row position (0-based)
48 @param nColumn column position (0-based)
49 @param aValue cell value to be cached
51 void setCellValue
( [in] long nColumn
, [in] long nRow
, [in] any aValue
)
52 raises
(com
::sun
::star
::lang
::IllegalArgumentException
);
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>.
57 @return any cached cell value
59 any getCellValue
( [in] long nColumn
, [in] long nRow
)
60 raises
(com
::sun
::star
::lang
::IllegalArgumentException
);
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.
65 @return sequence<long> list of all row numbers with cached cell(s)
67 sequence
< long > getAllRows
();
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.
73 @return sequence<long> list of all columns numbers with cached cell values
75 sequence
< long > getAllColumns
( [in] long nRow
)
76 raises
(com
::sun
::star
::lang
::IllegalArgumentException
);
78 //-------------------------------------------------------------------------
80 /** Index corresponding to this instance of an external sheet cache for
81 usage in formula tokens.
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.
87 <p>Each external sheet cache has a unique index value inside the
88 <type>ExternalDocLink</type> instance.</p>
91 @see ExternalReference
93 [attribute
, readonly] long TokenIndex
;