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 ************************************************************************/
27 #ifndef com_sun_star_chart2_data_DataSequence_idl
28 #define com_sun_star_chart2_data_DataSequence_idl
30 #include
<com
/sun
/star
/beans
/XPropertySet.idl
>
31 #include
<com
/sun
/star
/container
/XIndexReplace.idl
>
32 #include
<com
/sun
/star
/util
/XCloneable.idl
>
33 #include
<com
/sun
/star
/util
/XModifyBroadcaster.idl
>
35 #include
<com
/sun
/star
/chart2
/data
/XDataSequence.idl
>
36 #include
<com
/sun
/star
/chart2
/data
/XNumericalDataSequence.idl
>
37 #include
<com
/sun
/star
/chart2
/data
/XTextualDataSequence.idl
>
39 #include
<com
/sun
/star
/chart2
/data
/DataSequenceRole.idl
>
52 /** describes a container for a sequence of values.
54 <p>With the interface <type>XDataSequence</type> it is possible to
55 transfer a complete sequence of values.
58 <type scope="com::sun::star::container">XIndexReplace</type> it is
59 possible to modify single elements, if the corresponding
60 <type>DataProvider</type> supports modification of its values.</p>
64 /** provides read- and write-access to the underlying data.
66 interface XDataSequence
;
68 /** you may implement this interface to allow a fast acces to
69 numerical data. With this interface you can get a
70 <atom>sequence</atom> of <atom>double</atom> values.
72 [optional] interface XNumericalDataSequence
;
74 /** you may implement this interface to allow a fast acces to
75 textual data. With this interface you can get a
76 <atom>sequence</atom> of <atom>string</atom> values.
78 [optional] interface XTextualDataSequence
;
80 /** provides read- and write-access to single elements of the
83 <p>Only when supporting this interface, it is possible for
84 client applications to modify the content of the data that is
85 provided by this <type>DataSequence</type>.</p>
87 [optional] interface ::com
::sun
::star
::container
::XIndexReplace
;
89 /** Allows creating copies of data sequences. If this interface
90 is not supported, the same object will be shared if used by
93 <p>Cloning is especially useful when using identifiers. A
94 cloned data sequence will get a new identifier while the
95 source range representation is identical to the original
98 <p>Note that, when this interface is not implemented the
99 releasing of identifiers at the <type>XDataProvider</type>
100 will not work properly, because more than one object may use
101 the same identifier. So, when an object releases the
102 identifier, another object might use a stale identifier.</p>
104 [optional] interface ::com
::sun
::star
::util
::XCloneable
;
106 /** is used to broadcast change events whenever the content (data)
107 or the range representations change.
109 interface com
::sun
::star
::util
::XModifyBroadcaster
;
111 /** the property interface by which the properties of all
112 supported services are exchanged
114 interface ::com
::sun
::star
::beans
::XPropertySet
;
116 // ----------------------------------------------------------------------
118 /** The key (index) of the number format that this sequence should
121 <p>The key identifies a number format in an
122 <type scope="com::sun::star::util">XNumberFormats</type>
123 object. This object can be retrieved by the
124 <type scope="com::sun::star::util">XNumberFormatsSupplier</type>
125 interface supported by
126 <type scope="com::sun::star::chart">ChartDocument</type>.</p>
128 @todo use proper number format instead of a transient key.
130 // [optional, property] long NumberFormatKey;
132 /** The role of the series inside a data series. This may be any
133 string. However some strings are predefined and should always
134 be used in the same way.
136 @see DataSequenceRole
138 [property
] DataSequenceRole Role
;
140 /** If set to false <FALSE/>, values from hidden cells are not returned.
142 [optional, property
] boolean IncludeHiddenCells
;
144 /** a sequence of indexes that identify values that are hidden in the underlying
147 [optional, property
] sequence
< long > HiddenValues
;