1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: DataSequence.idl,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef com_sun_star_chart2_data_DataSequence_idl
31 #define com_sun_star_chart2_data_DataSequence_idl
33 #include
<com
/sun
/star
/beans
/XPropertySet.idl
>
34 #include
<com
/sun
/star
/container
/XIndexReplace.idl
>
35 #include
<com
/sun
/star
/util
/XCloneable.idl
>
36 #include
<com
/sun
/star
/util
/XModifyBroadcaster.idl
>
38 #include
<com
/sun
/star
/chart2
/data
/XDataSequence.idl
>
39 #include
<com
/sun
/star
/chart2
/data
/XNumericalDataSequence.idl
>
40 #include
<com
/sun
/star
/chart2
/data
/XTextualDataSequence.idl
>
42 #include
<com
/sun
/star
/chart2
/data
/DataSequenceRole.idl
>
55 /** describes a container for a sequence of values.
57 <p>With the interface <type>XDataSequence</type> it is possible to
58 transfer a complete sequence of values.
61 <type scope="com::sun::star::container">XIndexReplace</type> it is
62 possible to modify single elements, if the corresponding
63 <type>DataProvider</type> supports modification of its values.</p>
67 /** provides read- and write-access to the underlying data.
69 interface XDataSequence
;
71 /** you may implement this interface to allow a fast acces to
72 numerical data. With this interface you can get a
73 <atom>sequence</atom> of <atom>double</atom> values.
75 [optional] interface XNumericalDataSequence
;
77 /** you may implement this interface to allow a fast acces to
78 textual data. With this interface you can get a
79 <atom>sequence</atom> of <atom>string</atom> values.
81 [optional] interface XTextualDataSequence
;
83 /** provides read- and write-access to single elements of the
86 <p>Only when supporting this interface, it is possible for
87 client applications to modify the content of the data that is
88 provided by this <type>DataSequence</type>.</p>
90 [optional] interface ::com
::sun
::star
::container
::XIndexReplace
;
92 /** Allows creating copies of data sequences. If this interface
93 is not supported, the same object will be shared if used by
96 <p>Cloning is especially useful when using identifiers. A
97 cloned data sequence will get a new identifier while the
98 source range representation is identical to the original
101 <p>Note that, when this interface is not implemented the
102 releasing of identifiers at the <type>XDataProvider</type>
103 will not work properly, because more than one object may use
104 the same identifier. So, when an object releases the
105 identifier, another object might use a stale identifier.</p>
107 [optional] interface ::com
::sun
::star
::util
::XCloneable
;
109 /** is used to broadcast change events whenever the content (data)
110 or the range representations change.
112 interface com
::sun
::star
::util
::XModifyBroadcaster
;
114 /** the property interface by which the properties of all
115 supported services are exchanged
117 interface ::com
::sun
::star
::beans
::XPropertySet
;
119 // ----------------------------------------------------------------------
121 /** The key (index) of the number format that this sequence should
124 <p>The key identifies a number format in an
125 <type scope="com::sun::star::util">XNumberFormats</type>
126 object. This object can be retrieved by the
127 <type scope="com::sun::star::util">XNumberFormatsSupplier</type>
128 interface supported by
129 <type scope="com::sun::star::chart">ChartDocument</type>.</p>
131 @todo use proper number format instead of a transient key.
133 // [optional, property] long NumberFormatKey;
135 /** The role of the series inside a data series. This may be any
136 string. However some strings are predefined and should always
137 be used in the same way.
139 @see DataSequenceRole
141 [property
] DataSequenceRole Role
;
143 /** If set to false <FALSE/>, values from hidden cells are not returned.
145 [optional, property
] boolean IncludeHiddenCells
;
147 /** a sequence of indexes that identify values that are hidden in the underlying
150 [optional, property
] sequence
< long > HiddenValues
;