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_chart_ChartAxis_idl__ 28#define __com_sun_star_chart_ChartAxis_idl__ 29 30#ifndef __com_sun_star_drawing_LineProperties_idl__ 31#include <com/sun/star/drawing/LineProperties.idl> 32#endif 33 34#ifndef __com_sun_star_style_CharacterProperties_idl__ 35#include <com/sun/star/style/CharacterProperties.idl> 36#endif 37 38#ifndef __com_sun_star_beans_XPropertySet_idl__ 39#include <com/sun/star/beans/XPropertySet.idl> 40#endif 41 42#ifndef __com_sun_star_chart_ChartAxisArrangeOrderType_idl__ 43#include <com/sun/star/chart/ChartAxisArrangeOrderType.idl> 44#endif 45 46#ifndef __com_sun_star_chart_ChartAxisPosition_idl__ 47#include <com/sun/star/chart/ChartAxisPosition.idl> 48#endif 49 50#ifndef __com_sun_star_chart_ChartAxisLabelPosition_idl__ 51#include <com/sun/star/chart/ChartAxisLabelPosition.idl> 52#endif 53 54#ifndef __com_sun_star_chart_ChartAxisMarkPosition_idl__ 55#include <com/sun/star/chart/ChartAxisMarkPosition.idl> 56#endif 57 58#ifndef __com_sun_star_chart_ChartAxisType_idl__ 59#include <com/sun/star/chart/ChartAxisType.idl> 60#endif 61 62#ifndef __com_sun_star_chart_TimeIncrement_idl__ 63#include <com/sun/star/chart/TimeIncrement.idl> 64#endif 65 66#ifndef __com_sun_star_chart_XAxis_idl__ 67#include <com/sun/star/chart/XAxis.idl> 68#endif 69 70#ifndef _com_sun_star_xml_UserDefinedAttributeSupplier_idl_ 71#include <com/sun/star/xml/UserDefinedAttributeSupplier.idl> 72#endif 73 74//============================================================================= 75 76 module com { module sun { module star { module chart { 77 78//============================================================================= 79 80/** Specifies the axes in a diagram. 81 82 <p>Note: The text properties correlate to all axis description 83 elements, not to just a single text element.</p> 84 */ 85published service ChartAxis 86{ 87 /** set the properties for the entire axis line as well as for the 88 tick marks. 89 */ 90 service com::sun::star::drawing::LineProperties; 91 92 /** set the properties for all text labels of the axis 93 */ 94 service com::sun::star::style::CharacterProperties; 95 96 /** If a <type>ChartAxis</type> may be stored as XML element, this 97 service should be supported in order to preserve unparsed XML 98 attributes. 99 100 @since OOo 1.1.2 101 */ 102 [optional] service com::sun::star::xml::UserDefinedAttributeSupplier; 103 104 /** Access to the sub elements of an axis like title and grids. 105 @since OOo 3.4 106 */ 107 [optional] interface com::sun::star::chart::XAxis; 108 109 interface com::sun::star::beans::XPropertySet; 110 111 //------------------------------------------------------------------------- 112 /** Properties for scaling: 113 */ 114 115 //------------------------------------------------------------------------- 116 117 /** Contains the maximum value for the axis scale. 118 */ 119 [optional, property] double Max; 120 121 //------------------------------------------------------------------------- 122 123 /** Contains the minimum value for the axis scale. 124 */ 125 [optional, property] double Min; 126 127 //------------------------------------------------------------------------- 128 129 /** Contains the distance between the main tick marks. 130 */ 131 [optional, property] double StepMain; 132 133 //------------------------------------------------------------------------- 134 135 /** 136 Contains the number of help intervals within a main interval. E.g. a StepHelpCount of 5 divides 137 the main interval into 5 pieces and thus producces 4 help tick marks. 138 */ 139 [optional, property] long StepHelpCount; 140 141 //------------------------------------------------------------------------- 142 143 /** @deprecated 144 User property StepHelpCount instead 145 Contains the distance between the help tick marks. 146 */ 147 [optional, property] double StepHelp; 148 149 //------------------------------------------------------------------------- 150 151 /** The maximium value of the axis scale is calculated by the chart if 152 this property is <TRUE/>. 153 */ 154 [optional, property] boolean AutoMax; 155 156 //------------------------------------------------------------------------- 157 158 /** The minimum value of the axis scale is calculated by the chart if 159 this property is <TRUE/>. 160 */ 161 [optional, property] boolean AutoMin; 162 163 //------------------------------------------------------------------------- 164 165 /** The distance between the main tick marks is calculated by the chart 166 if this property is <TRUE/>. 167 */ 168 [optional, property] boolean AutoStepMain; 169 170 //------------------------------------------------------------------------- 171 172 /** The number of help intervals within a main interval is calculated by the 173 chart if this property is <TRUE/>. 174 */ 175 [optional, property] boolean AutoStepHelp; 176 177 178 //------------------------------------------------------------------------- 179 180 /** Determines if the axis is scaled logarithmically or 181 not (linear). 182 */ 183 [optional, property] boolean Logarithmic; 184 185 //------------------------------------------------------------------------- 186 187 /** determines which type of axis this is, e.g. a date-axis or a category-axis @see ChartAxisType 188 @since OOo 3.4 189 */ 190 [optional, property] long AxisType; 191 192 //------------------------------------------------------------------------- 193 194 /** if the current axis is a date-axis the intervals are choosen as given with TimeIncrement 195 @since OOo 3.4 196 */ 197 [optional, maybevoid, property] TimeIncrement TimeIncrement; 198 199 //------------------------------------------------------------------------- 200 201 /** Determines if the axis orientation is mathematical or reversed. 202 */ 203 [optional, property] boolean ReverseDirection; 204 205 //------------------------------------------------------------------------- 206 207 /** Determines where the axis crosses the other axis. 208 */ 209 [optional, property] com::sun::star::chart::ChartAxisPosition CrossoverPosition; 210 211 //------------------------------------------------------------------------- 212 213 /** Determines the scale value on the other axis when CrossoverPosition is set to VALUE. 214 */ 215 [optional, property] double CrossoverValue; 216 217 //------------------------------------------------------------------------- 218 219 /** Indicates the reference value where bars or areas have their grounding. 220 This property has only an effect when the used odf fileformat does not allow for 221 further axis posiioning or the axis is a secondary y-axis. 222 */ 223 [optional, property] double Origin; 224 225 //------------------------------------------------------------------------- 226 227 /** The origin is calculated by the chart if this property is <TRUE/>. 228 */ 229 [optional, property] boolean AutoOrigin; 230 231 //------------------------------------------------------------------------- 232 /** Properties for interval marks: 233 */ 234 235 //------------------------------------------------------------------------- 236 237 /** Determines the type of the marks.@see ChartAxisMarks 238 */ 239 [property] long Marks; 240 241 //------------------------------------------------------------------------- 242 243 /** Determines the type of the help marks.@see ChartAxisMarks 244 */ 245 [property] long HelpMarks; 246 //------------------------------------------------------------------------- 247 248 /** Determines where the interval marks are placed. 249 */ 250 [optional, property] com::sun::star::chart::ChartAxisMarkPosition MarkPosition; 251 252 //------------------------------------------------------------------------- 253 /** Properties for axes labels: 254 */ 255 256 //------------------------------------------------------------------------- 257 258 /** Determines whether to display text at the axis or not. 259 */ 260 [property] boolean DisplayLabels; 261 262 //------------------------------------------------------------------------- 263 264 /** Contains the type id for the number formatter of the axis. 265 266 @see com::sun::star::util::XNumberFormatter 267 */ 268 [property] long NumberFormat; 269 270 //------------------------------------------------------------------------- 271 272 /** determines whether to use the number format given by the 273 container application, e.g. a spreadsheet document, or from 274 the own property <member>NumberFormat</member>. 275 */ 276 [optional, property] boolean LinkNumberFormatToSource; 277 278 //------------------------------------------------------------------------- 279 280 /** Determines where the axis labels are placed. 281 */ 282 [optional, property] com::sun::star::chart::ChartAxisLabelPosition LabelPosition; 283 284 //------------------------------------------------------------------------- 285 286 /** Determines the rotation of the text elements 287 (axis description) in 100th degrees. 288 */ 289 [property] long TextRotation; 290 291 //------------------------------------------------------------------------- 292 293 /** The axis description may be arranged in a special order for a 294 better placement. 295 */ 296 [property] com::sun::star::chart::ChartAxisArrangeOrderType ArrangeOrder; 297 298 //------------------------------------------------------------------------- 299 300 /** Determines if long text is broken into multiple lines. 301 */ 302 [property] boolean TextBreak; 303 304 //------------------------------------------------------------------------- 305 306 /** Determines if certain labels are hidden, if they would otherwise overlap. 307 In this case, the value of this property must be set to <FALSE/>. 308 */ 309 [property] boolean TextCanOverlap; 310 311 //------------------------------------------------------------------------- 312 /** Properties related to bar charts: 313 */ 314 315 //------------------------------------------------------------------------- 316 317 /** Determines the overlap of the bars in a bar-type chart. 318 319 <p>The value is given in percent of the width of the bars. The 320 valid range is -100% to +100%. +100% means full overlap, -100% 321 indicates a distance of one bar between 2 neighboring bars.</p> 322 */ 323 [property] long Overlap; 324 325 //------------------------------------------------------------------------- 326 327 /** Specifies the width of the gaps between each set of data points 328 in a bar chart. 329 330 <p>The value is given in percent of the width of a bar; the 331 valid range is 0 to 600%.</p> 332 */ 333 [property] long GapWidth; 334}; 335 336//============================================================================= 337 338}; }; }; }; 339 340#endif 341