merged tag ooo/OOO330_m14
[LibreOffice.git] / offapi / com / sun / star / chart2 / data / DataSequence.idl
blob671f27575c1aaf20a6a282c1c67d14159ad1efec
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>
41 module com
43 module sun
45 module star
47 module chart2
49 module data
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.
57 <p>With the optional
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>
62 service DataSequence
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
81 underlying data.
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
91 multiple objects.
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
96 one.</p>
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
119 be formatted with.
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
145 data provider.
147 [optional, property] sequence< long > HiddenValues;
150 } ; // data
151 } ; // chart2
152 } ; // com
153 } ; // sun
154 } ; // star
157 #endif