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_DataSeries_idl 28#define com_sun_star_chart2_DataSeries_idl 29 30#include <com/sun/star/beans/PropertySet.idl> 31#include <com/sun/star/container/XIndexContainer.idl> 32#include <com/sun/star/container/XContainer.idl> 33#include <com/sun/star/style/XStyle.idl> 34 35//#include <com/sun/star/chart2/ChartTypeSupplier.idl> 36#include <com/sun/star/chart2/CoordinateSystemSupplier.idl> 37#include <com/sun/star/chart2/data/XDataSink.idl> 38#include <com/sun/star/chart2/data/XDataSource.idl> 39#include <com/sun/star/chart2/data/XDataSeries.idl> 40#include <com/sun/star/chart2/XRegressionCurveContainer.idl> 41 42module com 43{ 44module sun 45{ 46module star 47{ 48module chart2 49{ 50 51 // NOTES 52 53 // kombinierbarkeit - data series combiner (andere Komponente?) 54 // 55 // coordinatesystem-supplier 56 // 57 // chart-typ ? property string rendererServiceName 58 59 60/** reflects the model data of the object that has all the information 61 for a <type>DataRenderer</type> to create a visible data series in 62 a chart. 63 64 <p>It combines one or more <type>DataSequence</type>s which are 65 interpreted by evaluating their role-string.</p> 66 67 @see DataSequenceRole 68 */ 69service DataSeries 70{ 71 /** allows to connect a CoordinateSystem to a DataSeries 72 */ 73// service CoordinateSystemSupplier; 74 75// service ChartTypeSupplier; 76 /** the property interface by which the properties of all 77 supported services are exchanged 78 */ 79 service ::com::sun::star::beans::PropertySet; 80 81 /** these properties serve as default for data points. 82 83 <p>So, an attribute for a data point comes from one point in 84 the following hierarchy:</p> 85 86 <ul> 87 <li>default value of data series</li> 88 <li>value from style of data series (if a style was set)</li> 89 <li>value from hard attribute of data series (set with setPropertyValue)</li> 90 <li>value from style of data point (if a style was set)</li> 91 <li>value from hard attribute of data point (set with setPropertyValue)</li> 92 </ul> 93 */ 94 service DataPointProperties; 95 96 // ---------------------------------------------------------------------- 97 98 /** allows setting a coordinate-system 99 */ 100 interface XDataSeries; 101 102 /** allows attaching data sequences to a series. 103 */ 104 interface data::XDataSink; 105 106 /** allows querying the data that was set. 107 */ 108 interface data::XDataSource; 109 110 /** gives access to the data points contained in a data series. 111 112 <p>The objects returned by the 113 <type scope="com::sun::star::container">XIndexAccess</type> 114 are of type 115 <type scope="com::sun::star::beans">XPropertySet</type> 116 and support the service 117 <type>DataPoint</type>. 118 */ 119// interface ::com::sun::star::container::XIndexContainer; 120 121 /** establishes a broadcaster-listener mechanism for the 122 <type scope="com::sun::star::container">XIndexContainer</type> 123 to keep changes and the property 124 <member>DataSeries::AttributedDataPoints</member> in sync. 125 */ 126// interface ::com::sun::star::container::XContainer; 127 128 /** Holds regression curves (aka trend-lines) for a data series. 129 */ 130 [optional] interface XRegressionCurveContainer; 131 132 // ---------------------------------------------------------------------- 133 134 /** This service will be used to render this data series. 135 136 <p>This service name can be used to determine which DataSeries 137 are of the same type.</p> 138 139 <p>The result of the 140 <member>DataSeries::DataSequenceRoles</member> depends on the 141 renderer service set here.</p> 142 */ 143 // stored at the DataSeriesGroup now 144// [property] string DataRendererServiceName; 145 146 /** a sequence of indexes denoting which data points have set 147 properties that differ from the default. 148 149 <p>The default values are determined by the properties set at 150 the <member>DataPointProperties</member> of the data 151 series.</p> 152 153 <p>If the sequence is empty, that means that all data points 154 look alike. They are formatted using the propery values set 155 in the data series.</p> 156 157 <p>The indexes in this sequence match the indexes used by the 158 <type>XIndexContainer</type>.</p> 159 160 <p>This property is especially useful for large data series 161 with only some formatted data points, because you do not have 162 to iterate over all elements.</p> 163 */ 164 [readonly, optional, property] sequence< long > AttributedDataPoints; 165 166 /** indicates wether this series should be stacked with respect to the previous series. 167 */ 168 [property] StackingDirection StackingDirection; 169 170 /** If <TRUE/>, the data points of this series get different 171 colors by default, like in a pie chart. 172 */ 173 [optional, property] boolean VaryColorsByPoint; 174 175 /** This property describes wether the series should be shown at 176 the main value axis or at the secondary value axis. Having 177 this property not set or setting it to 0 means that this data 178 series will be scaled at the primary y-axis ( of the 179 coordinate system in which this series is hosted ). 180 181 <p>Setting this property to 1 means that this series should be 182 scaled at the secondary y-axis. If there is no secondary axis 183 the main axis should be used for scaling instead.</p> 184 185 <p>If you want to scale a series at a different x or z axis 186 you need to create an additional coordinate system and host 187 this series there.</p> 188 */ 189 [optional, property] long AttachedAxisIndex; 190}; 191 192} ; // chart2 193} ; // com 194} ; // sun 195} ; // star 196 197 198#endif 199