1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23#ifndef com_sun_star_chart2_data_DataSequence_idl 24#define com_sun_star_chart2_data_DataSequence_idl 25 26#include <com/sun/star/beans/XPropertySet.idl> 27#include <com/sun/star/container/XIndexReplace.idl> 28#include <com/sun/star/util/XCloneable.idl> 29#include <com/sun/star/util/XModifyBroadcaster.idl> 30 31#include <com/sun/star/chart2/data/XDataSequence.idl> 32#include <com/sun/star/chart2/data/XNumericalDataSequence.idl> 33#include <com/sun/star/chart2/data/XTextualDataSequence.idl> 34 35#include <com/sun/star/chart2/data/DataSequenceRole.idl> 36 37module com 38{ 39module sun 40{ 41module star 42{ 43module chart2 44{ 45module data 46{ 47 48/** describes a container for a sequence of values. 49 50 <p>With the interface <type>XDataSequence</type> it is possible to 51 transfer a complete sequence of values. 52 53 <p>With the optional 54 <type scope="com::sun::star::container">XIndexReplace</type> it is 55 possible to modify single elements, if the corresponding 56 <type>DataProvider</type> supports modification of its values.</p> 57 */ 58service DataSequence 59{ 60 /** provides read- and write-access to the underlying data. 61 */ 62 interface XDataSequence; 63 64 /** you may implement this interface to allow a fast access to 65 numerical data. With this interface you can get a 66 <atom>sequence</atom> of <atom>double</atom> values. 67 */ 68 [optional] interface XNumericalDataSequence; 69 70 /** you may implement this interface to allow a fast access to 71 textual data. With this interface you can get a 72 <atom>sequence</atom> of <atom>string</atom> values. 73 */ 74 [optional] interface XTextualDataSequence; 75 76 /** provides read- and write-access to single elements of the 77 underlying data. 78 79 <p>Only when supporting this interface, it is possible for 80 client applications to modify the content of the data that is 81 provided by this <type>DataSequence</type>.</p> 82 */ 83 [optional] interface ::com::sun::star::container::XIndexReplace; 84 85 /** Allows creating copies of data sequences. If this interface 86 is not supported, the same object will be shared if used by 87 multiple objects. 88 89 <p>Cloning is especially useful when using identifiers. A 90 cloned data sequence will get a new identifier while the 91 source range representation is identical to the original 92 one.</p> 93 94 <p>Note that, when this interface is not implemented the 95 releasing of identifiers at the <type>XDataProvider</type> 96 will not work properly, because more than one object may use 97 the same identifier. So, when an object releases the 98 identifier, another object might use a stale identifier.</p> 99 */ 100 [optional] interface ::com::sun::star::util::XCloneable; 101 102 /** is used to broadcast change events whenever the content (data) 103 or the range representations change. 104 */ 105 interface com::sun::star::util::XModifyBroadcaster; 106 107 /** the property interface by which the properties of all 108 supported services are exchanged 109 */ 110 interface ::com::sun::star::beans::XPropertySet; 111 112 // ---------------------------------------------------------------------- 113 114 /** The key (index) of the number format that this sequence should 115 be formatted with. 116 117 <p>The key identifies a number format in an 118 <type scope="com::sun::star::util">XNumberFormats</type> 119 object. This object can be retrieved by the 120 <type scope="com::sun::star::util">XNumberFormatsSupplier</type> 121 interface supported by 122 <type scope="com::sun::star::chart">ChartDocument</type>.</p> 123 124 @todo use proper number format instead of a transient key. 125 */ 126// [optional, property] long NumberFormatKey; 127 128 /** The role of the series inside a data series. This may be any 129 string. However some strings are predefined and should always 130 be used in the same way. 131 132 @see DataSequenceRole 133 */ 134 [property] DataSequenceRole Role; 135 136 /** If set to false <FALSE/>, values from hidden cells are not returned. 137 */ 138 [optional, property] boolean IncludeHiddenCells; 139 140 /** a sequence of indexes that identify values that are hidden in the underlying 141 data provider. 142 */ 143 [optional, property] sequence< long > HiddenValues; 144}; 145 146} ; // data 147} ; // chart2 148} ; // com 149} ; // sun 150} ; // star 151 152 153#endif 154