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_NamedRange_idl__
29#define __com_sun_star_sheet_NamedRange_idl__
30
31#ifndef __com_sun_star_sheet_XNamedRange_idl__
32#include <com/sun/star/sheet/XNamedRange.idl>
33#endif
34
35#ifndef __com_sun_star_container_XNamed_idl__
36#include <com/sun/star/container/XNamed.idl>
37#endif
38
39#ifndef __com_sun_star_sheet_XCellRangeReferrer_idl__
40#include <com/sun/star/sheet/XCellRangeReferrer.idl>
41#endif
42
43//=============================================================================
44
45module com {  module sun {  module star {  module sheet {
46
47//=============================================================================
48
49/** represents a named range in a spreadsheet document.
50
51	<p>In fact a named range is a named formula expression. A cell range
52	address is one possible content of a named range.</p>
53
54	@see com::sun::star::sheet::NamedRanges
55 */
56published service NamedRange
57{
58	//-------------------------------------------------------------------------
59
60	/** provides access to the settings of the named range.
61	 */
62	interface com::sun::star::sheet::XNamedRange;
63
64	//-------------------------------------------------------------------------
65
66	/** provides access to the cell range object referred by this named range.
67
68		<p>This works only, if the named range contains a single cell range
69		address.</p>
70	 */
71	interface com::sun::star::sheet::XCellRangeReferrer;
72
73    //-------------------------------------------------------------------------
74
75    /** returns the index used to refer to this name in token arrays.
76
77        <p>A token describing a defined name shall contain the op-code obtained
78        from the <const>FormulaMapGroupSpecialOffset::NAME</const> offset and
79        this index as data part.</p>
80
81        @see com::sun::star::sheet::FormulaToken
82        @see com::sun::star::sheet::FormulaMapGroupSpecialOffset::NAME
83
84        @since OOo 3.0
85     */
86    [optional, readonly, property] long TokenIndex;
87
88    //-------------------------------------------------------------------------
89
90    /** Determines if this defined name represents a shared formula.
91
92        <p>This special property shall not be used externally. It is used by
93        import and export filters for compatibility with spreadsheet
94        documents containing shared formulas. Shared formulas are shared
95        by several cells to save memory and to decrease file size.</p>
96
97        <p>A defined name with this property set will not appear in the user
98        interface of Calc, and its name will not appear in cell formulas. A
99        formula referring to this defined name will show the formula
100        definition contained in the name instead.</p>
101
102        @since OOo 3.0
103     */
104    [optional, property] boolean IsSharedFormula;
105};
106
107//=============================================================================
108
109}; }; }; };
110
111#endif
112
113