summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/chart2
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/chart2')
-rw-r--r--offapi/com/sun/star/chart2/Axis.idl142
-rw-r--r--offapi/com/sun/star/chart2/AxisOrientation.idl51
-rw-r--r--offapi/com/sun/star/chart2/AxisType.idl60
-rw-r--r--offapi/com/sun/star/chart2/Break.idl46
-rw-r--r--offapi/com/sun/star/chart2/CandleStickChartType.idl119
-rw-r--r--offapi/com/sun/star/chart2/ChartDocument.idl92
-rw-r--r--offapi/com/sun/star/chart2/ChartDocumentWrapper.idl67
-rw-r--r--offapi/com/sun/star/chart2/ChartType.idl63
-rw-r--r--offapi/com/sun/star/chart2/ChartTypeManager.idl56
-rw-r--r--offapi/com/sun/star/chart2/ChartTypeTemplate.idl25
-rw-r--r--offapi/com/sun/star/chart2/CoordinateSystem.idl56
-rw-r--r--offapi/com/sun/star/chart2/CoordinateSystemType.idl36
-rw-r--r--offapi/com/sun/star/chart2/CoordinateSystemTypeID.idl17
-rw-r--r--offapi/com/sun/star/chart2/CurveStyle.idl69
-rw-r--r--offapi/com/sun/star/chart2/CustomLegendEntry.idl50
-rw-r--r--offapi/com/sun/star/chart2/DataPoint.idl74
-rw-r--r--offapi/com/sun/star/chart2/DataPointGeometry3D.idl73
-rw-r--r--offapi/com/sun/star/chart2/DataPointLabel.idl78
-rw-r--r--offapi/com/sun/star/chart2/DataPointProperties.idl328
-rw-r--r--offapi/com/sun/star/chart2/DataSeries.idl198
-rw-r--r--offapi/com/sun/star/chart2/Diagram.idl135
-rw-r--r--offapi/com/sun/star/chart2/ErrorBar.idl89
-rw-r--r--offapi/com/sun/star/chart2/ExplicitIncrementData.idl96
-rw-r--r--offapi/com/sun/star/chart2/ExplicitScaleData.idl45
-rw-r--r--offapi/com/sun/star/chart2/ExplicitSubIncrement.idl30
-rw-r--r--offapi/com/sun/star/chart2/ExponentialScaling.idl55
-rw-r--r--offapi/com/sun/star/chart2/FillBitmap.idl119
-rw-r--r--offapi/com/sun/star/chart2/FormattedString.idl44
-rw-r--r--offapi/com/sun/star/chart2/GridProperties.idl63
-rw-r--r--offapi/com/sun/star/chart2/IncrementData.idl69
-rw-r--r--offapi/com/sun/star/chart2/InterpretedData.idl62
-rw-r--r--offapi/com/sun/star/chart2/Legend.idl101
-rw-r--r--offapi/com/sun/star/chart2/LegendExpansion.idl75
-rw-r--r--offapi/com/sun/star/chart2/LegendPosition.idl71
-rw-r--r--offapi/com/sun/star/chart2/LegendSymbolStyle.idl107
-rw-r--r--offapi/com/sun/star/chart2/LightSource.idl68
-rw-r--r--offapi/com/sun/star/chart2/LinearScaling.idl56
-rw-r--r--offapi/com/sun/star/chart2/LogarithmicScaling.idl54
-rw-r--r--offapi/com/sun/star/chart2/LogicTargetModel.idl41
-rw-r--r--offapi/com/sun/star/chart2/MutableDataSequence.idl62
-rw-r--r--offapi/com/sun/star/chart2/PieChartOffsetMode.idl60
-rw-r--r--offapi/com/sun/star/chart2/PowerScaling.idl55
-rw-r--r--offapi/com/sun/star/chart2/PropertyPool.idl68
-rw-r--r--offapi/com/sun/star/chart2/RegressionCurve.idl69
-rw-r--r--offapi/com/sun/star/chart2/RegressionCurveEquation.idl65
-rw-r--r--offapi/com/sun/star/chart2/RelativePosition.idl88
-rw-r--r--offapi/com/sun/star/chart2/RelativeSize.idl84
-rw-r--r--offapi/com/sun/star/chart2/ScaleData.idl97
-rw-r--r--offapi/com/sun/star/chart2/Scaling.idl53
-rw-r--r--offapi/com/sun/star/chart2/StackingDirection.idl52
-rw-r--r--offapi/com/sun/star/chart2/StandardDiagramCreationParameters.idl59
-rw-r--r--offapi/com/sun/star/chart2/SubIncrement.idl31
-rw-r--r--offapi/com/sun/star/chart2/Symbol.idl122
-rw-r--r--offapi/com/sun/star/chart2/SymbolStyle.idl73
-rw-r--r--offapi/com/sun/star/chart2/TextAnchor.idl51
-rw-r--r--offapi/com/sun/star/chart2/TickmarkStyle.idl61
-rw-r--r--offapi/com/sun/star/chart2/Title.idl94
-rw-r--r--offapi/com/sun/star/chart2/TransparencyStyle.idl62
-rw-r--r--offapi/com/sun/star/chart2/ViewLegendEntry.idl58
-rw-r--r--offapi/com/sun/star/chart2/XAxis.idl56
-rw-r--r--offapi/com/sun/star/chart2/XChartDocument.idl141
-rw-r--r--offapi/com/sun/star/chart2/XChartShape.idl96
-rw-r--r--offapi/com/sun/star/chart2/XChartShapeContainer.idl36
-rw-r--r--offapi/com/sun/star/chart2/XChartType.idl75
-rw-r--r--offapi/com/sun/star/chart2/XChartTypeContainer.idl82
-rw-r--r--offapi/com/sun/star/chart2/XChartTypeManager.idl27
-rw-r--r--offapi/com/sun/star/chart2/XChartTypeTemplate.idl240
-rw-r--r--offapi/com/sun/star/chart2/XColorScheme.idl67
-rw-r--r--offapi/com/sun/star/chart2/XCoordinateSystem.idl73
-rw-r--r--offapi/com/sun/star/chart2/XCoordinateSystemContainer.idl80
-rw-r--r--offapi/com/sun/star/chart2/XDataInterpreter.idl107
-rw-r--r--offapi/com/sun/star/chart2/XDataSeries.idl88
-rw-r--r--offapi/com/sun/star/chart2/XDataSeriesContainer.idl82
-rw-r--r--offapi/com/sun/star/chart2/XDefaultSizeTransmitter.idl64
-rw-r--r--offapi/com/sun/star/chart2/XDiagram.idl97
-rw-r--r--offapi/com/sun/star/chart2/XDiagramProvider.idl65
-rw-r--r--offapi/com/sun/star/chart2/XFastPropertyState.idl146
-rw-r--r--offapi/com/sun/star/chart2/XFormattedString.idl35
-rw-r--r--offapi/com/sun/star/chart2/XInternalDataProvider.idl95
-rw-r--r--offapi/com/sun/star/chart2/XLabeled.idl93
-rw-r--r--offapi/com/sun/star/chart2/XLegend.idl59
-rw-r--r--offapi/com/sun/star/chart2/XLegendEntry.idl30
-rw-r--r--offapi/com/sun/star/chart2/XLegendSymbolProvider.idl35
-rw-r--r--offapi/com/sun/star/chart2/XPlotter.idl128
-rw-r--r--offapi/com/sun/star/chart2/XRegressionCurve.idl66
-rw-r--r--offapi/com/sun/star/chart2/XRegressionCurveCalculator.idl152
-rw-r--r--offapi/com/sun/star/chart2/XRegressionCurveContainer.idl81
-rw-r--r--offapi/com/sun/star/chart2/XScaling.idl32
-rw-r--r--offapi/com/sun/star/chart2/XStyleSupplier.idl75
-rw-r--r--offapi/com/sun/star/chart2/XTarget.idl33
-rw-r--r--offapi/com/sun/star/chart2/XTitle.idl61
-rw-r--r--offapi/com/sun/star/chart2/XTitled.idl64
-rw-r--r--offapi/com/sun/star/chart2/XTransformation.idl101
-rw-r--r--offapi/com/sun/star/chart2/XUndoHelper.idl90
-rw-r--r--offapi/com/sun/star/chart2/XUndoManager.idl111
-rw-r--r--offapi/com/sun/star/chart2/XUndoSupplier.idl57
-rw-r--r--offapi/com/sun/star/chart2/data/DataFilter.idl68
-rw-r--r--offapi/com/sun/star/chart2/data/DataProvider.idl69
-rw-r--r--offapi/com/sun/star/chart2/data/DataSequence.idl157
-rw-r--r--offapi/com/sun/star/chart2/data/DataSequenceRole.idl108
-rw-r--r--offapi/com/sun/star/chart2/data/DataSink.idl60
-rw-r--r--offapi/com/sun/star/chart2/data/DataSource.idl60
-rw-r--r--offapi/com/sun/star/chart2/data/HighlightedRange.idl74
-rw-r--r--offapi/com/sun/star/chart2/data/LabelOrigin.idl100
-rw-r--r--offapi/com/sun/star/chart2/data/LabeledDataSequence.idl83
-rw-r--r--offapi/com/sun/star/chart2/data/RangeHighlightListener.idl60
-rw-r--r--offapi/com/sun/star/chart2/data/RangeHighlighter.idl58
-rw-r--r--offapi/com/sun/star/chart2/data/TabularDataProviderArguments.idl161
-rw-r--r--offapi/com/sun/star/chart2/data/XDataProvider.idl164
-rw-r--r--offapi/com/sun/star/chart2/data/XDataReceiver.idl122
-rw-r--r--offapi/com/sun/star/chart2/data/XDataSequence.idl138
-rw-r--r--offapi/com/sun/star/chart2/data/XDataSink.idl78
-rw-r--r--offapi/com/sun/star/chart2/data/XDataSource.idl83
-rw-r--r--offapi/com/sun/star/chart2/data/XDatabaseDataProvider.idl224
-rw-r--r--offapi/com/sun/star/chart2/data/XLabeledDataSequence.idl80
-rw-r--r--offapi/com/sun/star/chart2/data/XNumericalDataSequence.idl60
-rw-r--r--offapi/com/sun/star/chart2/data/XRangeHighlighter.idl80
-rw-r--r--offapi/com/sun/star/chart2/data/XRangeXMLConversion.idl72
-rw-r--r--offapi/com/sun/star/chart2/data/XTextualDataSequence.idl59
-rw-r--r--offapi/com/sun/star/chart2/data/makefile.mk60
-rw-r--r--offapi/com/sun/star/chart2/makefile.mk111
121 files changed, 9853 insertions, 0 deletions
diff --git a/offapi/com/sun/star/chart2/Axis.idl b/offapi/com/sun/star/chart2/Axis.idl
new file mode 100644
index 000000000000..009abd05a500
--- /dev/null
+++ b/offapi/com/sun/star/chart2/Axis.idl
@@ -0,0 +1,142 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_Axis_idl
+#define com_sun_star_chart_Axis_idl
+
+#include <com/sun/star/beans/PropertySet.idl>
+
+#include <com/sun/star/chart/ChartAxisArrangeOrderType.idl>
+#include <com/sun/star/chart/ChartAxisPosition.idl>
+#include <com/sun/star/chart/ChartAxisLabelPosition.idl>
+#include <com/sun/star/chart/ChartAxisMarkPosition.idl>
+
+#include <com/sun/star/chart2/XAxis.idl>
+#include <com/sun/star/chart2/XTitled.idl>
+
+#include <com/sun/star/drawing/LineProperties.idl>
+#include <com/sun/star/style/CharacterProperties.idl>
+#include <com/sun/star/style/CharacterPropertiesAsian.idl>
+#include <com/sun/star/style/CharacterPropertiesComplex.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+service Axis
+{
+ service ::com::sun::star::drawing::LineProperties;
+
+ service ::com::sun::star::style::CharacterProperties;
+ service ::com::sun::star::beans::PropertySet;
+ [optional] service ::com::sun::star::style::CharacterPropertiesAsian;
+ [optional] service ::com::sun::star::style::CharacterPropertiesComplex;
+
+ interface ::com::sun::star::chart2::XAxis;
+ [optional] interface ::com::sun::star::chart2::XTitled;
+
+ /** Determines, whether the axis should be rendered by the view.
+ */
+ [property] boolean Show;
+
+ /** Determines where the axis crosses the other axis.
+ */
+ [optional, property] com::sun::star::chart::ChartAxisPosition CrossoverPosition;
+
+ /** Determines the scale value on the other axis when CrossoverPosition is set to VALUE.
+ */
+ [optional, property] double CrossoverValue;
+
+ /** Determines whether to display text at the axis or not.
+ */
+ [property] boolean DisplayLabels;
+
+ /** Determines where the axis labels are placed.
+ */
+ [optional, property] com::sun::star::chart::ChartAxisLabelPosition LabelPosition;
+
+ /** Determines how to stagger the labels at the axis (side by side, even, odd, auto )
+ */
+ [property] ::com::sun::star::chart::ChartAxisArrangeOrderType ArrangeOrder;
+
+ /** Determines wether the labels are allowed to break into more than one line
+ */
+ [property] boolean TextBreak;
+
+ /** Determines wether the labels are allowed to overlap
+ */
+ [property] boolean TextOverlap;
+
+ /** Determines wether the characters in a single labels should be stacked one upon each other
+ */
+ [property] boolean StackCharacters;
+
+ /** Determines the rotation of the text labels in degrees
+ */
+ [property] double TextRotation;
+
+ /** A NumberFormat key.
+
+ <p>If this property is not set, it is treated as auto. This
+ means linked to the source format.</p>
+
+ <p>To determine a source format, the axis can query the
+ <type>XDataSequence</type>s used by the data series attached
+ to it (see <member>XDataSequence::getNumberFormatKeyByIndex</member>).
+ </p>
+ */
+ [property, maybevoid] long NumberFormat;
+
+ [property] ::com::sun::star::awt::Size ReferencePageSize;
+
+ /** determines what kind of tickmarks should be shown for major ticks.
+
+ @see <type>TickmarkStyle</type>.
+ */
+ [property] long MajorTickmarks;
+
+ /** determines what kind of tickmarks should be shown for minor ticks.
+
+ @see <type>TickmarkStyle</type>.
+ */
+ [property] long MinorTickmarks;
+
+ /** Determines where the interval marks are placed.
+ */
+ [optional, property] com::sun::star::chart::ChartAxisMarkPosition MarkPosition;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/AxisOrientation.idl b/offapi/com/sun/star/chart2/AxisOrientation.idl
new file mode 100644
index 000000000000..688535e26eba
--- /dev/null
+++ b/offapi/com/sun/star/chart2/AxisOrientation.idl
@@ -0,0 +1,51 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_AxisOrientation_idl
+#define com_sun_star_chart2_AxisOrientation_idl
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+enum AxisOrientation
+{
+ /** means equal to the primary writing direction
+ */
+ MATHEMATICAL,
+
+ /** means the opposite of the primary writing direction
+ */
+ REVERSE
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/AxisType.idl b/offapi/com/sun/star/chart2/AxisType.idl
new file mode 100644
index 000000000000..16d977c34801
--- /dev/null
+++ b/offapi/com/sun/star/chart2/AxisType.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_AxisType_idl
+#define com_sun_star_chart2_AxisType_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+constants AxisType
+{
+ /** the axis represent real numbers
+ */
+ const long REALNUMBER = 0;
+ /** the axis represent real numbers in percent
+ */
+ const long PERCENT = 1;
+ /** the axis represent discrete categories
+ */
+ const long CATEGORY = 2;
+ /** the axis shows the series names (z axis)
+ */
+ const long SERIES = 3;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/Break.idl b/offapi/com/sun/star/chart2/Break.idl
new file mode 100644
index 000000000000..b5dbe80d2933
--- /dev/null
+++ b/offapi/com/sun/star/chart2/Break.idl
@@ -0,0 +1,46 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_Break_idl
+#define com_sun_star_chart2_Break_idl
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+struct Break
+{
+ double Min;
+ double Max;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/CandleStickChartType.idl b/offapi/com/sun/star/chart2/CandleStickChartType.idl
new file mode 100644
index 000000000000..747531409fd3
--- /dev/null
+++ b/offapi/com/sun/star/chart2/CandleStickChartType.idl
@@ -0,0 +1,119 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_CandleStickChartType_idl
+#define com_sun_star_chart2_CandleStickChartType_idl
+
+#include <com/sun/star/chart2/ChartType.idl>
+#include <com/sun/star/beans/PropertySet.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** chart type service for candlestick charts.
+ */
+service CandleStickChartType
+{
+ /** The base service describing generic chart types.
+ */
+ service ChartType;
+
+ /** If this property is <TRUE/>, the candlesticks are shown as
+ japanese candlesticks. This implies that the property
+ <member>ShowFirst</member> is also <TRUE/>.
+
+ <p>Japanese candlesticks show the first and last value as
+ boxes. A rising course (i.e. if the last value is greater
+ than the first one) is shown by a white box. A falling course
+ is shown by a black box.</p>
+
+ <p>Default is <FALSE/>.</p>
+
+ @see WhiteDay
+ @see BlackDay
+ */
+ [maybedefault, property] boolean Japanese;
+
+ /** If the candlestick chart shows japanese candlesticks, that is
+ the property <member>Japanese</member> is <TRUE/>, the
+ property set given here contains the formatting attributes of
+ the white boxes, i.e. the boxes shown for rising values.</p>
+
+ <p>The <type scope="com::sun::star::beans">XPropertySet</type>
+ given here must support the services
+ <type scope="com::sun::star::drawing">FillProperties</type>
+ and
+ <type scope="com::sun::star::drawing">LineProperties</type>.</p>
+ */
+ [maybevoid, property] com::sun::star::beans::XPropertySet WhiteDay;
+
+ /** If the candlestick chart shows japanese candlesticks, that is
+ the property <member>Japanese</member> is <TRUE/>, the
+ property set given here contains the formatting attributes of
+ the black boxes, i.e. the boxes shown for falling values.</p>
+
+ <p>The <type scope="com::sun::star::beans">XPropertySet</type>
+ given here must support the services
+ <type scope="com::sun::star::drawing">FillProperties</type>
+ and
+ <type scope="com::sun::star::drawing">LineProperties</type>.</p>
+ */
+ [maybevoid, property] com::sun::star::beans::XPropertySet BlackDay;
+
+ /** If this property is <TRUE/>, the first value (which would be
+ the opening course in a stock chart) is shown in the chart.
+ This also makes the role "values-first" mandatory.
+
+ <p>This property is only evaluated for non-japanese
+ candlestick charts, as japanese candlesticks always require to
+ show the first value.</p>
+
+ <p>Default is <FALSE/>.</p>
+ */
+ [maybedefault, property] boolean ShowFirst;
+
+ /** If this property is <TRUE/>, the low and high values are shown
+ in the chart. This also makes the roles "values-min" and
+ "values-max" mandatory.
+
+ <p>Default is <TRUE/>.</p>
+ */
+ [maybedefault, property] boolean ShowHighLow;
+};
+
+} ; // chart2
+} ; // star
+} ; // sun
+} ; // com
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/ChartDocument.idl b/offapi/com/sun/star/chart2/ChartDocument.idl
new file mode 100644
index 000000000000..c4927d8297be
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ChartDocument.idl
@@ -0,0 +1,92 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_ChartDocument_idl
+#define com_sun_star_chart2_ChartDocument_idl
+
+#include <com/sun/star/style/XStyleFamiliesSupplier.idl>
+#include <com/sun/star/util/XNumberFormatsSupplier.idl>
+
+#include <com/sun/star/chart2/XChartDocument.idl>
+#include <com/sun/star/chart2/XUndoSupplier.idl>
+#include <com/sun/star/chart2/data/XDataReceiver.idl>
+
+#include <com/sun/star/chart2/XTitled.idl>
+#include <com/sun/star/lang/XInitialization.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+service ChartDocument
+{
+ /** this interface is derived from
+ <type-scope="com::sun::star::frame">XModel</type>. Thus model
+ functionality is available via this interface.
+ */
+ interface XChartDocument;
+
+ /** offers connection to data
+ */
+ interface data::XDataReceiver;
+
+ /** gives access to the main title of a chart document
+ */
+ interface XTitled;
+
+ /** maintains all style families applying to any object in the
+ chart.
+ */
+ interface ::com::sun::star::style::XStyleFamiliesSupplier;
+
+ /** maintains all number formats used anywhere in the chart.
+ */
+ interface ::com::sun::star::util::XNumberFormatsSupplier;
+
+ /** Allows passing arguments to createInstanceWithArguments.
+
+ <p>The following arguments are allowed in the given order:</p>
+
+ <ol>
+ <li>string Name</li>
+ </ol>
+ */
+ [optional] interface ::com::sun::star::lang::XInitialization;
+
+ [optional] interface XUndoSupplier;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/ChartDocumentWrapper.idl b/offapi/com/sun/star/chart2/ChartDocumentWrapper.idl
new file mode 100644
index 000000000000..a0075b449aa4
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ChartDocumentWrapper.idl
@@ -0,0 +1,67 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_ChartDocumentWrapper_idl
+#define com_sun_star_chart2_ChartDocumentWrapper_idl
+
+#include <com/sun/star/chart/ChartDocument.idl>
+#include <com/sun/star/uno/XAggregation.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** A component that implements the
+ <type scope="::com::sun::star::chart">ChartDocument</type> service and
+ is initialized with a
+ <type scope="::com::sun::star::chart2">ChartDocument</type> via
+ the <type scope="::com::sun::star::uno">XAggregation</type> interface.
+ */
+service ChartDocumentWrapper
+{
+ /** This service will be available for a
+ <type>ChartDocument</type> (of namespace chart2) through this
+ wrapper.
+ */
+ service ::com::sun::star::chart::ChartDocument;
+
+ /** provides the possibility to forward requests to a
+ <type>ChartDocument</type>.
+ */
+ interface ::com::sun::star::uno::XAggregation;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/ChartType.idl b/offapi/com/sun/star/chart2/ChartType.idl
new file mode 100644
index 000000000000..266ab33fc8d2
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ChartType.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_ChartType_idl
+#define com_sun_star_chart2_ChartType_idl
+
+#include <com/sun/star/beans/XPropertySet.idl>
+
+#include <com/sun/star/chart2/XChartType.idl>
+#include <com/sun/star/chart2/XDataSeriesContainer.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** ChartType service
+ */
+service ChartType
+{
+ interface XChartType;
+
+ interface XDataSeriesContainer;
+
+ /** provides chart-type-specific properties
+ */
+ [optional] interface com::sun::star::beans::XPropertySet;
+};
+
+} ; // chart2
+} ; // star
+} ; // sun
+} ; // com
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/ChartTypeManager.idl b/offapi/com/sun/star/chart2/ChartTypeManager.idl
new file mode 100644
index 000000000000..2d47cc007ef5
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ChartTypeManager.idl
@@ -0,0 +1,56 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_ChartTypeManager_idl
+#define com_sun_star_chart_ChartTypeManager_idl
+
+#include <com/sun/star/lang/MultiServiceFactory.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** A factory for creating <type>ChartTypeTemplate</type>s.
+ */
+service ChartTypeManager
+{
+ /** A factory for creating objects the support the service
+ <type>ChartTypeTemplate</type>.
+ */
+ service ::com::sun::star::lang::MultiServiceFactory;
+};
+
+} ; // chart2
+} ; // star
+} ; // sun
+} ; // com
+
+#endif
diff --git a/offapi/com/sun/star/chart2/ChartTypeTemplate.idl b/offapi/com/sun/star/chart2/ChartTypeTemplate.idl
new file mode 100644
index 000000000000..a3801a745e63
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ChartTypeTemplate.idl
@@ -0,0 +1,25 @@
+#ifndef com_sun_star_chart_ChartTypeTemplate_idl
+#define com_sun_star_chart_ChartTypeTemplate_idl
+
+#include <com/sun/star/chart2/XChartTypeTemplate.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+service ChartTypeTemplate
+{
+ interface ::com::sun::star::chart2::XChartTypeTemplate;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/CoordinateSystem.idl b/offapi/com/sun/star/chart2/CoordinateSystem.idl
new file mode 100644
index 000000000000..41695eb199af
--- /dev/null
+++ b/offapi/com/sun/star/chart2/CoordinateSystem.idl
@@ -0,0 +1,56 @@
+#ifndef com_sun_star_chart2_CoordinateSystem_idl
+#define com_sun_star_chart2_CoordinateSystem_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef com_sun_star_chart2_XScale_idl
+#include <com/sun/star/chart2/XScale.idl>
+#endif
+
+#ifndef __com_sun_star_util_XCloneable_idl__
+#include <com/sun/star/util/XCloneable.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__
+#include <com/sun/star/lang/IndexOutOfBoundsException.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+service CoordinateSystem
+{
+ /**
+ */
+ interface XCoordinateSystem;
+
+ /** a coordinate system can contain several charttypes, which than do contain the data series.
+ */
+ interface com::sun::star::chart2::XChartTypeContainer;
+
+ /** creates a new CoordinateSystem that contains the same
+ members like the original object. Note that the contained
+ XScales are still the same objects, i.e. those are not cloned.
+ */
+ [optional] interface com::sun::star::util::XCloneable;
+
+ [optional, property] boolean SwapXAndYAxis;
+};
+
+} ; // chart2
+} ; // star
+} ; // sun
+} ; // com
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/CoordinateSystemType.idl b/offapi/com/sun/star/chart2/CoordinateSystemType.idl
new file mode 100644
index 000000000000..faba718fe384
--- /dev/null
+++ b/offapi/com/sun/star/chart2/CoordinateSystemType.idl
@@ -0,0 +1,36 @@
+#ifndef com_sun_star_chart2_CoordinateSystemType_idl
+#define com_sun_star_chart2_CoordinateSystemType_idl
+
+// #ifndef com_sun_star_chart2_XCoordinateSystemType_idl
+// #include <com/sun/star/chart2/XCoordinateSystemType.idl>
+// #endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/**
+<p>
+The service CoordinateSystemType represents a special type of coordinate system.
+For example a 2 dimensional cartesian coordinate system is a CoordinateSystemType
+and different from for example a 3 dimensional spherical coordinate system.
+</p>
+<p>A CoordinateSystemType is a stateless service which has no owner and does not
+enable cyclic references, thus it's lifetime can be handled by reference or it
+may be implemented as a singleton.</p>
+*/
+
+service CoordinateSystemType
+{
+ /** required interface
+ */
+// interface ::com::sun::star::chart2::XCoordinateSystemType;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/CoordinateSystemTypeID.idl b/offapi/com/sun/star/chart2/CoordinateSystemTypeID.idl
new file mode 100644
index 000000000000..40de71ad6fb3
--- /dev/null
+++ b/offapi/com/sun/star/chart2/CoordinateSystemTypeID.idl
@@ -0,0 +1,17 @@
+#ifndef com_sun_star_chart2_CoordinateSystemTypeID_idl
+#define com_sun_star_chart2_CoordinateSystemTypeID_idl
+
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+typedef string CoordinateSystemTypeID;
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/CurveStyle.idl b/offapi/com/sun/star/chart2/CurveStyle.idl
new file mode 100644
index 000000000000..e8f97fde9b77
--- /dev/null
+++ b/offapi/com/sun/star/chart2/CurveStyle.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_CurveStyle_idl
+#define com_sun_star_chart2_CurveStyle_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** Sets the type of curves that are drawn for line charts.
+ */
+enum CurveStyle
+{
+ /** Lines between data points are not smoothed
+ */
+ LINES,
+
+ /** Data points are connected via a smoothed cubic spline curve.
+ The data points themselves are part of to the curve.
+ */
+ CUBIC_SPLINES,
+
+ /** Data points are connected via a smoothed B-spline curve. The
+ data points themselves are not necessarily part of to the
+ curve.
+ */
+ B_SPLINES,
+
+ /**
+ */
+ NURBS
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/CustomLegendEntry.idl b/offapi/com/sun/star/chart2/CustomLegendEntry.idl
new file mode 100644
index 000000000000..9668eaf90de4
--- /dev/null
+++ b/offapi/com/sun/star/chart2/CustomLegendEntry.idl
@@ -0,0 +1,50 @@
+#ifndef com_sun_star_chart_CustomLegendEntry_idl
+#define com_sun_star_chart_CustomLegendEntry_idl
+
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/chart2/XLegendSymbolProvider.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** A legend entry that does not depend on data series or other chart
+ objects. It may contain any text a user specifies.
+ */
+service CustomLegendEntry
+{
+ /** Is used to identify an object as one that may be shown in a
+ legend.
+ */
+ interface XLegendEntry;
+
+ /** Is used to display a legend text
+ */
+ interface XTitled;
+
+ /** If the legend entry should contain a user-defined symbol, you
+ have to implement this interface.
+ */
+ [optional] interface XLegendSymbolProvider;
+
+ /** must be supported, if properties are implemented
+ */
+ [optional] service ::com::sun::star::beans::XPropertySet;
+
+ /** determines what kind of symbol is displayed next to the entry
+ in the legend.
+ */
+ [optional, property] LegendSymbolStyle SymbolStyle;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/DataPoint.idl b/offapi/com/sun/star/chart2/DataPoint.idl
new file mode 100644
index 000000000000..9278ffb3566c
--- /dev/null
+++ b/offapi/com/sun/star/chart2/DataPoint.idl
@@ -0,0 +1,74 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_DataPoint_idl
+#define com_sun_star_chart2_DataPoint_idl
+
+#include <com/sun/star/style/CharacterProperties.idl>
+
+#include <com/sun/star/style/XStyle.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+service DataPoint
+{
+ service DataPointProperties;
+
+ service ::com::sun::star::style::CharacterProperties;
+ [optional] service ::com::sun::star::style::CharacterPropertiesAsian;
+ [optional] service ::com::sun::star::style::CharacterPropertiesComplex;
+
+ // ----------------------------------------------------------------------
+
+ /** this property handles the style. This property must support
+ the service <type scope="com::sun::star::style">Style</type>.
+
+ <p>It should provide templates for all properties in this
+ service, thus it must also support <type>DataPoint</type>.</p>
+ */
+// [property] ::com::sun::star::style::XStyle Style;
+
+ /** Gives the offset of the data point. For PieDiagrams this
+ would be the percentage by which pies are dragged out of the
+ cake.
+ */
+ [optional, property] double Offset;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/DataPointGeometry3D.idl b/offapi/com/sun/star/chart2/DataPointGeometry3D.idl
new file mode 100644
index 000000000000..a751491a99a5
--- /dev/null
+++ b/offapi/com/sun/star/chart2/DataPointGeometry3D.idl
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_chart2_datapointgeometry3d_idl__
+#define __com_sun_star_chart2_datapointgeometry3d_idl__
+
+
+//=============================================================================
+
+ module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** These values specify the geometry of data points in
+ 3D bar charts.
+ */
+constants DataPointGeometry3D
+{
+ //-------------------------------------------------------------------------
+
+ /** a cuboid
+ */
+ const long CUBOID = 0;
+
+ //-------------------------------------------------------------------------
+
+ /** a cylinder with a circle as base
+ */
+ const long CYLINDER = 1;
+
+ //-------------------------------------------------------------------------
+
+ /** a cone with a circle as base
+ */
+ const long CONE = 2;
+
+ //-------------------------------------------------------------------------
+
+ /** a pyramid with a square as base
+ */
+ const long PYRAMID = 3;
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/DataPointLabel.idl b/offapi/com/sun/star/chart2/DataPointLabel.idl
new file mode 100644
index 000000000000..f0a73b5a2a51
--- /dev/null
+++ b/offapi/com/sun/star/chart2/DataPointLabel.idl
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_DataPointLabel_idl
+#define com_sun_star_chart2_DataPointLabel_idl
+
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+struct DataPointLabel
+{
+ /** if <TRUE/>, the value that is represented by a data point is
+ displayed next to it.
+
+ @see <member>ShowNumberInPercent</member>
+ */
+ boolean ShowNumber;
+
+ /** This is only effective, if <member>ShowNumber</member> is
+ <TRUE/>. If this member is also <TRUE/>, the numbers are
+ displayed as percentages of a category.
+
+ <p>That means, if a data point is the first one of a series,
+ the percentage is calculated by using the first data points of
+ all available series.</p>
+ */
+ boolean ShowNumberInPercent;
+
+ /** The caption contains the category name of the category to
+ which a data point belongs.
+ */
+ boolean ShowCategoryName;
+
+ /** The symbol of data series is additionally displayed in the
+ caption.
+ */
+ boolean ShowLegendSymbol;
+};
+
+//=============================================================================
+
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/DataPointProperties.idl b/offapi/com/sun/star/chart2/DataPointProperties.idl
new file mode 100644
index 000000000000..1b3974ff37a4
--- /dev/null
+++ b/offapi/com/sun/star/chart2/DataPointProperties.idl
@@ -0,0 +1,328 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 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
diff --git a/offapi/com/sun/star/chart2/DataSeries.idl b/offapi/com/sun/star/chart2/DataSeries.idl
new file mode 100644
index 000000000000..e78592fb7144
--- /dev/null
+++ b/offapi/com/sun/star/chart2/DataSeries.idl
@@ -0,0 +1,198 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_DataSeries_idl
+#define com_sun_star_chart2_DataSeries_idl
+
+#include <com/sun/star/beans/PropertySet.idl>
+#include <com/sun/star/container/XIndexContainer.idl>
+#include <com/sun/star/container/XContainer.idl>
+#include <com/sun/star/style/XStyle.idl>
+
+//#include <com/sun/star/chart2/ChartTypeSupplier.idl>
+#include <com/sun/star/chart2/CoordinateSystemSupplier.idl>
+#include <com/sun/star/chart2/data/XDataSink.idl>
+#include <com/sun/star/chart2/data/XDataSource.idl>
+#include <com/sun/star/chart2/data/XDataSeries.idl>
+#include <com/sun/star/chart2/XRegressionCurveContainer.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+ // NOTES
+
+ // kombinierbarkeit - data series combiner (andere Komponente?)
+ //
+ // coordinatesystem-supplier
+ //
+ // chart-typ ? property string rendererServiceName
+
+
+/** reflects the model data of the object that has all the information
+ for a <type>DataRenderer</type> to create a visible data series in
+ a chart.
+
+ <p>It combines one or more <type>DataSequence</type>s which are
+ interpreted by evaluating their role-string.</p>
+
+ @see DataSequenceRole
+ */
+service DataSeries
+{
+ /** allows to connect a CoordinateSystem to a DataSeries
+ */
+// service CoordinateSystemSupplier;
+
+// service ChartTypeSupplier;
+ /** the property interface by which the properties of all
+ supported services are exchanged
+ */
+ service ::com::sun::star::beans::PropertySet;
+
+ /** these properties serve as default for data points.
+
+ <p>So, an attribute for a data point comes from one point in
+ the following hierarchy:</p>
+
+ <ul>
+ <li>default value of data series</li>
+ <li>value from style of data series (if a style was set)</li>
+ <li>value from hard attribute of data series (set with setPropertyValue)</li>
+ <li>value from style of data point (if a style was set)</li>
+ <li>value from hard attribute of data point (set with setPropertyValue)</li>
+ </ul>
+ */
+ service DataPointProperties;
+
+ // ----------------------------------------------------------------------
+
+ /** allows setting a coordinate-system
+ */
+ interface XDataSeries;
+
+ /** allows attaching data sequences to a series.
+ */
+ interface data::XDataSink;
+
+ /** allows querying the data that was set.
+ */
+ interface data::XDataSource;
+
+ /** gives access to the data points contained in a data series.
+
+ <p>The objects returned by the
+ <type scope="com::sun::star::container">XIndexAccess</type>
+ are of type
+ <type scope="com::sun::star::beans">XPropertySet</type>
+ and support the service
+ <type>DataPoint</type>.
+ */
+// interface ::com::sun::star::container::XIndexContainer;
+
+ /** establishes a broadcaster-listener mechanism for the
+ <type scope="com::sun::star::container">XIndexContainer</type>
+ to keep changes and the property
+ <member>DataSeries::AttributedDataPoints</member> in sync.
+ */
+// interface ::com::sun::star::container::XContainer;
+
+ /** Holds regression curves (aka trend-lines) for a data series.
+ */
+ [optional] interface XRegressionCurveContainer;
+
+ // ----------------------------------------------------------------------
+
+ /** This service will be used to render this data series.
+
+ <p>This service name can be used to determine which DataSeries
+ are of the same type.</p>
+
+ <p>The result of the
+ <member>DataSeries::DataSequenceRoles</member> depends on the
+ renderer service set here.</p>
+ */
+ // stored at the DataSeriesGroup now
+// [property] string DataRendererServiceName;
+
+ /** a sequence of indexes denoting which data points have set
+ properties that differ from the default.
+
+ <p>The default values are determined by the properties set at
+ the <member>DataPointProperties</member> of the data
+ series.</p>
+
+ <p>If the sequence is empty, that means that all data points
+ look alike. They are formatted using the propery values set
+ in the data series.</p>
+
+ <p>The indexes in this sequence match the indexes used by the
+ <type>XIndexContainer</type>.</p>
+
+ <p>This property is especially useful for large data series
+ with only some formatted data points, because you do not have
+ to iterate over all elements.</p>
+ */
+ [readonly, optional, property] sequence< long > AttributedDataPoints;
+
+ /** indicates wether this series should be stacked with respect to the previous series.
+ */
+ [property] StackingDirection StackingDirection;
+
+ /** If <TRUE/>, the data points of this series get different
+ colors by default, like in a pie chart.
+ */
+ [optional, property] boolean VaryColorsByPoint;
+
+ /** This property describes wether the series should be shown at
+ the main value axis or at the secondary value axis. Having
+ this property not set or setting it to 0 means that this data
+ series will be scaled at the primary y-axis ( of the
+ coordinate system in which this series is hosted ).
+
+ <p>Setting this property to 1 means that this series should be
+ scaled at the secondary y-axis. If there is no secondary axis
+ the main axis should be used for scaling instead.</p>
+
+ <p>If you want to scale a series at a different x or z axis
+ you need to create an additional coordinate system and host
+ this series there.</p>
+ */
+ [optional, property] long AttachedAxisIndex;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/Diagram.idl b/offapi/com/sun/star/chart2/Diagram.idl
new file mode 100644
index 000000000000..2ca0e1ade86d
--- /dev/null
+++ b/offapi/com/sun/star/chart2/Diagram.idl
@@ -0,0 +1,135 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_Diagram_idl
+#define com_sun_star_chart_Diagram_idl
+
+#ifndef com_sun_star_chart2_XDiagram_idl__
+#include <com/sun/star/chart2/XDiagram.idl>
+#endif
+
+#include <com/sun/star/chart2/XCoordinateSystemContainer.idl>
+#include <com/sun/star/chart2/XTitled.idl>
+#include <com/sun/star/chart2/RelativePosition.idl>
+#include <com/sun/star/layout/RelativeSize.idl>
+#include <com/sun/star/chart/X3DDefaultSetter.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+service Diagram
+{
+ /**
+ */
+ interface ::com::sun::star::chart2::XDiagram;
+
+ /**
+ */
+ interface ::com::sun::star::chart2::XCoordinateSystemContainer;
+
+ /** gives access to the sub title of a chart document
+ */
+ interface XTitled;
+
+ /** makes it easy to set suiteable defaults for illumination and rotation for 3D charts
+ */
+ [optional] interface ::com::sun::star::chart::X3DDefaultSetter;
+
+ /** The position is as a relative position on the page.
+
+ <p>If a relative position is given the diagam is not automatically placed,
+ but instead is placed relative on the page.</p>
+ */
+ [property, maybevoid] ::com::sun::star::chart2::RelativePosition RelativePosition;
+
+ /** The size of the diagram as relative size of the page size.
+ */
+ [property] ::com::sun::star::layout::RelativeSize RelativeSize;
+
+ /** The attributes RelativePosition and RelativeSize should be used for the inner coordinate region without axis labels and without data labels.
+ */
+ [optional, property] boolean PosSizeExcludeLabels;
+
+ /** Sort data points by x values for rendering
+ */
+ [optional, property] boolean SortByXValues;
+
+ /** Draw connection lines for stacked bar charts.
+ */
+ [optional, property] boolean ConnectBars;
+
+ /** If bars of a bar or column chart are attached to different
+ axis, this property determines how to display those. If
+ <TRUE/>, the bars are grouped together in one block for each
+ axis, thus they are painted one group over the other.
+
+ <p>If <FALSE/>, the bars are displayed side-by-side, as if
+ they were all attached to the same axis.</p>
+
+ <p>If all data series of a bar or column chart are attached to
+ only one axis, this property has no effect.</p>
+ */
+ [optional, property] boolean GroupBarsPerAxis;
+
+ /** Starting angle in degrees for pie charts and doughnut charts.
+ */
+ [optional, property] long StartingAngle;
+
+ [optional, property] boolean RightAngledAxes;
+
+ /** Perspective of 3D charts ( [0,100] ).
+ */
+ [optional, property] long Perspective;
+
+ /** Horizontal rotation of 3D charts in degrees ( ]-180,180] ).
+ */
+ [optional, property] long RotationHorizontal;
+
+ /** Vertical rotation of 3D charts in degrees ( ]-180,180] ).
+ */
+ [optional, property] long RotationVertical;
+
+ /** specifies how empty or invalid cells in the provided data should be handled when displayed
+
+ @see ::com::sun::star::chart::MissingValueTreatment
+ */
+ [optional, property] long MissingValueTreatment;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/ErrorBar.idl b/offapi/com/sun/star/chart2/ErrorBar.idl
new file mode 100644
index 000000000000..c9f87c92e4f7
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ErrorBar.idl
@@ -0,0 +1,89 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_ErrorBar_idl
+#define com_sun_star_chart_ErrorBar_idl
+
+#include <com/sun/star/drawing/LineProperties.idl>
+#include <com/sun/star/chart/ErrorBarStyle.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+service ErrorBar
+{
+ /**
+ */
+ service ::com::sun::star::drawing::LineProperties;
+
+ /** allows attaching data sequences to the error bars.
+ @see data::DataSequenceRole
+ */
+ optional interface data::XDataSink;
+
+ /** allows querying data sequences that were set at error bars.
+ @see data::DataSequenceRole
+ */
+ [optional] interface data::XDataSource;
+ /**
+ */
+ [property] ::com::sun::star::chart::ErrorBarStyle ErrorBarStyle;
+
+ /**
+ */
+ [property] double PositiveError;
+
+ /**
+ */
+ [property] double NegativeError;
+
+ /** The weight for the standard deviation.
+ */
+ [property] double Weight;
+
+ /**
+ */
+ [property] boolean ShowPositiveError;
+
+ /**
+ */
+ [property] boolean ShowNegativeError;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
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
diff --git a/offapi/com/sun/star/chart2/ExplicitScaleData.idl b/offapi/com/sun/star/chart2/ExplicitScaleData.idl
new file mode 100644
index 000000000000..7639a4d33378
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ExplicitScaleData.idl
@@ -0,0 +1,45 @@
+#ifndef com_sun_star_chart2_ExplicitScaleData_idl
+#define com_sun_star_chart2_ExplicitScaleData_idl
+
+#ifndef com_sun_star_chart2_Break_idl
+#include <com/sun/star/chart2/Break.idl>
+#endif
+
+#ifndef com_sun_star_chart2_XScaling_idl
+#include <com/sun/star/chart2/XScaling.idl>
+#endif
+
+#ifndef com_sun_star_chart2_AxisOrientation_idl
+#include <com/sun/star/chart2/AxisOrientation.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** This structure contains the explicit values for a scale like Minimum and Maximum.
+ In contrast these values may also be implicit (automatically
+ calculated) as indicated within the structure <type>ScaleData</type>.
+ */
+struct ExplicitScaleData
+{
+ double Minimum;
+ double Maximum;
+ double Origin;
+
+ AxisOrientation Orientation;
+
+ XScaling Scaling;
+
+ sequence< Break > Breaks;
+
+ long AxisType;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/ExplicitSubIncrement.idl b/offapi/com/sun/star/chart2/ExplicitSubIncrement.idl
new file mode 100644
index 000000000000..c1af626c5db1
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ExplicitSubIncrement.idl
@@ -0,0 +1,30 @@
+#ifndef com_sun_star_chart2_ExplicitSubIncrement_idl
+#define com_sun_star_chart2_ExplicitSubIncrement_idl
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+struct ExplicitSubIncrement
+{
+ /** Numbers of intervals between two superior ticks. For an axis
+ this usually means, that <code>IntervalCount - 1</code>
+ sub-tick-marks are displayed between two superior ticks.
+
+ */
+ long IntervalCount;
+
+ /** If <TRUE/>, the distance between two sub-tick-marks on the
+ screen is always the same. If <FALSE/>, the distances may
+ differ depending on the <type>XScaling</type>.
+ */
+ boolean PostEquidistant;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/ExponentialScaling.idl b/offapi/com/sun/star/chart2/ExponentialScaling.idl
new file mode 100644
index 000000000000..95fd88853c71
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ExponentialScaling.idl
@@ -0,0 +1,55 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_ExponentialScaling_idl
+#define com_sun_star_chart2_ExponentialScaling_idl
+
+#ifndef com_sun_star_chart2_XScaling_idl
+#include <com/sun/star/chart2/XScaling.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** Scaling that scales a value <em>x</em> by taking the power of the
+ base to <em>x</em>.
+
+ <p>If not mentioned explicitly, the base for the power function is
+ 10.0</p>
+*/
+service ExponentialScaling
+{
+ service Scaling;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/FillBitmap.idl b/offapi/com/sun/star/chart2/FillBitmap.idl
new file mode 100644
index 000000000000..a3020b50b8b0
--- /dev/null
+++ b/offapi/com/sun/star/chart2/FillBitmap.idl
@@ -0,0 +1,119 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_FillBitmap_idl
+#define com_sun_star_chart2_FillBitmap_idl
+
+// #ifndef __com_sun_star_awt_XBitmap_idl__
+// #include <com/sun/star/awt/XBitmap.idl>
+// #endif
+
+#ifndef __com_sun_star_awt_Point_idl__
+#include <com/sun/star/awt/Point.idl>
+#endif
+#ifndef __com_sun_star_awt_Size_idl__
+#include <com/sun/star/awt/Size.idl>
+#endif
+
+#ifndef __com_sun_star_drawing_BitmapMode_idl__
+#include <com/sun/star/drawing/BitmapMode.idl>
+#endif
+#ifndef __com_sun_star_drawing_RectanglePoint_idl__
+#include <com/sun/star/drawing/RectanglePoint.idl>
+#endif
+
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** This strucutre contains all properties of a bitmap when used as
+ FillStyle.
+
+ @see com::sun::star::drawing::FillProperties
+ */
+struct FillBitmap
+{
+ /** a URL to the bitmap used. This may be an internal URL of the
+ graphics manager.
+ */
+ string aURL;
+
+ /** This is the horizontal and vertical offset where the tile
+ starts.
+
+ <p>It is given in percent in relation to the width of the
+ bitmap.</p>
+ */
+ com::sun::star::awt::Point aOffset;
+
+ /** Every second line (X) / row (Y) of tiles is moved the given
+ percent of the witdh of the bitmap.
+ */
+ com::sun::star::awt::Point aPositionOffset;
+
+ /** The RectanglePoint specifies the position inside of the bitmap
+ to use as the top left position for rendering.
+ */
+ com::sun::star::drawing::RectanglePoint aRectanglePoint;
+
+ /** specifies if the size is given in percentage or as an absolute
+ value.
+
+ <p>If this is <TRUE/>, the properties SizeX and
+ SizeY 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.</p>
+ */
+ boolean bLogicalSize;
+
+ /** This is the size of the tile for filling.
+
+ <p>Depending on the property LogicalSize, this is
+ either relative or absolute.</p>
+ */
+ com::sun::star::awt::Size aSize;
+
+ /** this enum selects how a area is filled with a single bitmap.
+
+ <p>It may be repeated, stretched or displayed with blank space
+ around it.</p>
+ */
+ com::sun::star::drawing::BitmapMode aBitmapMode;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/FormattedString.idl b/offapi/com/sun/star/chart2/FormattedString.idl
new file mode 100644
index 000000000000..5c9c094adc5d
--- /dev/null
+++ b/offapi/com/sun/star/chart2/FormattedString.idl
@@ -0,0 +1,44 @@
+#ifndef com_sun_star_chart_XFormattedString_idl
+#define com_sun_star_chart_XFormattedString_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#include <com/sun/star/beans/PropertySet.idl>
+#include <com/sun/star/style/CharacterProperties.idl>
+#include <com/sun/star/style/CharacterPropertiesAsian.idl>
+#include <com/sun/star/style/CharacterPropertiesComplex.idl>
+
+#include <com/sun/star/chart2/XFormattedString.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+service FormattedString
+{
+ /**
+ */
+ service com::sun::star::beans::PropertySet;
+
+ service ::com::sun::star::style::CharacterProperties;
+ [optional] service ::com::sun::star::style::CharacterPropertiesAsian;
+ [optional] service ::com::sun::star::style::CharacterPropertiesComplex;
+
+ /**
+ */
+ interface XFormattedString;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/GridProperties.idl b/offapi/com/sun/star/chart2/GridProperties.idl
new file mode 100644
index 000000000000..878e63ec2569
--- /dev/null
+++ b/offapi/com/sun/star/chart2/GridProperties.idl
@@ -0,0 +1,63 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_GridProperties_idl
+#define com_sun_star_chart_GridProperties_idl
+
+#include <com/sun/star/beans/XPropertySet.idl>
+
+#include <com/sun/star/chart2/XGrid.idl>
+
+#include <com/sun/star/drawing/LineProperties.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** Must be supported by all grids
+ */
+service GridProperties
+{
+ /** properties for formatting the grid lines
+ */
+ service ::com::sun::star::drawing::LineProperties;
+
+ /** Determines, whether the grid should be redered by the view.
+ */
+ [property] boolean Show;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/IncrementData.idl b/offapi/com/sun/star/chart2/IncrementData.idl
new file mode 100644
index 000000000000..f487c26e576d
--- /dev/null
+++ b/offapi/com/sun/star/chart2/IncrementData.idl
@@ -0,0 +1,69 @@
+#ifndef com_sun_star_chart2_IncrementData_idl
+#define com_sun_star_chart2_IncrementData_idl
+
+#include <com/sun/star/chart2/SubIncrement.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** An IncrementData 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 IncrementData
+{
+ /** if the any contains a double value this is used as a fixed
+ Distance value. Otherwise, if the any is empty or contains an
+ incompatible type, the Distance is meant to be calculated
+ automatically by the view component representing the model
+ containing this increment.
+
+ @see <type>ExplicitIncrementData</type>
+ */
+ any 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>
+ */
+ any PostEquidistant;
+
+ /** if the any contains a double value this is used as a fixed
+ BaseValue. Otherwise, if the any is empty or contains an
+ incompatible type, the BaseValue is meant to be calculated
+ automatically by the view component representing the model
+ containing this increment.
+
+ @see <type>ExplicitIncrementData</type>
+ */
+ any 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
+ given by the preceding SubIncrement.</p>
+ */
+ sequence< SubIncrement > SubIncrements;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/InterpretedData.idl b/offapi/com/sun/star/chart2/InterpretedData.idl
new file mode 100644
index 000000000000..0eedd9c44df3
--- /dev/null
+++ b/offapi/com/sun/star/chart2/InterpretedData.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_InterpretedData_idl
+#define com_sun_star_chart2_InterpretedData_idl
+
+#include <com/sun/star/chart2/XDataSeries.idl>
+#include <com/sun/star/chart2/data/XLabeledDataSequence.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** offers tooling to interpret different data sources in a structural
+ and chart-type-dependent way.
+ */
+struct InterpretedData
+{
+ /**
+ */
+ sequence< sequence< XDataSeries > > Series;
+
+ /**
+ */
+ data::XLabeledDataSequence Categories;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/Legend.idl b/offapi/com/sun/star/chart2/Legend.idl
new file mode 100644
index 000000000000..0d51492ae4c2
--- /dev/null
+++ b/offapi/com/sun/star/chart2/Legend.idl
@@ -0,0 +1,101 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_Legend_idl
+#define com_sun_star_chart2_Legend_idl
+
+#include <com/sun/star/chart2/XLegend.idl>
+#include <com/sun/star/chart2/LegendPosition.idl>
+#include <com/sun/star/chart2/LegendExpansion.idl>
+
+#include <com/sun/star/beans/PropertySet.idl>
+#include <com/sun/star/drawing/LineProperties.idl>
+#include <com/sun/star/drawing/FillProperties.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** Describes a legend for a <type>Diagram</type>.
+ */
+service Legend
+{
+ service ::com::sun::star::drawing::FillProperties;
+ service ::com::sun::star::drawing::LineProperties;
+ service ::com::sun::star::beans::PropertySet;
+
+ /** The interface for registering and removing legend entries.
+ */
+ interface ::com::sun::star::chart2::XLegend;
+
+ /** Provides an automated position
+ */
+ [property] LegendPosition AnchorPosition;
+
+ /** Determines how the aspect ratio of the legend should roughly
+ be.
+
+ <p>Set the Expansion to <member>LegendExpansion::HIGH</member>
+ for a legend that is positioned on the right or left hand
+ side. Use <member>LegendExpansion::WIDE</member> for a legend
+ that is positioned on top or the bottom.</p>
+ */
+ [property] LegendExpansion Expansion;
+
+ /** Determines, whether the legend should be redered by the view.
+ */
+ [property] boolean Show;
+
+ /** contains the size of the page at the time when properties were
+ set (e.g. the CharHeight).
+
+ <p>This way it is possible to resize objects (like text) in
+ the view without modifying the model.</p>
+ */
+ [property, maybevoid] com::sun::star::awt::Size ReferencePageSize;
+
+ /** The position is as a relative position on the page.
+
+ <p>If a relative position is given the legend is not automatically placed,
+ but instead is placed relative on the page.</p>
+
+ <p>If <void/>, the legend position is solely determined by the
+ <member>AnchorPosition</member>.</p>
+ */
+ [property, maybevoid] ::com::sun::star::chart2::RelativePosition RelativePosition;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/LegendExpansion.idl b/offapi/com/sun/star/chart2/LegendExpansion.idl
new file mode 100644
index 000000000000..8a51a47bb3a1
--- /dev/null
+++ b/offapi/com/sun/star/chart2/LegendExpansion.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_LegendExpansion_idl
+#define com_sun_star_chart_LegendExpansion_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+enum LegendExpansion
+{
+ /** The legend is laid out such that it is wider that high. The
+ aspect ratio is greater than 1.
+
+ <p>This is usually used for legends that are displayed at the
+ top or bottom of the page.</p>
+ */
+ WIDE,
+
+ /** The legend is laid out such that it is higher that wide. The
+ aspect ratio is less than 1.
+
+ <p>This is usually used for legends that are displayed on the
+ left or right hand side of the page.</p>
+ */
+ HIGH,
+
+ /** The legend is laid out such that height and width are not
+ differing too much. It is not guaranteed to have an aspect
+ ratio of 1.
+ */
+ BALANCED,
+
+ /** The aspect ratio of the legend is given explicitly
+ */
+ CUSTOM
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/LegendPosition.idl b/offapi/com/sun/star/chart2/LegendPosition.idl
new file mode 100644
index 000000000000..0cdd32270eb5
--- /dev/null
+++ b/offapi/com/sun/star/chart2/LegendPosition.idl
@@ -0,0 +1,71 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_LegendPosition_idl
+#define com_sun_star_chart_LegendPosition_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+enum LegendPosition
+{
+ /** In LTR mode this is the left-hand side
+ */
+ LINE_START,
+
+ /** In LTR mode this is the right-hand side
+
+ <p>This usually is the default.</p>
+ */
+ LINE_END,
+
+ /** In LTR mode this is the top side
+ */
+ PAGE_START,
+
+ /** In LTR mode this is the bottom side
+ */
+ PAGE_END,
+
+ /** The position of the legend is given by an offset value
+ */
+ CUSTOM
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/LegendSymbolStyle.idl b/offapi/com/sun/star/chart2/LegendSymbolStyle.idl
new file mode 100644
index 000000000000..13d47ee3a7c9
--- /dev/null
+++ b/offapi/com/sun/star/chart2/LegendSymbolStyle.idl
@@ -0,0 +1,107 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_LegendSymbolStyle_idl
+#define com_sun_star_chart_LegendSymbolStyle_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+
+#include <com/sun/star/chart2/XTitle.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+enum LegendSymbolStyle
+{
+ /** A square box with border.
+ */
+ BOX,
+
+ /** A rectangle that is wider than high with border.
+ */
+ BAR,
+
+ /** A square box with border, that may change its aspect ratio if
+ the layout of the legend requires this.
+ */
+ RECTANGLE,
+
+ /** A filled rectangle with no border that uses all the space
+ available for the legend entry's symbol, leaving no padding
+ space. This is especially useful for legends representing a
+ color-scale.
+ */
+ STRETCHED_RECTANGLE,
+
+ /** A line extending from the left edge to the right edge
+ */
+ HORIZONTAL_LINE,
+
+ /** A line extending from the top edge to the bottom edge
+ */
+ VERTICAL_LINE,
+
+ /** A line spanning the diagonal of the box you would get with
+ <member>BOX</member>.
+ */
+ DIAGONAL_LINE,
+
+ /** A line like with <member>LINE</member>, but with a small
+ bordered square box in the middle.
+ */
+ LINE_WITH_BOX,
+
+ /** A line like with <member>LINE</member>, but with the symbol
+ that is returned by <member>XLegendEntry::getSymbol</member>
+ (see also <member>USER_DEFINED</member>).
+ */
+ LINE_WITH_SYMBOL,
+
+ /** A bordered circle which has the same bounding-box as the
+ <member>BOX</member>.
+ */
+ CIRCLE,
+
+ /** Use the symbol that is returned by
+ <member>XLegendEntry::getSymbol</member>.
+ */
+ USER_DEFINED
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/LightSource.idl b/offapi/com/sun/star/chart2/LightSource.idl
new file mode 100644
index 000000000000..d437338ede7c
--- /dev/null
+++ b/offapi/com/sun/star/chart2/LightSource.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_LightSource_idl
+#define com_sun_star_chart_LightSource_idl
+
+#include <com/sun/star/drawing/Direction3D.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+struct LightSource
+{
+ /** the light source's color
+ */
+ long nDiffuseColor;
+
+ /** the direction into which the light-source points
+ */
+ ::com::sun::star::drawing::Direction3D aDirection;
+
+ /**
+ */
+ boolean bIsEnabled;
+
+ /** When <TRUE/>, the specularity of material is taken into
+ account when lighting an object.
+ */
+ boolean bSpecular;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/LinearScaling.idl b/offapi/com/sun/star/chart2/LinearScaling.idl
new file mode 100644
index 000000000000..6d1b4c90aa38
--- /dev/null
+++ b/offapi/com/sun/star/chart2/LinearScaling.idl
@@ -0,0 +1,56 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_LinearScaling_idl
+#define com_sun_star_chart2_LinearScaling_idl
+
+#ifndef com_sun_star_chart2_XScaling_idl
+#include <com/sun/star/chart2/XScaling.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** Scaling that scales a value <em>x</em> by calculating <em>m &middot;
+ x + t</em>.
+
+ <p>If not mentioned explicitly, the parameter <em>m</em> is 1.0
+ and <em>t</em> is 0.0, which means the transformation is an
+ identical mapping.</p>
+*/
+service LinearScaling
+{
+ service Scaling;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/LogarithmicScaling.idl b/offapi/com/sun/star/chart2/LogarithmicScaling.idl
new file mode 100644
index 000000000000..0c6c2eedba26
--- /dev/null
+++ b/offapi/com/sun/star/chart2/LogarithmicScaling.idl
@@ -0,0 +1,54 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_LogarithmicScaling_idl
+#define com_sun_star_chart2_LogarithmicScaling_idl
+
+#ifndef com_sun_star_chart2_XScaling_idl
+#include <com/sun/star/chart2/XScaling.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** Scaling that scales values by taking their logarithm.
+
+ <p>If not mentioned explicitly, the base for the logarithm is
+ 10.0</p>
+*/
+service LogarithmicScaling
+{
+ service Scaling;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/LogicTargetModel.idl b/offapi/com/sun/star/chart2/LogicTargetModel.idl
new file mode 100644
index 000000000000..f4edf4f31c0d
--- /dev/null
+++ b/offapi/com/sun/star/chart2/LogicTargetModel.idl
@@ -0,0 +1,41 @@
+#ifndef com_sun_star_chart2_LogicTargetModel_idl
+#define com_sun_star_chart2_LogicTargetModel_idl
+
+#include <com/sun/star/beans/XPropertySet.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+/**
+ <p>The properties of this service correspond to the similar named attributes
+ and subelements of the XML element chart2:increment in the chart2 file format.</p>
+*/
+service LogicTargetModel
+{
+ /** identifies an instance of this service within one chartdocument.
+ */
+ [ readonly, property ] string ID;
+
+ /** identifies an instance of the service com::sun::star::chart2::LegendModel within one chartdocument.
+ * that instance is used to automatically calculate missing properties
+ */
+ [ property ] string LegendID;
+
+ /** not BOUND nor CONSTRAINED in terms of Listener notifications,
+ * each element in the sequence must implement the service com::sun::star::chart2::CoordinateSystem
+ */
+ [ property ] sequence< ::com::sun::star::beans::XPropertySet > CoordinateSystems;
+
+ /** MAYBEVOID, not BOUND nor CONSTRAINED in terms of Listener notifications,
+ * each element in the sequence must implement the service com::sun::star::chart2::LogicTargetModel
+ */
+ [ property ] sequence< ::com::sun::star::beans::XPropertySet > LogicTargetModels;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/MutableDataSequence.idl b/offapi/com/sun/star/chart2/MutableDataSequence.idl
new file mode 100644
index 000000000000..8c37c8d74de5
--- /dev/null
+++ b/offapi/com/sun/star/chart2/MutableDataSequence.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_MutableDataSequence_idl
+#define com_sun_star_chart2_MutableDataSequence_idl
+
+#include <com/sun/star/chart2/DataSequence.idl>
+#include <com/sun/star/chart2/XMutableDataSequence.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+service MutableDataSequence
+{
+ /** provides read-access to and structural properties of the
+ underlying data.
+ */
+ service DataSequence;
+
+ /** provides write-access to the underlying data.
+ */
+ interface ::com::sun::star::chart2::XMutableDataSequence;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/PieChartOffsetMode.idl b/offapi/com/sun/star/chart2/PieChartOffsetMode.idl
new file mode 100644
index 000000000000..0210ed104a52
--- /dev/null
+++ b/offapi/com/sun/star/chart2/PieChartOffsetMode.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_PieChartOffsetMode_idl
+#define com_sun_star_chart2_PieChartOffsetMode_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** Mode used for a pie chart template to determine the initial state
+ of exploded pies.
+ */
+enum PieChartOffsetMode
+{
+ /** Default, no pies are exploded.
+ */
+ NONE,
+
+ /** All pies are exploded by a certain percentage. The default is
+ 10 percent.
+ */
+ ALL_EXPLODED
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/PowerScaling.idl b/offapi/com/sun/star/chart2/PowerScaling.idl
new file mode 100644
index 000000000000..1d82f2a8f951
--- /dev/null
+++ b/offapi/com/sun/star/chart2/PowerScaling.idl
@@ -0,0 +1,55 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_PowerScaling_idl
+#define com_sun_star_chart2_PowerScaling_idl
+
+#ifndef com_sun_star_chart2_XScaling_idl
+#include <com/sun/star/chart2/XScaling.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** Scaling that scales a value <em>x</em> by taking the power of
+ <em>x</em> to the exponent.
+
+ <p>If not mentioned explicitly, the exponent for the power
+ function is 10.0</p>
+*/
+service PowerScaling
+{
+ service Scaling;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/PropertyPool.idl b/offapi/com/sun/star/chart2/PropertyPool.idl
new file mode 100644
index 000000000000..dfceeaf102ae
--- /dev/null
+++ b/offapi/com/sun/star/chart2/PropertyPool.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_PropertyPool_idl
+#define com_sun_star_chart2_PropertyPool_idl
+
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/style/Style.idl>
+#include <com/sun/star/style/XDefaultsSupplier.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+service PropertyPool
+{
+ /** must be usable as a style
+ */
+ service ::com::sun::star::style::Style;
+
+ /** must provide defaults for all properties
+
+ <p>As the service
+ <type scope="com::sun::star::style">Style</type> implies the
+ implementation of
+ <type scope="com::sun::star::beans">XPropertySet</type>, the
+ method
+ <member scope="com::sun::star::style">XDefaultsSupplier::getDefaults</member>
+ should return itself.
+ */
+ interface ::com::sun::star::style::XDefaultsSupplier;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/RegressionCurve.idl b/offapi/com/sun/star/chart2/RegressionCurve.idl
new file mode 100644
index 000000000000..4a7c416bf40b
--- /dev/null
+++ b/offapi/com/sun/star/chart2/RegressionCurve.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_RegressionCurve_idl
+#define com_sun_star_chart2_RegressionCurve_idl
+
+#include <com/sun/star/beans/PropertySet.idl>
+#include <com/sun/star/drawing/LineProperties.idl>
+#include <com/sun/star/chart2/XRegressionCurve.idl>
+#include <com/sun/star/lang/XServiceName.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+service RegressionCurve
+{
+ /**
+ */
+ service ::com::sun::star::beans::PropertySet;
+ /**
+ */
+ service ::com::sun::star::drawing::LineProperties;
+
+ /**
+ */
+ interface XRegressionCurve;
+
+// /**
+// */
+// interface ::com::sun::star::lang::XServiceName;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/RegressionCurveEquation.idl b/offapi/com/sun/star/chart2/RegressionCurveEquation.idl
new file mode 100644
index 000000000000..99204903f192
--- /dev/null
+++ b/offapi/com/sun/star/chart2/RegressionCurveEquation.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_RegressionCurveEquation_idl
+#define com_sun_star_chart2_RegressionCurveEquation_idl
+
+#include <com/sun/star/beans/PropertySet.idl>
+#include <com/sun/star/drawing/LineProperties.idl>
+#include <com/sun/star/drawing/FillProperties.idl>
+#include <com/sun/star/style/CharacterProperties.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+service RegressionCurveEquation
+{
+ service ::com::sun::star::beans::PropertySet;
+ service ::com::sun::star::drawing::FillProperties;
+ service ::com::sun::star::drawing::LineProperties;
+ service ::com::sun::star::style::CharacterProperties;
+
+ [property] boolean ShowEquation;
+ [property] boolean ShowCorrelationCoefficient;
+
+ [property, maybevoid] ::com::sun::star::chart2::RelativePosition RelativePosition;
+ [property, maybevoid] ::com::sun::star::awt::Size ReferencePageSize;
+
+ [property] long NumberFormat;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif \ No newline at end of file
diff --git a/offapi/com/sun/star/chart2/RelativePosition.idl b/offapi/com/sun/star/chart2/RelativePosition.idl
new file mode 100644
index 000000000000..7363a47f8f5a
--- /dev/null
+++ b/offapi/com/sun/star/chart2/RelativePosition.idl
@@ -0,0 +1,88 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_RelativePosition_idl
+#define com_sun_star_chart2_RelativePosition_idl
+
+#ifndef __com_sun_star_drawing_Alignment_idl__
+#include <com/sun/star/drawing/Alignment.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** Determines a position of an object relative to a size defined by other means.
+ Values from 0 to 1 cover the entire reference rectangle. Values
+ may also be outside this range, especially negative.
+ */
+struct RelativePosition
+{
+ /** The position in the primary direction.
+ The direction is defined by the object using this point.
+
+ <p>For example for western languages the primary direction may be
+ the horizontal distance measured from left to right.</p>
+
+ <p>The values are relative to a reference size (for example the page size).
+ Values between 0 and 1 span the complete bounding rectangle.</p>
+ */
+ double Primary;
+
+ /** The position in the secondary direction.
+ The direction is defined by the object using this point.
+
+ <p>For example for western languages the secondary direction may be
+ the vertical distance measured from top to bottom.</p>
+
+ <p>The values are relative to a reference size (for example the page size).
+ Values between 0 and 1 span the complete bounding rectangle.</p>
+ */
+ double Secondary;
+
+ /** This indicates how the object is placed at the relative position.
+
+ <p>The Anchor indicates which point of the placed object
+ will be placed at the coordinates given within Primary and Secondary.</p>
+
+ <p>For example if Anchor is TOP_LEFT the top left corner of an object will
+ be placed at the given coorediantes. If Anchor is RIGHT the right middle corner of the object will
+ be placed at the given coorediantes.</p>
+ */
+ ::com::sun::star::drawing::Alignment Anchor;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/RelativeSize.idl b/offapi/com/sun/star/chart2/RelativeSize.idl
new file mode 100644
index 000000000000..669bf0f0df24
--- /dev/null
+++ b/offapi/com/sun/star/chart2/RelativeSize.idl
@@ -0,0 +1,84 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_RelativeSize_idl
+#define com_sun_star_chart2_RelativeSize_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** Gives a position relative to some size defined by other means.
+ Values from 0 to 1 cover the entire reference rectangle. Values
+ may also be greater than one, meaning a bigger size than the
+ reference size. Negative values are not allowed.
+ */
+struct RelativeSize
+{
+ /** The extension in the primary direction. The direction is
+ defined by the object using this point.
+
+ <p>Typically, the direction is determined by an
+ <type>Orientation</type>. Another typical use would be the
+ direction of a given orientation-angle.</p>
+
+ <p>The values are relative to the page or an object. Values
+ between 0 and 1 span the complete bounding rectangle of the
+ page/object.</p>
+
+ <p>For a western <type>Orientation</type> this is the
+ width.</p>
+ */
+ double Primary;
+
+ /** The extension in the secondary direction. The direction is
+ defined by the object using this point.
+
+ <p>Typically, the direction is determined by an
+ <type>Orientation</type>. Another typical use would be the
+ direction perpendicular to a given orientation-angle.</p>
+
+ <p>The values are relative to the page or an object. Values
+ between 0 and 1 span the complete bounding rectangle of the
+ page/object.</p>
+
+ <p>For a western <type>Orientation</type> this is the
+ height.</p>
+ */
+ double Secondary;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/ScaleData.idl b/offapi/com/sun/star/chart2/ScaleData.idl
new file mode 100644
index 000000000000..addd66e10320
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ScaleData.idl
@@ -0,0 +1,97 @@
+#ifndef com_sun_star_chart2_ScaleData_idl
+#define com_sun_star_chart2_ScaleData_idl
+
+#ifndef com_sun_star_chart2_Break_idl
+#include <com/sun/star/chart2/Break.idl>
+#endif
+
+#ifndef com_sun_star_chart2_XScaling_idl
+#include <com/sun/star/chart2/XScaling.idl>
+#endif
+
+#ifndef com_sun_star_chart2_AxisOrientation_idl
+#include <com/sun/star/chart2/AxisOrientation.idl>
+#endif
+
+#ifndef com_sun_star_chart2_data_XLabeledDataSequence_idl
+#include <com/sun/star/chart2/data/XLabeledDataSequence.idl>
+#endif
+
+#ifndef com_sun_star_chart2_AxisType_idl
+#include <com/sun/star/chart2/AxisType.idl>
+#endif
+
+#ifndef com_sun_star_chart_IncrementData_idl
+#include <com/sun/star/chart2/IncrementData.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+struct ScaleData
+{
+ /** if the any contains a double value this is used as a fixed
+ maximum. Otherwise, if the any is empty or contains an
+ incompatible type, the maximum is automatic.
+
+ <p>If the maximum is automatic, this means, each view that
+ represents the model containing this scale, has to calculate a
+ maximum by its own means.</p>
+ */
+ any Minimum;
+
+ /** if the any contains a double value this is used as a fixed
+ minimum. Otherwise, if the any is empty or contains an
+ incompatible type, the minimum is automatic.
+
+ <p>If the minimum is automatic, this means, each view that
+ represents the model containing this scale, has to calculate a
+ minimum by its own means.</p>
+ */
+ any Maximum;
+
+
+ /** The Origin indicates where other axes cross this axis.
+ If the any contains a double value that value is used.
+ Otherwise an appropriate value has to be calculated
+ by that instances using Origin.
+ */
+ any Origin;
+
+ /** Axis orientation (standard or reversed).
+
+ <p>If used at the Y axis in pie charts or doughnut charts, specifies
+ the rotation direction of the pie. The value
+ <const>AxisOrientation::MATHEMATICAL</const> rotates the pie
+ counterclockwise, the value <const>AxisOrientation::REVERSE</const>
+ rotates the pie clockwise.</p>
+
+ <p>Note: Is this a good place for the axis orientation? Two axes may
+ use the same scale, but point into two different directions.</p>
+ */
+ AxisOrientation Orientation;
+
+ XScaling Scaling;
+
+ sequence< Break > Breaks;
+
+ data::XLabeledDataSequence Categories;
+
+ /** describes the type of the axis.
+
+ <p>It can be a real number axis or a category axis or something else.
+ AxisType is one value out of the constant group <type>AxisType</type>.</p>
+ */
+ long AxisType;
+
+ IncrementData IncrementData;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/Scaling.idl b/offapi/com/sun/star/chart2/Scaling.idl
new file mode 100644
index 000000000000..47b554dbc72e
--- /dev/null
+++ b/offapi/com/sun/star/chart2/Scaling.idl
@@ -0,0 +1,53 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_Scaling_idl
+#define com_sun_star_chart2_Scaling_idl
+
+#ifndef com_sun_star_chart2_XScaling_idl
+#include <com/sun/star/chart2/XScaling.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** stateless service
+*/
+service Scaling
+{
+ /** required interface
+ */
+ interface com::sun::star::chart2::XScaling;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/StackingDirection.idl b/offapi/com/sun/star/chart2/StackingDirection.idl
new file mode 100644
index 000000000000..fcdb098d8a96
--- /dev/null
+++ b/offapi/com/sun/star/chart2/StackingDirection.idl
@@ -0,0 +1,52 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_StackingDirection_idl
+#define com_sun_star_chart2_StackingDirection_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+enum StackingDirection
+{
+ NO_STACKING,
+ Y_STACKING,
+ Z_STACKING
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/StandardDiagramCreationParameters.idl b/offapi/com/sun/star/chart2/StandardDiagramCreationParameters.idl
new file mode 100644
index 000000000000..e5bc31759ace
--- /dev/null
+++ b/offapi/com/sun/star/chart2/StandardDiagramCreationParameters.idl
@@ -0,0 +1,59 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_StandardDiagramCreationParameters_idl
+#define com_sun_star_chart_StandardDiagramCreationParameters_idl
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** parameters that may be passed to
+ <member>XChartTypeTemplate::createDiagramByDataSource</member>.
+ */
+service StandardDiagramCreationParameters
+{
+ /** States whether the first <type>XLabeledDataSequence</type> in
+ a data-source is used as categories.
+ */
+ [optional, property] boolean HasCategories;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/SubIncrement.idl b/offapi/com/sun/star/chart2/SubIncrement.idl
new file mode 100644
index 000000000000..f076db0eef92
--- /dev/null
+++ b/offapi/com/sun/star/chart2/SubIncrement.idl
@@ -0,0 +1,31 @@
+#ifndef com_sun_star_chart2_SubIncrement_idl
+#define com_sun_star_chart2_SubIncrement_idl
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+struct SubIncrement
+{
+ /** should contain nothing for <em>auto</em>, or an integer value
+ for an explicit interval count.
+
+ @see <type>ExplicitSubIncrement</type>
+ */
+ any IntervalCount;
+
+ /** should contain nothing for <em>auto</em>, or a boolean value
+ for an explicit setting.
+
+ @see <type>ExplicitSubIncrement</type>
+ */
+ any PostEquidistant;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/Symbol.idl b/offapi/com/sun/star/chart2/Symbol.idl
new file mode 100644
index 000000000000..3743a68253a1
--- /dev/null
+++ b/offapi/com/sun/star/chart2/Symbol.idl
@@ -0,0 +1,122 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_Symbol_idl
+#define com_sun_star_chart2_Symbol_idl
+
+#ifndef __com_sun_star_drawing_PolyPolygonBezierCoords_idl__
+#include <com/sun/star/drawing/PolyPolygonBezierCoords.idl>
+#endif
+
+#include <com/sun/star/awt/Size.idl>
+#include <com/sun/star/graphic/XGraphic.idl>
+
+#include <com/sun/star/chart2/SymbolStyle.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** properties that are used for DataSeries that display symbols.
+ */
+struct Symbol
+{
+ /** determines which of the following members determines the
+ appearance of the symbol.
+ */
+ SymbolStyle Style;
+
+ /** The given polygon is used as symbol.
+ */
+ com::sun::star::drawing::PolyPolygonBezierCoords PolygonCoords;
+
+ /** Use the nth standard symbol, if <member>Style</member> is set
+ to <member>SymbolStlye::STANDARD</member>.
+
+ <p>If n is the number of standard symbols available in an
+ implementation, the symbol number is
+ <member>StandardSymbol</member> modulo n.</p>
+
+ <p>The default implementation for example currently uses 8 different
+ standard symbols that are matched to the numbers 0 to 7.
+
+ <table border=1 rules="groups">
+ <thead>
+ <tr><th>&nbsp;value StandardSymbol&nbsp;</th><th>&nbsp;visible Symbol&nbsp;</th></tr>
+ </thead>
+ <tbody>
+ <tr><td><code>0</code></td><td>square</td></tr>
+ <tr><td><code>1</code></td><td>diamond</td></tr>
+ <tr><td><code>2</code></td><td>down arrow</td></tr>
+ <tr><td><code>3</code></td><td>up arrow</td></tr>
+ <tr><td><code>4</code></td><td>right arrow</td></tr>
+ <tr><td><code>5</code></td><td>left arrow</td></tr>
+ <tr><td><code>6</code></td><td>bowtie</td></tr>
+ <tr><td><code>7</code></td><td>sandglass</td></tr>
+ </tbody>
+ </table>
+
+ </p>
+ */
+ long StandardSymbol;
+
+ /** use this graphic as symbol
+ */
+ com::sun::star::graphic::XGraphic Graphic;
+
+ /** The size of the symbol in 100th of a mm.
+
+ @todo use a structure using doubles insted of longs
+ */
+ com::sun::star::awt::Size Size;
+
+ /** The color used for drawing the border of symbols.
+
+ <p>Only effective if <member>Style</member> is
+ <member>SymbolStyle::AUTO</member>,
+ <member>SymbolStyle::STANDARD</member> or
+ <member>SymbolStyle::POLYGON</member>.</p>
+ */
+ long BorderColor;
+
+ /** The color used for filling symbols that contain closed polygons.
+
+ <p>Only effective if <member>Style</member> is
+ <member>SymbolStyle::AUTO</member>,
+ <member>SymbolStyle::STANDARD</member> or
+ <member>SymbolStyle::POLYGON</member>.</p>
+ */
+ long FillColor;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/chart2/SymbolStyle.idl b/offapi/com/sun/star/chart2/SymbolStyle.idl
new file mode 100644
index 000000000000..654ed38923c2
--- /dev/null
+++ b/offapi/com/sun/star/chart2/SymbolStyle.idl
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_SymbolStyle_idl
+#define com_sun_star_chart2_SymbolStyle_idl
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** determines what kind of symbol to use
+ */
+enum SymbolStyle
+{
+ /** The symbol is invisible
+ */
+ NONE,
+
+ /** The symbol is taken automatically.
+
+ <p>This will typically be the nth standard symbol for the nth
+ data series.</p>
+ */
+ AUTO,
+
+ /** uses one of the standard symbols. Which standard symbol is
+ given in <member>Symbol::StandardSymbol</member>.
+ */
+ STANDARD,
+
+ /** uses the symbol given in the
+ <type scope="com::sun::star::drawing">PolyPolygonBezierCoords</type>
+ given in <member>Symbol::PolygonCoords</member>.
+ */
+ POLYGON,
+
+ /** uses the graphic given in
+ <member>Symbol::Graphic</member> as symbol.
+ */
+ GRAPHIC
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/chart2/TextAnchor.idl b/offapi/com/sun/star/chart2/TextAnchor.idl
new file mode 100644
index 000000000000..b5de66e70eb8
--- /dev/null
+++ b/offapi/com/sun/star/chart2/TextAnchor.idl
@@ -0,0 +1,51 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_TextAnchor_idl
+#define com_sun_star_chart2_TextAnchor_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+constants TextAnchor
+{
+
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/TickmarkStyle.idl b/offapi/com/sun/star/chart2/TickmarkStyle.idl
new file mode 100644
index 000000000000..88e27470d83e
--- /dev/null
+++ b/offapi/com/sun/star/chart2/TickmarkStyle.idl
@@ -0,0 +1,61 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_TickmarkStyle_idl
+#define com_sun_star_chart2_TickmarkStyle_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+constants TickmarkStyle
+{
+ /** Do not display any marks.
+ */
+ const long NONE = 0;
+
+ /** Display marks that point into the diagram area.
+ */
+ const long INNER = 1;
+
+ /** Display marks that point out of the diagram area.
+ */
+ const long OUTER = 2;
+
+ // note: to get both, add INNER and OUTER
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/Title.idl b/offapi/com/sun/star/chart2/Title.idl
new file mode 100644
index 000000000000..d28cdcb6c4f9
--- /dev/null
+++ b/offapi/com/sun/star/chart2/Title.idl
@@ -0,0 +1,94 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_Title_idl
+#define com_sun_star_chart_Title_idl
+
+#include <com/sun/star/style/ParagraphProperties.idl>
+#include <com/sun/star/layout/LayoutElement.idl>
+
+#include <com/sun/star/chart2/XTitle.idl>
+
+#include <com/sun/star/beans/PropertySet.idl>
+#include <com/sun/star/drawing/LineProperties.idl>
+#include <com/sun/star/drawing/FillProperties.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+service Title
+{
+ /** only mandatory properties
+ */
+ service ::com::sun::star::style::ParagraphProperties;
+ service ::com::sun::star::drawing::FillProperties;
+ service ::com::sun::star::drawing::LineProperties;
+ service ::com::sun::star::beans::PropertySet;
+ [optional] service ::com::sun::star::layout::LayoutElement;
+
+ /**
+ */
+ interface XTitle;
+
+ /** the rotation of the title's text in degrees in the range
+ [0,360).
+ */
+ [property] double TextRotation;
+
+ /** writes the characters of the title on top of each other if set
+ to <TRUE/>.
+ */
+ [property] boolean StackCharacters;
+
+ /** The position is a relative position on the page.
+
+ <p>If a relative position is given the title is not automatically placed,
+ but instead is placed relative on the page.</p>
+ */
+ [property, maybevoid] ::com::sun::star::chart2::RelativePosition RelativePosition;
+
+
+ /** contains the size of the page at the time when properties were
+ set (e.g. the CharHeight).
+
+ <p>This way it is possible to resize objects (like text) in
+ the view without modifying the model.</p>
+ */
+ [property, maybevoid] com::sun::star::awt::Size ReferencePageSize;
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/TransparencyStyle.idl b/offapi/com/sun/star/chart2/TransparencyStyle.idl
new file mode 100644
index 000000000000..13a1c93b1154
--- /dev/null
+++ b/offapi/com/sun/star/chart2/TransparencyStyle.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_TransparencyStyle_idl
+#define com_sun_star_chart2_TransparencyStyle_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+enum TransparencyStyle
+{
+ /** no transparency attribute is evaluated
+ */
+ NONE,
+
+ /** The property Transparency is evaluated, TransparencyGradient
+ is ignored
+ */
+ LINEAR,
+
+ /** The property TransparencyGradient is evaluated, Transparency
+ is ignored
+ */
+ GRADIENT
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/ViewLegendEntry.idl b/offapi/com/sun/star/chart2/ViewLegendEntry.idl
new file mode 100644
index 000000000000..0e5ea231628c
--- /dev/null
+++ b/offapi/com/sun/star/chart2/ViewLegendEntry.idl
@@ -0,0 +1,58 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_ViewLegendEntry_idl
+#define com_sun_star_chart2_ViewLegendEntry_idl
+
+#include <com/sun/star/drawing/XShape.idl>
+#include <com/sun/star/chart2/XFormattedString.idl>
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/**
+ */
+struct ViewLegendEntry
+{
+ /** The legend symbol that represents a data series or other
+ information contained in the legend
+ */
+ ::com::sun::star::drawing::XShape aSymbol;
+
+ /** The descriptive text for a legend entry.
+ */
+ sequence< XFormattedString > aLabel;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/chart2/XAxis.idl b/offapi/com/sun/star/chart2/XAxis.idl
new file mode 100644
index 000000000000..9a116c1a3bd4
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XAxis.idl
@@ -0,0 +1,56 @@
+#ifndef com_sun_star_chart_XAxis_idl
+#define com_sun_star_chart_XAxis_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#include <com/sun/star/beans/XPropertySet.idl>
+
+#include <com/sun/star/chart2/ScaleData.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XAxis : ::com::sun::star::uno::XInterface
+{
+ /**
+ */
+ void setScaleData( [in] ScaleData aScale );
+
+ /**
+ */
+ ScaleData getScaleData();
+
+ /** the returned property set must support the service
+ <type>GridProperties</type>
+ */
+ com::sun::star::beans::XPropertySet getGridProperties();
+
+ /** the returned property sets must support the service
+ <type>GridProperties</type>
+
+ <p>If you do not want to render certain a sub-grid, in the
+ corresponding <type>XPropertySet</type> the property
+ <member>GridProperties::Show</member> must be <FALSE/>.</p>
+ */
+ sequence< com::sun::star::beans::XPropertySet > getSubGridProperties();
+
+ /** the returned property sets must support the service
+ <type>TickProperties</type>
+ */
+ sequence< com::sun::star::beans::XPropertySet > getSubTickProperties();
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XChartDocument.idl b/offapi/com/sun/star/chart2/XChartDocument.idl
new file mode 100644
index 000000000000..890b54a5112d
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XChartDocument.idl
@@ -0,0 +1,141 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XChartDocument_idl
+#define com_sun_star_chart2_XChartDocument_idl
+
+#include <com/sun/star/chart2/XDiagram.idl>
+#include <com/sun/star/chart2/XChartTypeManager.idl>
+#include <com/sun/star/chart2/data/XDataProvider.idl>
+#include <com/sun/star/frame/XModel.idl>
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#include <com/sun/star/util/CloseVetoException.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XChartDocument : ::com::sun::star::frame::XModel
+{
+ /** @todo allow more than one diagram
+
+ <p>Notes: this is preliminary, we need an API that supports
+ more than one diagram. The method name getDiagram exists in
+ the css.chart API, so there is would be no way to chose either
+ this or the other method from Basic (it would chose one or the
+ other by random).</p>
+ */
+ XDiagram getFirstDiagram();
+
+ /** @todo allow more than one diagram
+
+ <p>Notes: this is preliminary, we need an API that supports
+ more than one diagram. The method name setDiagram exists in
+ the css.chart API, so there is would be no way to chose either
+ this or the other method from Basic (it would chose one or the
+ other by random).</p>
+ */
+ void setFirstDiagram( [in] XDiagram xDiagram );
+
+ /** creates an internal
+ <type scope="com::sun::star::chart2">XDataProvider</type> that
+ is handled by the chart document itself.
+
+ <p>When the model is stored, the data provider will also be
+ stored in a sub-storage.</p>
+
+ @param bCloneExistingData
+ if <TRUE/> and a data provider was previously attached,
+ its referred data will be copied to the new internal data
+ provider. Note, that the range representation set before
+ will usually change after cloning.</p>
+
+ @throws com::sun::star::util:CloseVetoException
+ If the new data provider could not be created due to a
+ failed removal of the former data provider.
+ */
+ void createInternalDataProvider( [in] boolean bCloneExistingData )
+ raises( com::sun::star::util::CloseVetoException );
+
+ /** @return <TRUE/> if the data provider set at the chart document
+ is an internal one.
+
+ <p>This is the case directly after
+ <member>createInternalDataProvider</member> has been called,
+ but this is not necessary. The chart can also create an
+ internal data provider by other means, e.g. a call to
+ <member scope="com::sun::star::frame">XModel::initNew</member>.
+ </p>
+ */
+ boolean hasInternalDataProvider();
+
+ /** Returns the currently set data provider. This may be an
+ internal one, if <member>createInternalDataProvider</member>
+ has been called before, or an external one if
+ <member>XDataReceiver::attachDataProvider</member> has been
+ called.
+ */
+ data::XDataProvider getDataProvider();
+
+ /** sets a new component that is able to create different chart
+ type templates (components of type
+ <type>ChartTypeTemplate</type>)
+ */
+ void setChartTypeManager( [in] XChartTypeManager xNewManager );
+
+ /** retrieves the component that is able to create different chart
+ type templates (components of type
+ <type>ChartTypeTemplate</type>)
+ */
+ XChartTypeManager getChartTypeManager();
+
+ /** Gives access to the page background appearance.
+
+ @return
+ the properties of the background area of the chart
+ document.
+
+ <p>The area's extent is equal to the document size. If you
+ want to access properties of the background area of a single
+ diagram (the part where data points are actually plotted in),
+ you have to get its wall. You can get the wall by calling
+ <member>XDiagram::getWall</member>.</p>
+ */
+ com::sun::star::beans::XPropertySet getPageBackground();
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XChartShape.idl b/offapi/com/sun/star/chart2/XChartShape.idl
new file mode 100644
index 000000000000..c58f35023457
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XChartShape.idl
@@ -0,0 +1,96 @@
+#ifndef com_sun_star_chart2_XChartShape_idl
+#define com_sun_star_chart2_XChartShape_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef com_sun_star_chart2_XTransformation_idl
+#include <com/sun/star/chart2/XTransformation.idl>
+#endif
+
+#ifndef __com_sun_star_beans_UnknownPropertyException_idl__
+#include <com/sun/star/beans/UnknownPropertyException.idl>
+#endif
+#ifndef __com_sun_star_beans_PropertyVetoException_idl__
+#include <com/sun/star/beans/PropertyVetoException.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+#ifndef __com_sun_star_lang_WrappedTargetException_idl__
+#include <com/sun/star/lang/WrappedTargetException.idl>
+#endif
+
+#ifndef __com_sun_star_awt_Point_idl__
+#include <com/sun/star/awt/Point.idl>
+#endif
+#ifndef __com_sun_star_awt_Size_idl__
+#include <com/sun/star/awt/Size.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/**
+this interface is used for a wrapper of objects implementing the service com::sun::star::drawing::Shape
+*/
+
+//interface XChartShape : ::com::sun::star::beans::XPropertySet
+interface XChartShape : ::com::sun::star::uno::XInterface
+{
+ /** the method corresponds to the identical methods of the interface com::sun::star::beans::XPropertySet
+ */
+ void setPropertyValue( [in] string aPropertyName,
+ [in] any aValue )
+ raises( com::sun::star::beans::UnknownPropertyException,
+ com::sun::star::beans::PropertyVetoException,
+ com::sun::star::lang::IllegalArgumentException,
+ com::sun::star::lang::WrappedTargetException );
+
+ //-------------------------------------------------------------------------
+ /** the method corresponds to the identical methods of the interface com::sun::star::beans::XPropertySet
+ */
+ any getPropertyValue( [in] string PropertyName )
+ raises( com::sun::star::beans::UnknownPropertyException,
+ com::sun::star::lang::WrappedTargetException );
+
+ //-------------------------------------------------------------------------
+ /** the method corresponds to the identical methods of the interface com::sun::star::drawing::XShape
+ */
+ com::sun::star::awt::Point getPosition();
+
+ //-------------------------------------------------------------------------
+ /** the method corresponds to the identical methods of the interface com::sun::star::drawing::XShape
+ */
+ void setPosition( [in] com::sun::star::awt::Point aPosition );
+
+ //-------------------------------------------------------------------------
+ /** the method corresponds to the identical methods of the interface com::sun::star::drawing::XShape
+ */
+ com::sun::star::awt::Size getSize();
+
+ //-------------------------------------------------------------------------
+ /** the method corresponds to the identical methods of the interface com::sun::star::drawing::XShape
+ */
+ void setSize( [in] com::sun::star::awt::Size aSize )
+ raises( com::sun::star::beans::PropertyVetoException );
+
+ //-------------------------------------------------------------------------
+ /** the method corresponds to the identical methods of the interface com::sun::star::drawing::XShape
+ * ??????????? deprecated
+ *
+ */
+ string getShapeType();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XChartShapeContainer.idl b/offapi/com/sun/star/chart2/XChartShapeContainer.idl
new file mode 100644
index 000000000000..f7505e030de6
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XChartShapeContainer.idl
@@ -0,0 +1,36 @@
+#ifndef com_sun_star_chart2_XChartShapeContainer_idl
+#define com_sun_star_chart2_XChartShapeContainer_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_drawing_XShape_idl__
+#include <com/sun/star/drawing/XShape.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+interface XChartShapeContainer : ::com::sun::star::uno::XInterface
+{
+ /** a renderer creates ChartShapes and adds it to this container
+ */
+ void addShape( [in] com::sun::star::drawing::XShape xShape );
+
+ /** a renderer can remove ChartShapes from this container (e.g. if the visible range has changed)
+ */
+ void removeShape( [in] com::sun::star::drawing::XShape xShape );
+ com::sun::star::drawing::XShape getShape();
+
+ //... provide something for creation of Transformation ...
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XChartType.idl b/offapi/com/sun/star/chart2/XChartType.idl
new file mode 100644
index 000000000000..fb395790ff9b
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XChartType.idl
@@ -0,0 +1,75 @@
+#ifndef com_sun_star_chart2_XChartType_idl
+#define com_sun_star_chart2_XChartType_idl
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#include <com/sun/star/chart2/XCoordinateSystem.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+interface XChartType : com::sun::star::uno::XInterface
+{
+ /** A string representation of the chart type.
+ This needs to be the service-name which can be used to create a charttype.
+ */
+ string getChartType();
+
+ /** Creates a coordinate systems that fits the chart-type with its
+ current settings and for the given dimension.
+
+ @throws IllegalArgumentException
+ This charttype cannot be displayed in the given dimension.
+ */
+ XCoordinateSystem createCoordinateSystem( [in] long DimensionCount )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** Returns a sequence of roles that are undestood by this chart
+ type.
+
+ <p>All roles must be listed in the order in which they are
+ usually parsed. This ensures that glueing sequences together
+ and splitting them up apart again results in the same
+ structure as before.</p>
+
+ <p>Note, that this does not involve optional roles, like
+ error-bars.</p>
+ */
+ sequence< string > getSupportedMandatoryRoles();
+
+ /** Returns a sequence of roles that are understood in addition to
+ the mandatory roles (see
+ <member>XChartType::getSupportedMandatoryRoles()</member>).
+
+ <p>An example for an optional role are error-bars.</p>
+ */
+ sequence< string > getSupportedOptionalRoles();
+
+ /** Returns the role of the <type>XLabeledDataSequence</type> of
+ which the label will be taken to identify the
+ <type>DataSeries</type> in dialogs or the legend.
+ */
+ string getRoleOfSequenceForSeriesLabel();
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XChartTypeContainer.idl b/offapi/com/sun/star/chart2/XChartTypeContainer.idl
new file mode 100644
index 000000000000..c9e61ff9d9e8
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XChartTypeContainer.idl
@@ -0,0 +1,82 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XChartTypeContainer_idl
+#define com_sun_star_chart2_XChartTypeContainer_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+
+#ifndef com_sun_star_chart_XChartType_idl
+#include <com/sun/star/chart2/XChartType.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+#ifndef __com_sun_star_container_NoSuchElementException_idl__
+#include <com/sun/star/container/NoSuchElementException.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XChartTypeContainer : com::sun::star::uno::XInterface
+{
+ /** add a chart type to the chart type container
+
+ @throws IllegalArgumentException
+ If the given chart type is already contained in the chart type container.
+ */
+ void addChartType( [in] XChartType aChartType )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** removes one data deries from the chart type container.
+ */
+ void removeChartType( [in] XChartType aChartType )
+ raises( com::sun::star::container::NoSuchElementException );
+
+ /** retrieve all chart types
+ */
+ sequence< XChartType > getChartTypes();
+
+ /** set all chart types
+ */
+ void setChartTypes( [in] sequence< XChartType > aChartTypes )
+ raises( com::sun::star::lang::IllegalArgumentException );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XChartTypeManager.idl b/offapi/com/sun/star/chart2/XChartTypeManager.idl
new file mode 100644
index 000000000000..efc9e7a12e16
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XChartTypeManager.idl
@@ -0,0 +1,27 @@
+#ifndef com_sun_star_chart_XChartTypeManager_idl
+#define com_sun_star_chart_XChartTypeManager_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+
+#include <com/sun/star/chart2/XChartTypeTemplate.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XChartTypeManager : ::com::sun::star::uno::XInterface
+{
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XChartTypeTemplate.idl b/offapi/com/sun/star/chart2/XChartTypeTemplate.idl
new file mode 100644
index 000000000000..05308ba7dfcf
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XChartTypeTemplate.idl
@@ -0,0 +1,240 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_XChartTypeTemplate_idl
+#define com_sun_star_chart_XChartTypeTemplate_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+#include <com/sun/star/chart2/XDiagram.idl>
+#include <com/sun/star/chart2/data/XDataSource.idl>
+#include <com/sun/star/chart2/XChartType.idl>
+#include <com/sun/star/chart2/XDataInterpreter.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XChartTypeTemplate : ::com::sun::star::uno::XInterface
+{
+ /** Creates a new diagram based upon the given data .
+
+ @param xDataSource
+ This data source will be interpreted in a chart-type
+ specific way and appropriate <type>DataSeries</type> will
+ be created which serve as input for the new diagram.
+
+ @param aArguments
+ Arguments that tell the template how to slice the given
+ range. The properties should be defined in a separate
+ service.
+
+ <p>For standard parameters that may be used, see the
+ service <type>StandardDiagramCreationParameters</type>.
+ </p>
+
+ @return
+ The new diagram which represents this
+ <type>ChartTypeTemplate</type>.
+ */
+ XDiagram createDiagramByDataSource(
+ [in] data::XDataSource xDataSource,
+ [in] sequence< com::sun::star::beans::PropertyValue > aArguments );
+
+ /** @return
+ <TRUE/> if the template does support categories
+ */
+ boolean supportsCategories();
+
+ /** Analyses the given diagram and reinterprets its
+ <type>DataSeries</type> and <type>Categories</type> and
+ creates a new diagram based on these series.
+
+ <p>Note, that if <member>matchesTemplate</member> returns
+ <TRUE/> for the given <type>XDiagram</type>, the latter should
+ not be changed.</p>
+
+ @param xDiagram
+ The diagram given will be modified such that it represents
+ this <type>ChartTypeTemplate</type>.
+ */
+ void changeDiagram( [in] XDiagram xDiagram );
+
+ /** Changes the given diagram <code>xDiagram</code> by using the
+ new data given in <code>xDataSource</code>.
+
+ <p>Note that the data is interpreted in a way that fits this
+ template, but not necessarily the chart-types of the diagram.
+ This method should only be called if the data-format of the
+ diagram is compatible with the data-format of this
+ template.</p>
+
+ <p>Ideally a <member>matchesTemplate</member> call for the
+ given diagram should return <TRUE/> before this method is
+ called.</p>
+
+ @param xDataSource
+ This data source will be interpreted in a chart-type
+ specific way and the <type>DataSeries</type> found in
+ <code>xDiagram</code> will be adapted to the new data.
+ Missing data series will be created and unused ones will
+ be deleted in <code>xDiagram</code>.
+
+ @param aArguments
+ Arguments that tell the template how to slice the given
+ range. The properties should be defined in a separate
+ service.
+
+ <p>For standard parameters that may be used, see the
+ service <type>StandardDiagramCreationParameters</type>.
+ </p>
+ */
+ void changeDiagramData(
+ [in] XDiagram xDiagram,
+ [in] data::XDataSource xDataSource,
+ [in] sequence< com::sun::star::beans::PropertyValue > aArguments );
+
+ /** States whether the given diagram could have been created by
+ the template.
+
+ <p>The template will parse the <type>DataSeriesTree</type> of
+ the diagram to determine if the structure matches the one
+ which would have been created by
+ <member>createDiagramByDataSource</member>.</p>
+
+ <p>For analysis all parts of the diagram may be used,
+ e.g. also properties set at the data series (like symbols)./p>
+
+ @param xDiagram
+ The diagram to be analyzed.
+
+ @param bAdaptProperties
+ If <TRUE/> the properties of the template are set, such
+ that the template matches more accurately. E.g. for a
+ line-chart with symbols the property "Symbol" would be set
+ to <TRUE/>. If this parameter is <FALSE/> the template
+ itselfs stays unmodified.
+
+ @return
+ <TRUE/> if the diagram given is structurally identical to
+ a diagram that was created using
+ <member>createDiagramByDataSource</member> or
+ <member>changeDiagram</member>. If <FALSE/> is returned
+ the template stays unmodified even if
+ <code>bAdaptProperties</code> is <TRUE/>.
+ */
+ boolean matchesTemplate( [in] XDiagram xDiagram,
+ [in] boolean bAdaptProperties );
+
+ /** Provides a chart type object that can be used to create new
+ series.
+
+ @param aFormerlyUsedChartTypes
+ The list can be used to copy some aspects from old charttypes during the creation of a new chart type.
+ The list might be empty.
+ */
+ XChartType getChartTypeForNewSeries( [in] sequence< XChartType > aFormerlyUsedChartTypes );
+
+ /**
+ */
+ XDataInterpreter getDataInterpreter();
+
+ /** Applies default styles to the given XDataSeries.
+
+ The default implementation assigns the system-wide chart-color defaults
+ as "Color" property to all series.
+
+ @param nIndex
+ The index of the series. This is used to obtain a default style
+ (e.g. color) for the nth series.
+ */
+// void applyDefaultStyle( [in] XDataSeries xSeries,
+// [in] long nSeriesIndex );
+
+ /** Applies a chart-type specific style (e.g. symbols) to all series in the
+ sequence aSeries.
+
+ @param xSeries
+ a single data series to which a style will be applied
+
+ @param nChartTypeGroupIndex
+ Denotes in which chart-type group the series lies, such this method
+ can apply different styles for different chart-type groups
+
+ @param nSeriesIndex
+ The index of the series inside the current chart-type group.
+ nSeriesIndex does not uniquely identify a data series alone, but
+ only together with nChartTypeGroupIndex
+
+ @param nSeriesCount
+ The number of series in the current chart-type group.
+
+ @todo In the future, this should only change the "Style" property and no
+ hard attributes.
+ */
+ void applyStyle( [in] XDataSeries xSeries,
+ [in] long nChartTypeGroupIndex,
+ [in] long nSeriesIndex,
+ [in] long nSeriesCount );
+
+ /** Resets all styles that were changed from the default at any
+ object in the chart and have not been later modified.
+
+ <p>In <member>createDiagramByDataSource</member> or
+ <member>changeDiagram</member> a template might e.g. change
+ the page background color or the line style of all data
+ series. This method should reset all objects that still have
+ the changed settings to the default.</p>
+
+ <p>If for example the template changed the
+ <type scope="com::sun::star::drawing">LineStyle</type> of all
+ series to NONE, this method should reset all series with
+ LineStyle NONE back to SOLID. If a series has a style DASH,
+ it must not be changed.</p>
+ */
+ void resetStyles( [in] XDiagram xDiagram );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XColorScheme.idl b/offapi/com/sun/star/chart2/XColorScheme.idl
new file mode 100644
index 000000000000..6b29a0b9eb75
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XColorScheme.idl
@@ -0,0 +1,67 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XColorScheme_idl
+#define com_sun_star_chart2_XColorScheme_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/util/Color.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XColorScheme : ::com::sun::star::uno::XInterface
+{
+ /** returns the default color for the nth data series.
+
+ <p>This may be a system wide color or a color coming from a
+ color scheme.</p>
+
+ <p>Usually there exist a fixed number of default colors. This
+ method should always return a valid Color. If the index (i)
+ is higher than the number of default colors (n), the method
+ should return the modulus (i mod n), i.e., the colors should
+ repeat in a cyclic way.</p>
+
+ @param nIndex
+ The index of the series. This is used to obtain the
+ correct default color.
+ */
+ ::com::sun::star::util::Color getColorByIndex( [in] long nIndex );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XCoordinateSystem.idl b/offapi/com/sun/star/chart2/XCoordinateSystem.idl
new file mode 100644
index 000000000000..689abba33cf4
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XCoordinateSystem.idl
@@ -0,0 +1,73 @@
+#ifndef com_sun_star_chart2_XCoordinateSystem_idl
+#define com_sun_star_chart2_XCoordinateSystem_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__
+#include <com/sun/star/lang/IndexOutOfBoundsException.idl>
+#endif
+
+#include <com/sun/star/chart2/XAxis.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+*/
+
+interface XCoordinateSystem : ::com::sun::star::uno::XInterface
+{
+ /** the dimension of the coordinate-system.
+ */
+ long getDimension();
+
+ /** identifies the type of coordinate system (e.g. cartesian, polar ...)
+ */
+ string getCoordinateSystemType();
+
+ /** return a service name from which the view component for this coordinate system can be created
+ */
+ string getViewServiceName();
+
+ /** The dimension says wether it is a x, y or z axis.
+ The index says wether it is a primary or a secondary axis.
+ Use nIndex == 0 for a primary axis.
+ */
+ void setAxisByDimension( [in] long nDimension,
+ [in] XAxis xAxis,
+ [in] long nIndex )
+ raises( com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** The dimension says wether it is a x, y or z axis.
+ The index indicates wether it is a primary or a secondary axis or maybe more in future.
+ Use nIndex == 0 for a primary axis.
+ An empty Reference will be returned if the given nDimension and nIndex are in the valid range but no axis is set for those values.
+ An IndexOutOfBoundsException will be thrown if nDimension is lower than 0 or greater than the value returned by getDimension()
+ and/or if nIndex is lower 0 or greater than the value returned by getMaxAxisIndexByDimension(nDimension).
+ */
+ XAxis getAxisByDimension( [in] long nDimension, [in] long nIndex )
+ raises( com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** In one dimension there could be several axes to enable main and secondary axis and maybe more in future.
+ This method returns the maximum index at which an axis exists for the given dimension.
+ It is allowed that some indexes inbetween do not have an axis.
+ /*/
+ long getMaximumAxisIndexByDimension( [in] long nDimension )
+ raises( com::sun::star::lang::IndexOutOfBoundsException );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XCoordinateSystemContainer.idl b/offapi/com/sun/star/chart2/XCoordinateSystemContainer.idl
new file mode 100644
index 000000000000..afbd6066e063
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XCoordinateSystemContainer.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XCoordinateSystemContainer_idl
+#define com_sun_star_chart2_XCoordinateSystemContainer_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+
+#include <com/sun/star/chart2/XCoordinateSystem.idl>
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+#ifndef __com_sun_star_container_NoSuchElementException_idl__
+#include <com/sun/star/container/NoSuchElementException.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XCoordinateSystemContainer : com::sun::star::uno::XInterface
+{
+ /** add an coordinate system to the coordinate system container
+
+ @throws IllegalArgumentException
+ If the given coordinate system is already contained in the container.
+ */
+ void addCoordinateSystem( [in] XCoordinateSystem aCoordSys )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** removes one coordinate system from the coordinate system container.
+ */
+ void removeCoordinateSystem( [in] XCoordinateSystem aCoordSys )
+ raises( com::sun::star::container::NoSuchElementException );
+
+ /** retrieve all coordinate systems
+ */
+ sequence< XCoordinateSystem > getCoordinateSystems();
+
+ /** set all coordinate systems
+ */
+ void setCoordinateSystems( [in] sequence< XCoordinateSystem > aCoordinateSystems )
+ raises( com::sun::star::lang::IllegalArgumentException );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XDataInterpreter.idl b/offapi/com/sun/star/chart2/XDataInterpreter.idl
new file mode 100644
index 000000000000..14238dc531a5
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XDataInterpreter.idl
@@ -0,0 +1,107 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XDataInterpreter_idl
+#define com_sun_star_chart2_XDataInterpreter_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+#include <com/sun/star/chart2/InterpretedData.idl>
+#include <com/sun/star/chart2/data/XDataSource.idl>
+#include <com/sun/star/chart2/XDataSeries.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** offers tooling to interpret different data sources in a structural
+ and chart-type-dependent way.
+ */
+interface XDataInterpreter : ::com::sun::star::uno::XInterface
+{
+ /** Interprets the given data.
+
+ @param aArguments
+ Arguments that tell the template how to slice the given
+ range. The properties should be defined in a separate
+ service.
+
+ <p>For standard parameters that may be used, see the
+ service <type>StandardDiagramCreationParameters</type>.
+ </p>
+
+ @param aSeriesToReUse
+ use all the data series given here for the result before
+ creating new ones.
+ */
+ InterpretedData interpretDataSource(
+ [in] data::XDataSource xSource,
+ [in] sequence< com::sun::star::beans::PropertyValue > aArguments,
+ [in] sequence< XDataSeries > aSeriesToReUse );
+
+ /** Re-interprets the data given in <code>aInterpretedData</code>
+ while keeping the number of data series and the categories.
+ */
+ InterpretedData reinterpretDataSeries( [in] InterpretedData aInterpretedData );
+
+ /** parses the given data and states, if a
+ <member>reinterpretDataSeries</member> call can be done
+ without data loss.
+
+ @return
+ <TRUE/>, if the data given in
+ <code>aInterpretedData</code> has a similar structure than
+ the one required is used as output of the data interpreter.
+ */
+ boolean isDataCompatible( [in] InterpretedData aInterpretedData );
+
+ /** Try to reverse the operation done in
+ <member>interpretDataSource</member>.
+
+ <p>In case <code>aInterpretedData</code> is the result of
+ <member>interpretDataSource</member>( <code>xSource</code> ),
+ the result of this method should be <code>xSource</code>.</p>
+ */
+ data::XDataSource mergeInterpretedData( [in] InterpretedData aInterpretedData );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XDataSeries.idl b/offapi/com/sun/star/chart2/XDataSeries.idl
new file mode 100644
index 000000000000..aa55196ef67d
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XDataSeries.idl
@@ -0,0 +1,88 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XDataSeries_idl
+#define com_sun_star_chart2_XDataSeries_idl
+
+// #include <com/sun/star/chart2/XCoordinateSystem.idl>
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__
+#include <com/sun/star/lang/IndexOutOfBoundsException.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** A data series represents the object that has all the knowledge to
+ be rendered as a visual data series.
+ */
+interface XDataSeries : ::com::sun::star::uno::XInterface
+{
+ /** @returns
+ the element at the specified index.
+
+ @param nIndex
+ specifies the index of the data point within the series. The first index is 0.
+
+ @throws com::sun::star::lang::IndexOutOfBoundException
+ if the index is not valid.
+ */
+ ::com::sun::star::beans::XPropertySet getDataPointByIndex( [in] long nIndex )
+ raises( ::com::sun::star::lang::IndexOutOfBoundsException );
+
+ /** the formatting of the specified data point is cleared
+
+ @param nIndex
+ specifies the index of the data point within the series. The first index is 0.
+ */
+ void resetDataPoint( [in] long nIndex );
+
+ /** all data point formattings are cleared
+ */
+ void resetAllDataPoints();
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XDataSeriesContainer.idl b/offapi/com/sun/star/chart2/XDataSeriesContainer.idl
new file mode 100644
index 000000000000..659120d67ec6
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XDataSeriesContainer.idl
@@ -0,0 +1,82 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XDataSeriesContainer_idl
+#define com_sun_star_chart2_XDataSeriesContainer_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+
+#ifndef com_sun_star_chart_XDataSeries_idl
+#include <com/sun/star/chart2/XDataSeries.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+#ifndef __com_sun_star_container_NoSuchElementException_idl__
+#include <com/sun/star/container/NoSuchElementException.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XDataSeriesContainer : com::sun::star::uno::XInterface
+{
+ /** add a data series to the data series container
+
+ @throws IllegalArgumentException
+ If the given data series is already contained in the data series container.
+ */
+ void addDataSeries( [in] XDataSeries aDataSeries )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** removes one data deries from the data series container.
+ */
+ void removeDataSeries( [in] XDataSeries aDataSeries )
+ raises( com::sun::star::container::NoSuchElementException );
+
+ /** retrieve all data series
+ */
+ sequence< XDataSeries > getDataSeries();
+
+ /** set all data series
+ */
+ void setDataSeries( [in] sequence< XDataSeries > aDataSeries )
+ raises( com::sun::star::lang::IllegalArgumentException );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XDefaultSizeTransmitter.idl b/offapi/com/sun/star/chart2/XDefaultSizeTransmitter.idl
new file mode 100644
index 000000000000..30694a87e7f0
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XDefaultSizeTransmitter.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_xdefaultsizetransmitter_idl
+#define com_sun_star_chart2_xdefaultsizetransmitter_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_awt_Size_idl__
+#include <com/sun/star/awt/Size.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** Allows to set a default size. This size will be used in case no further informations are available.
+ */
+interface XDefaultSizeTransmitter : ::com::sun::star::uno::XInterface
+{
+ /** set a default size
+ @param aSize_100TH_MM
+ specifies a size in hundredth mm.
+ */
+ void setDefaultSize( [in] ::com::sun::star::awt::Size aSize_100TH_MM );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XDiagram.idl b/offapi/com/sun/star/chart2/XDiagram.idl
new file mode 100644
index 000000000000..3836489b7aed
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XDiagram.idl
@@ -0,0 +1,97 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XDiagram_idl
+#define com_sun_star_chart2_XDiagram_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#include <com/sun/star/beans/XPropertySet.idl>
+
+#include <com/sun/star/chart2/XLegend.idl>
+#include <com/sun/star/chart2/XColorScheme.idl>
+#include <com/sun/star/chart2/data/XLabeledDataSequence.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XDiagram : ::com::sun::star::uno::XInterface
+{
+ /** gets the component that creates a new diagram or modifies
+ an existing diagram according to its rules.
+ */
+// string getChartTypeTemplateServiceName();
+
+ /** returns the property set that determines the visual appearance
+ of the wall.
+
+ <p>The wall is the area behind the union of all
+ coordinate systems used in a diagram.</p>
+ */
+ com::sun::star::beans::XPropertySet getWall();
+
+ /** returns the property set that determines the visual appearance
+ of the floor if any.
+
+ <p>The floor is the bottom of a 3D diagram.
+ For a 2D diagram NULL is returned.</p>
+ */
+ com::sun::star::beans::XPropertySet getFloor();
+
+ /** returns the legend, which may represent data series and other
+ information about a diagram in a separate box.
+ */
+ XLegend getLegend();
+
+ /** sets a new legend.
+ */
+ void setLegend( [in] XLegend xLegend );
+
+ /** returns an <type>XColorScheme</type> that defines the default
+ colors for data series (or data points) in the diagram.
+ */
+ XColorScheme getDefaultColorScheme();
+
+ /** sets an <type>XColorScheme</type> that defines the default
+ colors for data series (or data points) in the diagram.
+ */
+ void setDefaultColorScheme( [in] XColorScheme xColorScheme );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XDiagramProvider.idl b/offapi/com/sun/star/chart2/XDiagramProvider.idl
new file mode 100644
index 000000000000..9aaf2771b5f6
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XDiagramProvider.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XDiagramProvider_idl
+#define com_sun_star_chart2_XDiagramProvider_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#include <com/sun/star/chart2/XDiagram.idl>
+#include <com/sun/star/chart2/XChartTypeTemplate.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** Gives access to a single diagram. This interface is needed by the
+ wrapper for the old API (namespace com::sun::star::chart).
+ */
+interface XDiagramProvider : ::com::sun::star::uno::XInterface
+{
+ /**
+ */
+ XDiagram getDiagram();
+
+ /**
+ */
+ void setDiagram( [in] XDiagram xDiagram );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XFastPropertyState.idl b/offapi/com/sun/star/chart2/XFastPropertyState.idl
new file mode 100644
index 000000000000..29d1e4c1b27f
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XFastPropertyState.idl
@@ -0,0 +1,146 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_beans_XFastPropertyState_idl__
+#define __com_sun_star_beans_XFastPropertyState_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyState_idl__
+#include <com/sun/star/beans/PropertyState.idl>
+#endif
+
+#ifndef __com_sun_star_beans_UnknownPropertyException_idl__
+#include <com/sun/star/beans/UnknownPropertyException.idl>
+#endif
+
+#ifndef __com_sun_star_lang_WrappedTargetException_idl__
+#include <com/sun/star/lang/WrappedTargetException.idl>
+#endif
+
+
+//=============================================================================
+
+module com { module sun { module star { module beans {
+
+//=============================================================================
+
+/** makes it possible to query information about the state of
+ one or more properties.
+
+ <p>The state contains the information if:</p>
+ <ul>
+ <li>a value is available or void</li>
+ <li>the value is stored in the object itself, or if a default value is to be used</li>
+ <li>and if the value cannot be determined, due to ambiguity
+ (multi selection with multiple values).</li>
+ </ul>
+ */
+interface XFastPropertyState: ::com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ the state of the property.
+
+ @param aPropertyName
+ specifies the name of the property.
+
+ @throws UnknownPropertyException
+ if the property does not exist.
+ */
+ ::com::sun::star::beans::PropertyState getFastPropertyState( [in] long nHandle )
+ raises( ::com::sun::star::beans::UnknownPropertyException );
+
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ a sequence of the states of the properties which are specified
+ by their names.
+
+ <p>The order of the states is correlating to the order of the
+ given property names. </p>
+
+ @param aPropertyNames
+ contains the sequence of property names.
+
+ @throws UnknownPropertyException
+ if one property does not exist.
+ */
+ sequence< ::com::sun::star::beans::PropertyState > getFastPropertyStates(
+ [in] sequence< long > aHandles )
+ raises( ::com::sun::star::beans::UnknownPropertyException );
+
+ //-------------------------------------------------------------------------
+
+ /** Sets the property to default value.
+
+ <p>The value depends on the implementation of this interface.
+ If it is a bound property, you must change the value before
+ the change events are fired. If it is a constrained property, you
+ must fire the vetoable event before you change the property value.
+ </p>
+
+ @param aPropertyname
+ specifies the name of the property.
+
+ @throws UnknownPropertyException
+ if the property does not exist.
+ */
+ void setFastPropertyToDefault( [in] long nHandle )
+ raises( ::com::sun::star::beans::UnknownPropertyException );
+
+ //-------------------------------------------------------------------------
+
+ /** @returns
+ the default value of the property with the name PropertyName.
+
+ <p>If no default exists, is not known or is void,
+ then the return type is <type>void</type>.
+
+ @param aPropertyName
+ specifies the name of the property.
+
+ @throws UnknownPropertyException
+ if the property does not exist.
+
+ @throws ::com::sun::star::lang::WrappedTargetException
+ if the implementation has an internal reason for the exception.
+ In this case the original exception is wrapped into that
+ <type scope="::com::sun::star::lang">WrappedTargetException</type>.
+ */
+ any getFastPropertyDefault( [in] long nHandle )
+ raises( ::com::sun::star::beans::UnknownPropertyException,
+ ::com::sun::star::lang::WrappedTargetException );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XFormattedString.idl b/offapi/com/sun/star/chart2/XFormattedString.idl
new file mode 100644
index 000000000000..28321493abf2
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XFormattedString.idl
@@ -0,0 +1,35 @@
+#ifndef com_sun_star_chart_XFormattedString_idl
+#define com_sun_star_chart_XFormattedString_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#include <com/sun/star/chart2/XFormattedString.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XFormattedString : ::com::sun::star::uno::XInterface
+{
+ /**
+ */
+ string getString();
+
+ /**
+ */
+ void setString( [in] string String );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XInternalDataProvider.idl b/offapi/com/sun/star/chart2/XInternalDataProvider.idl
new file mode 100644
index 000000000000..a1f9caa64092
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XInternalDataProvider.idl
@@ -0,0 +1,95 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XInternalDataProvider_idl
+#define com_sun_star_chart2_XInternalDataProvider_idl
+
+#include <com/sun/star/chart2/data/XDataProvider.idl>
+#include <com/sun/star/chart2/data/XDataSequence.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** An internal DataProvider that has more access to data than a plain
+ DataProvider.
+ */
+interface XInternalDataProvider : com::sun::star::chart2::data::XDataProvider
+{
+ boolean hasDataByRangeRepresentation( [in] string aRange );
+ sequence< any > getDataByRangeRepresentation( [in] string aRange );
+ void setDataByRangeRepresentation( [in] string aRange, [in] sequence< any > aNewData );
+
+ /** @param Note that -1 is allowed as the sequence is inserted
+ after the given index. So to insert a sequence as the
+ new first sequence (index 0), you would pass -1 here.
+ */
+ void insertSequence( [in] long nAfterIndex );
+ void deleteSequence( [in] long nAtIndex );
+ /** same as insertSequence with nAfterIndex being the largest
+ current index of the data, i.e. (size - 1)
+ */
+ void appendSequence();
+
+ void insertDataPointForAllSequences( [in] long nAfterIndex );
+ void deleteDataPointForAllSequences( [in] long nAtIndex );
+ void swapDataPointWithNextOneForAllSequences( [in] long nAtIndex );
+
+ /** If range representations of data sequences change due to
+ internal structural changes, they must be registered at the
+ data provider.
+
+ <p>Sequences that are directly retrieved via the methods of
+ the XDataProvider interface are already registered. If a
+ labeled data sequence was created by cloning an existing one,
+ it has to be explicitly registered via this method.</p>
+ */
+ void registerDataSequenceForChanges( [in] data::XDataSequence xSeq );
+
+ /** insert an additional sequence for categories nLevel>=1;
+ categories at level 0 are always present and cannot be inserted or deleted
+ @since OOo 3.3
+ */
+ void insertComplexCategoryLevel( [in] long nLevel );
+ /** deletes an additional sequence for categories at nLevel>=1;
+ categories at level 0 are always present and cannot be deleted
+ @since OOo 3.3
+ */
+ void deleteComplexCategoryLevel( [in] long nLevel );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XLabeled.idl b/offapi/com/sun/star/chart2/XLabeled.idl
new file mode 100644
index 000000000000..4abaf59fd3ba
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XLabeled.idl
@@ -0,0 +1,93 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XLabeled_idl
+#define com_sun_star_chart2_XLabeled_idl
+
+#ifndef __com_sun_star_frame_XModel_idl__
+#include <com/sun/star/frame/XModel.idl>
+#endif
+
+#ifndef com_sun_star_chart2_XTitle_idl
+#include <com/sun/star/chart2/XTitle.idl>
+#endif
+
+#ifndef __com_sun_star_drawing_RectanglePoint_idl__
+#include <com/sun/star/drawing/RectanglePoint.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+interface XLabeled
+{
+ /**
+ */
+ void setLabel( [in] XTitle xTitle );
+
+ /**
+ */
+ XTitle getLabel();
+
+ /**
+ */
+ void setOwnAnchor( [in] ::com::sun::star::drawing::RectanglePoint aAnchorPoint );
+
+ /**
+ */
+ ::com::sun::star::drawing::RectanglePoint getOwnAnchor();
+
+ /**
+ */
+ void setLabelAnchor( [in] ::com::sun::star::drawing::RectanglePoint aAnchorPoint );
+
+ /**
+ */
+ ::com::sun::star::drawing::RectanglePoint getLabelAnchor();
+
+ /**
+ */
+ void setOffset( [in] sequence< double > aOffsetVector );
+
+ /**
+ */
+ sequence< double > getOffset();
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XLegend.idl b/offapi/com/sun/star/chart2/XLegend.idl
new file mode 100644
index 000000000000..309aa148dd2a
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XLegend.idl
@@ -0,0 +1,59 @@
+#ifndef com_sun_star_chart_XLegend_idl
+#define com_sun_star_chart_XLegend_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+#ifndef __com_sun_star_container_NoSuchElementException_idl__
+#include <com/sun/star/container/NoSuchElementException.idl>
+#endif
+
+#include <com/sun/star/chart2/XLegendEntry.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** interface for the legend of a diagram
+ */
+interface XLegend : ::com::sun::star::uno::XInterface
+{
+ /** The entry added is appended to the list, such that it appears
+ at the end of the legend.
+
+ @param xEntry
+
+ If it supports <type>CustomLegendEntry</type>,
+ the <type>XTitle</type> is used for displaying a text, and
+ the symbol is displayed according to the
+ <member>CustomLegendEntry::SymbolStyle</member> property.
+ */
+ void registerEntry( [in] XLegendEntry xEntry )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** Removes an entry that was registered before
+
+ <p>(see <member>registerEntry</member>)</p>
+ */
+ void revokeEntry( [in] XLegendEntry xEntry )
+ raises( com::sun::star::container::NoSuchElementException );
+
+ /** Returns a list of all legend entries in the order in which
+ they were registered.
+ */
+ sequence< XLegendEntry > getEntries();
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XLegendEntry.idl b/offapi/com/sun/star/chart2/XLegendEntry.idl
new file mode 100644
index 000000000000..579c453dbd6a
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XLegendEntry.idl
@@ -0,0 +1,30 @@
+#ifndef com_sun_star_chart_XLegendEntry_idl
+#define com_sun_star_chart_XLegendEntry_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+
+#include "com/sun/star/chart2/XTitle.idl"
+#include "com/sun/star/chart2/LegendSymbolStyle.idl"
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** Object type for Legend.
+ */
+interface XLegendEntry : ::com::sun::star::uno::XInterface
+{
+ // no methods, currently only used for type safety
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XLegendSymbolProvider.idl b/offapi/com/sun/star/chart2/XLegendSymbolProvider.idl
new file mode 100644
index 000000000000..56b2b082d317
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XLegendSymbolProvider.idl
@@ -0,0 +1,35 @@
+#ifndef com_sun_star_chart_XLegendSymbolProvider_idl
+#define com_sun_star_chart_XLegendSymbolProvider_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/drawing/XShape.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+interface XLegendSymbolProvider : ::com::sun::star::uno::XInterface
+{
+ /** The returned shape is used for display in the legend. It may
+ also be used for display at a data points.
+
+ <p>The shape returned here, will be resized using
+ <member scope="com::sun::star::drawing">XShape::setSize</member>
+ to fit the available space in the legend.</p>
+ */
+ com::sun::star::drawing::XShape getSymbol();
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XPlotter.idl b/offapi/com/sun/star/chart2/XPlotter.idl
new file mode 100644
index 000000000000..dfa77e09c38e
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XPlotter.idl
@@ -0,0 +1,128 @@
+#ifndef com_sun_star_chart2_XPlotter_idl
+#define com_sun_star_chart2_XPlotter_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_drawing_XShapes_idl__
+#include <com/sun/star/drawing/XShapes.idl>
+#endif
+
+#ifndef _com_sun_star_drawing_XShapeGrouper_idl_
+#include <com/sun/star/drawing/XShapeGrouper.idl>
+#endif
+
+#ifndef _com_sun_star_lang_xmultiservicefactory_idl_
+#include <com/sun/star/lang/XMultiServiceFactory.idl>
+#endif
+
+#ifndef com_sun_star_chart2_CoordinateSystemTypeID_idl
+#include <com/sun/star/chart2/CoordinateSystemTypeID.idl>
+#endif
+
+#ifndef com_sun_star_chart2_ScaleData_idl
+#include <com/sun/star/chart2/ScaleData.idl>
+#endif
+
+#ifndef com_sun_star_chart2_XTransformation_idl
+#include <com/sun/star/chart2/XTransformation.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+/** The main task of a Plotter is to create grafic objects which have a certain
+ logic place within a coordinate system. For example the bars of a barchart
+ are such grafic objects. The created grafic objects need to be of type
+ com::sun::star::drawing::Shape.
+
+ <p>
+ Within the chart application we differentiatebetween two 'types' of shapes
+ which can be created by a Plotter.
+ The first type are shapes which are completely defined by coordinates
+ in the logic coordinate system and will be positioned within this logic
+ coordinate system. Those shapes are called 'logic shapes'
+ or 'logically placed shapes'. For example a rectangle of a bar chart
+ is a 'logic shape'.
+ </p>
+
+ <p>
+ The second type of shapes are those who can not or should not
+ be placed in the logic coordinate system. For example consider a three
+ dimensional bar chart with text labels for each data point. You probably
+ would not like to place the text shapes as three dimensional objects within
+ the logic coordinate system, rather you would like to position the texts as
+ two dimensional objects on the two dimensional final page. Those shapes are
+ called 'illogic shapes' in contrast to 'logic shapes'.
+ 'Illogic shapes' are always two dimensional and placed on the documents page.
+ </p>
+
+ <p>
+ For each type of shapes the Plotter gets one Target where it can add
+ or remove shapes.
+ </p>
+
+ <p> A Plotter is not allowed to set the property 'Transformation' on a
+ shape as this will be done elsewhere.
+ </p>
+*/
+
+//@ todo ? should this be a XComponent?
+interface XPlotter : ::com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** Each Plotter implicit uses a certain type of logic coordinate
+ system for interpreting data as coordinates.
+ For example a bar-chart uses a cartesian coordinate system for
+ interpreting x- and y-values from a spreadsheet as cartesian
+ coordinates. In contrast the pie chart assumes a polar coordinate
+ system.
+ The type of this implicit used source coordinate system has to be
+ returned here.
+ The returned type of an implementation never changes.
+ */
+ CoordinateSystemTypeID getCoordinateSystemTypeID();
+
+ //-------------------------------------------------------------------------
+ /** For each type of shapes ('logic' or 'illogic') there exists one
+ container. The Plotter will create shapes and then add (or remove)
+ them from these containers.
+
+ <p>
+ The lifetime of the container has to be handled by the calling object. The
+ calling object must assure that the container will exist longer than the
+ XPlotter Object.
+ </p>
+ ...
+ */
+ void init( [in] com::sun::star::drawing::XShapes xLogicTarget
+ , [in] com::sun::star::drawing::XShapes xFinalTarget
+ , [in] com::sun::star::lang::XMultiServiceFactory xFactory );
+
+ //-------------------------------------------------------------------------
+ /** For each dimension of the 'logic source coordinate system' the
+ XPlotter object needs a Scale to decide which shapes
+ need to be created and maybe logically clipped. The XPlotter object
+ becomes the new owner of the given scales and directions and needs to keep
+ them alive. Nobody else will change them.
+ Pay attention that a 'Scale' can have several breaks.
+ */
+ void setScales( [in] sequence< ScaleData > rScales);
+
+ //-------------------------------------------------------------------------
+ /**
+ */
+ void setTransformation( [in] XTransformation xTransformationToLogicTarget
+ , [in] XTransformation xTransformationToFinalPage );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/chart2/XRegressionCurve.idl b/offapi/com/sun/star/chart2/XRegressionCurve.idl
new file mode 100644
index 000000000000..1e23edd1d0f1
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XRegressionCurve.idl
@@ -0,0 +1,66 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XRegressionCurve_idl
+#define com_sun_star_chart2_XRegressionCurve_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/beans/XPropertySet.idl>
+
+#include <com/sun/star/chart2/XRegressionCurveCalculator.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/**
+ */
+interface XRegressionCurve : com::sun::star::uno::XInterface
+{
+ /**
+ */
+ XRegressionCurveCalculator getCalculator();
+
+ /**
+ */
+ ::com::sun::star::beans::XPropertySet getEquationProperties();
+
+ /**
+ */
+ void setEquationProperties( [in] ::com::sun::star::beans::XPropertySet xEquationProperties );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XRegressionCurveCalculator.idl b/offapi/com/sun/star/chart2/XRegressionCurveCalculator.idl
new file mode 100644
index 000000000000..e2d6f7dcca76
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XRegressionCurveCalculator.idl
@@ -0,0 +1,152 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XRegressionCurveCalculator_idl
+#define com_sun_star_chart2_XRegressionCurveCalculator_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+
+#include <com/sun/star/util/XNumberFormatsSupplier.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#include <com/sun/star/geometry/RealPoint2D.idl>
+#include <com/sun/star/chart2/XScaling.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XRegressionCurveCalculator : com::sun::star::uno::XInterface
+{
+ /** recalculates the parameters of the internal regression curve according to
+ the <it>x</it>- and <it>y</it>-values given.
+
+ @param aXValues
+ All x-values that represent the measurement points on
+ which the regression is based
+
+ @param aYValues
+ All y-values that represent the measurement points on
+ which the regression is based
+ */
+ void recalculateRegression( [in] sequence< double > aXValues,
+ [in] sequence< double > aYValues );
+
+
+ /** calculates the value of the regression curve for <it>x</it>.
+
+ @param x
+ The abscissa value for which the value of the regression
+ curve should be calculated. All numbers that are part of
+ the domain of the regression function are valid.
+
+ @return
+ If <it>x</it> is element of the domain of the regression
+ curve function, the result is its value.
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ If <it>x</it> is not part of the domain of the regression
+ function.
+ */
+ double getCurveValue( [in] double x )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** calculate multiple points of a regression curve at once. Note
+ that this method may optimize the output by returning less
+ points, e.g. for a line you may get only two resulting points
+ instead of <member>nPointCount</member> points. This is only
+ allowed if the parameter
+ <member>bMaySkipPointsInCalculation</member> is set to
+ <TRUE/>.
+
+ <p>It is important that a renderer takes the scalings into
+ account. When one of these parameters is unknown, no
+ optimization must be done.</p>
+
+ @param bMaySkipPointsInCalculation determines whether it is
+ allowed to skip points in the calculation. When this
+ parameter is <TRUE/> it is assumed that the underlying
+ coordinate system is cartesian.
+
+ @param xScalingX a scaling that is used for the values in
+ x-direction
+
+ @param xScalingY a scaling that is used for the values in
+ y-direction
+ */
+ sequence< com::sun::star::geometry::RealPoint2D > getCurveValues(
+ [in] double min,
+ [in] double max,
+ [in] long nPointCount,
+ [in] XScaling xScalingX,
+ [in] XScaling xScalingY,
+ [in] boolean bMaySkipPointsInCalculation )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** Returns the value of the correlation coefficient for the given
+ regression. This value is often denoted as <it>r</it> or
+ <it>R</it>.
+
+ <p>The value of <it>r</it> is signed. Often
+ <it>r</it><sup>2</sup> is used instead of <it>r</it> to denote
+ a regression curve's accuray.</p>
+
+ @return
+ The return value is the fraction of the variance in the
+ data that is explained by the regression.
+ */
+ double getCorrelationCoefficient();
+
+ /** Retrieve a string showing the regression curve's function with
+ calculated parameters.
+
+ @return
+ The string returned contains the regression curve's
+ formula in a form <pre>"f(x) = ..."</pre>, where the
+ calculated parts are filled out. For a linear regression
+ you might get <pre>"f(x) = 0.341 x + 1.45"</pre>.
+ */
+ string getRepresentation();
+
+ /** Returns a representation using the given numnber format for formatting all numbers
+ contained in the formula.
+
+ @see getRepresentation
+ */
+ string getFormattedRepresentation( [in] com::sun::star::util::XNumberFormatsSupplier xNumFmtSupplier,
+ [in] long nNumberFormatKey );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XRegressionCurveContainer.idl b/offapi/com/sun/star/chart2/XRegressionCurveContainer.idl
new file mode 100644
index 000000000000..f54b351ef005
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XRegressionCurveContainer.idl
@@ -0,0 +1,81 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XRegressionCurveContainer_idl
+#define com_sun_star_chart2_XRegressionCurveContainer_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+
+#include <com/sun/star/chart2/XRegressionCurve.idl>
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+#ifndef __com_sun_star_container_NoSuchElementException_idl__
+#include <com/sun/star/container/NoSuchElementException.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XRegressionCurveContainer : com::sun::star::uno::XInterface
+{
+ /** add an regression curve to the container
+
+ @throws IllegalArgumentException
+ If the given regression curve is already contained in the
+ container.
+ */
+ void addRegressionCurve( [in] XRegressionCurve aRegressionCurve )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** removes one regression curve from the container.
+ */
+ void removeRegressionCurve( [in] XRegressionCurve aRegressionCurve )
+ raises( com::sun::star::container::NoSuchElementException );
+
+ /** retrieve all regression curves
+ */
+ sequence< XRegressionCurve > getRegressionCurves();
+
+ /** set all regression curves
+ */
+ void setRegressionCurves( [in] sequence< XRegressionCurve > aRegressionCurves )
+ raises( com::sun::star::lang::IllegalArgumentException );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XScaling.idl b/offapi/com/sun/star/chart2/XScaling.idl
new file mode 100644
index 000000000000..569f29ff2128
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XScaling.idl
@@ -0,0 +1,32 @@
+#ifndef com_sun_star_chart2_XScaling_idl
+#define com_sun_star_chart2_XScaling_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+interface XScaling : ::com::sun::star::uno::XInterface
+{
+ /** needs to keep relative ordering
+ */
+ double doScaling([in] double value);
+ com::sun::star::chart2::XScaling getInverseScaling();
+
+ //maybe provide correction for Min/Max
+ //double getMinimum(); ?adjust <-> min/max may not exist
+ //double getMaximum();
+
+ //... or better/additionally?: provide default values for Min&Max
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XStyleSupplier.idl b/offapi/com/sun/star/chart2/XStyleSupplier.idl
new file mode 100644
index 000000000000..cfc4d34ca5fa
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XStyleSupplier.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_style_XStyleSupplier_idl
+#define com_sun_star_style_XStyleSupplier_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+#ifndef __com_sun_star_style_XStyle_idl__
+#include <com/sun/star/style/XStyle.idl>
+#endif
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module style
+{
+
+interface XStyleSupplier : ::com::sun::star::uno::XInterface
+{
+ /** get the currently set style.
+
+ @return the style. If no style was set, the returned object
+ may be empty (null). Otherwise, the returned object
+ must support the service
+ <type>PropertyTemplate</type>.
+ */
+ ::com::sun::star::style::XStyle getStyle();
+
+ /** @param xStyle If you want to remove an existing style, you can
+ set an empty (null) object. Otherwise, the object
+ given must support the service
+ <type>PropertyTemplate</type>.
+ */
+ void setStyle( [in] ::com::sun::star::style::XStyle xStyle )
+ raises( com::sun::star::lang::IllegalArgumentException );
+};
+
+} ; // style
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XTarget.idl b/offapi/com/sun/star/chart2/XTarget.idl
new file mode 100644
index 000000000000..1e18166d35fb
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XTarget.idl
@@ -0,0 +1,33 @@
+#ifndef com_sun_star_chart2_XTarget_idl
+#define com_sun_star_chart2_XTarget_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+// #ifndef __com_sun_star_drawing_XShapes_idl__
+// #include <com/sun/star/drawing/XShapes.idl>
+// #endif
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 {
+
+//=============================================================================
+
+//................... wrong --> XDrawGroup
+
+// [in] com::sun::star::drawing::XShapes xShapes
+
+interface XTarget : ::com::sun::star::uno::XInterface
+{
+ void addDrawElement(); //(DrawElement);
+
+ //... provide something for creation of Transformation ...
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XTitle.idl b/offapi/com/sun/star/chart2/XTitle.idl
new file mode 100644
index 000000000000..9be6629c12df
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XTitle.idl
@@ -0,0 +1,61 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_XTitle_idl
+#define com_sun_star_chart_XTitle_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#include <com/sun/star/chart2/XFormattedString.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XTitle : ::com::sun::star::uno::XInterface
+{
+ /**
+ */
+ sequence< XFormattedString > getText();
+
+ /**
+ */
+ void setText( [in] sequence< XFormattedString > Strings );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XTitled.idl b/offapi/com/sun/star/chart2/XTitled.idl
new file mode 100644
index 000000000000..4f6d2c1faf2a
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XTitled.idl
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_XTitled_idl
+#define com_sun_star_chart_XTitled_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#include <com/sun/star/chart2/XTitle.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** Interface to be implemented by objects that support having a title of type
+ <type>XTitle</type>.
+ */
+interface XTitled : ::com::sun::star::uno::XInterface
+{
+ /** get the object holding the title's content and formatting
+ */
+ XTitle getTitleObject();
+
+ /** set a new title object replacing the former one
+ */
+ void setTitleObject( [in] XTitle Title );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XTransformation.idl b/offapi/com/sun/star/chart2/XTransformation.idl
new file mode 100644
index 000000000000..fe8d314948fb
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XTransformation.idl
@@ -0,0 +1,101 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XTransformation_idl
+#define com_sun_star_chart2_XTransformation_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+ // NOTES
+
+ //... provide help for creating the right transfomation
+ //
+ // ... access to source and destination coordinate system ?
+
+/** allows the transformation of numeric values from one
+ coordinate-system into an other. Values may be transformed using
+ any mapping.
+ */
+interface XTransformation : ::com::sun::star::uno::XInterface
+{
+ /** transforms the given input data tuple, given in the source
+ coordinate system, according to the internal transformation
+ rules, into a tuple of transformed coordinates in the
+ destination coordinate system.
+
+ <p>Note that both coordinate systems may have different
+ dimensions, e.g., if a transformation does simply a projection
+ into a lower-dimensional space.</p>
+
+ @param aValues a source tuple of data that is to be
+ transformed. The length of this sequence must be
+ equivalent to the dimension of the source coordinate
+ system.
+
+ @return the transformed data tuple. The length of this
+ sequence is equal to the dimension of the output
+ coordinate system.
+
+ @throws ::com::sun::star::lang::IllegalArgumentException
+ if the dimension of the input vector is not equal to the
+ dimension given in <member>getSourceDimension</member>.
+ */
+ sequence< double > transform( [in] sequence< double > aValues )
+ raises( ::com::sun::star::lang::IllegalArgumentException );
+
+ /** the dimension of the input coordinate sequence that is to be
+ transformed by the <member>transform</member> method.
+ */
+ long getSourceDimension();
+
+ /** the dimension of the output coordinate sequence that is the
+ result of the <member>transform</member> method.
+ */
+ long getTargetDimension();
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XUndoHelper.idl b/offapi/com/sun/star/chart2/XUndoHelper.idl
new file mode 100644
index 000000000000..6c782564e04f
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XUndoHelper.idl
@@ -0,0 +1,90 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XUndoHelper_idl
+#define com_sun_star_chart2_XUndoHelper_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/frame/XModel.idl>
+// #include <com/sun/star/beans/PropertyValue.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** An interface for storing frame::XModel objects for container undo.
+ */
+interface XUndoHelper : ::com::sun::star::uno::XInterface
+{
+ /** call this before you change the xCurrentModel
+
+ @return a clone of the current model that can later be used to
+ restore the state of a changed model
+ */
+ ::com::sun::star::frame::XModel getModelCloneForUndo(
+ [in] ::com::sun::star::frame::XModel xModelBeforeChange );
+
+ /** call this before you change the xCurrentModel. You can pass
+ parameters to refine the information that is cloned.
+
+ @return a clone of the current model that can later be used to
+ restore the state of a changed model using the same
+ arguments in applyModelContentWithArguments.
+ */
+// ::com::sun::star::frame::XModel getModelCloneForUndoWithArguments(
+// [in] ::com::sun::star::frame::XModel xModelBeforeChange,
+// [in] sequence< ::com::sun::star::beans::PropertyValue > aArguments );
+
+ /** apply the content of xModelToCopyFrom to the XModel in xModelToChange
+ */
+ void applyModelContent( [inout] ::com::sun::star::frame::XModel xModelToChange,
+ [in] ::com::sun::star::frame::XModel xModelToCopyFrom );
+
+ /** apply the content of xModelToCopyFrom to the XModel in
+ xModelToChange. You can pass parameters to refine the
+ information that is applied.
+
+ <p>Note that xModelToCopyFrom should have been created with
+ getModelCloneForUndoWithArguments using the same arguments as
+ are passed here.</p>
+ */
+// void applyModelContentWithArguments(
+// [inout] ::com::sun::star::frame::XModel xModelToChange,
+// [in] ::com::sun::star::frame::XModel xModelToCopyFrom,
+// [in] sequence< ::com::sun::star::beans::PropertyValue > aArguments );
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XUndoManager.idl b/offapi/com/sun/star/chart2/XUndoManager.idl
new file mode 100644
index 000000000000..2d0ca4bd4977
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XUndoManager.idl
@@ -0,0 +1,111 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XUndoManager_idl
+#define com_sun_star_chart2_XUndoManager_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/frame/XModel.idl>
+#include <com/sun/star/beans/PropertyValue.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** An interface for undo functionality based on passing frame::XModel
+ objects.
+ */
+interface XUndoManager : ::com::sun::star::uno::XInterface
+{
+ /** call this before you change the xCurrentModel
+ */
+ void preAction( [in] ::com::sun::star::frame::XModel xModelBeforeChange );
+
+ /** call this before you change the xCurrentModel. You can pass
+ parameters to refine the undo action.
+ */
+ void preActionWithArguments( [in] ::com::sun::star::frame::XModel xModelBeforeChange,
+ [in] sequence< ::com::sun::star::beans::PropertyValue > aArguments );
+
+ /** call this after you successfully did changes to your current model
+ */
+ void postAction( [in] string aUndoText );
+ /** call this if you aborted the current action.
+ */
+ void cancelAction();
+
+ /** same as cancelAction() but restores the given model to the
+ state set in preAction. This is useful for cancellation in
+ live-preview dialogs.
+ */
+ void cancelActionWithUndo( [inout] ::com::sun::star::frame::XModel xModelToRestore );
+
+ /** give the current model to be put into the redo-stack
+ */
+ void undo( [inout] ::com::sun::star::frame::XModel xCurrentModel );
+
+ /** give the current model to be put into the undo-stack
+ */
+ void redo( [inout] ::com::sun::star::frame::XModel xCurrentModel );
+
+ /** @return <TRUE/> if the undo stack is not empty, i.e. a call to undo() will succeed
+ */
+ boolean undoPossible();
+
+ /** @return <TRUE/> if the redo stack is not empty, i.e. a call to redo() will succeed
+ */
+ boolean redoPossible();
+
+ /** Retrieves the undo string for the most recent undo step
+ */
+ string getCurrentUndoString();
+
+ /** Retrieves the redo string for the most recent undo step
+ */
+ string getCurrentRedoString();
+
+ /** Retrieves the undo strings of all stored undo actions in
+ chronological order starting with the most recent.
+ */
+ sequence< string > getAllUndoStrings();
+
+ /** Retrieves the redo strings of all stored undo actions in
+ chronological order starting with the most recent.
+ */
+ sequence< string > getAllRedoStrings();
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/XUndoSupplier.idl b/offapi/com/sun/star/chart2/XUndoSupplier.idl
new file mode 100644
index 000000000000..901ca49ad74f
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XUndoSupplier.idl
@@ -0,0 +1,57 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XUndoSupplier_idl
+#define com_sun_star_chart2_XUndoSupplier_idl
+
+#include <com/sun/star/chart2/XUndoManager.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+/** An interface for providing an UndoManager based on frame::XModel
+ objects.
+ */
+interface XUndoSupplier : ::com::sun::star::uno::XInterface
+{
+ /** @return an undo manager that allows doing undo and redo of a
+ frame::XModel based object
+ */
+ XUndoManager getUndoManager();
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/DataFilter.idl b/offapi/com/sun/star/chart2/data/DataFilter.idl
new file mode 100644
index 000000000000..8cfadbd6d038
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/DataFilter.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_DataFilter_idl
+#define com_sun_star_chart2_data_DataFilter_idl
+
+#include <com/sun/star/chart2/data/DataSource.idl>
+#include <com/sun/star/chart2/data/DataSink.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** A filter gets some data and provides some data. The received data
+ is typically (but not necessarily) different from the data that
+ can be retrieved by a filter.
+ */
+service DataFilter
+{
+ /** A DataFilter is a DataSink, because you can set some data at a
+ DataFilter.
+ */
+ service DataSink;
+
+ /** A DataFilter is a DataSource, because you can get some data
+ from a DataFilter.
+ */
+ service DataSource;
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/DataProvider.idl b/offapi/com/sun/star/chart2/data/DataProvider.idl
new file mode 100644
index 000000000000..f9092c61f4b9
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/DataProvider.idl
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart_data_DataProvider_idl
+#define com_sun_star_chart_data_DataProvider_idl
+
+#include <com/sun/star/chart2/data/XDataProvider.idl>
+#include <com/sun/star/chart2/data/XRangeXMLConversion.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/**
+ */
+service DataProvider
+{
+ /** For accessing data a component provides for being used by
+ charts.
+ */
+ interface ::com::sun::star::chart2::data::XDataProvider;
+
+ /** allows you to convert the ranges a data provider deals with
+ internally into valid XML.
+ */
+ [optional] interface ::com::sun::star::chart2::data::XRangeXMLConversion;
+
+ /** If set to false <FALSE/>, values from hidden cells are not returned.
+ */
+ [optional, property] boolean IncludeHiddenCells;
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/DataSequence.idl b/offapi/com/sun/star/chart2/data/DataSequence.idl
new file mode 100644
index 000000000000..671f27575c1a
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/DataSequence.idl
@@ -0,0 +1,157 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_DataSequence_idl
+#define com_sun_star_chart2_data_DataSequence_idl
+
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/container/XIndexReplace.idl>
+#include <com/sun/star/util/XCloneable.idl>
+#include <com/sun/star/util/XModifyBroadcaster.idl>
+
+#include <com/sun/star/chart2/data/XDataSequence.idl>
+#include <com/sun/star/chart2/data/XNumericalDataSequence.idl>
+#include <com/sun/star/chart2/data/XTextualDataSequence.idl>
+
+#include <com/sun/star/chart2/data/DataSequenceRole.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** describes a container for a sequence of values.
+
+ <p>With the interface <type>XDataSequence</type> it is possible to
+ transfer a complete sequence of values.
+
+ <p>With the optional
+ <type scope="com::sun::star::container">XIndexReplace</type> it is
+ possible to modify single elements, if the corresponding
+ <type>DataProvider</type> supports modification of its values.</p>
+ */
+service DataSequence
+{
+ /** provides read- and write-access to the underlying data.
+ */
+ interface XDataSequence;
+
+ /** you may implement this interface to allow a fast acces to
+ numerical data. With this interface you can get a
+ <atom>sequence</atom> of <atom>double</atom> values.
+ */
+ [optional] interface XNumericalDataSequence;
+
+ /** you may implement this interface to allow a fast acces to
+ textual data. With this interface you can get a
+ <atom>sequence</atom> of <atom>string</atom> values.
+ */
+ [optional] interface XTextualDataSequence;
+
+ /** provides read- and write-access to single elements of the
+ underlying data.
+
+ <p>Only when supporting this interface, it is possible for
+ client applications to modify the content of the data that is
+ provided by this <type>DataSequence</type>.</p>
+ */
+ [optional] interface ::com::sun::star::container::XIndexReplace;
+
+ /** Allows creating copies of data sequences. If this interface
+ is not supported, the same object will be shared if used by
+ multiple objects.
+
+ <p>Cloning is especially useful when using identifiers. A
+ cloned data sequence will get a new identifier while the
+ source range representation is identical to the original
+ one.</p>
+
+ <p>Note that, when this interface is not implemented the
+ releasing of identifiers at the <type>XDataProvider</type>
+ will not work properly, because more than one object may use
+ the same identifier. So, when an object releases the
+ identifier, another object might use a stale identifier.</p>
+ */
+ [optional] interface ::com::sun::star::util::XCloneable;
+
+ /** is used to broadcast change events whenever the content (data)
+ or the range representations change.
+ */
+ interface com::sun::star::util::XModifyBroadcaster;
+
+ /** the property interface by which the properties of all
+ supported services are exchanged
+ */
+ interface ::com::sun::star::beans::XPropertySet;
+
+ // ----------------------------------------------------------------------
+
+ /** The key (index) of the number format that this sequence should
+ be formatted with.
+
+ <p>The key identifies a number format in an
+ <type scope="com::sun::star::util">XNumberFormats</type>
+ object. This object can be retrieved by the
+ <type scope="com::sun::star::util">XNumberFormatsSupplier</type>
+ interface supported by
+ <type scope="com::sun::star::chart">ChartDocument</type>.</p>
+
+ @todo use proper number format instead of a transient key.
+ */
+// [optional, property] long NumberFormatKey;
+
+ /** The role of the series inside a data series. This may be any
+ string. However some strings are predefined and should always
+ be used in the same way.
+
+ @see DataSequenceRole
+ */
+ [property] DataSequenceRole Role;
+
+ /** If set to false <FALSE/>, values from hidden cells are not returned.
+ */
+ [optional, property] boolean IncludeHiddenCells;
+
+ /** a sequence of indexes that identify values that are hidden in the underlying
+ data provider.
+ */
+ [optional, property] sequence< long > HiddenValues;
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/DataSequenceRole.idl b/offapi/com/sun/star/chart2/data/DataSequenceRole.idl
new file mode 100644
index 000000000000..4586faaed304
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/DataSequenceRole.idl
@@ -0,0 +1,108 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_DataSequenceRole_idl
+#define com_sun_star_chart2_data_DataSequenceRole_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** a string that states in what way a <type>DataSequence</type>
+ should be used. If this property is an empty string, no
+ proposition about usage is made.
+
+ <p>The strings can have any value. However some values are
+ predefined and should always be interpreted in the same way.</p>
+
+ <dl>
+ <dt>label</dt>
+ <dd>values are used as a label for a series. Usually, you
+ will have just one cell containing a string.</dd>
+ <dt>values-x</dt>
+ <dd>values are used as x-values in an XY- or bubble
+ diagram</dd>
+ <dt>values-y</dt>
+ <dd>values are used as y-values in an XY-Diagram or as values
+ in a bar, line, etc. chart</dd>
+ <dt>values-z</dt>
+ <dd>values may be used as z-values in a three-dimensional
+ XYZ-Diagram or a surface-chart</dd>
+ <dt>sizes</dt>
+ <dd>values are used as radius of the bubbles in a
+ Bubble-Diagram</dd>
+ <dt>error-bars-x-positive</dt>
+ <dd>values are used as error-information in positive x-direction for
+ displaying error-bars</dd>
+ <dt>error-bars-x-negative</dt>
+ <dd>values are used as error-information in negative x-direction for
+ displaying error-bars</dd>
+ <dt>error-bars-y-positive</dt>
+ <dd>values are used as error-information in positive y-direction for
+ displaying error-bars</dd>
+ <dt>error-bars-y-negative</dt>
+ <dd>values are used as error-information in negative y-direction for
+ displaying error-bars</dd>
+ <dt>categories</dt>
+ <dd>values are used for categories in the diagram</dd>
+ </dl>
+
+ <p>In a candle-stick chart you have the following roles:</p>
+
+ <dl>
+ <dt>values-first</dt>
+ <dd>the first value of a series of values. In a stock-chart this
+ would be the opening course.</dd>
+ <dt>values-last</dt>
+ <dd>the last value of a series of values. In a stock-chart this
+ would be the closing course.</dd>
+ <dt>values-min</dt>
+ <dd>the minimum value of a series of values. In a stock-chart
+ this would be the lowest course that occured during
+ trading.</dd>
+ <dt>values-max</dt>
+ <dd>the maximum value of a series of values. In a stock-chart
+ this would be the highest course that occured during
+ trading.</dd>
+ </dl>
+ */
+typedef string DataSequenceRole;
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/DataSink.idl b/offapi/com/sun/star/chart2/data/DataSink.idl
new file mode 100644
index 000000000000..035b01bd88b8
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/DataSink.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_DataSink_idl
+#define com_sun_star_chart2_data_DataSink_idl
+
+#include <com/sun/star/chart2/data/XDataSink.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** describes a service that allows reading two-dimensional data in
+ the form of a sequence of <type>DataSequence</type>s.
+ */
+service DataSink
+{
+ /** allows the write-access of the actual data.
+ */
+ interface XDataSink;
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/DataSource.idl b/offapi/com/sun/star/chart2/data/DataSource.idl
new file mode 100644
index 000000000000..549f2a03b5a7
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/DataSource.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_DataSource_idl
+#define com_sun_star_chart2_data_DataSource_idl
+
+#include <com/sun/star/chart2/data/XDataSource.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** describes a service that allows reading two-dimensional data in
+ the form of a sequence of <type>DataSequence</type>s.
+ */
+service DataSource
+{
+ /** allows the read-access of the actual data.
+ */
+ interface XDataSource;
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/HighlightedRange.idl b/offapi/com/sun/star/chart2/data/HighlightedRange.idl
new file mode 100644
index 000000000000..363d5a88484c
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/HighlightedRange.idl
@@ -0,0 +1,74 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_HighlightedRange_idl
+#define com_sun_star_chart2_data_HighlightedRange_idl
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/**
+ */
+struct HighlightedRange
+{
+ /** The range representation string of the highlighted range.
+ */
+ string RangeRepresentation;
+
+ /** Only take the cell at position Index out of the given
+ Range. If this value is -1 take the whole sequence.
+ */
+ long Index;
+
+ /** Use this color for marking the range. This color may be
+ ignored and replaced by a better fitting color, if it would be
+ otherwise not well visible.
+ */
+ long PreferredColor;
+
+ /** If the highlighted range is visually highlighted and this
+ member is <TRUE/>, the range given in
+ <member>RangeRepresentation</mamber> may be included in a
+ merged range rectangle spanning a bigger range.
+ */
+ boolean AllowMerginigWithOtherRanges;
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/LabelOrigin.idl b/offapi/com/sun/star/chart2/data/LabelOrigin.idl
new file mode 100644
index 000000000000..0239db4ea482
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/LabelOrigin.idl
@@ -0,0 +1,100 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef com_sun_star_chart2_data_LabelOrigin_idl
+#define com_sun_star_chart2_data_LabelOrigin_idl
+
+//=============================================================================
+
+module com { module sun { module star { module chart2 { module data {
+
+//=============================================================================
+
+/** is used to specify how the labels have to be created.
+
+ @see <member>XDataSequence::generateLabel</member>.
+ */
+enum LabelOrigin
+{
+ //-------------------------------------------------------------------------
+
+ /** If a range spans a single row over more than one column, this
+ parameter has the same effect as ROW. If the range spans a
+ single column over more than one row, this is the same as
+ COLUMN.
+
+ <p>In case of a range spanning more than one column and row,
+ the shorter range of both should be used (e.g. a spreadsheet
+ range A1:B10 should treat columns as short side).</p>
+
+ <p>In case of a rectangular range, or a range that is composed
+ of more than one contiguous sub-regions, the short side cannot
+ be determined, thus
+ <member>XDataSequence::generateLabel</member> will return an
+ empty sequence.</p>
+ */
+ SHORT_SIDE,
+
+ //-------------------------------------------------------------------------
+
+ /** This is exactly the opposite of SHORT_SIDE. I.e., if
+ SHORT_SIDE has the same effect as ROW, LONG_SIDE will have the
+ same effect as COLUMN and the other way round.
+
+ @see <member>LabelOrigin::SHORT_SIDE</member>
+ */
+ LONG_SIDE,
+
+ //-------------------------------------------------------------------------
+
+ /** Uses the column name for label generation. A spreadsheet
+ range A1:A6 could, e.g., result in "Column A".
+
+ <p>If a range consists of more than one column the result of
+ label generation may be empty. Of course, it could also
+ succeed with a string like "Columns A to B".
+ */
+ COLUMN,
+
+ //-------------------------------------------------------------------------
+
+ /** Uses the column name for label generation. A spreadsheet
+ range A2:D2 could, e.g., result in "Row 2".
+
+ <p>If a range consists of more than one row the result of
+ label generation may be empty. Of course, it could also
+ succeed with a string like "Rows 1-3".
+ */
+ ROW
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/chart2/data/LabeledDataSequence.idl b/offapi/com/sun/star/chart2/data/LabeledDataSequence.idl
new file mode 100644
index 000000000000..d6dcf7f5efa4
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/LabeledDataSequence.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_LabeledDataSequence_idl
+#define com_sun_star_chart2_data_LabeledDataSequence_idl
+
+#include <com/sun/star/util/XCloneable.idl>
+#include <com/sun/star/util/XModifyBroadcaster.idl>
+
+#include <com/sun/star/chart2/data/XLabeledDataSequence.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** describes a container for a sequence pair of value-sequences, one
+ for a label and one for the associated data.
+ */
+service LabeledDataSequence
+{
+ /** provides read- and write-access to the underlying data.
+ */
+ interface XLabeledDataSequence;
+
+ /** is used to broadcast when the sequence for labels or values
+ change their identity, or their content changes.
+
+ <p>The LabeledDataSequence should add itself at its
+ XDataSequences for values and labels, and forward any change
+ events coming from there.</p>
+ */
+ interface com::sun::star::util::XModifyBroadcaster;
+
+ /** Allows creating copies of data sequences. If this interface
+ is not supported, the same object will be shared if used by
+ multiple objects.
+
+ <p>If a <type>LabeledDataSequence</type> is cloned, it has to
+ query its contents for the
+ <type scope="com::sun::star::util">XCloneable</type> interface
+ and use it if available.</p>
+ */
+ [optional] interface ::com::sun::star::util::XCloneable;
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/RangeHighlightListener.idl b/offapi/com/sun/star/chart2/data/RangeHighlightListener.idl
new file mode 100644
index 000000000000..83f59166746c
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/RangeHighlightListener.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_RangeHighlightListener_idl
+#define com_sun_star_chart2_data_RangeHighlightListener_idl
+
+#include <com/sun/star/view/XSelectionChangeListener.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** A selection change listener that is attached to a
+ <type>XRangeHighlighter</type> in order to get notified about
+ selection changes that affect range hightlighting.
+ */
+service RangeHighlightListener
+{
+ /**
+ */
+ interface ::com::sun::star::view::XSelectionChangeListener;
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/RangeHighlighter.idl b/offapi/com/sun/star/chart2/data/RangeHighlighter.idl
new file mode 100644
index 000000000000..cdf3dc637bbb
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/RangeHighlighter.idl
@@ -0,0 +1,58 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_RangeHighlighter_idl
+#define com_sun_star_chart2_data_RangeHighlighter_idl
+
+#include <com/sun/star/chart2/XRangeHighlighter.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/**
+ */
+service RangeHighlighter
+{
+ /**
+ */
+ interface XRangeHighlighter;
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/TabularDataProviderArguments.idl b/offapi/com/sun/star/chart2/data/TabularDataProviderArguments.idl
new file mode 100644
index 000000000000..a6a0e7c519d9
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/TabularDataProviderArguments.idl
@@ -0,0 +1,161 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_TabularDataProviderArguments_idl
+#define com_sun_star_chart2_data_TabularDataProviderArguments_idl
+
+#include <com/sun/star/chart/ChartDataRowSource.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/**
+ */
+service TabularDataProviderArguments
+{
+ /** the range address string spanning all data.
+
+ <p>The range adress string must be interpretable by the
+ component that implements <type>XDataProvider</type> and gets
+ this property as argument to
+ <member>XDataProvider::detectArguments</member>.</p>
+
+ <p>The representation string is of a form that may be used in the
+ user interface. Example for OOo Calc: "$Sheet1.$A$1:$D$7",
+ example for OOo Writer: "&lt;Table1.A1:D7&gt;".</p>
+
+ <p>When used as input, this range will be split in columns or
+ rows depending on the property
+ <member>DataRowSource</member>.</p>
+
+ <p>When used as output of
+ <member>XDataProvider::detectArguments</member> this is the
+ range that spans the ranges of all given
+ <type>XDataSequence</type>s. If the result is ambiguous,
+ i.e., a splitting of this range would not yield the same
+ result, this property should be empty. The latter is the
+ case, when ranges are overlapping, the lengths of sequences
+ are not equal or even if the order of two sequences is swapped
+ (e.g. data comes from column A, C, B).</p>
+ */
+ [property] string CellRangeRepresentation;
+
+ /** determines, whether data sequences are created out of columns
+ or rows in a table.
+
+ <p>If this property is not given as argument it is assumed to
+ <member scope="com::sun::star::chart">ChartDataRowSource::COLUMNS</member>,
+ i.e., the default is "take data from columns".</p>
+ */
+ [property] ::com::sun::star::chart::ChartDataRowSource DataRowSource;
+
+ /** If data comes from columns, the first row will provide the
+ labels for all sequences, if data comes from rows, the first
+ column will provide the labels for all sequences.
+
+ <p>Even if this property is false, the
+ <type>XLabeledDataSequence</type> may contain a label, but
+ this will not be the first cell of the selection. It may be a
+ generic string like "Column C".</p>
+
+ <p>If this property is not given as argument it is assumed to
+ be <FALSE/>, i.e., the default is "no labels".</p>
+ */
+ [property] boolean FirstCellAsLabel;
+
+ /** determines the order of the created labeled sequences
+
+ <p>For example a SequenceMapping of [3,0,2,1] indicates that
+ the sequence from old position '3' should now be the first one.
+ Then comes the sequence from old position '0'. Then that one
+ from old position '2' and then the sequence from old position '1'.</p>
+
+ <p>If the SequenceMapping contains invalid indexes just
+ ignore those single indexes. For example if you only have three
+ labeled sequences and a SequenceMapping [2,5,1,0], you should
+ ignore the '5' and continue to place the sequence from
+ old index '1' to the next new position and so on.</p>
+
+ <p>If the given SequenceMapping does not cover all exsisting
+ labeled sequences just put the remaining sequences in old order
+ behind the others. For example you have 4 sequences and a
+ SequenceMapping [3,1]. The result should be a as if [3,1,0,2]
+ was given.</p>
+ */
+ [property] sequence< long > SequenceMapping;
+
+ /** If <FALSE/> the data provider may create a data sequence
+ containing generated categories that fit the rest of the data,
+ like e.g. "Row 12", "Row 13", etc.
+
+ <p>This property is not relevant for the splitting up of the
+ data. It just indicates, if the chart wants to use part of
+ the data as categories, so that generic categories can be
+ returned if it doesn't.</p>
+
+ <p>The generic category labeled sequence returned should be
+ the first one in the returned <type>XDataSource</type>. It
+ needs no label. The values should have their role set to
+ "categories". The generic strings returned should also be
+ localized.</p>
+ */
+ [optional, property] boolean HasCategories;
+
+ /** This property is for providing proprietary table indexes for
+ each table appearing in a range given in
+ CellRangeRepresentation.
+
+ @deprecated
+
+ <p>This argument is supported by Spreadsheets in order to be
+ able to export a document into the StarOffice 5.0 binary
+ format.</p>
+
+ <p>Example: If you have the sheets (Sheet1, Sheet2, Sheet3) in
+ your document and a chart uses the range
+ "Sheet2.A1:.A5 Sheet3.A1:.A5 Sheet2.B1:.B5 Sheet1:B1:.B5", your
+ TableNumberList would be "1 2 1 0". A simple range like
+ "Sheet1.A1:.E4" would have the TableNumberList in "0"</p>.
+ */
+ [optional, property] string TableNumberList;
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/XDataProvider.idl b/offapi/com/sun/star/chart2/data/XDataProvider.idl
new file mode 100644
index 000000000000..11dac7aae3cd
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XDataProvider.idl
@@ -0,0 +1,164 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_XDataProvider_idl
+#define com_sun_star_chart2_data_XDataProvider_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+
+#include <com/sun/star/chart2/data/XDataSource.idl>
+
+#include <com/sun/star/beans/PropertyValue.idl>
+
+#include <com/sun/star/sheet/XRangeSelection.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** An application that provides data for a chart must implement this
+ interface.
+ */
+interface XDataProvider : ::com::sun::star::uno::XInterface
+{
+ /** If <TRUE/> is returned, a call to createDataSource with the
+ same arguments must return a valid XDataSequence object. If
+ <FALSE/> is returned, createDataSource throws an exception.
+ */
+ boolean createDataSourcePossible( [in] sequence< com::sun::star::beans::PropertyValue > aArguments );
+
+ /** Creates a data source object that matches the given range
+ representation string.
+
+ <p>This can be used for creating the necessary data for a new
+ chart out of a previously selected range of cells in a
+ spreadsheet.</p>
+
+ @param aArguments
+ Arguments that tell the data provider how to slice the
+ given range. The properties should be defined in a
+ separate service.
+
+ <p>For spreadsheets and textdocument tables there exists a
+ service <type>TabularDataProviderArguments</type>
+ describing valid values for this list.</p>
+
+ @return
+ a data source containing <type>DataSequence</type>s that
+ span the entire region given in <code>aArguments</code>.
+
+ @throws ::com::sun::star::lang::IllegalArgumentException
+ may be raised by the <type>XDataProvider</type> if it is
+ unable to interpret the arguments passed in
+ <code>aArguments</code> appropriately.
+ */
+ XDataSource createDataSource(
+ [in] sequence< com::sun::star::beans::PropertyValue > aArguments )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** Tries to find out with what parameters the passed
+ <type>DataSource</type> most probably was created.
+
+ <p>if xDataSource is a data source that was created with
+ <member>createDataSource</member>, the arguments returned here
+ should be the same than the ones passed to the function.
+ Of course, this cannot be guaranteed. However, if detection
+ is ambiguous, the returned arguments should be empty. </p>
+
+ <p>This method may merge representation strings together if
+ adjacent ranges appear successively in the range identifiers.
+ E.g., if the first range refers to "$Sheet1.$A$1:$A$8" and the
+ second range refers to "$Sheet1.$B$1:$B$8", those should be
+ merged together to "$Sheet1.$A$1:$B$8".</p>
+
+ @param xDataSource
+ A data source containing all data used in a chart.
+
+ @return
+ Arguments that when being passed to
+ <member>createDataSource</member> should in an ideal case
+ return the same data source as <code>xDataSource</code>.
+ */
+ sequence< com::sun::star::beans::PropertyValue > detectArguments(
+ [in] XDataSource xDataSource );
+
+ /** If <TRUE/> is returned, a call to
+ createDataSequenceByRangeRepresentation with the same argument must
+ return a valid XDataSequence object. If <FALSE/> is returned,
+ createDataSequenceByRangeRepresentation throws an exception.
+ */
+ boolean createDataSequenceByRangeRepresentationPossible( [in] string aRangeRepresentation );
+
+ /** creates a single data sequence for the given data range.
+
+ @param aRangeRepresentation
+ is a string that can be interpreted by the component that
+ implements this interface. The representation string is
+ of a form that may be used in the user interface.
+
+ @see createDataSource
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ if the given range does not contain a valid range
+ representation for a one-dimensional range of data.
+ */
+ XDataSequence createDataSequenceByRangeRepresentation(
+ [in] string aRangeRepresentation )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** Returns a component that is able to change a given range
+ representation to another one. This usually is a
+ controller-component that uses the GUI to allow a user to
+ select a new range.
+
+ <p>This method may return nothing, if it does not support
+ range selection or if there is no current controller available
+ that offers the functionality.</p>
+
+ @return
+ The component for selecting a new range. It must support
+ <type>XComponent</type>, in order to inform the receiver
+ about its lifetime.</p>
+ */
+ com::sun::star::sheet::XRangeSelection getRangeSelection();
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/XDataReceiver.idl b/offapi/com/sun/star/chart2/data/XDataReceiver.idl
new file mode 100644
index 000000000000..10602cee2f34
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XDataReceiver.idl
@@ -0,0 +1,122 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_XDataReceiver_idl
+#define com_sun_star_chart2_data_XDataReceiver_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+#ifndef com_sun_star_chart2_data_XDataProvider_idl
+#include <com/sun/star/chart2/data/XDataProvider.idl>
+#endif
+
+#ifndef com_sun_star_chart2_data_XRangeHighlighter_idl
+#include <com/sun/star/chart2/data/XRangeHighlighter.idl>
+#endif
+
+#ifndef com_sun_star_beans_PropertyValue_idl
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+#ifndef __com_sun_star_util_XNumberFormatsSupplier_idl__
+#include <com/sun/star/util/XNumberFormatsSupplier.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+interface XDataReceiver : ::com::sun::star::uno::XInterface
+{
+ /** attaches a component that provides data for the document.
+
+ <p>The previously set data provider will be released.</p>
+
+ @param xProvider
+ The new DataProvider. If it is an empty reference, the
+ ChartDocument will have no data.
+ */
+ void attachDataProvider( [in] XDataProvider xProvider );
+
+ void setArguments( [in] sequence< com::sun::star::beans::PropertyValue > aArguments )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** returns a list of all range strings for which data has been
+ requested by the most recently attached data provider, and
+ which is still used.
+
+ <p>This list may be used by the data provider to swap charts
+ out of memory, but still get informed by changes of ranges
+ while the chart is not loaded.</p>
+ @return a list of used range strings.
+ */
+ sequence< string > getUsedRangeRepresentations();
+
+ /** Returns the data requested by the most recently attached data
+ provider, that is still used.
+ */
+ XDataSource getUsedData();
+
+ /** attaches an <type>XNumberFormatsSupplier</type> to this
+ <type>XDataReceiver</type>.
+
+ <p>The given number formats will be used for display purposes.</p>
+ */
+ void attachNumberFormatsSupplier( [in] com::sun::star::util::XNumberFormatsSupplier xSupplier );
+
+ /** Returns a component at which a view representing the data of
+ the attached data provider may listen for highlighting the
+ data ranges used by the currently selected objects in the data
+ receiver component.
+
+ <p>This is typically used by a spreadsheet to hightlight the
+ ranges used by the currently selected object in a chart.</p>
+
+ <p>The range hightlighter is optional, i.e., this method may
+ return an empty object.</p>
+ */
+ XRangeHighlighter getRangeHighlighter();
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/XDataSequence.idl b/offapi/com/sun/star/chart2/data/XDataSequence.idl
new file mode 100644
index 000000000000..d821200cb772
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XDataSequence.idl
@@ -0,0 +1,138 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_XDataSequence_idl
+#define com_sun_star_chart2_data_XDataSequence_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#include <com/sun/star/chart2/data/LabelOrigin.idl>
+#include <com/sun/star/lang/IndexOutOfBoundsException.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** allows acces to a one-dimensional sequence of data.
+
+ <p>The data that is stored in this container may contain different
+ types.</p>
+ */
+interface XDataSequence : ::com::sun::star::uno::XInterface
+{
+ /** retrieves the data stored in this component.
+
+ @return a sequence containing the actual data. This sequence
+ is a copy of the internal data. Therefore changing
+ this object does not affect the content of the
+ XDataSequence object.
+ */
+ sequence< any > getData();
+
+ /** returns the (UI) range representation string used by this
+ <type>XDataSequence</type>.
+ */
+ string getSourceRangeRepresentation();
+
+ /** creates a label that describes the origin of this data
+ sequence.
+
+ <p>This is useful, if a <type>XLabeledDataSequence</type> has
+ no label sequence. In this case you can call this method at
+ the value sequence to obtain a fitting replacement label.</p>
+
+ <p>The sequence returned here may be empty if no suitable
+ label can be generated.</p>
+
+ <p>The strings returned should be localized.</p>
+
+ @param eLabelOrigin
+ denotes what part of the range should be used for label
+ generation. If you have, e.g., one cell only, the
+ parameter COLUMN enables you to get the name of the cell's
+ column, the parameter ROW will give you its row name.
+
+ If you have a non quadratic range you can ask for labels for
+ the longer side with parameter LONG_SIDE or you can obtain labels
+ for the shorter side with parameter SHORT_SIDE.
+
+ If the range is not structured in a tabular way you may reveive
+ no label.
+
+ @return
+ Suitable labels for the given sequence depending on the range
+ of the sequence and the parameter <code>eLabelOrigin</code> passed.
+ In a spreadsheet this would typically be a label like "Column x"
+ for the short side used as DataSeries name and maybe a
+ sequence "Row 1" "Row 2" "Row 3" for the long side to be used
+ as categories for example.
+
+ Example: Assuming this sequence has a Rangerepresentation spanning
+ row 5 and 6 in column 8. Following sequences of strings or similar strings
+ are expected as return values:
+
+ generateLabel( SHORT_SIDE ) -> "Column 8"
+ generateLabel( LONG_SIDE ) -> "Row 5" "Row 6"
+ generateLabel( COLUMN ) -> "Column 8"
+ generateLabel( ROW ) -> "Row 5" "Row 6"
+
+ Which strings exactly you return depends on the naming scheme of the application
+ which provides its tabular data.
+ */
+ sequence< string > generateLabel( [in] com::sun::star::chart2::data::LabelOrigin eLabelOrigin );
+
+ /** returns a number format key for the value at the given index
+ in the data sequence. If nIndex is -1, a key for the entire
+ sequence should be returned, e.g. the most commonly used one.
+
+ <p>If number formats are not supported, or there is no
+ heuristic to return a key for the entire series, return 0
+ here.</p>
+
+ <p>The number format key must be valid for the
+ <type scope="com::sun::star::util">XNumberFormatsSupplier</type>
+ given by the <type>XDataProvider</type>, or 0 which is assumed
+ to be always valid.</p>
+ */
+ long getNumberFormatKeyByIndex( [in] long nIndex )
+ raises( ::com::sun::star::lang::IndexOutOfBoundsException );
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/XDataSink.idl b/offapi/com/sun/star/chart2/data/XDataSink.idl
new file mode 100644
index 000000000000..ec7f922bbc53
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XDataSink.idl
@@ -0,0 +1,78 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_XDataSink_idl
+#define com_sun_star_chart2_data_XDataSink_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+
+#include <com/sun/star/chart2/data/XLabeledDataSequence.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** is a container for sequences of data. With this interface data
+ can only be written to.
+
+ <p>If you want to be able to also read the data set here, your
+ component must also implement <type>XDataSource</type>.</p>
+ */
+interface XDataSink : ::com::sun::star::uno::XInterface
+{
+ /** sets new data sequences. The elements set here must support
+ the service <type>DataSequence</type>.
+
+ <p>If the data consist only of floating point numbers (double
+ values), the instances set here should also support the
+ service <type>NumericalDataSequence</type>.</p>
+
+ <p>If the data consist only of strings, the instances set here
+ should also support the service
+ <type>TextualDataSequence</type>.</p>
+
+ <p>If one of the derived services is supported by one element
+ of the sequence, it should be available for all elements in
+ the sequence.</p>
+ */
+ void setData( [in] sequence< XLabeledDataSequence > aData );
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/XDataSource.idl b/offapi/com/sun/star/chart2/data/XDataSource.idl
new file mode 100644
index 000000000000..9fc4436a25b9
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XDataSource.idl
@@ -0,0 +1,83 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_XDataSource_idl
+#define com_sun_star_chart2_data_XDataSource_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+
+#include <com/sun/star/chart2/data/XLabeledDataSequence.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+
+/** provides access to sequences of data. With this interface data
+ can only be read from.
+
+ <p>If the data stored consists only of floating point numbers (double
+ values), the returned instances should also support the service
+ <type>NumericalDataSequence</type>.</p>
+
+ <p>If the data stored consists only of strings, the returned
+ instances should also support the service
+ <type>TextualDataSequence</type>.</p>
+ */
+interface XDataSource : ::com::sun::star::uno::XInterface
+// : ::com::sun::star::container::XIndexAccess
+{
+ /** returns data sequences.
+
+ @return a sequence of objects that support at least the
+ service <type>DataSequence</type>.
+
+ <p>If the data stored consist only of floating point numbers
+ (double values), the returned instances should also support
+ the service <type>NumericalDataSequence</type>.</p>
+
+ <p>If the data stored consist only of strings, the returned
+ instances should also support the service
+ <type>TextualDataSequence</type>.</p>
+ */
+ sequence< XLabeledDataSequence > getDataSequences();
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/XDatabaseDataProvider.idl b/offapi/com/sun/star/chart2/data/XDatabaseDataProvider.idl
new file mode 100644
index 000000000000..260f97c7aa38
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XDatabaseDataProvider.idl
@@ -0,0 +1,224 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_report_XDatabaseDataProvider_idl__
+#define __com_sun_star_report_XDatabaseDataProvider_idl__
+
+#ifndef __com_sun_star_container_NoSuchElementException_idl__
+#include <com/sun/star/container/NoSuchElementException.idl>
+#endif
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/beans/UnknownPropertyException.idl>
+#include <com/sun/star/lang/XInitialization.idl>
+#include <com/sun/star/lang/XComponent.idl>
+#include <com/sun/star/sdbc/XConnection.idl>
+#include <com/sun/star/sdbc/XParameters.idl>
+#include <com/sun/star/sdbc/XRowSet.idl>
+#include <com/sun/star/chart2/data/XDataProvider.idl>
+#include <com/sun/star/chart2/data/XRangeXMLConversion.idl>
+
+//=============================================================================
+
+ module com { module sun { module star { module chart2 { module data {
+
+//=============================================================================
+
+/** identifies a <type>XDataProvider</type> for result sets.
+
+ @see XDataProvider
+ @see DataProvider
+ */
+interface XDatabaseDataProvider
+{
+ /** For accessing data a component provides for being used by
+ charts.
+ */
+ interface XDataProvider;
+
+ /** allows you to convert the ranges a data provider deals with
+ internally into valid XML.
+ */
+ interface XRangeXMLConversion;
+
+ /** allows access to the properties of the instance.
+ */
+ interface com::sun::star::lang::XInitialization;
+
+ /** allows life-time control of the database data provider.
+ */
+ interface com::sun::star::lang::XComponent;
+
+ /** allows access to the properties of the instance.
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ interface com::sun::star::sdbc::XParameters;
+ interface com::sun::star::sdbc::XRowSet;
+
+ /** is used for subreports and contains the names of columns of the parent report.
+ <p> These columns are typically the foreign key fields of the parent report.
+ The values of theses columns are used to identify the data for the subreport.
+ Each time the parent report changes it's current row, the subreport requeries
+ it's data based on the values of the master fields.</p>
+ <p>If the report is no sub report (e.g. it's parent is not a report itself), this
+ property is not evaluated.</p>
+
+ */
+ [attribute,bound] sequence<string> MasterFields;
+
+ /**is used for subreports and contains the names of the columns of the subreport
+ which are related to the master fields of the parent report.
+ <p>Entries in this sequence can either denote column names in the sub report,
+ or paramater names.<br/>
+ For instance, you could base the report on the SQL statement
+ <code>SELECT * FROM invoices WHERE cust_ref = :cid</code>, and add <code>cid</code>
+ to the DetailFields property. In this case, the parameter will be filled from
+ the corresponding master field.<br/>
+ Alternatively, you could simply base your report on the table <code>invoices</code>,
+ and add the column name <code>cust_ref</code> to the DetailFields. In this case,
+ and implicit filter clause <code>WHERE cust_ref = :&lt;new_param_name&gt;</code> will
+ be created, and the artificial parameter will be filled from the corresponding
+ master field.<br/>
+ If a string in this property denotes both a column name and a parameter name, it
+ is undefined which way it is interpreted, but implementations of the service are required
+ to either decide for the paramter or the column, and proceed as usual.
+ </p>
+ <p>The columns specified herein typically represent a part of the primary key
+ fields or their aliases of the detail report.</p>
+ <p>If the report is no sub report (e.g. it's parent is not a report itself), this
+ property is not evaluated.</p>
+ *
+ */
+ [attribute,bound] sequence<string> DetailFields;
+
+ /** is the command which should be executed, the type of command depends
+ on the CommandType.
+ <p>In case of a <member>CommandType</member> of <member>CommandType::COMMAND</member>,
+ means in case the <member>Command</member> specifies an SQL statement, the inherited
+ <member scope="com::sun::star::sdbc">RowSet::EscapeProcessing</member>
+ becomes relevant:<br/>
+ It then can be to used to specify whether the SQL statement should be analyzed on the
+ client side before sending it to the database server.<br/>
+ The default value for <member scope="com::sun::star::sdbc">RowSet::EscapeProcessing</member>
+ is <TRUE/>. By switching it to <FALSE/>, you can pass backend-specific SQL statements,
+ which are not standard SQL, to your database.</p>
+
+
+ @see com::sun::star::sdb::CommandType
+ */
+ [attribute,bound] string Command;
+
+ /** specifies the type of the command to be executed to retrieve a result set.
+
+ <p><member>Command</member> needs to be interpreted depending on the value of this property.</p>
+
+ <p>This property is only meaningfull together with the <member>Command</member>
+ property, thus either <em>both</em> or <em>none</em> of them are present.</p>
+
+ @see com::sun::star::sdb::CommandType
+ */
+ [attribute,bound] long CommandType;
+
+ /** specifies an addtional filter to optinally use.
+
+ <p>The Filter string has to form a SQL WHERE-clause, <em>without</em> the WHERE-string itself.</p>
+
+ <p>If a <member>DataSourceName</member>, <member>Command</member> and <member>CommandType</member>
+ are specified, a <type>RowSet</type> can be created with this information. If the results provided by the
+ row set are to be additionally filtered, the Filter property can be used.</p>
+
+ <p>Note that the Filter property does not make sense if a <member>ResultSet</member> has been specified
+ in the DataAccessDescriptor.</p>
+
+ @see com::sun::star::sdb::RowSet
+ @see ResultSet
+ */
+ [attribute,bound] string Filter;
+
+ /** indicates whether the filter should be applied or not,
+ default is <FALSE/>.
+ */
+ [attribute,bound] boolean ApplyFilter;
+
+ /** additional having clause for the row set
+ */
+ [attribute,bound] string HavingClause
+ {
+ set raises (com::sun::star::beans::UnknownPropertyException);
+ };
+
+ /** additional group by for the row set
+ */
+ [attribute,bound] string GroupBy
+ {
+ set raises (com::sun::star::beans::UnknownPropertyException);
+ };
+
+ /** is a additional sort order definition for a rowset.
+ */
+ [attribute,bound] string Order;
+
+ /** specifies if the <member>Command</member> should be analyzed on the client side before sending it
+ to the database server.
+
+ <p>The default value of this property is <TRUE/>. By switching it to <FALSE/>, you can pass
+ backend-specific SQL statements, which are not standard SQL, to your database.</p>
+
+ <p>This property is usually present together with the <member>Command</member> and
+ <member>CommandType</member> properties, and is evaluated if and only if <member>CommandType</member>
+ equals <member>CommandType::COMMAND</member>.</p>
+ */
+ [attribute,bound] boolean EscapeProcessing;
+
+ /** specifies the maximal count of rows which should be fetched.
+ <p>A value of zero implies that no limit exists.</p>
+ */
+ [attribute,bound] long RowLimit;
+
+ /** specifies the active connection which is used to create the resulting report.
+ */
+ [attribute,bound] com::sun::star::sdbc::XConnection ActiveConnection
+ {
+ set raises (com::sun::star::lang::IllegalArgumentException);
+ };
+ /** is the name of the datasource to use, this could be a named datasource
+ or the URL of a data access component.
+ */
+ [attribute,bound] string DataSourceName;
+};
+
+service DatabaseDataProvider : XDatabaseDataProvider
+{
+ createWithConnection([in] com::sun::star::sdbc::XConnection connection);
+};
+//=============================================================================
+
+ }; }; }; }; };
+
+/*=============================================================================
+
+=============================================================================*/
+#endif
diff --git a/offapi/com/sun/star/chart2/data/XLabeledDataSequence.idl b/offapi/com/sun/star/chart2/data/XLabeledDataSequence.idl
new file mode 100644
index 000000000000..dadba2306884
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XLabeledDataSequence.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_XLabeledDataSequence_idl
+#define com_sun_star_chart2_data_XLabeledDataSequence_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/chart2/data/XDataSequence.idl>
+// #include <com/sun/star/lang/IllegalArgumentException.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** allows acces to a one-dimensional sequence of data.
+
+ <p>The data that is stored in this container may contain different
+ types.</p>
+ */
+interface XLabeledDataSequence : ::com::sun::star::uno::XInterface
+{
+ /** returns an <type>XDataSequence</type> containing the actual
+ data.
+ */
+ XDataSequence getValues();
+
+ /** sets a new <type>XDataSequence</type> containing the actual
+ data.
+ */
+ void setValues( [in] XDataSequence xSequence );
+
+ /** returns an <type>XDataSequence</type> containing the label for
+ the labeled sequence.
+ */
+ XDataSequence getLabel();
+
+ /** sets a new <type>XDataSequence</type> containing the label for
+ the labeled sequence.
+ */
+ void setLabel( [in] XDataSequence xSequence );
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/XNumericalDataSequence.idl b/offapi/com/sun/star/chart2/data/XNumericalDataSequence.idl
new file mode 100644
index 000000000000..ef5be16be3f8
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XNumericalDataSequence.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_XNumericalDataSequence_idl
+#define com_sun_star_chart2_data_XNumericalDataSequence_idl
+
+#include <com/sun/star/chart2/data/XDataSequence.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** allows acces to a one-dimensional sequence of double precision
+ floating-point numbers.
+ */
+interface XNumericalDataSequence : ::com::sun::star::uno::XInterface
+{
+ /** retrieves data as <atom>double</atom> values.
+ */
+ sequence< double > getNumericalData();
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/XRangeHighlighter.idl b/offapi/com/sun/star/chart2/data/XRangeHighlighter.idl
new file mode 100644
index 000000000000..95cb9ce06de6
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XRangeHighlighter.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_XRangeHighlighter_idl
+#define com_sun_star_chart2_data_XRangeHighlighter_idl
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_view_XSelectionChangeListener_idl__
+#include <com/sun/star/view/XSelectionChangeListener.idl>
+#endif
+
+#ifndef com_sun_star_chart2_data_HighlightedRange_idl
+#include <com/sun/star/chart2/data/HighlightedRange.idl>
+#endif
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/**
+ */
+interface XRangeHighlighter : ::com::sun::star::uno::XInterface
+{
+ /** Returns a list of ranges that are used by objects that are
+ currently selected.
+ */
+ sequence< HighlightedRange > getSelectedRanges();
+
+ /** registers an event listener, which is called when the
+ selection is changed and affects different source ranges
+ */
+ void addSelectionChangeListener( [in] com::sun::star::view::XSelectionChangeListener xListener );
+
+ /** unregisters an event listener which was registered with
+ <method>XRangeHighlighter::addSelectionChangeListener</method>
+ before.
+ */
+ void removeSelectionChangeListener( [in] com::sun::star::view::XSelectionChangeListener xListener );
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/XRangeXMLConversion.idl b/offapi/com/sun/star/chart2/data/XRangeXMLConversion.idl
new file mode 100644
index 000000000000..de9a1f5615a8
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XRangeXMLConversion.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_XRangeXMLConversion_idl
+#define com_sun_star_chart2_data_XRangeXMLConversion_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** An application that provides data for a chart must implement this
+ interface.
+ */
+interface XRangeXMLConversion : ::com::sun::star::uno::XInterface
+{
+ /** converts the range to a valid XML syntax.
+
+ <p>For example spreadsheet ranges consisting of more than one
+ consecutive region are usually separated by a semicolon
+ whereas in XML you separate multiple regions by a spacce.</p>
+ */
+ string convertRangeToXML( [in] string aRangeRepresentation )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** converts an XML-style range into the internal
+ <type>DataProvider</type>'s format.
+ */
+ string convertRangeFromXML( [in] string aXMLRange )
+ raises( com::sun::star::lang::IllegalArgumentException );
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/XTextualDataSequence.idl b/offapi/com/sun/star/chart2/data/XTextualDataSequence.idl
new file mode 100644
index 000000000000..3f2786d34389
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XTextualDataSequence.idl
@@ -0,0 +1,59 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_XTextualDataSequence_idl
+#define com_sun_star_chart2_data_XTextualDataSequence_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** allows acces to a one-dimensional sequence of strings.
+ */
+interface XTextualDataSequence : ::com::sun::star::uno::XInterface
+{
+ /** retrieves the data as strings
+ */
+ sequence< string > getTextualData();
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif
diff --git a/offapi/com/sun/star/chart2/data/makefile.mk b/offapi/com/sun/star/chart2/data/makefile.mk
new file mode 100644
index 000000000000..f36f9e6c8ba3
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/makefile.mk
@@ -0,0 +1,60 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..$/..$/..$/..
+
+TARGET=csschart2data
+PACKAGE=com$/sun$/star$/chart2$/data
+
+PRJNAME=chart2
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : $(PRJ)$/util$/makefile.pmk
+
+#-------------------------------------------------------------------
+
+IDLFILES= \
+ DataSequenceRole.idl \
+ HighlightedRange.idl \
+ LabelOrigin.idl \
+ XDataProvider.idl \
+ XDataReceiver.idl \
+ XDataSequence.idl \
+ XDataSink.idl \
+ XDataSource.idl \
+ XLabeledDataSequence.idl \
+ XNumericalDataSequence.idl \
+ XRangeHighlighter.idl \
+ XRangeXMLConversion.idl \
+ XTextualDataSequence.idl \
+ XDatabaseDataProvider.idl
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : target.mk
+.INCLUDE : $(PRJ)$/util$/target.pmk
diff --git a/offapi/com/sun/star/chart2/makefile.mk b/offapi/com/sun/star/chart2/makefile.mk
new file mode 100644
index 000000000000..dcce7e71d4d2
--- /dev/null
+++ b/offapi/com/sun/star/chart2/makefile.mk
@@ -0,0 +1,111 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..$/..$/..
+
+TARGET=csschart2
+PACKAGE=com$/sun$/star$/chart2
+
+PRJNAME=offapi
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : $(PRJ)$/util$/makefile.pmk
+
+#-------------------------------------------------------------------
+
+IDLFILES= \
+ AxisType.idl \
+ AxisOrientation.idl \
+ Break.idl \
+ CoordinateSystemTypeID.idl \
+ CurveStyle.idl \
+ DataPointGeometry3D.idl \
+ DataPointLabel.idl \
+ ExplicitIncrementData.idl \
+ ExplicitScaleData.idl \
+ ExplicitSubIncrement.idl \
+ FillBitmap.idl \
+ IncrementData.idl \
+ InterpretedData.idl \
+ LegendExpansion.idl \
+ LegendPosition.idl \
+ LegendSymbolStyle.idl \
+ LightSource.idl \
+ PieChartOffsetMode.idl \
+ RelativePosition.idl \
+ RelativeSize.idl \
+ ScaleData.idl \
+ StackingDirection.idl \
+ SubIncrement.idl \
+ Symbol.idl \
+ SymbolStyle.idl \
+ TickmarkStyle.idl \
+ TransparencyStyle.idl \
+ ViewLegendEntry.idl \
+ XAxis.idl \
+ XCoordinateSystem.idl \
+ XCoordinateSystemContainer.idl \
+ XChartDocument.idl \
+ XChartShape.idl \
+ XChartShapeContainer.idl \
+ XChartType.idl \
+ XChartTypeContainer.idl \
+ XChartTypeManager.idl \
+ XChartTypeTemplate.idl \
+ XColorScheme.idl \
+ XDataInterpreter.idl \
+ XDataSeries.idl \
+ XDataSeriesContainer.idl \
+ XDefaultSizeTransmitter.idl \
+ XDiagram.idl \
+ XDiagramProvider.idl \
+ XFastPropertyState.idl \
+ XFormattedString.idl \
+ XInternalDataProvider.idl \
+ XLabeled.idl \
+ XLegend.idl \
+ XLegendEntry.idl \
+ XLegendSymbolProvider.idl \
+ XPlotter.idl \
+ XRegressionCurve.idl \
+ XRegressionCurveCalculator.idl \
+ XRegressionCurveContainer.idl \
+ XScaling.idl \
+ XStyleSupplier.idl \
+ XTarget.idl \
+ XTitle.idl \
+ XTitled.idl \
+ XTransformation.idl \
+ XUndoManager.idl \
+ XUndoSupplier.idl \
+ XUndoHelper.idl
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : target.mk
+.INCLUDE : $(PRJ)$/util$/target.pmk