blob: b6c1e5db6074daf60b7666fc8cea51b181274771 [file] [log] [blame]
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef com_sun_star_chart2_DataPointProperties_idl
#define com_sun_star_chart2_DataPointProperties_idl
#include <com/sun/star/beans/PropertySet.idl>
#include <com/sun/star/awt/Gradient.idl>
#include <com/sun/star/drawing/Hatch.idl>
#include <com/sun/star/drawing/LineDash.idl>
#include <com/sun/star/style/XStyle.idl>
#include <com/sun/star/chart2/BitmapProperty.idl>
#include <com/sun/star/chart2/TransparencyStyle.idl>
#include <com/sun/star/chart2/DataCaptionStyle.idl>
#include <com/sun/star/chart2/Symbol.idl>
module com
{
module sun
{
module star
{
module chart2
{
service DataPointProperties
{
/** to give acces to the properties required by this service.
*/
service ::com::sun::star::beans::PropertySet;
// ----------------------------------------------------------------------
/** points to a style that also supports this service (but not
this property) that is used as default, if the PropertyState
of a property is <code>DEFAULT_VALUE</code>.
*/
// [optional, property] ::com::sun::star::style::XStyle Style;
// Common Properties
// -----------------
/** This is the main color of a data point.
<p>For charts with filled areas, like bar-charts, this should
map to the <code>FillColor</code> of the objects. For
line-charts this should map to the <code>LineColor</code>
property.</p>
@see com::sun::star::drawing::FillProperties
@see com::sun::star::drawing::LineProperties
*/
[property] long Color;
/** This is the main transparency value of a data point.
<p>For charts with filled areas, like bar-charts, this should
map to the <code>FillTransparence</code> of the objects. For
line-charts this should map to the
<code>LineTransparence</code> property.</p>
@see com::sun::star::drawing::FillProperties
@see com::sun::star::drawing::LineProperties
*/
[property] short Transparency;
// Fill Properties
// ---------------
/** This enumeration selects the style with which the area will be filled.
*/
[property] ::com::sun::star::drawing::FillStyle FillStyle;
/** This describes the transparency of the fill area as a gradient.
*/
[optional, property] ::com::sun::star::awt::Gradient TransparencyGradient;
[optional, property] ::com::sun::star::awt::Gradient Gradient;
[optional, property] ::com::sun::star::drawing::Hatch Hatch;
[property] string TransparencyGradientName;
[property] string GradientName;
[property] string HatchName;
[property] string FillBitmapName;
/** If <TRUE/>, fills the background of a hatch with the color
given in the <member>Color</member> property.
*/
[property] boolean FillBackground;
/** Is used for borders around filled objects. See
<code>LineColor</code>.
@see com::sun::star::drawing::LineProperties
*/
[property] long BorderColor;
/** Is used for borders around filled objects. See
<code>LineStyle</code>.
@see com::sun::star::drawing::LineProperties
*/
[property] ::com::sun::star::drawing::LineStyle BorderStyle;
/** Is used for borders around filled objects. See
<code>LineWidth</code>.
@see com::sun::star::drawing::LineProperties
*/
[property] long BorderWidth;
/** Is used for borders around filled objects. See
<code>LineDash</code>.
@see com::sun::star::drawing::LineProperties
*/
[property] ::com::sun::star::drawing::LineDash BorderDash;
/** The name of a dash that can be found in the
<type scope="com::sun::star::container">XNameContainer</type>
"com.sun.star.drawing.LineDashTable", that can be created via
the
<type scope="com::sun::star::uno">XMultiServiceFactory</type>
of the <type>ChartDocument</type>.
*/
[optional, property] string BorderDashName;
/** Is used for borders around filled objects. See
<code>LineTransparence</code>.
@see com::sun::star::drawing::LineProperties
*/
[optional, property] short BorderTransparency;
// Line Properties
// ---------------
[property] ::com::sun::star::drawing::LineStyle LineStyle;
/** Is only used for line-chart types.
@see com::sun::star::drawing::LineProperties
*/
[property] long LineWidth;
/** Is only used for line-chart types.
@see com::sun::star::drawing::LineProperties
*/
[property] ::com::sun::star::drawing::LineDash LineDash;
/** The name of a dash that can be found in the
<type scope="com::sun::star::container">XNameContainer</type>
"com.sun.star.drawing.LineDashTable", that can be created via
the
<type scope="com::sun::star::uno">XMultiServiceFactory</type>
of the <type>ChartDocument</type>.
*/
[optional, property] string LineDashName;
//-------------------------------------------------------------------------
// bitmap properties /copied from drawing::FillProperties
/** This is the horizontal offset where the tile starts.
<p>It is given in percent in relation to the width of the bitmap.
*/
[property] short FillBitmapOffsetX;
/** This is the vertical offset where the tile starts.
It is given in percent in relation to the width of the bitmap.
*/
[property] short FillBitmapOffsetY;
/** Every second line of tiles is moved the given percent of the
witdh of the bitmap.
*/
[property] short FillBitmapPositionOffsetX;
/** Every second row of tiles is moved the given percent of the
width of the bitmap.
*/
[property] short FillBitmapPositionOffsetY;
/** The RectanglePoint specifies the position inside of the bitmap to
use as the top left position for rendering.
*/
[property] com::sun::star::drawing::RectanglePoint FillBitmapRectanglePoint;
/** specifies if the size is given in percentage or
as an absolute value.
<p>If this is <TRUE/>, the properties FillBitmapSizeX
and FillBitmapSizeY contain the size of the tile in percent
of the size of the original bitmap. If this
is <FALSE/>, the size of the tile is specified
with 1/100th mm.
*/
[property] boolean FillBitmapLogicalSize;
/** This is the width of the tile for filling.
<p>Depending on the property FillBitmapLogicalSize, this is
either relative or absolute.
*/
[property] long FillBitmapSizeX;
/** This is the height of the tile for filling.
<p>Depending on the property FillBitmapLogicalSize, this
is either relative or absolute.
*/
[property] long FillBitmapSizeY;
/** this enum selects how a area is filled with a single bitmap.
*/
[property] com::sun::star::drawing::BitmapMode FillBitmapMode;
//-------------------------------------------------------------------------
/**
*/
[optional, property] Symbol Symbol;
/** describes a value by which a data point is moved from its
default position in percent of the maximum allowed distance.
<p>This is especially useful for the explosion of pie-chart
segments.</p>
*/
[optional, property] double Offset;
/** describes the geometry of a 3 dimensional datapoint.
Number is one of constant group <type>DataPointGeometry3D</type>.
<p>This is especially used for 3D bar-charts.</p>
<p>CUBOID==0 CYLINDER==1 CONE==2 PYRAMID==3 CUBOID==else</p>
*/
[optional, property] long Geometry3D;
[property] DataPointLabel Label;
/** specifies a string that is used to separate the parts of a data label (caption)
*/
[optional, property] string LabelSeparator;
/** specifies a number format for the display of the value in the data label
*/
[optional, property] long NumberFormat;
/** specifies a number format for the display of the percentage value in the data label
*/
[optional, property] long PercentageNumberFormat;
/** specifies a relative position for the data label
@see ::com::sun::star::chart::DataLabelPlacement
*/
[optional, property] long LabelPlacement;
/** The size of the page at the moment when the font size for
data labels was set.
<p>This size is used to resize text in the view when the size
of the page has changed since the font sizes were set
(automatic text scaling).</p>
*/
[maybevoid, property] com::sun::star::awt::Size ReferencePageSize;
// statistics
/** If void, no error bars are shown for the data point in
x-direction.
<p>The <type scope="com::sun::star::beans">XPropertySet</type>
must support the service <type>ErrorBar</type>.</p>
*/
[optional, maybevoid, property] com::sun::star::beans::XPropertySet ErrorBarX;
/** If void, no error bars are shown for the data point in
y-direction.
<p>The <type scope="com::sun::star::beans">XPropertySet</type>
must support the service <type>ErrorBar</type>.</p>
*/
[optional, maybevoid, property] com::sun::star::beans::XPropertySet ErrorBarY;
/** In case <member>ErrorBarX</member> and
<member>ErrorBarY</member> both are set, and error bars are
shown, a box spanning all error-indicators is rendered.
*/
[optional, maybevoid, property] boolean ShowErrorBox;
/** A value between 0 and 100 indicating the percentage how round an edge should be.
*/
[optional, maybevoid, property] short PercentDiagonal;
};
} ; // chart2
} ; // com
} ; // sun
} ; // star
#endif