1#ifndef com_sun_star_chart2_IncrementData_idl
2#define com_sun_star_chart2_IncrementData_idl
3
4#include <com/sun/star/chart2/SubIncrement.idl>
5
6//=============================================================================
7
8module com {  module sun {  module star {  module chart2 {
9
10//=============================================================================
11
12/** An IncrementData describes how tickmarks are positioned on the scale of an axis.
13
14@see <type>Axis</type>
15@see <type>Grid</type>
16@see <type>Scale</type>
17@see <type>XScaling</type>
18*/
19struct IncrementData
20{
21    /** if the any contains a double value this is used as a fixed
22        Distance value.  Otherwise, if the any is empty or contains an
23        incompatible type, the Distance is meant to be calculated
24        automatically by the view component representing the model
25        containing this increment.
26     */
27    any         Distance;
28
29    /**
30    <member>PostEquidistant</member> rules wether the member <member>Distance</member>
31    describes a distance before or after the scaling is applied.
32
33    <p>If <member>PostEquidistant</member> equals <TRUE/> <member>Distance</member>
34    is given in values after <type>XScaling</type> is applied, thus resulting
35    main tickmarks will always look equidistant on the screen.
36    If <member>PostEquidistant</member> equals <FALSE/> <member>Distance</member>
37    is given in values before <type>XScaling</type> is applied.</p>
38    */
39    any         PostEquidistant;
40
41    /** if the any contains a double value this is used as a fixed
42        BaseValue.  Otherwise, if the any is empty or contains an
43        incompatible type, the BaseValue is meant to be calculated
44        automatically by the view component representing the model
45        containing this increment.
46     */
47    any         BaseValue;
48
49    /** <member>SubIncrements</member> describes the positioning of further
50    sub tickmarks on the scale of an axis.
51
52    <p>The first SubIncrement in this sequence determines how the
53    distance between two neighboring main tickmarks is divided for positioning
54    of further sub tickmarks. Every following SubIncrement determines the
55    positions of subsequent tickmarks in relation to their parent tickmarks
56    given by the preceding SubIncrement.</p>
57    */
58    sequence< SubIncrement > SubIncrements;
59};
60
61//=============================================================================
62
63}; }; }; };
64
65#endif
66