cid#1640468 Dereference after null check
[LibreOffice.git] / offapi / com / sun / star / chart2 / DataPointProperties.idl
blob7fe64e77ad9dd5b5c2a95a655194e94b62aa8400
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 module com
22 module sun
24 module star
26 module chart2
29 service DataPointProperties
31 /** to give access to the properties required by this service.
33 service ::com::sun::star::beans::PropertySet;
35 /** to give access to the fill properties
37 Note that there is access for some of them
38 through some alias.
40 @since LibreOffice 5.1
42 service ::com::sun::star::drawing::FillProperties;
45 /** points to a style that also supports this service (but not
46 this property) that is used as default, if the PropertyState
47 of a property is <code>DEFAULT_VALUE</code>.
49 // [optional, property] ::com::sun::star::style::XStyle Style;
51 // Common Properties
54 /** This is the main color of a data point.
56 <p>For charts with filled areas, like bar-charts, this should
57 map to the <code>FillColor</code> of the objects. For
58 line-charts this should map to the <code>LineColor</code>
59 property.</p>
61 @see com::sun::star::drawing::FillProperties
62 @see com::sun::star::drawing::LineProperties
64 [property] long Color;
66 /** This is the main transparency value of a data point.
68 <p>For charts with filled areas, like bar-charts, this should
69 map to the <code>FillTransparence</code> of the objects. For
70 line-charts this should map to the
71 <code>LineTransparence</code> property.</p>
73 @see com::sun::star::drawing::FillProperties
74 @see com::sun::star::drawing::LineProperties
76 [property] short Transparency;
79 // Fill Properties
81 /** This enumeration selects the style with which the area will be filled.
83 [property] ::com::sun::star::drawing::FillStyle FillStyle;
85 /** This describes the transparency of the fill area as a gradient.
87 [optional, property] ::com::sun::star::awt::Gradient TransparencyGradient;
88 [optional, property] ::com::sun::star::awt::Gradient Gradient;
89 [optional, property] ::com::sun::star::drawing::Hatch Hatch;
91 [property] string TransparencyGradientName;
92 [property] string GradientName;
93 [property] string HatchName;
94 [property] string FillBitmapName;
96 /** If `TRUE`, fills the background of a hatch with the color
97 given in the #Color property.
99 [property] boolean FillBackground;
101 /** Is used for borders around filled objects. See
102 <code>LineColor</code>.
104 @see com::sun::star::drawing::LineProperties
106 [property] long BorderColor;
107 /** Is used for borders around filled objects. See
108 <code>LineStyle</code>.
110 @see com::sun::star::drawing::LineProperties
112 [property] ::com::sun::star::drawing::LineStyle BorderStyle;
113 /** Is used for borders around filled objects. See
114 <code>LineWidth</code>.
116 @see com::sun::star::drawing::LineProperties
118 [property] long BorderWidth;
119 /** Is used for borders around filled objects. See
120 <code>LineDash</code>.
122 @see com::sun::star::drawing::LineProperties
124 [property] ::com::sun::star::drawing::LineDash BorderDash;
126 /** The name of a dash that can be found in the
127 com::sun::star::container::XNameContainer
128 "com.sun.star.drawing.LineDashTable", that can be created via
130 com::sun::star::uno::XMultiServiceFactory
131 of the ChartDocument.
133 [optional, property] string BorderDashName;
135 /** Is used for borders around filled objects. See
136 <code>LineTransparence</code>.
138 @see com::sun::star::drawing::LineProperties
140 [optional, property] short BorderTransparency;
143 // Line Properties
144 [property] ::com::sun::star::drawing::LineStyle LineStyle;
145 /** Is only used for line-chart types.
147 @see com::sun::star::drawing::LineProperties
149 [property] long LineWidth;
150 /** Is only used for line-chart types.
152 @see com::sun::star::drawing::LineProperties
154 [property] ::com::sun::star::drawing::LineDash LineDash;
156 /** The name of a dash that can be found in the
157 com::sun::star::container::XNameContainer
158 "com.sun.star.drawing.LineDashTable", that can be created via
160 com::sun::star::uno::XMultiServiceFactory
161 of the ChartDocument.
163 [optional, property] string LineDashName;
166 // bitmap properties /copied from drawing::FillProperties
168 /** This is the horizontal offset where the tile starts.
170 <p>It is given in percent in relation to the width of the bitmap.
172 [property] short FillBitmapOffsetX;
174 /** This is the vertical offset where the tile starts.
176 It is given in percent in relation to the width of the bitmap.
178 [property] short FillBitmapOffsetY;
180 /** Every second line of tiles is moved the given percent of the
181 width of the bitmap.
183 [property] short FillBitmapPositionOffsetX;
185 /** Every second row of tiles is moved the given percent of the
186 width of the bitmap.
188 [property] short FillBitmapPositionOffsetY;
190 /** The RectanglePoint specifies the position inside of the bitmap to
191 use as the top left position for rendering.
193 [property] com::sun::star::drawing::RectanglePoint FillBitmapRectanglePoint;
195 /** specifies if the size is given in percentage or
196 as an absolute value.
198 <p>If this is `TRUE`, the properties FillBitmapSizeX
199 and FillBitmapSizeY contain the size of the tile in percent
200 of the size of the original bitmap. If this
201 is `FALSE`, the size of the tile is specified
202 with 1/100th mm.
204 [property] boolean FillBitmapLogicalSize;
206 /** This is the width of the tile for filling.
208 <p>Depending on the property FillBitmapLogicalSize, this is
209 either relative or absolute.
211 [property] long FillBitmapSizeX;
213 /** This is the height of the tile for filling.
215 <p>Depending on the property FillBitmapLogicalSize, this
216 is either relative or absolute.
218 [property] long FillBitmapSizeY;
220 /** this enum selects how an area is filled with a single bitmap.
222 [property] com::sun::star::drawing::BitmapMode FillBitmapMode;
227 [optional, property] Symbol Symbol;
229 /** describes a value by which a data point is moved from its
230 default position in percent of the maximum allowed distance.
232 <p>This is especially useful for the explosion of pie-chart
233 segments.</p>
235 [optional, property] double Offset;
237 /** describes the geometry of a 3 dimensional data point.
238 Number is one of constant group DataPointGeometry3D.
239 <p>This is especially used for 3D bar-charts.</p>
240 <p>CUBOID==0 CYLINDER==1 CONE==2 PYRAMID==3 CUBOID==else</p>
242 [optional, property] long Geometry3D;
244 [property] DataPointLabel Label;
246 /** specifies a text with possible fields that is used as a data point label,
247 if set then Label property is ignored
249 @since LibreOffice 6.1
251 [optional, property] sequence<XDataPointCustomLabelField> CustomLabelFields;
253 /** specifies a string that is used to separate the parts of a data label (caption)
255 [optional, property] string LabelSeparator;
257 /** specifies if the text of a data label (caption) must be wrapped
259 @since LibreOffice 5.1
261 [optional, property] boolean TextWordWrap;
263 /** specifies a number format for the display of the value in the data label
265 [optional, property] long NumberFormat;
267 /** specifies a number format for the display of the percentage value in the data label
269 [optional, property] long PercentageNumberFormat;
271 /** specifies a relative position for the data label
273 @see ::com::sun::star::chart::DataLabelPlacement
275 [optional, property] long LabelPlacement;
277 /** The size of the page at the moment when the font size for
278 data labels was set.
280 <p>This size is used to resize text in the view when the size
281 of the page has changed since the font sizes were set
282 (automatic text scaling).</p>
284 [maybevoid, property] com::sun::star::awt::Size ReferencePageSize;
286 // statistics
288 /** If void, no error bars are shown for the data point in
289 x-direction.
291 <p>The com::sun::star::beans::XPropertySet
292 must support the service ErrorBar.</p>
294 [optional, maybevoid, property] com::sun::star::beans::XPropertySet ErrorBarX;
296 /** If void, no error bars are shown for the data point in
297 y-direction.
299 <p>The com::sun::star::beans::XPropertySet
300 must support the service ErrorBar.</p>
302 [optional, maybevoid, property] com::sun::star::beans::XPropertySet ErrorBarY;
304 /** In case #ErrorBarX and
305 #ErrorBarY both are set, and error bars are
306 shown, a box spanning all error-indicators is rendered.
308 [optional, maybevoid, property] boolean ShowErrorBox;
311 /** A value between 0 and 100 indicating the percentage how round an edge should be.
313 [optional, maybevoid, property] short PercentDiagonal;
315 /** Custom position on the page associated to the CUSTOM label placement.
317 @since LibreOffice 7.0
319 [optional, maybevoid, property] ::com::sun::star::chart2::RelativePosition CustomLabelPosition;
321 /** Custom size associated with the CUSTOM label placement.
323 @since LibreOffice 24.8
325 [optional, maybevoid, property] ::com::sun::star::chart2::RelativeSize CustomLabelSize;
328 } ; // chart2
329 } ; // com
330 } ; // sun
331 } ; // star
334 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */