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#ifndef com_sun_star_chart2_data_DataSequence_idl 28#define com_sun_star_chart2_data_DataSequence_idl 29 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> 34 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> 38 39#include <com/sun/star/chart2/data/DataSequenceRole.idl> 40 41module com 42{ 43module sun 44{ 45module star 46{ 47module chart2 48{ 49module data 50{ 51 52/** describes a container for a sequence of values. 53 54 <p>With the interface <type>XDataSequence</type> it is possible to 55 transfer a complete sequence of values. 56 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> 61 */ 62service DataSequence 63{ 64 /** provides read- and write-access to the underlying data. 65 */ 66 interface XDataSequence; 67 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. 71 */ 72 [optional] interface XNumericalDataSequence; 73 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. 77 */ 78 [optional] interface XTextualDataSequence; 79 80 /** provides read- and write-access to single elements of the 81 underlying data. 82 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> 86 */ 87 [optional] interface ::com::sun::star::container::XIndexReplace; 88 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. 92 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> 97 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> 103 */ 104 [optional] interface ::com::sun::star::util::XCloneable; 105 106 /** is used to broadcast change events whenever the content (data) 107 or the range representations change. 108 */ 109 interface com::sun::star::util::XModifyBroadcaster; 110 111 /** the property interface by which the properties of all 112 supported services are exchanged 113 */ 114 interface ::com::sun::star::beans::XPropertySet; 115 116 // ---------------------------------------------------------------------- 117 118 /** The key (index) of the number format that this sequence should 119 be formatted with. 120 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> 127 128 @todo use proper number format instead of a transient key. 129 */ 130// [optional, property] long NumberFormatKey; 131 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. 135 136 @see DataSequenceRole 137 */ 138 [property] DataSequenceRole Role; 139 140 /** If set to false <FALSE/>, values from hidden cells are not returned. 141 */ 142 [optional, property] boolean IncludeHiddenCells; 143 144 /** a sequence of indexes that identify values that are hidden in the underlying 145 data provider. 146 */ 147 [optional, property] sequence< long > HiddenValues; 148}; 149 150} ; // data 151} ; // chart2 152} ; // com 153} ; // sun 154} ; // star 155 156 157#endif 158