summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/chart2/ExplicitIncrementData.idl
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/chart2/ExplicitIncrementData.idl')
-rw-r--r--offapi/com/sun/star/chart2/ExplicitIncrementData.idl96
1 files changed, 96 insertions, 0 deletions
diff --git a/offapi/com/sun/star/chart2/ExplicitIncrementData.idl b/offapi/com/sun/star/chart2/ExplicitIncrementData.idl
new file mode 100644
index 000000000000..48f01c7560c4
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ExplicitIncrementData.idl
@@ -0,0 +1,96 @@
+#ifndef com_sun_star_chart2_ExplicitIncrementData_idl
+#define com_sun_star_chart2_ExplicitIncrementData_idl
+
+#include <com/sun/star/chart2/ExplicitSubIncrement.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** An Increment describes how tickmarks are positioned on the scale of an axis.
+
+@see <type>Axis</type>
+@see <type>Grid</type>
+@see <type>Scale</type>
+@see <type>XScaling</type>
+*/
+struct ExplicitIncrementData
+{
+ /** <member>Distance</member> describes the distance between two
+ neighboring main tickmarks on a <type>Scale</type> of an axis.
+ All neighboring main tickmarks have the same constant distance.
+
+ <p>If the Scale has a <type>XScaling</type> the <member>Distance</member>
+ may be measured in two different ways - that is - before or after the
+ scaling is applied.</p>
+
+ <p>On a logarithmic scale for example the distance between two main
+ tickmarks is typically measured after the scaling is applied:
+ Distance = log(tick2)-log(tick1)
+ ( log(1000)-log(100)==log(100)-log(10)==log(10)-log(1)==1==Distance ).
+ The resulting tickmarks will always look equidistant on the screen.
+ The other possibility is to have a Distance = tick2-tick1 measured constant
+ before a scaling is applied, which may lead to non equidistant tickmarks
+ on the screen.</p>
+
+ <p><member>PostEquidistant</member> rules wether the <member>Distance</member>
+ is meant to be a value before or after scaling.</p>
+ */
+ double Distance;
+
+ /**
+ <member>PostEquidistant</member> rules wether the member <member>Distance</member>
+ describes a distance before or after the scaling is applied.
+
+ <p>If <member>PostEquidistant</member> equals <TRUE/> <member>Distance</member>
+ is given in values after <type>XScaling</type> is applied, thus resulting
+ main tickmarks will always look equidistant on the screen.
+ If <member>PostEquidistant</member> equals <FALSE/> <member>Distance</member>
+ is given in values before <type>XScaling</type> is applied.</p>
+ */
+ boolean PostEquidistant;
+
+ /** The <member>BaseValue</member> gives a starting point on the scale
+ to which all further main tickmarks are relatively positioned.
+
+ <p>The <member>BaseValue</member> is always a value on the scale before
+ a possible scaling is applied. If the given value is not valid in the
+ associated scaling the minimum of the scaling is assumed,
+ if there is no minimum any other obvious value will be assumed.</p>
+
+ <p>E.g.: assume a scale from 0 to 6 with identical scaling.
+ Further assume this Increment to have Distance==2 and PostEquidistant==false.
+ Setting BaseValue=0 would lead to main tickmarks 0; 2; 4; 6;
+ Setting BaseValue=1,3 would lead to main tickmarks 1,3; 3,3; 5,3;
+ Setting BaseValue=-0,7 would also lead to main tickmarks 1,3; 3,3; 5,3;
+ And setting BaseValue to 2, -2, 4, -4 etc. in this example
+ leads to the same result as BaseValue=0.</p>
+ */
+ double BaseValue;
+
+ /** <member>SubIncrements</member> describes the positioning of further
+ sub tickmarks on the scale of an axis.
+
+ <p>The first SubIncrement in this sequence determines how the
+ distance between two neighboring main tickmarks is divided for positioning
+ of further sub tickmarks. Every following SubIncrement determines the
+ positions of subsequent tickmarks in relation to their parent tickmarks
+ iven by the preceding SubIncrement.</p>
+ */
+ sequence< ::com::sun::star::chart2::ExplicitSubIncrement > SubIncrements;
+
+ /** If ShiftedPosition is false all ticks are set at the positions as described above.
+ E.g. having tickmarks for whole numbers 1, 2 and 3 the ticks are exactly placed on positions for the values 1, 2 and 3.
+ In contrast it is possible to have the tickmarks shifted thus they are placed between the indicated values.
+ So if ShiftedPosition is set to true the tickmarks in the example are placed at 0.5 1.5 2.5 and 3.5.
+ */
+ boolean ShiftedPosition;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif