From ed5640d8b587fbcfed7dd7967f3de04b37a76f26 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 11:06:44 +0200 Subject: Adding upstream version 4:7.4.7. Signed-off-by: Daniel Baumann --- .../sun/star/chart/AccessibleChartDocumentView.idl | 131 ++++++++++ .../com/sun/star/chart/AccessibleChartElement.idl | 183 ++++++++++++++ offapi/com/sun/star/chart/AreaDiagram.idl | 59 +++++ offapi/com/sun/star/chart/BarDiagram.idl | 104 ++++++++ offapi/com/sun/star/chart/BubbleDiagram.idl | 48 ++++ offapi/com/sun/star/chart/Chart3DBarProperties.idl | 47 ++++ offapi/com/sun/star/chart/ChartArea.idl | 58 +++++ offapi/com/sun/star/chart/ChartAxis.idl | 268 +++++++++++++++++++++ .../sun/star/chart/ChartAxisArrangeOrderType.idl | 63 +++++ offapi/com/sun/star/chart/ChartAxisAssign.idl | 48 ++++ .../com/sun/star/chart/ChartAxisLabelPosition.idl | 62 +++++ .../com/sun/star/chart/ChartAxisMarkPosition.idl | 55 +++++ offapi/com/sun/star/chart/ChartAxisMarks.idl | 58 +++++ offapi/com/sun/star/chart/ChartAxisPosition.idl | 60 +++++ offapi/com/sun/star/chart/ChartAxisType.idl | 51 ++++ offapi/com/sun/star/chart/ChartAxisXSupplier.idl | 74 ++++++ offapi/com/sun/star/chart/ChartAxisYSupplier.idl | 73 ++++++ offapi/com/sun/star/chart/ChartAxisZSupplier.idl | 72 ++++++ offapi/com/sun/star/chart/ChartData.idl | 42 ++++ offapi/com/sun/star/chart/ChartDataArray.idl | 50 ++++ offapi/com/sun/star/chart/ChartDataCaption.idl | 92 +++++++ offapi/com/sun/star/chart/ChartDataChangeEvent.idl | 67 ++++++ offapi/com/sun/star/chart/ChartDataChangeType.idl | 73 ++++++ offapi/com/sun/star/chart/ChartDataPoint.idl | 36 +++ .../sun/star/chart/ChartDataPointProperties.idl | 161 +++++++++++++ offapi/com/sun/star/chart/ChartDataRow.idl | 51 ++++ .../com/sun/star/chart/ChartDataRowProperties.idl | 106 ++++++++ offapi/com/sun/star/chart/ChartDataRowSource.idl | 50 ++++ offapi/com/sun/star/chart/ChartDataValue.idl | 56 +++++ offapi/com/sun/star/chart/ChartDocument.idl | 78 ++++++ offapi/com/sun/star/chart/ChartErrorCategory.idl | 86 +++++++ .../com/sun/star/chart/ChartErrorIndicatorType.idl | 57 +++++ offapi/com/sun/star/chart/ChartGrid.idl | 59 +++++ offapi/com/sun/star/chart/ChartLegend.idl | 78 ++++++ offapi/com/sun/star/chart/ChartLegendExpansion.idl | 65 +++++ offapi/com/sun/star/chart/ChartLegendPosition.idl | 79 ++++++ offapi/com/sun/star/chart/ChartLine.idl | 44 ++++ .../sun/star/chart/ChartPieSegmentProperties.idl | 61 +++++ .../sun/star/chart/ChartRegressionCurveType.idl | 84 +++++++ offapi/com/sun/star/chart/ChartSeriesAddress.idl | 58 +++++ offapi/com/sun/star/chart/ChartSolidType.idl | 59 +++++ offapi/com/sun/star/chart/ChartStatistics.idl | 154 ++++++++++++ offapi/com/sun/star/chart/ChartSymbolType.idl | 119 +++++++++ .../sun/star/chart/ChartTableAddressSupplier.idl | 65 +++++ offapi/com/sun/star/chart/ChartTitle.idl | 80 ++++++ .../com/sun/star/chart/ChartTwoAxisXSupplier.idl | 71 ++++++ .../com/sun/star/chart/ChartTwoAxisYSupplier.idl | 72 ++++++ offapi/com/sun/star/chart/DataLabelPlacement.idl | 52 ++++ offapi/com/sun/star/chart/Diagram.idl | 123 ++++++++++ offapi/com/sun/star/chart/Dim3DDiagram.idl | 70 ++++++ offapi/com/sun/star/chart/DonutDiagram.idl | 43 ++++ offapi/com/sun/star/chart/ErrorBarStyle.idl | 91 +++++++ offapi/com/sun/star/chart/FilledNetDiagram.idl | 51 ++++ offapi/com/sun/star/chart/LineDiagram.idl | 143 +++++++++++ .../com/sun/star/chart/MissingValueTreatment.idl | 41 ++++ offapi/com/sun/star/chart/NetDiagram.idl | 50 ++++ offapi/com/sun/star/chart/PieDiagram.idl | 44 ++++ offapi/com/sun/star/chart/StackableDiagram.idl | 57 +++++ offapi/com/sun/star/chart/StockDiagram.idl | 130 ++++++++++ offapi/com/sun/star/chart/TimeIncrement.idl | 58 +++++ offapi/com/sun/star/chart/TimeInterval.idl | 48 ++++ offapi/com/sun/star/chart/TimeUnit.idl | 41 ++++ offapi/com/sun/star/chart/X3DDefaultSetter.idl | 56 +++++ offapi/com/sun/star/chart/X3DDisplay.idl | 69 ++++++ offapi/com/sun/star/chart/XAxis.idl | 52 ++++ offapi/com/sun/star/chart/XAxisSupplier.idl | 53 ++++ offapi/com/sun/star/chart/XAxisXSupplier.idl | 86 +++++++ offapi/com/sun/star/chart/XAxisYSupplier.idl | 86 +++++++ offapi/com/sun/star/chart/XAxisZSupplier.idl | 83 +++++++ offapi/com/sun/star/chart/XChartData.idl | 99 ++++++++ offapi/com/sun/star/chart/XChartDataArray.idl | 97 ++++++++ .../star/chart/XChartDataChangeEventListener.idl | 57 +++++ offapi/com/sun/star/chart/XChartDocument.idl | 160 ++++++++++++ .../sun/star/chart/XComplexDescriptionAccess.idl | 83 +++++++ offapi/com/sun/star/chart/XDateCategories.idl | 59 +++++ offapi/com/sun/star/chart/XDiagram.idl | 80 ++++++ offapi/com/sun/star/chart/XDiagramPositioning.idl | 91 +++++++ .../sun/star/chart/XSecondAxisTitleSupplier.idl | 40 +++ offapi/com/sun/star/chart/XStatisticDisplay.idl | 83 +++++++ offapi/com/sun/star/chart/XTwoAxisXSupplier.idl | 57 +++++ offapi/com/sun/star/chart/XTwoAxisYSupplier.idl | 54 +++++ offapi/com/sun/star/chart/XYDiagram.idl | 58 +++++ 82 files changed, 6212 insertions(+) create mode 100644 offapi/com/sun/star/chart/AccessibleChartDocumentView.idl create mode 100644 offapi/com/sun/star/chart/AccessibleChartElement.idl create mode 100644 offapi/com/sun/star/chart/AreaDiagram.idl create mode 100644 offapi/com/sun/star/chart/BarDiagram.idl create mode 100644 offapi/com/sun/star/chart/BubbleDiagram.idl create mode 100644 offapi/com/sun/star/chart/Chart3DBarProperties.idl create mode 100644 offapi/com/sun/star/chart/ChartArea.idl create mode 100644 offapi/com/sun/star/chart/ChartAxis.idl create mode 100644 offapi/com/sun/star/chart/ChartAxisArrangeOrderType.idl create mode 100644 offapi/com/sun/star/chart/ChartAxisAssign.idl create mode 100644 offapi/com/sun/star/chart/ChartAxisLabelPosition.idl create mode 100644 offapi/com/sun/star/chart/ChartAxisMarkPosition.idl create mode 100644 offapi/com/sun/star/chart/ChartAxisMarks.idl create mode 100644 offapi/com/sun/star/chart/ChartAxisPosition.idl create mode 100644 offapi/com/sun/star/chart/ChartAxisType.idl create mode 100644 offapi/com/sun/star/chart/ChartAxisXSupplier.idl create mode 100644 offapi/com/sun/star/chart/ChartAxisYSupplier.idl create mode 100644 offapi/com/sun/star/chart/ChartAxisZSupplier.idl create mode 100644 offapi/com/sun/star/chart/ChartData.idl create mode 100644 offapi/com/sun/star/chart/ChartDataArray.idl create mode 100644 offapi/com/sun/star/chart/ChartDataCaption.idl create mode 100644 offapi/com/sun/star/chart/ChartDataChangeEvent.idl create mode 100644 offapi/com/sun/star/chart/ChartDataChangeType.idl create mode 100644 offapi/com/sun/star/chart/ChartDataPoint.idl create mode 100644 offapi/com/sun/star/chart/ChartDataPointProperties.idl create mode 100644 offapi/com/sun/star/chart/ChartDataRow.idl create mode 100644 offapi/com/sun/star/chart/ChartDataRowProperties.idl create mode 100644 offapi/com/sun/star/chart/ChartDataRowSource.idl create mode 100644 offapi/com/sun/star/chart/ChartDataValue.idl create mode 100644 offapi/com/sun/star/chart/ChartDocument.idl create mode 100644 offapi/com/sun/star/chart/ChartErrorCategory.idl create mode 100644 offapi/com/sun/star/chart/ChartErrorIndicatorType.idl create mode 100644 offapi/com/sun/star/chart/ChartGrid.idl create mode 100644 offapi/com/sun/star/chart/ChartLegend.idl create mode 100644 offapi/com/sun/star/chart/ChartLegendExpansion.idl create mode 100644 offapi/com/sun/star/chart/ChartLegendPosition.idl create mode 100644 offapi/com/sun/star/chart/ChartLine.idl create mode 100644 offapi/com/sun/star/chart/ChartPieSegmentProperties.idl create mode 100644 offapi/com/sun/star/chart/ChartRegressionCurveType.idl create mode 100644 offapi/com/sun/star/chart/ChartSeriesAddress.idl create mode 100644 offapi/com/sun/star/chart/ChartSolidType.idl create mode 100644 offapi/com/sun/star/chart/ChartStatistics.idl create mode 100644 offapi/com/sun/star/chart/ChartSymbolType.idl create mode 100644 offapi/com/sun/star/chart/ChartTableAddressSupplier.idl create mode 100644 offapi/com/sun/star/chart/ChartTitle.idl create mode 100644 offapi/com/sun/star/chart/ChartTwoAxisXSupplier.idl create mode 100644 offapi/com/sun/star/chart/ChartTwoAxisYSupplier.idl create mode 100644 offapi/com/sun/star/chart/DataLabelPlacement.idl create mode 100644 offapi/com/sun/star/chart/Diagram.idl create mode 100644 offapi/com/sun/star/chart/Dim3DDiagram.idl create mode 100644 offapi/com/sun/star/chart/DonutDiagram.idl create mode 100644 offapi/com/sun/star/chart/ErrorBarStyle.idl create mode 100644 offapi/com/sun/star/chart/FilledNetDiagram.idl create mode 100644 offapi/com/sun/star/chart/LineDiagram.idl create mode 100644 offapi/com/sun/star/chart/MissingValueTreatment.idl create mode 100644 offapi/com/sun/star/chart/NetDiagram.idl create mode 100644 offapi/com/sun/star/chart/PieDiagram.idl create mode 100644 offapi/com/sun/star/chart/StackableDiagram.idl create mode 100644 offapi/com/sun/star/chart/StockDiagram.idl create mode 100644 offapi/com/sun/star/chart/TimeIncrement.idl create mode 100644 offapi/com/sun/star/chart/TimeInterval.idl create mode 100644 offapi/com/sun/star/chart/TimeUnit.idl create mode 100644 offapi/com/sun/star/chart/X3DDefaultSetter.idl create mode 100644 offapi/com/sun/star/chart/X3DDisplay.idl create mode 100644 offapi/com/sun/star/chart/XAxis.idl create mode 100644 offapi/com/sun/star/chart/XAxisSupplier.idl create mode 100644 offapi/com/sun/star/chart/XAxisXSupplier.idl create mode 100644 offapi/com/sun/star/chart/XAxisYSupplier.idl create mode 100644 offapi/com/sun/star/chart/XAxisZSupplier.idl create mode 100644 offapi/com/sun/star/chart/XChartData.idl create mode 100644 offapi/com/sun/star/chart/XChartDataArray.idl create mode 100644 offapi/com/sun/star/chart/XChartDataChangeEventListener.idl create mode 100644 offapi/com/sun/star/chart/XChartDocument.idl create mode 100644 offapi/com/sun/star/chart/XComplexDescriptionAccess.idl create mode 100644 offapi/com/sun/star/chart/XDateCategories.idl create mode 100644 offapi/com/sun/star/chart/XDiagram.idl create mode 100644 offapi/com/sun/star/chart/XDiagramPositioning.idl create mode 100644 offapi/com/sun/star/chart/XSecondAxisTitleSupplier.idl create mode 100644 offapi/com/sun/star/chart/XStatisticDisplay.idl create mode 100644 offapi/com/sun/star/chart/XTwoAxisXSupplier.idl create mode 100644 offapi/com/sun/star/chart/XTwoAxisYSupplier.idl create mode 100644 offapi/com/sun/star/chart/XYDiagram.idl (limited to 'offapi/com/sun/star/chart') diff --git a/offapi/com/sun/star/chart/AccessibleChartDocumentView.idl b/offapi/com/sun/star/chart/AccessibleChartDocumentView.idl new file mode 100644 index 000000000..d8047fe7a --- /dev/null +++ b/offapi/com/sun/star/chart/AccessibleChartDocumentView.idl @@ -0,0 +1,131 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_chart_AccessibleChartDocumentView_idl__ +#define __com_sun_star_chart_AccessibleChartDocumentView_idl__ + +#include +#include +#include + +module com { module sun { module star { module chart { + +/** The AccessibleChartDocumentView service is supported + by a Component that represents the view of a Chart document to + provide an entry point to the document tree for accessibility. + +

An object that implements the AccessibleChartDocumentView + service provides information about itself and about the chart + subcomponents contained in the chart document displayed in a + window. This service gives a simplified view on the underlying + implementation. It tries both to keep the structure of the + accessibility representation tree as simple as possible and + provide as much relevant information as possible.

+ + @since OOo 1.1.2 +*/ +service AccessibleChartDocumentView +{ + /** Base interface for being accessible. It gives access to the + ::com::sun::star::accessibility::XAccessibleContext + interface. + */ + interface ::com::sun::star::accessibility::XAccessible; + + /** Provide access to a Chart document's view. + +

You can access the following information:

+
+
Role
+
The object's role is + com::sun::star::accessibility::AccessibleRole::DOCUMENT.
+
Name
+
Its name is the document's name or the base name of the filename if + no document name has been set explicitly.
+
Description
+
The description is the document's description or the + full filename if no description has been set + explicitly.
+
Children
+
The subcomponents of a chart. This includes all kinds of + titles, a legend and the diagram. The diagram and the legend are + the only children that themselves contain children. The Chart + subcomponents support the service + AccessibleChartElement. Additionally, there may be + shapes a user added via the clipboard. For details see the + ::com::sun::star::drawing::AccessibleShape. +
+
Parent
+
The parent will usually be the window that contains the + Chart document view. It has to be set via implementation dependent + ways.
+
Relations
+
At the moment relations are not supported. The method + com::sun::star::accessibility::XAccessibleContext::getAccessibleRelationSet() + will always return an empty set.
+
States
+
The following states are supported: +
    +
  • com::sun::star::accessibility::AccessibleStateType::DEFUNC + is set if a document view becomes obsolete like when + the window, which displays the view, is closed.
  • +
  • com::sun::star::accessibility::AccessibleStateType::ENABLED + is always set unless the + com::sun::star::accessibility::AccessibleStateType::DEFUNC + state is set.
  • +
  • com::sun::star::accessibility::AccessibleStateType::OPAQUE + is always set.
  • +
  • com::sun::star::accessibility::AccessibleStateType::SHOWING + is always set unless the + com::sun::star::accessibility::AccessibleStateType::DEFUNC + state is set.
  • +
  • com::sun::star::accessibility::AccessibleStateType::VISIBLE + is always set unless the + com::sun::star::accessibility::AccessibleStateType::DEFUNC + state is set.
  • +
+
+
Locale
+
Is the locale set at the document.
+
Property change listeners
+
They are supported to inform the + listeners about changes in this object.
+
+ */ + interface ::com::sun::star::accessibility::XAccessibleContext; + + /** Provide access to a Chart document's graphical representation. + +

The main purpose of this interface is to provide a bounding + box of the currently visible area and to let the user find the + subcomponents of a chart that cover a given test point.

+ +

The accessible Chart subcomponents all support the service + AccessibleChartElement

+ + @see AccessibleChartElement + */ + interface ::com::sun::star::accessibility::XAccessibleComponent; +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/AccessibleChartElement.idl b/offapi/com/sun/star/chart/AccessibleChartElement.idl new file mode 100644 index 000000000..bb6c2da88 --- /dev/null +++ b/offapi/com/sun/star/chart/AccessibleChartElement.idl @@ -0,0 +1,183 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_chart_AccessibleChartElement_idl__ +#define __com_sun_star_chart_AccessibleChartElement_idl__ + +#include +#include +#include + + +module com { module sun { module star { module chart { + +/** This service is supported by all components that are contained in + the view of a chart document that are controlled by the chart. + Shapes added by a user via the clipboard are not treated as chart + elements. + +

The list of objects that implement this service is + ::com::sun::star::chart::ChartTitle, + ::com::sun::star::chart::ChartLegend, + ::com::sun::star::chart::Diagram, + ::com::sun::star::chart::ChartAxis, + ::com::sun::star::chart::ChartDataRowProperties, + ::com::sun::star::chart::ChartDataPointProperties. +

+ +

The + ::com::sun::star::accessibility::XAccessibleExtendedComponent + is supported by all chart elements.

+ + @since OOo 1.1.2 +*/ +service AccessibleChartElement +{ + /** Base interface for being accessible. It gives access to the + ::com::sun::star::accessibility::XAccessibleContext + interface. + */ + interface ::com::sun::star::accessibility::XAccessible; + + /** Give access to the structural information of a chart element. + +

You can access the following information for the shapes of the above listed types: +

+
Role
+
All chart elements have the role + ::com::sun::star::accessibility::AccessibleRole::SHAPE. +
+
Name
+
For unique elements you get fixed names. The unique + elements are the titles, legend, diagram and axes. The + names you get for them are "main-title", "sub-title", + "(x|y|z)-axis-title", "legend", "diagram", "(x|y|z)-axis" + and "second-(x|y)-axis", respectively.
+
Description
+
Descriptions contain a list of selected + attributes. These attributes are, if applicable: + foreground and background color, line width, font name and + size. The purpose of these attributes is to give a rough + description of the more simple geometric shapes. The list + is very restricted in order to avoid overwhelming or + confusing the user.
+
Children
+
The ::com::sun::star::chart::Diagram and + the ::com::sun::star::chart::ChartLegend + contain children, all other objects in a chart do not, i.e., are + leaves in the document representation tree.
+
Parent
+
Because the setParent method from the JAVA has + been removed, the reference to the parent has to be provided in an + implementation specific way.
+
Relations
+
They are not used at the moment.
+ +
States
+
The states supported by this service are: +
    + +
  • ::com::sun::star::accessibility::AccessibleStateType::DEFUNC + is set if an object was removed. This indicates that the user + should release all references to the accessible object. If + this state is set then no other of the states below is set. +
  • +
  • ::com::sun::star::accessibility::AccessibleStateType::EDITABLE
  • +
  • ::com::sun::star::accessibility::AccessibleStateType::ENABLED + is always set.*
  • +
  • ::com::sun::star::accessibility::AccessibleStateType::MULTI_LINE + is set for all titles.
  • +
  • ::com::sun::star::accessibility::AccessibleStateType::OPAQUE + is set for all elements that do have a transparency + attributes set to 0% and no transparency gradient.
  • +
  • ::com::sun::star::accessibility::AccessibleStateType::RESIZABLE + Is set for the diagram object only. All other chart elements may not be resized.
  • +
  • ::com::sun::star::accessibility::AccessibleStateType::SELECTABLE
  • +
  • ::com::sun::star::accessibility::AccessibleStateType::SELECTED
  • +
  • ::com::sun::star::accessibility::AccessibleStateType::SHOWING + is always set.*
  • +
  • ::com::sun::star::accessibility::AccessibleStateType::VISIBLE + is always set.*
  • +
+ *always, except if the state + ::com::sun::star::accessibility::AccessibleStateType::DEFUNC + is set.
+
Locale
+
is supported.
+
Property change listeners
+
Property change listeners that are registered with a chart + element are informed if the size or position or an attribute + changed. The last point needs a short explanation: An attribute + change is signaled even if that attribute is not part of the + shape's description and is therefore not explicitly represented by + the UAA.
+
+ */ + interface ::com::sun::star::accessibility::XAccessibleContext; + + /** Give access to the graphical representation of a chart element. + +

The coordinate oriented methods contains, + getAccessibleAt, getBounds, + getLocation, getLocationOnScreen, and + getSize work on pixel coordinates. (To transform between + the internal 100th of mm and pixels a chart element has to have access + to information that allows it to do so. This information is the + enclosing window's size in pixel, 100th of mm, and its own relative + position in one or the other coordinate system).

+ +

Focus handling depends on support of the + ::com::sun::star::accessibility::XAccessibleText and + ::com::sun::star::accessibility::XAccessibleEditableText + interfaces.

+ +

Key bindings are not supported at the moment

+ */ + interface ::com::sun::star::accessibility::XAccessibleComponent; + + /** Give extended access to the graphical representation of a chart element. + +

This interface is used primarily to provide the predominant + foreground and background colors and—if applicable, i.e. the + ::com::sun::star::accessibility::XAccessibleText + interface is supported—information about the font used to display + text.

+ +

The foreground and background colors may in some cases be directly + taken from the object. In other cases, for example when a gradient or a + texture is used, they have to be interpolated. The color returned may + not be appropriate in all cases.

+ +

Specifying the font used for displaying text depends on the + transformation of UNO API font information into the Java™ format. + However, if the UAA is used directly, this is of course not an + issue.

+ +

The support of this interface is optional to reduce overhead in case + that no text is displayed and color information can not be determined + with an acceptable cost.

+ */ + [optional] interface ::com::sun::star::accessibility::XAccessibleExtendedComponent; +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/AreaDiagram.idl b/offapi/com/sun/star/chart/AreaDiagram.idl new file mode 100644 index 000000000..91d922b2b --- /dev/null +++ b/offapi/com/sun/star/chart/AreaDiagram.idl @@ -0,0 +1,59 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_AreaDiagram_idl__ +#define __com_sun_star_chart_AreaDiagram_idl__ + +#include + +#include + +#include + +#include + +#include + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** This is a service for area diagrams. + */ +published service AreaDiagram +{ + service com::sun::star::chart::Diagram; + service com::sun::star::chart::ChartStatistics; + service com::sun::star::chart::ChartAxisXSupplier; + service com::sun::star::chart::ChartTwoAxisYSupplier; + service com::sun::star::chart::ChartAxisZSupplier; + service com::sun::star::chart::Dim3DDiagram; + service com::sun::star::chart::StackableDiagram; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/BarDiagram.idl b/offapi/com/sun/star/chart/BarDiagram.idl new file mode 100644 index 000000000..7b2b8899d --- /dev/null +++ b/offapi/com/sun/star/chart/BarDiagram.idl @@ -0,0 +1,104 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_BarDiagram_idl__ +#define __com_sun_star_chart_BarDiagram_idl__ + +#include +#include +#include +#include +#include +#include +#include + + + + module com { module sun { module star { module chart { + + +/**This is a service for bar and column diagrams. + */ +published service BarDiagram +{ + service com::sun::star::chart::Diagram; + service com::sun::star::chart::ChartStatistics; + service com::sun::star::chart::ChartAxisXSupplier; + service com::sun::star::chart::ChartTwoAxisYSupplier; + service com::sun::star::chart::ChartAxisZSupplier; + service com::sun::star::chart::Dim3DDiagram; + service com::sun::star::chart::StackableDiagram; + + + /** Determines if the bars of a chart are drawn vertically or + horizontally. Default is vertical. + +

If Vertical is `FALSE` you get a column chart rather than + a bar chart.

+ */ + [property] boolean Vertical; + + + /** If `TRUE`, determines that in a three-dimensional bar chart + the bars of each series are arranged behind each other in the + z-direction. If `FALSE` the arrangement of bars is like in + two-dimensional bar charts. + */ + [optional, property] boolean Deep; + + + /** determines if, in a stacked chart, there are connecting lines + between corresponding bars. Currently, bar charts with + horizontal bars do not support this property. + */ + [optional, property] boolean StackedBarsConnected; + + + /** 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. + +

If `FALSE`, the bars are displayed side-by-side, as if + they were all attached to the same axis.

+ +

If all data series of a bar or column chart are attached to + only one axis, this property has no effect.

+ */ + [optional, property] boolean GroupBarsPerAxis; + + + + /** Determines how many data rows are displayed as lines rather than + bars. + +

If this property differs from zero the last + BarDiagram::NumberOfLines data rows are shown as lines. It is + currently supported by two dimensional vertical bar charts only.

+ + @deprecated + */ + [property] long NumberOfLines; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/BubbleDiagram.idl b/offapi/com/sun/star/chart/BubbleDiagram.idl new file mode 100644 index 000000000..180216a3f --- /dev/null +++ b/offapi/com/sun/star/chart/BubbleDiagram.idl @@ -0,0 +1,48 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_BubbleDiagram_idl__ +#define __com_sun_star_chart_BubbleDiagram_idl__ + +#include + +#include + +#include +#include + + + module com { module sun { module star { module chart { + + +/** a service for bubble diagrams. @since OOo 3.2 + */ +published service BubbleDiagram +{ + service com::sun::star::chart::Diagram; + service com::sun::star::chart::ChartAxisXSupplier; + service com::sun::star::chart::ChartTwoAxisYSupplier; + [optional] service com::sun::star::chart::ChartStatistics; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/Chart3DBarProperties.idl b/offapi/com/sun/star/chart/Chart3DBarProperties.idl new file mode 100644 index 000000000..d85b92fd2 --- /dev/null +++ b/offapi/com/sun/star/chart/Chart3DBarProperties.idl @@ -0,0 +1,47 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_Chart3DBarProperties_idl__ +#define __com_sun_star_chart_Chart3DBarProperties_idl__ + +#include + + + module com { module sun { module star { module chart { + + +/** Specifies all the properties for the graphic object of a data point in a + three-dimensional bar diagram.@see BarDiagram + */ +published service Chart3DBarProperties +{ + interface com::sun::star::beans::XPropertySet; + + + /** Specifies the solid shape of a data point.@see ChartSolidType + */ + [property] long SolidType; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartArea.idl b/offapi/com/sun/star/chart/ChartArea.idl new file mode 100644 index 000000000..d2484dc5b --- /dev/null +++ b/offapi/com/sun/star/chart/ChartArea.idl @@ -0,0 +1,58 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartArea_idl__ +#define __com_sun_star_chart_ChartArea_idl__ + +#include + +#include + +#include +#include + + + module com { module sun { module star { module chart { + + +/** Specifies the area elements of a chart, e.g. the + background area, the diagram wall, and the diagram floor of + three-dimensional charts. + */ +published service ChartArea +{ + service com::sun::star::drawing::FillProperties; + service com::sun::star::drawing::LineProperties; + + /** If the ChartArea may be stored as XML element, + this service should be supported in order to preserve unparsed + XML attributes. + + @since OOo 1.1.2 + */ + [optional] service com::sun::star::xml::UserDefinedAttributesSupplier; + + interface com::sun::star::beans::XPropertySet; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartAxis.idl b/offapi/com/sun/star/chart/ChartAxis.idl new file mode 100644 index 000000000..5c5fb8bd3 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartAxis.idl @@ -0,0 +1,268 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartAxis_idl__ +#define __com_sun_star_chart_ChartAxis_idl__ + +#include + +#include + +#include + +#include +#include +#include +#include +#include +#include +#include +#include + + + module com { module sun { module star { module chart { + + +/** Specifies the axes in a diagram. + +

Note: The text properties correlate to all axis description + elements, not to just a single text element.

+ */ +published service ChartAxis +{ + /** set the properties for the entire axis line as well as for the + tick marks. + */ + service com::sun::star::drawing::LineProperties; + + /** set the properties for all text labels of the axis + */ + service com::sun::star::style::CharacterProperties; + + /** If a ChartAxis may be stored as XML element, this + service should be supported in order to preserve unparsed XML + attributes. + + @since OOo 1.1.2 + */ + [optional] service com::sun::star::xml::UserDefinedAttributesSupplier; + + /** Access to the sub elements of an axis like title and grids. + @since OOo 3.4 + */ + [optional] interface com::sun::star::chart::XAxis; + + interface com::sun::star::beans::XPropertySet; + + /** Properties for scaling: + */ + + + /** Contains the maximum value for the axis scale. + */ + [optional, property] double Max; + + + /** Contains the minimum value for the axis scale. + */ + [optional, property] double Min; + + + /** Contains the distance between the main tick marks. + */ + [optional, property] double StepMain; + + + /** + Contains the number of help intervals within a main interval. E.g. a StepHelpCount of 5 divides + the main interval into 5 pieces and thus produces 4 help tick marks. + */ + [optional, property] long StepHelpCount; + + + /** @deprecated + User property StepHelpCount instead + Contains the distance between the help tick marks. + */ + [optional, property] double StepHelp; + + + /** The maximum value of the axis scale is calculated by the chart if + this property is `TRUE`. + */ + [optional, property] boolean AutoMax; + + + /** The minimum value of the axis scale is calculated by the chart if + this property is `TRUE`. + */ + [optional, property] boolean AutoMin; + + + /** The distance between the main tick marks is calculated by the chart + if this property is `TRUE`. + */ + [optional, property] boolean AutoStepMain; + + + /** The number of help intervals within a main interval is calculated by the + chart if this property is `TRUE`. + */ + [optional, property] boolean AutoStepHelp; + + + + /** Determines if the axis is scaled logarithmically or + not (linear). + */ + [optional, property] boolean Logarithmic; + + + /** determines which type of axis this is, e.g. a date-axis or a category-axis @see ChartAxisType + @since OOo 3.4 + */ + [optional, property] long AxisType; + + + /** if the current axis is a date-axis the intervals are chosen as given with TimeIncrement + @since OOo 3.4 + */ + [optional, maybevoid, property] TimeIncrement TimeIncrement; + + + /** Determines if the axis orientation is mathematical or reversed. + */ + [optional, property] boolean ReverseDirection; + + + /** 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; + + + /** Indicates the reference value where bars or areas have their grounding. + This property has only an effect when the used ODF file format does not allow for + further axis positioning or the axis is a secondary y-axis. + */ + [optional, property] double Origin; + + + /** The origin is calculated by the chart if this property is `TRUE`. + */ + [optional, property] boolean AutoOrigin; + + /** Properties for interval marks: + */ + + + /** Determines the type of the marks.@see ChartAxisMarks + */ + [property] long Marks; + + + /** Determines the type of the help marks.@see ChartAxisMarks + */ + [property] long HelpMarks; + + /** Determines where the interval marks are placed. + */ + [optional, property] com::sun::star::chart::ChartAxisMarkPosition MarkPosition; + + /** Properties for axes labels: + */ + + + /** Determines whether to display text at the axis or not. + */ + [property] boolean DisplayLabels; + + + /** Contains the type id for the number formatter of the axis. + + @see com::sun::star::util::XNumberFormatter + */ + [property] long NumberFormat; + + + /** determines whether to use the number format given by the + container application, e.g. a spreadsheet document, or from + the own property #NumberFormat. + */ + [optional, property] boolean LinkNumberFormatToSource; + + + /** Determines where the axis labels are placed. + */ + [optional, property] com::sun::star::chart::ChartAxisLabelPosition LabelPosition; + + + /** Determines the rotation of the text elements + (axis description) in 100th degrees. + */ + [property] long TextRotation; + + + /** The axis description may be arranged in a special order for a + better placement. + */ + [property] com::sun::star::chart::ChartAxisArrangeOrderType ArrangeOrder; + + + /** Determines if long text is broken into multiple lines. + */ + [property] boolean TextBreak; + + + /** Determines if certain labels are hidden, if they would otherwise overlap. + In this case, the value of this property must be set to `FALSE`. + */ + [property] boolean TextCanOverlap; + + /** Properties related to bar charts: + */ + + + /** Determines the overlap of the bars in a bar-type chart. + +

The value is given in percent of the width of the bars. The + valid range is -100% to +100%. +100% means full overlap, -100% + indicates a distance of one bar between 2 neighboring bars.

+ */ + [property] long Overlap; + + + /** Specifies the width of the gaps between each set of data points + in a bar chart. + +

The value is given in percent of the width of a bar; the + valid range is 0 to 600%.

+ */ + [property] long GapWidth; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartAxisArrangeOrderType.idl b/offapi/com/sun/star/chart/ChartAxisArrangeOrderType.idl new file mode 100644 index 000000000..3a7a736f0 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartAxisArrangeOrderType.idl @@ -0,0 +1,63 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartAxisArrangeOrderType_idl__ +#define __com_sun_star_chart_ChartAxisArrangeOrderType_idl__ + + + + module com { module sun { module star { module chart { + + +/** Values specify the arrangement of the axes descriptions. + */ +published enum ChartAxisArrangeOrderType +{ + + /** The descriptions are arranged automatically. + +

If there is enough space to put them side by side, this + arrangement is preferred. If the descriptions would overlap + when arranged side by side, they are staggered.

+ */ + AUTO, + + + /** The descriptions are arranged side by side. + */ + SIDE_BY_SIDE, + + + /** The descriptions are alternately put on two lines with the even + values out of the normal line. + */ + STAGGER_EVEN, + + + /** The descriptions are alternately put on two lines with the odd + values out of the normal line. + */ + STAGGER_ODD +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartAxisAssign.idl b/offapi/com/sun/star/chart/ChartAxisAssign.idl new file mode 100644 index 000000000..be8a411b0 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartAxisAssign.idl @@ -0,0 +1,48 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartAxisAssign_idl__ +#define __com_sun_star_chart_ChartAxisAssign_idl__ + + + + module com { module sun { module star { module chart { + + +/** These values specify to which y-axis a data row is assigned. + */ +published constants ChartAxisAssign +{ + + /** Assign row to primary y-axis + */ + const long PRIMARY_Y = 2; + + + /** Assign row to secondary y-axis + */ + const long SECONDARY_Y = 4; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartAxisLabelPosition.idl b/offapi/com/sun/star/chart/ChartAxisLabelPosition.idl new file mode 100644 index 000000000..3c31109fb --- /dev/null +++ b/offapi/com/sun/star/chart/ChartAxisLabelPosition.idl @@ -0,0 +1,62 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartAxisLabelPosition_idl__ +#define __com_sun_star_chart_ChartAxisLabelPosition_idl__ + + + + module com { module sun { module star { module chart { + + +/** Specifies the position of the axis labels with respect to the axis on the scale of the crossing axis. +*/ + +published enum ChartAxisLabelPosition +{ + + /** The labels are placed adjacent to the axis. When the axis itself is placed at the minimum or maximum of the scale ( that is when the property CrossoverPosition equals ChartAxisPosition_MINIMUM or ChartAxisPosition_MAXIMUM) + the labels are placed outside the coordinate system. Otherwise the labels are placed adjacent to the axis on that side that belongs to the lower values on the crossing axis. + E.g. when the ChartAxisLabelPosition is set to NEAR_AXIS for an y axis the labels are placed adjacent to the y axis on that side that belongs to the lower x values. + */ + NEAR_AXIS, + + + /** The labels are placed adjacent to the axis on the opposite side as for NEAR_AXIS. + */ + NEAR_AXIS_OTHER_SIDE, + + + /** The labels are placed outside the coordinate region on that side where the crossing axis has its minimum value. + E.g. when this is set for an y axis the labels are placed outside the diagram on that side where to the x axis has its minimum value. + */ + OUTSIDE_START, + + + /** The labels are placed outside the coordinate region on that side where the crossing axis has its maximum value. + E.g. when this is set for an y axis the labels are placed outside the diagram on that side where to the x axis has its maximum value. + */ + OUTSIDE_END +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartAxisMarkPosition.idl b/offapi/com/sun/star/chart/ChartAxisMarkPosition.idl new file mode 100644 index 000000000..6b0a152bf --- /dev/null +++ b/offapi/com/sun/star/chart/ChartAxisMarkPosition.idl @@ -0,0 +1,55 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartAxisMarkPosition_idl__ +#define __com_sun_star_chart_ChartAxisMarkPosition_idl__ + + + + module com { module sun { module star { module chart { + + +/** Specifies the position of the axis interval marks. +*/ + +published enum ChartAxisMarkPosition +{ + + /** The interval marks are drawn besides the axis labels. + */ + AT_LABELS, + + + /** The interval marks are drawn at the axis line. + This makes a difference to "AT_LABELS" only when the labels are not placed near the axis (@see ChartAxisLabelPosition). + */ + AT_AXIS, + + + /** Interval marks are drawn at the axis line and also besides the axis labels. + This makes a difference to "AT_LABELS" only when the labels are not placed near the axis (@see ChartAxisLabelPosition). + */ + AT_LABELS_AND_AXIS +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartAxisMarks.idl b/offapi/com/sun/star/chart/ChartAxisMarks.idl new file mode 100644 index 000000000..374ea446f --- /dev/null +++ b/offapi/com/sun/star/chart/ChartAxisMarks.idl @@ -0,0 +1,58 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartAxisMarks_idl__ +#define __com_sun_star_chart_ChartAxisMarks_idl__ + + + + module com { module sun { module star { module chart { + + +/** With these constants you can specify how the tick-marks of an axis + are displayed. + +

You can combine INNER and OUTER with + an arithmetical or-operation to get tick-marks that + extend in both directions.

+ */ +published constants ChartAxisMarks +{ + + /** 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; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartAxisPosition.idl b/offapi/com/sun/star/chart/ChartAxisPosition.idl new file mode 100644 index 000000000..b9cdab0e9 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartAxisPosition.idl @@ -0,0 +1,60 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartAxisPosition_idl__ +#define __com_sun_star_chart_ChartAxisPosition_idl__ + + + + module com { module sun { module star { module chart { + + +/** Specifies the position of the axis on the scale of the crossing axis. +When the property is set at a x-axis it indicates a position on the scale of the primary y-axis. +When the property is set at a y-axis it indicates a position on the scale of the primary x-axis. +*/ + +published enum ChartAxisPosition +{ + + /** Cross the other axes at zero. If zero is not contained in the current scale the value is used which is nearest to zero. + */ + ZERO, + + + /** Cross the other axes at their minimum scale value. + */ + START, + + + /** Cross the other axes at their maximum scale value. + */ + END, + + + /** Cross the other axes at the value specified in the property CrossoverValue. + */ + VALUE +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartAxisType.idl b/offapi/com/sun/star/chart/ChartAxisType.idl new file mode 100644 index 000000000..3dd3fe72a --- /dev/null +++ b/offapi/com/sun/star/chart/ChartAxisType.idl @@ -0,0 +1,51 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef com_sun_star_chart_ChartAxisType_idl +#define com_sun_star_chart_ChartAxisType_idl + +module com +{ +module sun +{ +module star +{ +module chart +{ +/** @since OOo 3.4 +*/ +published constants ChartAxisType +{ + /** the type of the axis is chosen automatically dependent on the chart type, the dimension and the underlying data + */ + const long AUTOMATIC = 0; + + /** the axis represent discrete category texts if chart type and the dimension allows + */ + const long CATEGORY = 1; + + /** the axis shows dates if the given data and chart type and the dimension allows + */ + const long DATE = 2; +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartAxisXSupplier.idl b/offapi/com/sun/star/chart/ChartAxisXSupplier.idl new file mode 100644 index 000000000..d63cf3594 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartAxisXSupplier.idl @@ -0,0 +1,74 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartAxisXSupplier_idl__ +#define __com_sun_star_chart_ChartAxisXSupplier_idl__ + +#include + + + + module com { module sun { module star { module chart { + + +/** has to be supported by charts providing the capabilities of a + horizontal axis, i.e., an x-axis. + */ +published service ChartAxisXSupplier +{ + /** offers access to the axis object, the title, and the grids + */ + interface com::sun::star::chart::XAxisXSupplier; + + + /** This property determines if the x-axis is shown or hidden.@see ChartAxis + */ + [property] boolean HasXAxis; + + + /** Determines if the description of the x-axis is + shown or hidden. + */ + [property] boolean HasXAxisDescription; + + + /** Determines if the major grid of the x-axis is + shown or hidden.@see ChartGrid + */ + [property] boolean HasXAxisGrid; + + + /** Determines if the minor grid of the x-axis is shown + or hidden.@see ChartGrid + */ + [property] boolean HasXAxisHelpGrid; + + + /** Determines if the title of the x-axis is shown + or hidden.@see ChartTitle + */ + [property] boolean HasXAxisTitle; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartAxisYSupplier.idl b/offapi/com/sun/star/chart/ChartAxisYSupplier.idl new file mode 100644 index 000000000..a9c5b86f0 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartAxisYSupplier.idl @@ -0,0 +1,73 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartAxisYSupplier_idl__ +#define __com_sun_star_chart_ChartAxisYSupplier_idl__ + +#include + + + + module com { module sun { module star { module chart { + + +/** A helper service for the y-axis. + */ +published service ChartAxisYSupplier +{ + /** offers access to the axis object, the title, and the grids + */ + interface com::sun::star::chart::XAxisYSupplier; + + + /** Determines if the y-axis is shown or hidden.@see ChartAxis + */ + [property] boolean HasYAxis; + + + /** Determines if the description of the y-axis + is shown or hidden. + */ + [property] boolean HasYAxisDescription; + + + /** Determines if the major grid of the y-axis is + shown or hidden.@see ChartGrid + */ + [property] boolean HasYAxisGrid; + + + /** Determines if the minor grid of the y-axis is + shown or hidden.@see ChartGrid + */ + [property] boolean HasYAxisHelpGrid; + + + /** Determines if the title of the y-axis is shown + or hidden.@see ChartTitle + */ + [property] boolean HasYAxisTitle; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartAxisZSupplier.idl b/offapi/com/sun/star/chart/ChartAxisZSupplier.idl new file mode 100644 index 000000000..aa36034eb --- /dev/null +++ b/offapi/com/sun/star/chart/ChartAxisZSupplier.idl @@ -0,0 +1,72 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartAxisZSupplier_idl__ +#define __com_sun_star_chart_ChartAxisZSupplier_idl__ + +#include + + + + module com { module sun { module star { module chart { + + +/** A helper service for chart documents which supply a z-axis. + */ +published service ChartAxisZSupplier +{ + /** offers access to the axis object, the title, and the grids + */ + interface com::sun::star::chart::XAxisZSupplier; + + + /** Determines if the z-axis is shown or hidden.@see ChartAxis + */ + [property] boolean HasZAxis; + + + /** Determines if the description of the z-axis + is shown or hidden. + */ + [property] boolean HasZAxisDescription; + + + /** Determines if the major grid of the z-axis + is shown or hidden.@see ChartGrid + */ + [property] boolean HasZAxisGrid; + + + /** Determines if the minor grid of the z-axis is shown + or hidden.@see ChartGrid + */ + [property] boolean HasZAxisHelpGrid; + + + /** Determines if the title of the z-axis is shown + or hidden.@see ChartTitle + */ + [property] boolean HasZAxisTitle; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartData.idl b/offapi/com/sun/star/chart/ChartData.idl new file mode 100644 index 000000000..a43344ae4 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartData.idl @@ -0,0 +1,42 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartData_idl__ +#define __com_sun_star_chart_ChartData_idl__ + +#include + + + + module com { module sun { module star { module chart { + + +/** must be supported by every component that wants to provide data + for a chart + */ +published service ChartData +{ + interface com::sun::star::chart::XChartData; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartDataArray.idl b/offapi/com/sun/star/chart/ChartDataArray.idl new file mode 100644 index 000000000..9b6539220 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartDataArray.idl @@ -0,0 +1,50 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartDataArray_idl__ +#define __com_sun_star_chart_ChartDataArray_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** must be supported by each data source for charts, where you want + to access the values directly. + +

It contains the data values as well as the descriptions for + each row and column.

+ */ +published service ChartDataArray +{ + service com::sun::star::chart::ChartData; + interface com::sun::star::chart::XChartDataArray; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartDataCaption.idl b/offapi/com/sun/star/chart/ChartDataCaption.idl new file mode 100644 index 000000000..e61251549 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartDataCaption.idl @@ -0,0 +1,92 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartDataCaption_idl__ +#define __com_sun_star_chart_ChartDataCaption_idl__ + + + + module com { module sun { module star { module chart { + + +/** These values specify how the captions of data points are displayed. + */ +published constants ChartDataCaption +{ + + /** No captions are displayed. + */ + const long NONE = 0; + + + /** The caption contains the value of the data point in the number + format of the axis that is attached to the respective data + series. + */ + const long VALUE = 1; + + + /** The caption contains the value of the data point in percent of + all data points of one category. + +

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.

+ */ + const long PERCENT = 2; + + + /** The caption contains the category name of the category to + which a data point belongs. + */ + const long TEXT = 4; + + + /** The number formatter is always used for displaying the value + as value. So this setting is deprecated. + + @deprecated + */ + const long FORMAT = 8; + + + /** The symbol of data column/row is additionally displayed in the caption. + */ + const long SYMBOL = 16; + + + /** The caption contains a custom text, which belongs + to a data point label. + + @since LibreOffice 7.1 + */ + const long CUSTOM = 32; + + /** The name of the data series is additionally displayed in the caption. + + @since LibreOffice 7.2 + */ + const long DATA_SERIES = 64; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartDataChangeEvent.idl b/offapi/com/sun/star/chart/ChartDataChangeEvent.idl new file mode 100644 index 000000000..63b928b97 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartDataChangeEvent.idl @@ -0,0 +1,67 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartDataChangeEvent_idl__ +#define __com_sun_star_chart_ChartDataChangeEvent_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** describes a change that was applied to the data. + */ +published struct ChartDataChangeEvent: com::sun::star::lang::EventObject +{ + + /** specifies the type of change to the data. + */ + com::sun::star::chart::ChartDataChangeType Type; + + + /** specifies the column number in which the changes begin. + */ + short StartColumn; + + + /** specifies the column number in which the changes end. + */ + short EndColumn; + + + /** specifies the row number in which the changes begin. + */ + short StartRow; + + + /** specifies the row number in which the changes end. + */ + short EndRow; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartDataChangeType.idl b/offapi/com/sun/star/chart/ChartDataChangeType.idl new file mode 100644 index 000000000..e4c7bb6c7 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartDataChangeType.idl @@ -0,0 +1,73 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartDataChangeType_idl__ +#define __com_sun_star_chart_ChartDataChangeType_idl__ + + + + module com { module sun { module star { module chart { + + +/** specifies the type of change that was applied to the data. + */ +published enum ChartDataChangeType +{ + + /** Major changes were applied to the data. + */ + ALL, + + + /** The range of columns and rows, given in the + ChartDataChangeEvent, has changed. + */ + DATA_RANGE, + + + /** The column given in the ChartDataChangeEvent, was + inserted. + */ + COLUMN_INSERTED, + + + /** The row given in the ChartDataChangeEvent, was + inserted. + */ + ROW_INSERTED, + + + /** The column given in the ChartDataChangeEvent, was + deleted. + */ + COLUMN_DELETED, + + + /** The row given in the ChartDataChangeEvent, was + deleted. + */ + ROW_DELETED + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartDataPoint.idl b/offapi/com/sun/star/chart/ChartDataPoint.idl new file mode 100644 index 000000000..5ba0ca277 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartDataPoint.idl @@ -0,0 +1,36 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartDataPoint_idl__ +#define __com_sun_star_chart_ChartDataPoint_idl__ + +#include + + +module com { module sun { module star { module chart { + +/** @deprecated +*/ +published typedef sequence ChartDataPoint; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartDataPointProperties.idl b/offapi/com/sun/star/chart/ChartDataPointProperties.idl new file mode 100644 index 000000000..f80574ff1 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartDataPointProperties.idl @@ -0,0 +1,161 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartDataPointProperties_idl__ +#define __com_sun_star_chart_ChartDataPointProperties_idl__ + +#include + +#include + +#include + +#include + +#include +#include + + + module com { module sun { module star { module chart { + + +/** specifies all the properties for the graphic object of + a data point (e.g., a single bar in a bar chart). + +

Text properties correlate to the data description of the data + point. There is a similar service for a group of graphic elements + called ChartDataRowProperties for the properties of + whole data rows.

+ + @see ChartDataRowProperties + */ +published service ChartDataPointProperties +{ + /** This service has to be supported for data points that can be + filled. + */ + [optional] service com::sun::star::drawing::FillProperties; + + service com::sun::star::drawing::LineProperties; + + /** These properties affect the characters of data captions if + those are displayed. + */ + service com::sun::star::style::CharacterProperties; + + /** If ChartDataPointProperties may be stored as XML + element, this service should be supported in order to preserve + unparsed XML attributes. + + @since OOo 1.1.2 + */ + [optional] service com::sun::star::xml::UserDefinedAttributesSupplier; + + + /** is only available if the chart is of type + BarDiagram and Dim3DDiagram and the + property ChartDataPointProperties::Dim3D is + set to `TRUE`. + + @see BarDiagram + @see Dim3DDiagram@see BarDiagram + @see Dim3DDiagram + */ + [optional] service com::sun::star::chart::Chart3DBarProperties; + + interface com::sun::star::beans::XPropertySet; + + + /** specifies how the captions of data points are displayed.@see ChartDataCaption + */ + [property] long DataCaption; + + + + /** 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 DataLabelPlacement + */ + [optional, property] long LabelPlacement; + + + /** specifies the type of symbols if the current chart type + supports the usage of symbols. + + @see ChartSymbolType + */ + [optional, property] long SymbolType; + + + /** In charts that support symbols, you can set this property to + any valid URL that points to a graphic file. This graphic is + then used as symbol for each data point. + +

When you query this value you get an internal URL of the + embedded graphic.

+ + @deprecated as of Libreoffice 6.1 + + @see ChartSymbolType + */ + [optional, property] string SymbolBitmapURL; + + /** the offset by which pie segments in a PieDiagram + are dragged outside from the center. This value is given in + percent of the radius. + */ + [optional, property] long SegmentOffset; + + /** specifies if the text of a data label (caption) must be wrapped + + @since LibreOffice 5.1 + */ + [optional, property] boolean TextWordWrap; + + /** In charts that support symbols, you can set this property to + a graphic object. This graphic is then used as symbol for each + data point. + + @since LibreOffice 6.1 + + @see ChartSymbolType + */ + [optional, property] com::sun::star::graphic::XGraphic SymbolBitmap; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartDataRow.idl b/offapi/com/sun/star/chart/ChartDataRow.idl new file mode 100644 index 000000000..9e9031d8e --- /dev/null +++ b/offapi/com/sun/star/chart/ChartDataRow.idl @@ -0,0 +1,51 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartDataRow_idl__ +#define __com_sun_star_chart_ChartDataRow_idl__ + +#include + + + module com { module sun { module star { module chart { + + +/** describes a single data row, specified by its name and + a sequence of data points. + +

This struct is currently used nowhere.

+ + @deprecated + */ +published struct ChartDataRow +{ + /** The name of the data row. + */ + string Name; + + /** The points contained in this data row. + */ + sequence< sequence > Points; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartDataRowProperties.idl b/offapi/com/sun/star/chart/ChartDataRowProperties.idl new file mode 100644 index 000000000..332094d6b --- /dev/null +++ b/offapi/com/sun/star/chart/ChartDataRowProperties.idl @@ -0,0 +1,106 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartDataRowProperties_idl__ +#define __com_sun_star_chart_ChartDataRowProperties_idl__ + +#include + +#include + +#include + +#include + + + module com { module sun { module star { module chart { + + +/** specifies the properties for a group of graphic elements which + belong to a data row (also known as data series). + +

For this service, the properties supported by + ChartDataPointProperties are applied to all data + point elements contained in this group. They serve as a template; + thus, when changing a data point property afterwards

+ + @see ChartDataPointProperties + */ +published service ChartDataRowProperties +{ + service com::sun::star::chart::ChartDataPointProperties; + /** Statistical properties are not available for all types of + diagrams. + */ + [optional] service com::sun::star::chart::ChartStatistics; + + /** If ChartDataRowProperties may be stored as XML + file, this service should be supported in order to preserve + unparsed XML attributes. + + @since OOo 1.1.2 + */ + [optional] service com::sun::star::xml::UserDefinedAttributesSupplier; + + interface com::sun::star::beans::XPropertySet; + + + /** determines to which axis the data row is assigned. + +

The axis must be a primary or secondary y-axis

+ + @see ChartAxisAssign + @see ChartAxisYSupplier + @see ChartTwoAxisYSupplier + */ + [property] long Axis; + + + /** holds the properties of the regression line, if such one is + enabled. + + @see ChartLine + @see ChartStatistics + */ + [optional, readonly, property] com::sun::star::beans::XPropertySet DataRegressionProperties; + + + /** holds the properties of the error markers, if those are + enabled. + + @see ChartLine + @see ChartStatistics + */ + [optional, readonly, property] com::sun::star::beans::XPropertySet DataErrorProperties; + + + /** holds the properties of the average line, if such one is + enabled. + + @see ChartLine + @see ChartStatistics + */ + [optional, readonly, property] com::sun::star::beans::XPropertySet DataMeanValueProperties; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartDataRowSource.idl b/offapi/com/sun/star/chart/ChartDataRowSource.idl new file mode 100644 index 000000000..db58691b2 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartDataRowSource.idl @@ -0,0 +1,50 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartDataRowSource_idl__ +#define __com_sun_star_chart_ChartDataRowSource_idl__ + + + + module com { module sun { module star { module chart { + + +/** specifies if the data rows (aka data series) displayed in the + chart, take their values from the row or the column in the underlying + data source (ChartDataArray). + */ +published enum ChartDataRowSource +{ + + /** values displayed as data rows are taken from the rows of the data source. + */ + ROWS, + + + /** values displayed as data rows are taken from the columns of the data source. + */ + COLUMNS + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartDataValue.idl b/offapi/com/sun/star/chart/ChartDataValue.idl new file mode 100644 index 000000000..023b0e7a6 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartDataValue.idl @@ -0,0 +1,56 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartDataValue_idl__ +#define __com_sun_star_chart_ChartDataValue_idl__ + + + + module com { module sun { module star { module chart { + + +/** describes a single data value, including the error + +

This struct is currently used nowhere.

+ + @deprecated + */ +published struct ChartDataValue +{ + /** value by itself. + */ + double Value; + + + /** highest possible error value. + */ + double HighError; + + + /** lowest possible error value. + */ + double LowError; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartDocument.idl b/offapi/com/sun/star/chart/ChartDocument.idl new file mode 100644 index 000000000..0fe548cb1 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartDocument.idl @@ -0,0 +1,78 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartDocument_idl__ +#define __com_sun_star_chart_ChartDocument_idl__ + +#include +#include +#include +#include + + + module com { module sun { module star { module chart { + + +/** is the service for a chart document. + +

A chart document consists of a reference to the data source, + the diagram and some additional elements like a main title, a + sub-title or a legend. + +

@see Diagram + @see ChartLegend + @see ChartTitle + @see ChartDataArray + */ +published service ChartDocument +{ + /** If a ChartDocument may be stored as XML file, + this service should be supported in order to preserve unparsed + XML attributes. + + @since OOo 1.1.2 + */ + [optional] service ::com::sun::star::xml::UserDefinedAttributesSupplier; + + interface ::com::sun::star::chart::XChartDocument; + interface ::com::sun::star::beans::XPropertySet; + + [optional] interface ::com::sun::star::drawing::XDrawPageSupplier; + + + /** determines if the main title is shown or hidden. + */ + [property] boolean HasMainTitle; + + + /** determines if the subtitle is shown or hidden. + */ + [property] boolean HasSubTitle; + + + /** determines if the legend is shown or hidden. + */ + [property] boolean HasLegend; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartErrorCategory.idl b/offapi/com/sun/star/chart/ChartErrorCategory.idl new file mode 100644 index 000000000..1a6420f6e --- /dev/null +++ b/offapi/com/sun/star/chart/ChartErrorCategory.idl @@ -0,0 +1,86 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartErrorCategory_idl__ +#define __com_sun_star_chart_ChartErrorCategory_idl__ + + + + module com { module sun { module star { module chart { + + +/** specifies the category of error indicators. + */ +published enum ChartErrorCategory +{ + + /** error indicators are not displayed. + */ + NONE, + + + /** displays error indicators for the variance of the data row. + */ + VARIANCE, + + + /** displays error indicators for the standard deviation (square + root of variance) of the data row. + */ + STANDARD_DEVIATION, + + + /** The length of the error indicators is calculated for each data + point by taking the percentage given as + ChartStatistics::PercentageError of its + value. + + @see ChartStatistics + */ + PERCENT, + + + /** The length of the error indicators for all data points is + calculated by taking the percentage given as + ChartStatistics::ErrorMargin of the largest + data point value. + + @see ChartStatistics + */ + ERROR_MARGIN, + + + /** displays the same lower and upper error indicators for all + data points. + +

The values for these are given as absolute numbers in + ChartStatistics::ConstantErrorLow and + ChartStatistics::ConstantErrorHigh

+ + @see ChartStatistics + */ + CONSTANT_VALUE + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartErrorIndicatorType.idl b/offapi/com/sun/star/chart/ChartErrorIndicatorType.idl new file mode 100644 index 000000000..12503180a --- /dev/null +++ b/offapi/com/sun/star/chart/ChartErrorIndicatorType.idl @@ -0,0 +1,57 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartErrorIndicatorType_idl__ +#define __com_sun_star_chart_ChartErrorIndicatorType_idl__ + + + + module com { module sun { module star { module chart { + + +/** specifies how the error is indicated. + */ +published enum ChartErrorIndicatorType +{ + + /** displays no error indicators. + */ + NONE, + + + /** displays both the upper and lower values. + */ + TOP_AND_BOTTOM, + + + /** displays only the upper value. + */ + UPPER, + + + /** displays only the lower value. + */ + LOWER +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartGrid.idl b/offapi/com/sun/star/chart/ChartGrid.idl new file mode 100644 index 000000000..238c85f23 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartGrid.idl @@ -0,0 +1,59 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartGrid_idl__ +#define __com_sun_star_chart_ChartGrid_idl__ + +#include + +#include + +#include + + + module com { module sun { module star { module chart { + + +/** specifies the grid of the diagram in a chart. + + + +

The distance between the grid lines depends on the distance of the help + or main tick marks, which may be set in ChartAxis.

@see ChartAxis + */ +published service ChartGrid +{ + service com::sun::star::drawing::LineProperties; + + /** If a ChartGrid may be stored as XML element, this + service should be supported in order to preserve unparsed XML + attributes. + + @since OOo 1.1.2 + */ + [optional] service com::sun::star::xml::UserDefinedAttributesSupplier; + + interface com::sun::star::beans::XPropertySet; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartLegend.idl b/offapi/com/sun/star/chart/ChartLegend.idl new file mode 100644 index 000000000..b6da8e687 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartLegend.idl @@ -0,0 +1,78 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartLegend_idl__ +#define __com_sun_star_chart_ChartLegend_idl__ + +#include + +#include + +#include +#include + + + + module com { module sun { module star { module chart { + + +/** specifies the legend of a chart. + + + +

The text/font properties which are specified in the service + com::sun::star::drawing::Shape correlate to all text + objects inside the legend.

+ */ +published service ChartLegend +{ + service com::sun::star::drawing::Shape; + + + /** If this property is `TRUE` the position is calculated by the application automatically. + Setting this property to false will have no effect. Instead use the interface com::sun::star::drawing::XShape + to set a concrete position. + */ + [optional, property] boolean AutomaticPosition; + + + service com::sun::star::style::CharacterProperties; + + + /** If a ChartLegend may be stored as XML file, + this service should be supported in order to preserve unparsed + XML attributes. + + @since OOo 1.1.2 + */ + [optional] service com::sun::star::xml::UserDefinedAttributesSupplier; + + + /** determines the alignment of the legend relative + to the diagram. + */ + [property] com::sun::star::chart::ChartLegendPosition Alignment; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartLegendExpansion.idl b/offapi/com/sun/star/chart/ChartLegendExpansion.idl new file mode 100644 index 000000000..789da37c7 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartLegendExpansion.idl @@ -0,0 +1,65 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef com_sun_star_chart_ChartLegendExpansion_idl +#define com_sun_star_chart_ChartLegendExpansion_idl + +module com +{ +module sun +{ +module star +{ +module chart +{ + +/** Specifies sizing aspects of the legend + */ +enum ChartLegendExpansion +{ + /** The legend entries are arranged in a single row if possible. If not enough space is available further rows are added. + +

This is usually used for legends that are displayed at the + top or bottom of the page.

+ */ + WIDE, + + /** The legend entries are stacked in a single column if possible. If not enough space is available further columns are added. + +

This is usually used for legends that are displayed on the + left or right hand side of the page.

+ */ + HIGH, + + /** The legend entries are arranged in a way that the aspect ratio of the resulting legend is as near to 1 as possible. + */ + BALANCED, + + /** The size of the legend is given explicitly + */ + CUSTOM +}; + +} ; // chart +} ; // com +} ; // sun +} ; // star + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartLegendPosition.idl b/offapi/com/sun/star/chart/ChartLegendPosition.idl new file mode 100644 index 000000000..19f53a780 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartLegendPosition.idl @@ -0,0 +1,79 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartLegendPosition_idl__ +#define __com_sun_star_chart_ChartLegendPosition_idl__ + + + + module com { module sun { module star { module chart { + + +/** specifies one of the default positions of the legend in relation + to the diagram. + */ +published enum ChartLegendPosition +{ + + /** no chart legend is displayed. + +

To disable the legend you should set the property + ChartDocument::HasLegend to `FALSE` instead + of setting this value.

+ */ + NONE, + + + /** displays the chart legend on the left side of the diagram. + +

The second entry in the legend is placed below the first + one.

+ */ + LEFT, + + + /** displays the chart legend above the diagram. + +

The second entry in the legend is placed on the right hand + side of the first one.

+ */ + TOP, + + + /** displays the chart legend on the right side of the diagram. + +

The second entry in the legend is placed below the first + one.

+ */ + RIGHT, + + + /** displays the chart legend beneath the diagram. + +

The second entry in the legend is placed on the right hand + side of the first one.

+ */ + BOTTOM +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartLine.idl b/offapi/com/sun/star/chart/ChartLine.idl new file mode 100644 index 000000000..c7e16a738 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartLine.idl @@ -0,0 +1,44 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartLine_idl__ +#define __com_sun_star_chart_ChartLine_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** specifies line elements in a chart (regression lines, etc.). + */ +published service ChartLine +{ + service com::sun::star::drawing::LineProperties; + interface com::sun::star::beans::XPropertySet; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartPieSegmentProperties.idl b/offapi/com/sun/star/chart/ChartPieSegmentProperties.idl new file mode 100644 index 000000000..c20c65271 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartPieSegmentProperties.idl @@ -0,0 +1,61 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartPieSegmentProperties_idl__ +#define __com_sun_star_chart_ChartPieSegmentProperties_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** specifies all the properties for the graphic object of a + pie segment.@see PieDiagram + */ +published service ChartPieSegmentProperties +{ + service com::sun::star::chart::ChartDataPointProperties; + interface com::sun::star::beans::XPropertySet; + + + /** reflects the offset of a pie segment in percent of the radius. + + + +

The default value for all the segments of a PieDiagram + is 0. If you change this value from 0 to 100 the segment is pulled out + from the center by its radius. + +

+

Currently this property is supported by two dimensional pie + diagrams only.

+ */ + [property] long SegmentOffset; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartRegressionCurveType.idl b/offapi/com/sun/star/chart/ChartRegressionCurveType.idl new file mode 100644 index 000000000..61aaf6580 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartRegressionCurveType.idl @@ -0,0 +1,84 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartRegressionCurveType_idl__ +#define __com_sun_star_chart_ChartRegressionCurveType_idl__ + + + + module com { module sun { module star { module chart { + + +/** specifies the type of the regression curve to be displayed. + */ +published enum ChartRegressionCurveType +{ + + /** displays no regression curve. + */ + NONE, + + + /** displays a linear regression curve. + +

The values of the series are approximated using the model + y = Ax + B.

+ */ + LINEAR, + + + /** displays a linear logarithmic regression curve. + +

The values of the series are approximated using the model + y = A⋅log(x) + B.

+ */ + LOGARITHM, + + + /** displays an exponential regression curve. + +

The values of the series are approximated using the model + y = A⋅eBx.

+ + */ + EXPONENTIAL, + + + /** displays a polynomial regression curve. + */ + POLYNOMIAL, + + /** displays a regression curve using a power function. + +

The values of the series are approximated using the model + y = A⋅xB.

+ */ + POWER + + /** displays a moving average regression curve. + */ + //MOVING_AVERAGE + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartSeriesAddress.idl b/offapi/com/sun/star/chart/ChartSeriesAddress.idl new file mode 100644 index 000000000..665f10f59 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartSeriesAddress.idl @@ -0,0 +1,58 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartSeriesAddress_idl__ +#define __com_sun_star_chart_ChartSeriesAddress_idl__ + + + module com { module sun { module star { module chart { + + +/** This structure describes a single data row, specified by its name + and a sequence of data points. + +

The cell addresses are in the format of the application that + contains this chart.

+ */ +published struct ChartSeriesAddress +{ + /** contains the cell range address of the data for this series. + */ + string DataRangeAddress; + + + /** contains the cell address of label (i.e. name) of this series. + */ + string LabelAddress; + + + /** contains cell addresses for each domain of this series. + +

For XY (scatter) diagrams at least one series has a + domain. Most of the other chart types use an empty sequence + here.

+ */ + sequence< string > DomainRangeAddresses; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartSolidType.idl b/offapi/com/sun/star/chart/ChartSolidType.idl new file mode 100644 index 000000000..c174e20b9 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartSolidType.idl @@ -0,0 +1,59 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartSolidType_idl__ +#define __com_sun_star_chart_ChartSolidType_idl__ + + + + module com { module sun { module star { module chart { + + +/** These values specify the type of solid shapes for data points of + 3D bar charts. + */ +published constants ChartSolidType +{ + + /** extruded rectangle, i.e., a cuboid + */ + const long RECTANGULAR_SOLID = 0; + + + /** cylinder with a circle as base + */ + const long CYLINDER = 1; + + + /** cone with a circle as base + */ + const long CONE = 2; + + + /** pyramidal with a square as base + */ + const long PYRAMID = 3; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartStatistics.idl b/offapi/com/sun/star/chart/ChartStatistics.idl new file mode 100644 index 000000000..73c856f70 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartStatistics.idl @@ -0,0 +1,154 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartStatistics_idl__ +#define __com_sun_star_chart_ChartStatistics_idl__ + +#include +#include +#include +#include +#include + + + module com { module sun { module star { module chart { + + +/** offers statistical properties for the data in the chart. It is + available for a single data row and for the whole diagram. + */ +published service ChartStatistics +{ + interface com::sun::star::beans::XPropertySet; + + + /** specifies the lower limit of the error range of a + data row. + +

this setting is effective if the + ChartStatistics::ErrorCategory is set to + ChartErrorCategory::CONSTANT_VALUE.

+ + @see ConstantErrorHigh + @see ErrorCategory + */ + [property] double ConstantErrorLow; + + + /** specifies the upper limit of the error range of a + data row. + +

this setting is effective if the + ChartStatistics::ErrorCategory is set to + ChartErrorCategory::CONSTANT_VALUE.

+ + @see ConstantErrorLow + @see ErrorCategory + */ + [property] double ConstantErrorHigh; + + + /** determines if the mean value for a data row is + displayed as a line. + */ + [property] boolean MeanValue; + + + /** determines the type of error to indicate. + + @deprecated + + @see ChartErrorCategory + @see PercentageError + @see ErrorMargin + @see ConstantErrorLow + @see ConstantErrorHigh + @see ErrorIndicator + */ + [property] com::sun::star::chart::ChartErrorCategory ErrorCategory; + + /** determines the style of the error bars. Use this instead of + ErrorCategory + + @see ErrorBarStyle + */ + [optional, property] long ErrorBarStyle; + + + /** specifies the percentage that is used to display error bars. + +

The length of the error indicators is calculated for each + data point by taking the given percentage of its value.

+ +

this setting is effective if the + ChartStatistics::ErrorCategory is set to + ChartErrorCategory::PERCENT.

+ + @see ErrorCategory + */ + [property] double PercentageError; + + + /** specifies the percentage for the margin of errors. + +

The length of the error indicators is calculated by taking + the percentage given of the largest data point value.

+ +

this setting is effective if the + ChartStatistics::ErrorCategory is set to + ChartErrorCategory::ERROR_MARGIN.

+ + @see ErrorCategory + */ + [property] double ErrorMargin; + + + /** determines how the error is indicated. + +

You can enable indicators pointing up, down or both.

+ + @see ErrorCategory + */ + [property] com::sun::star::chart::ChartErrorIndicatorType ErrorIndicator; + + + /** determines a type of regression for the data row values. + + @see ChartRegressionCurveType + */ + [property] com::sun::star::chart::ChartRegressionCurveType RegressionCurves; + + /** contains a cell range string for positive error bars. This + property is used when the ErrorBarCategory is set + to ErrorBarCategory::FROM_DATA. + */ + [optional, property] string ErrorBarRangePositive; + + /** contains a cell range string for negative error bars. This + property is used when the ErrorBarCategory is set + to ErrorBarCategory::FROM_DATA. + */ + [optional, property] string ErrorBarRangeNegative; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartSymbolType.idl b/offapi/com/sun/star/chart/ChartSymbolType.idl new file mode 100644 index 000000000..233562803 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartSymbolType.idl @@ -0,0 +1,119 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartSymbolType_idl__ +#define __com_sun_star_chart_ChartSymbolType_idl__ + + + + module com { module sun { module star { module chart { + + +/** These values specify the type of the symbol used for data points. + +

This only applies to diagrams that use symbols like line + diagrams.

+ +

The default symbols are currently: + + + + + + + + + +
Symbol 0a square
Symbol 1a diamond
Symbol 2a triangle pointing down
Symbol 3a triangle pointing up
Symbol 4a triangle pointing right
Symbol 5a triangle pointing left
Symbol 6a bow tie
Symbol 7a rotated bow tie
+

+ + @see LineDiagram + @see ChartDataPointProperties +*/ +published constants ChartSymbolType +{ + + /** No symbol is used. + */ + const long NONE = -3; + + + /** The symbol is selected automatically. The size of symbol will + be dynamic and the type depends on the data row number. + */ + const long AUTO = -2; + + + /** Take a Bitmap from a URL and use this as symbol. + +

The bitmap given by the URL set in the property + ChartDataPointProperties::SymbolBitmapURL is + copied so that the graphic is embedded.

+ + @see ChartDataPointProperties + */ + const long BITMAPURL = -1; + + + /** The default symbol for row 0 is used. + */ + const long SYMBOL0 = 0; + + + /** The default symbol for row 1 is used. + */ + const long SYMBOL1 = 1; + + + /** The default symbol for row 2 is used. + */ + const long SYMBOL2 = 2; + + + /** The default symbol for row 3 is used. + */ + const long SYMBOL3 = 3; + + + /** The default symbol for row 4 is used. + */ + const long SYMBOL4 = 4; + + + /** The default symbol for row 5 is used. + */ + const long SYMBOL5 = 5; + + + /** The default symbol for row 6 is used. + */ + const long SYMBOL6 = 6; + + + /** The default symbol for row 7 is used. + */ + const long SYMBOL7 = 7; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartTableAddressSupplier.idl b/offapi/com/sun/star/chart/ChartTableAddressSupplier.idl new file mode 100644 index 000000000..990d381ea --- /dev/null +++ b/offapi/com/sun/star/chart/ChartTableAddressSupplier.idl @@ -0,0 +1,65 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartTableAddressSupplier_idl__ +#define __com_sun_star_chart_ChartTableAddressSupplier_idl__ + +#include + + +module com { module sun { module star { module chart { + +/** This is a helper service for access to table Address to + cell ranges of the container document of a chart. + + The cell addresses are in the format of the application that + contains this chart. +*/ +published service ChartTableAddressSupplier +{ + /** contains the address to the cells containing + the names of the categories. + + Note: Each value of a data series belongs exactly to one category. + */ + [property] string CategoriesRangeAddress; + + /** contains the addresses to the elements of a series. + This sequence should contain one element for each series in the chart. + + @see ChartSeriesAddress + */ + [property] sequence< com::sun::star::chart::ChartSeriesAddress > SeriesAddresses; + + /** contains the address to the main title. + */ + [optional, property] string MainTitleAddress; + + /** contains the address to the sub title. + + + */ + [optional, property] string SubTitleAddress; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartTitle.idl b/offapi/com/sun/star/chart/ChartTitle.idl new file mode 100644 index 000000000..b806b32c7 --- /dev/null +++ b/offapi/com/sun/star/chart/ChartTitle.idl @@ -0,0 +1,80 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartTitle_idl__ +#define __com_sun_star_chart_ChartTitle_idl__ + +#include +#include + + + module com { module sun { module star { module chart { + + +/** specifies titles in a chart. + +

In a chart there may be the following titles: the main title, + the sub title, and axis titles of the x- and y-axis.

+ */ +published service ChartTitle +{ + service com::sun::star::drawing::Shape; + + + /** If this property is `TRUE` the position is calculated by the application automatically. + Setting this property to false will have no effect. Instead use the interface com::sun::star::drawing::XShape + to set a concrete position. + */ + [optional, property] boolean AutomaticPosition; + + + /** If a ChartTitle may be stored as XML element, + this service should be supported in order to preserve unparsed + XML attributes. + + @since OOo 1.1.2 + */ + [optional] service com::sun::star::xml::UserDefinedAttributesSupplier; + + + /** specifies the rotation of the shape in 100th of degrees. + +

Especially in three-dimensional charts, this property comes + in handy if you want to align the axis titles with the axis, + which are usually not vertical or horizontal in the + two-dimensional projection.

+ */ + [property] long TextRotation; + + + /** contains the text of the title. + +

Note that you cannot change attributes of parts of a + title, e.g., put one word in bold characters. All formatting + affects the entire string.

+ */ + [property] string String; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartTwoAxisXSupplier.idl b/offapi/com/sun/star/chart/ChartTwoAxisXSupplier.idl new file mode 100644 index 000000000..f33e0eddd --- /dev/null +++ b/offapi/com/sun/star/chart/ChartTwoAxisXSupplier.idl @@ -0,0 +1,71 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartTwoAxisXSupplier_idl__ +#define __com_sun_star_chart_ChartTwoAxisXSupplier_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** a helper service for chart documents which supply + primary and secondary x-axes. + */ +published service ChartTwoAxisXSupplier +{ + /** offers access to the axis object + */ + interface com::sun::star::chart::XTwoAxisXSupplier; + + service com::sun::star::chart::ChartAxisXSupplier; + + + /** determines if the secondary x-axis is shown or hidden. + + @see ChartAxis + */ + [property] boolean HasSecondaryXAxis; + + + /** determines for the secondary x-axis + if the labels at the tick marks are shown or hidden. + */ + [property] boolean HasSecondaryXAxisDescription; + + + /** determines if the title of the secondary X-axis is shown or hidden. + + @see ChartTitle + + @since OOo 3.0 + */ + [optional, property] boolean HasSecondaryXAxisTitle; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ChartTwoAxisYSupplier.idl b/offapi/com/sun/star/chart/ChartTwoAxisYSupplier.idl new file mode 100644 index 000000000..a78ece2fc --- /dev/null +++ b/offapi/com/sun/star/chart/ChartTwoAxisYSupplier.idl @@ -0,0 +1,72 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_ChartTwoAxisYSupplier_idl__ +#define __com_sun_star_chart_ChartTwoAxisYSupplier_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** a helper service for chart documents which supply + primary and secondary y-axes. + */ +published service ChartTwoAxisYSupplier +{ + /** offers access to the axis object + */ + interface com::sun::star::chart::XTwoAxisYSupplier; + + service com::sun::star::chart::ChartAxisYSupplier; + + + /** determines if the secondary y-axis is shown or + hidden. + + @see ChartAxis + */ + [property] boolean HasSecondaryYAxis; + + + /** determines for the secondary y-axis + if the labels at the tick marks are shown or hidden. + */ + [property] boolean HasSecondaryYAxisDescription; + + + /** determines if the title of the secondary y-axis is shown or hidden. + + @see ChartTitle + + @since OOo 3.0 + */ + [optional, property] boolean HasSecondaryYAxisTitle; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/DataLabelPlacement.idl b/offapi/com/sun/star/chart/DataLabelPlacement.idl new file mode 100644 index 000000000..f8e50effe --- /dev/null +++ b/offapi/com/sun/star/chart/DataLabelPlacement.idl @@ -0,0 +1,52 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_DataLabelPlacement_idl__ +#define __com_sun_star_chart_DataLabelPlacement_idl__ + + + + module com { module sun { module star { module chart { + + +/** These values specify where the captions/labels of data points are displayed. + */ +published constants DataLabelPlacement +{ + const long AVOID_OVERLAP = 0; + const long CENTER = 1; + const long TOP = 2; + const long TOP_LEFT = 3; + const long LEFT = 4; + const long BOTTOM_LEFT = 5; + const long BOTTOM = 6; + const long BOTTOM_RIGHT = 7; + const long RIGHT = 8; + const long TOP_RIGHT = 9; + const long INSIDE = 10; + const long OUTSIDE = 11; + const long NEAR_ORIGIN = 12; + /** @since LibreOffice 7.0 */ const long CUSTOM = 13; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/Diagram.idl b/offapi/com/sun/star/chart/Diagram.idl new file mode 100644 index 000000000..023517a87 --- /dev/null +++ b/offapi/com/sun/star/chart/Diagram.idl @@ -0,0 +1,123 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_Diagram_idl__ +#define __com_sun_star_chart_Diagram_idl__ + +#include +#include +#include + +#include +#include + +#include + +#include + + + module com { module sun { module star { module chart { + + +/** the base service for the diagram of the chart document. + +

The diagram is the object that contains the actual plot.

+ +

Different Diagram Types, e.g., PieDiagram or + LineDiagram, can be instantiated by the + com::sun::star::lang::XMultiServiceFactory of + the XChartDocument.

+ + */ +published service Diagram +{ + + interface com::sun::star::chart::XDiagram; + + /** Provides easier access to the different axes and their sub elements. + @since OOo 3.4 + */ + [optional] interface com::sun::star::chart::XAxisSupplier; + + /** Provides access to the titles of the secondary X axis and Y axis. + @since OOo 3.0 + */ + [optional] interface com::sun::star::chart::XSecondAxisTitleSupplier; + + /** + @since OOo 3.3 + */ + [optional] interface com::sun::star::chart::XDiagramPositioning; + + + /** If this property is `TRUE` the position is calculated by the application automatically. + Setting this property to false will have no effect. Instead use the interface com::sun::star::drawing::XShape + to set a concrete position (note com::sun::star::chart::XDiagram is derived from com::sun::star::drawing::XShape). + */ + [optional, property] boolean AutomaticPosition; + + + /** If this property is `TRUE` the size is calculated by the application automatically. + Setting this property to false will have no effect. Instead use the interface com::sun::star::drawing::XShape + to set a concrete size (note com::sun::star::chart::XDiagram is derived from com::sun::star::drawing::XShape). + */ + [optional, property] boolean AutomaticSize; + + + interface com::sun::star::beans::XPropertySet; + + + /** If a Diagram may be stored as XML file, this + service should be supported in order to preserve unparsed XML + attributes. + + @since OOo 1.1.2 + */ + [optional] service com::sun::star::xml::UserDefinedAttributesSupplier; + + + /** determines if the data for a data row is contained in the + columns or in the rows of the data array. + + @see ChartDataRowSource + @see ChartDataArray + */ + [property] com::sun::star::chart::ChartDataRowSource DataRowSource; + + + /** specifies how the caption of data points is displayed. + + @see ChartDataCaption + */ + [property] long DataCaption; + + + /** specifies how empty or invalid cells in the provided data should be handled when displayed + + @see MissingValueTreatment + */ + [optional, property] long MissingValueTreatment; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/Dim3DDiagram.idl b/offapi/com/sun/star/chart/Dim3DDiagram.idl new file mode 100644 index 000000000..a6ef1ae06 --- /dev/null +++ b/offapi/com/sun/star/chart/Dim3DDiagram.idl @@ -0,0 +1,70 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_Dim3DDiagram_idl__ +#define __com_sun_star_chart_Dim3DDiagram_idl__ + +#include +#include + + + + module com { module sun { module star { module chart { + + +/** is a service for diagrams that support the capability to render + themselves as three-dimensional diagrams as well as + two-dimensional ones. + */ +published service Dim3DDiagram +{ + /** gives access to the properties of the wall and floor objects + of the three-dimensional cuboid that contains the actual + diagram. + */ + interface com::sun::star::chart::X3DDisplay; + + /** makes it easy to set suitable defaults for illumination and rotation for 3D charts + */ + [optional] interface ::com::sun::star::chart::X3DDefaultSetter; + + + /** If set to `TRUE`, the chart becomes a three-dimensional + chart. Otherwise it is two-dimensional. + */ + [property] boolean Dim3D; + + /** 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; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/DonutDiagram.idl b/offapi/com/sun/star/chart/DonutDiagram.idl new file mode 100644 index 000000000..7275b49ca --- /dev/null +++ b/offapi/com/sun/star/chart/DonutDiagram.idl @@ -0,0 +1,43 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_DonutDiagram_idl__ +#define __com_sun_star_chart_DonutDiagram_idl__ + +#include + + + + module com { module sun { module star { module chart { + + +/** a service for donut diagrams. + +

Donut diagrams are also known as ring diagrams.

+*/ +published service DonutDiagram +{ + service com::sun::star::chart::Diagram; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/ErrorBarStyle.idl b/offapi/com/sun/star/chart/ErrorBarStyle.idl new file mode 100644 index 000000000..adce5e590 --- /dev/null +++ b/offapi/com/sun/star/chart/ErrorBarStyle.idl @@ -0,0 +1,91 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef com_sun_star_chart_ErrorBarStyle_idl +#define com_sun_star_chart_ErrorBarStyle_idl + +module com { module sun { module star { module chart { + +/** specifies the style of error indicators. + */ +published constants ErrorBarStyle +{ + /** error indicators are not displayed. + */ + const long NONE = 0; + + /** displays error indicators for the variance of the data. + */ + const long VARIANCE = 1; + + /** displays error indicators for the standard deviation (square + root of variance) of the data. + */ + const long STANDARD_DEVIATION = 2; + + /** the error indicators for all data points have the same + absolute value as length for either direction. + +

The values for these are given as absolute numbers in + ChartStatistics::ConstantErrorLow and + ChartStatistics::ConstantErrorHigh

+ + @see ChartStatistics + */ + const long ABSOLUTE = 3; + + /** The length of the error indicators is calculated for each data + point by taking the percentage given as + ChartStatistics::PercentageError of its + value. + + @see ChartStatistics + */ + const long RELATIVE = 4; + + /** The length of the error indicators for all data points is + calculated by taking the percentage given as + ChartStatistics::ErrorMargin of the largest + data point value. + + @see ChartStatistics + */ + const long ERROR_MARGIN = 5; + + /** displays error indicators for the standard error, also known + as the standard deviation of the mean (SDOM). + */ + const long STANDARD_ERROR = 6; + + /** Uses values given by cell ranges of the container document. + +

The values for the cell ranges are given in the properties + ChartStatistics::ErrorBarRangePositive for + positive indicators and + ChartStatistics::ErrorBarRangeNegative for + negative indicators.

+ */ + const long FROM_DATA = 7; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/FilledNetDiagram.idl b/offapi/com/sun/star/chart/FilledNetDiagram.idl new file mode 100644 index 000000000..22a867d0d --- /dev/null +++ b/offapi/com/sun/star/chart/FilledNetDiagram.idl @@ -0,0 +1,51 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_FilledNetDiagram_idl__ +#define __com_sun_star_chart_FilledNetDiagram_idl__ + +#include + +#include +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** specifies filled net diagrams. @since OOo 3.2 + +

Net diagrams are also known as radar diagrams.

+ */ +published service FilledNetDiagram +{ + service com::sun::star::chart::Diagram; + service com::sun::star::chart::ChartAxisXSupplier; + service com::sun::star::chart::ChartAxisYSupplier; + service com::sun::star::chart::StackableDiagram; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/LineDiagram.idl b/offapi/com/sun/star/chart/LineDiagram.idl new file mode 100644 index 000000000..5fcb2d156 --- /dev/null +++ b/offapi/com/sun/star/chart/LineDiagram.idl @@ -0,0 +1,143 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_LineDiagram_idl__ +#define __com_sun_star_chart_LineDiagram_idl__ + +#include + +#include + +#include + +#include + +#include + +#include + +#include +#include + + + module com { module sun { module star { module chart { + + +/** specifies line, spline and symbol diagrams. + */ +published service LineDiagram +{ + service com::sun::star::chart::Diagram; + service com::sun::star::chart::ChartStatistics; + service com::sun::star::chart::ChartAxisXSupplier; + service com::sun::star::chart::ChartTwoAxisYSupplier; + service com::sun::star::chart::ChartAxisZSupplier; + service com::sun::star::chart::Dim3DDiagram; + service com::sun::star::chart::StackableDiagram; + + + /** determines which type of symbols are displayed. + +

In this interface, only the two values + ChartSymbolType::NONE and + ChartSymbolType::AUTO are supported. Later + versions may support the selection of the symbols shape.

+ +

If you set this property to + ChartSymbolType::AUTO, you can change the + symbol shape for objects supporting the service + ChartDataPointProperties or + ChartDataRowProperties.

+ + @see ChartDataPointProperties + @see ChartDataRowProperties + */ + [property] long SymbolType; + + + /** specifies the size of symbols in 1/100th of a millimeter. + */ + [optional, property] com::sun::star::awt::Size SymbolSize; + + + /** Set this property to any valid URL that points to a graphic + file. This graphic is then used as symbol for all series. + +

When you query this value you get an internal URL of the + embedded graphic.

+ + @deprecated + @see ChartSymbolType + */ + [optional, property] string SymbolBitmapURL; + + + /** determines if the chart type has lines connecting the data + points or contains just symbols. + */ + [property] boolean Lines; + + + /** determines if the chart is a spline-chart type and specifies + the type of splines. + + @see CurveStyle +

You can set the following values: + + + + + + + + +
0lines are used instead of splines
1use cubic splines
2use B-splines
3use stepped line with step start
4use stepped line with step end
5use stepped line with step center x
6use stepped line with step center y
+

+ */ + [property] long SplineType; + + + /** specifies the power of the polynomials used for spline + calculation + + This property is only valid for B-splines + */ + [optional, property] long SplineOrder; + + + /** determines the number of sampling points of a spline + */ + [optional, property] long SplineResolution; + + /** Set this property to a graphic object which is then used as + symbol for all series. + + @since LibreOffice 6.1 + + @deprecated - added for backwards compatibility + @see ChartSymbolType + */ + [optional, property] com::sun::star::graphic::XGraphic SymbolBitmap; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/MissingValueTreatment.idl b/offapi/com/sun/star/chart/MissingValueTreatment.idl new file mode 100644 index 000000000..19509aa6e --- /dev/null +++ b/offapi/com/sun/star/chart/MissingValueTreatment.idl @@ -0,0 +1,41 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_MissingValueTreatment_idl__ +#define __com_sun_star_chart_MissingValueTreatment_idl__ + + + + module com { module sun { module star { module chart { + + +/** This specifies how empty or invalid cells in the provided data should be handled when plotted. + */ +published constants MissingValueTreatment +{ + const long LEAVE_GAP = 0; + const long USE_ZERO = 1; + const long CONTINUE = 2; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/NetDiagram.idl b/offapi/com/sun/star/chart/NetDiagram.idl new file mode 100644 index 000000000..07d997502 --- /dev/null +++ b/offapi/com/sun/star/chart/NetDiagram.idl @@ -0,0 +1,50 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_NetDiagram_idl__ +#define __com_sun_star_chart_NetDiagram_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** specifies net diagrams. + +

Net diagrams are also known as radar diagrams.

+ */ +published service NetDiagram +{ + service com::sun::star::chart::Diagram; + service com::sun::star::chart::StackableDiagram; + service com::sun::star::chart::ChartAxisYSupplier; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/PieDiagram.idl b/offapi/com/sun/star/chart/PieDiagram.idl new file mode 100644 index 000000000..5293da11e --- /dev/null +++ b/offapi/com/sun/star/chart/PieDiagram.idl @@ -0,0 +1,44 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_PieDiagram_idl__ +#define __com_sun_star_chart_PieDiagram_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** a service for pie diagrams. + */ +published service PieDiagram +{ + service com::sun::star::chart::Diagram; + service com::sun::star::chart::Dim3DDiagram; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/StackableDiagram.idl b/offapi/com/sun/star/chart/StackableDiagram.idl new file mode 100644 index 000000000..f940c1d8a --- /dev/null +++ b/offapi/com/sun/star/chart/StackableDiagram.idl @@ -0,0 +1,57 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_StackableDiagram_idl__ +#define __com_sun_star_chart_StackableDiagram_idl__ + + + + module com { module sun { module star { module chart { + + +/** + +a helper service for stackable chart types (e.g., charts in + which the data rows may be displayed stacked on each other or in + percent relation). + */ +published service StackableDiagram +{ + + /** If `TRUE`, the series of the diagram are stacked and each + category sums up to 100%. + */ + [property] boolean Percent; + + + /** If `TRUE`, the series of the diagram are stacked. + +

If you have a stacked bar chart, you can easily determine + the sum of data in each category, by taking the top of the + topmost bar.

+ */ + [property] boolean Stacked; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/StockDiagram.idl b/offapi/com/sun/star/chart/StockDiagram.idl new file mode 100644 index 000000000..abeef4fe1 --- /dev/null +++ b/offapi/com/sun/star/chart/StockDiagram.idl @@ -0,0 +1,130 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_StockDiagram_idl__ +#define __com_sun_star_chart_StockDiagram_idl__ + +#include + +#include + +#include + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** specifies a diagram which can be used for presenting stock quotes. + +

Note that the data must have a specific structure for stock + diagrams. Let us assume that data is interpreted, such that + series are taken from columns (see property + Diagram::DataRowSource). Then you need tables of + the following structures for different types:

+ +

+ StockDiagram::Volume is `FALSE`
+ StockDiagram::UpDown is `FALSE` +
+ + + +
LowHighClose
.........

+ +

+ StockDiagram::Volume is `TRUE`
+ StockDiagram::UpDown is `FALSE` +
+ + + +
VolumeLowHighClose
............

+ +

+ StockDiagram::Volume is `FALSE`
+ StockDiagram::UpDown is `TRUE` +
+ + + +
OpenLowHighClose
............

+ +

+ StockDiagram::Volume is `TRUE`
+ StockDiagram::UpDown is `TRUE` +
+ + + +
VolumeOpenLowHighClose
...............

+*/ +published service StockDiagram +{ + interface com::sun::star::chart::XStatisticDisplay; + service com::sun::star::chart::ChartStatistics; + service com::sun::star::chart::Diagram; + service com::sun::star::chart::ChartAxisXSupplier; + service com::sun::star::chart::ChartTwoAxisYSupplier; + + + /** indicates if a stock chart contains data representing the + volume of stocks. + +

The values of the volume are represented as columns like + those of a BarDiagram.

+ +

If this property is set to `TRUE`, the values of the first + series of the chart data are interpreted as volume.

+ */ + [property] boolean Volume; + + + /** indicates if a stock chart contains data representing the + value of stocks on the opening and closing date. + +

The difference will be indicated by bars. The color + of the bar will be significant for positive or negative + differences between open and closed data.

+ +

If this property is `FALSE`, the values of the first + series (or second if StockDiagram::Volume is + `TRUE`) of the chart data are interpreted as the day's lowest + value. The next series is interpreted as the day's highest + value, and the last series is interpreted as the closing + value.

+ +

If this property is set to `TRUE`, one additional series + is needed with the opening value of the stocks. It is assumed + as the series before the series with the day's lowest + value.

+ */ + [property] boolean UpDown; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/TimeIncrement.idl b/offapi/com/sun/star/chart/TimeIncrement.idl new file mode 100644 index 000000000..acf05038a --- /dev/null +++ b/offapi/com/sun/star/chart/TimeIncrement.idl @@ -0,0 +1,58 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef com_sun_star_chart_TimeIncrement_idl +#define com_sun_star_chart_TimeIncrement_idl + +#include + + +module com { module sun { module star { module chart { + + +/** A TimeIncrement describes how tickmarks are positioned on the scale of a date-time axis. +@since OOo 3.4 +*/ +published struct TimeIncrement +{ + /** if the any contains a struct of type ::com::sun::star::chart::TimeInterval + this is used as a fixed distance value for the major tickmarks. Otherwise, if the any is empty or contains an + incompatible type, the distance between major tickmarks is calculated automatically by the application. + */ + any MajorTimeInterval; + + /** if the any contains a struct of type ::com::sun::star::chart::TimeInterval + this is used as a fixed distance value for the minor tickmarks. Otherwise, if the any is empty or contains an + incompatible type, the distance between minor tickmarks is calculated automatically by the application. + */ + any MinorTimeInterval; + + /** if the any contains a constant of type ::com::sun::star::chart::TimeUnit + this is the smallest time unit that is displayed on the date-time axis. + Otherwise, if the any is empty or contains an incompatible type, + the resolution is chosen automatically by the application. + */ + any TimeResolution; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/TimeInterval.idl b/offapi/com/sun/star/chart/TimeInterval.idl new file mode 100644 index 000000000..28ef553ca --- /dev/null +++ b/offapi/com/sun/star/chart/TimeInterval.idl @@ -0,0 +1,48 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef com_sun_star_chart_TimeInterval_idl +#define com_sun_star_chart_TimeInterval_idl + +#include + + +module com { module sun { module star { module chart { + + +/** Describes an interval on a date-axis +@since OOo 3.4 +*/ +published struct TimeInterval +{ + /** specifies the number of units + */ + long Number; + + /** specifies a unit for the interval +

is a value out of the constant group ::com::sun::star::chart::TimeUnit.

+ */ + long TimeUnit; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/TimeUnit.idl b/offapi/com/sun/star/chart/TimeUnit.idl new file mode 100644 index 000000000..a0d359c69 --- /dev/null +++ b/offapi/com/sun/star/chart/TimeUnit.idl @@ -0,0 +1,41 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_TimeUnit_idl__ +#define __com_sun_star_chart_TimeUnit_idl__ + + + module com { module sun { module star { module chart { + + +/** Specifies a unit for intervals on a date-time axis +@since OOo 3.4 + */ +published constants TimeUnit +{ + const long DAY = 0; + const long MONTH = 1; + const long YEAR = 2; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/X3DDefaultSetter.idl b/offapi/com/sun/star/chart/X3DDefaultSetter.idl new file mode 100644 index 000000000..7ab263712 --- /dev/null +++ b/offapi/com/sun/star/chart/X3DDefaultSetter.idl @@ -0,0 +1,56 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_X3DDefaultSetter_idl__ +#define __com_sun_star_chart_X3DDefaultSetter_idl__ + +#include + + + + module com { module sun { module star { module chart { + + +/** makes it easy to set suitable defaults for illumination and rotation for 3D charts + + @see Dim3DDiagram + */ +published interface X3DDefaultSetter : com::sun::star::uno::XInterface +{ + /** The result may depend on the current chart type and the current shade mode. + */ + void set3DSettingsToDefault(); + + /** sets a suitable default for the rotation of the current 3D chart. + The result may depend on the current chart type. + */ + void setDefaultRotation(); + + /** set suitable defaults for the illumination of the current 3D chart. + The result may dependent on other 3D settings as rotation or shade mode. It may depend on the current chart type also. + */ + void setDefaultIllumination(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/X3DDisplay.idl b/offapi/com/sun/star/chart/X3DDisplay.idl new file mode 100644 index 000000000..1048951a1 --- /dev/null +++ b/offapi/com/sun/star/chart/X3DDisplay.idl @@ -0,0 +1,69 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_X3DDisplay_idl__ +#define __com_sun_star_chart_X3DDisplay_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** gives access to 3D elements of a three-dimensional chart. + + @see Dim3DDiagram + */ +published interface X3DDisplay: com::sun::star::uno::XInterface +{ + + /** @returns + the properties of the diagram wall(s). + +

This specifies the properties of the two side walls of the + chart scene.

+ +

Note that this property is also valid for two-dimensional + diagrams. There the properties returned here affect the + background rectangle of the diagram.

+ + @see ChartArea + */ + com::sun::star::beans::XPropertySet getWall(); + + + /** @returns + the properties of the floor. + +

This is only valid for three-dimensional diagrams.

+ + @see ChartArea + */ + com::sun::star::beans::XPropertySet getFloor(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XAxis.idl b/offapi/com/sun/star/chart/XAxis.idl new file mode 100644 index 000000000..adb973a05 --- /dev/null +++ b/offapi/com/sun/star/chart/XAxis.idl @@ -0,0 +1,52 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef com_sun_star_chart_XAxis_idl +#define com_sun_star_chart_XAxis_idl + +#include + +module com { module sun { module star { module chart { + +/** Allows easier access to the different subelements of an axis. +@since OOo 3.4 +*/ + +interface XAxis : ::com::sun::star::uno::XInterface +{ + /** @returns + the title of the axis. The returned object supports the properties described in service ChartTitle. + */ + com::sun::star::beans::XPropertySet getAxisTitle(); + + /** @returns + the properties of the major grid of the axis. The returned object supports service ChartGrid. + */ + com::sun::star::beans::XPropertySet getMajorGrid(); + + /** @returns + the properties of the minor grid of the axis. The returned object supports service ChartGrid. + */ + com::sun::star::beans::XPropertySet getMinorGrid(); +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XAxisSupplier.idl b/offapi/com/sun/star/chart/XAxisSupplier.idl new file mode 100644 index 000000000..c7858f401 --- /dev/null +++ b/offapi/com/sun/star/chart/XAxisSupplier.idl @@ -0,0 +1,53 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef com_sun_star_chart_XAxisSupplier_idl +#define com_sun_star_chart_XAxisSupplier_idl + +#include + +module com { module sun { module star { module chart { + +/** Easier access to the different axes within a chart. +@since OOo 3.4 +*/ + +interface XAxisSupplier : ::com::sun::star::uno::XInterface +{ + /** @returns + the primary axis of the specified dimension. The returned object supports service ChartAxis. + + @param nDimensionIndex + Parameter nDimensionIndex says whether it is a x, y or z-axis (0 for x). + */ + com::sun::star::chart::XAxis getAxis( [in] long nDimensionIndex ); + + /** @returns + the secondary axis of the specified dimension. The returned object supports service ChartAxis. + + @param nDimensionIndex + Parameter nDimensionIndex says whether it is a x, y or z-axis (0 for x). + */ + com::sun::star::chart::XAxis getSecondaryAxis( [in] long nDimensionIndex ); +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XAxisXSupplier.idl b/offapi/com/sun/star/chart/XAxisXSupplier.idl new file mode 100644 index 000000000..113c409a4 --- /dev/null +++ b/offapi/com/sun/star/chart/XAxisXSupplier.idl @@ -0,0 +1,86 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XAxisXSupplier_idl__ +#define __com_sun_star_chart_XAxisXSupplier_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** gives access to the x-axis of a chart. + +

Note that not all diagrams are capable of displaying an + x-axis, e.g., the PieDiagram.

+ + @see XDiagram + */ +published interface XAxisXSupplier: com::sun::star::uno::XInterface +{ + + /** @returns + the x-axis title shape. + + @see ChartTitle + */ + com::sun::star::drawing::XShape getXAxisTitle(); + + + /** @returns + the properties of the x-axis of the diagram. + +

The returned property set contains scaling properties as + well as formatting properties.

+ + @see ChartAxis + */ + com::sun::star::beans::XPropertySet getXAxis(); + + + /** @returns + the properties of the main grid (major grid) of the + x-axis of the diagram. + + @see ChartGrid + */ + com::sun::star::beans::XPropertySet getXMainGrid(); + + + /** @returns + the properties of the help grid (minor grid) of the + x-axis of the diagram. + + @see ChartGrid + */ + com::sun::star::beans::XPropertySet getXHelpGrid(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XAxisYSupplier.idl b/offapi/com/sun/star/chart/XAxisYSupplier.idl new file mode 100644 index 000000000..9e2e14ff5 --- /dev/null +++ b/offapi/com/sun/star/chart/XAxisYSupplier.idl @@ -0,0 +1,86 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XAxisYSupplier_idl__ +#define __com_sun_star_chart_XAxisYSupplier_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** gives access to the y-axis of a chart. + +

Note that not all diagrams are capable of displaying a + y-axis, e.g., the PieDiagram.

+ + @see XDiagram + */ +published interface XAxisYSupplier: com::sun::star::uno::XInterface +{ + + /** @returns + the y-axis title shape. + + @see ChartTitle + */ + com::sun::star::drawing::XShape getYAxisTitle(); + + + /** @returns + the properties of the y-axis of the diagram. + +

The returned property set contains scaling properties as + well as formatting properties.

+ + @see ChartAxis + */ + com::sun::star::beans::XPropertySet getYAxis(); + + + /** @returns + the properties of the help grid (minor grid) of the + y-axis of the diagram. + + @see ChartGrid + */ + com::sun::star::beans::XPropertySet getYHelpGrid(); + + + /** @returns + the properties of the main grid (major grid) of the + y-axis of the diagram. + + @see ChartGrid + */ + com::sun::star::beans::XPropertySet getYMainGrid(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XAxisZSupplier.idl b/offapi/com/sun/star/chart/XAxisZSupplier.idl new file mode 100644 index 000000000..edd9f5db0 --- /dev/null +++ b/offapi/com/sun/star/chart/XAxisZSupplier.idl @@ -0,0 +1,83 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XAxisZSupplier_idl__ +#define __com_sun_star_chart_XAxisZSupplier_idl__ + +#include + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** gives access to the z-axis of a chart. + + @see XDiagram + */ +published interface XAxisZSupplier: com::sun::star::uno::XInterface +{ + + /** @returns + the z-axis title shape. + + @see ChartTitle + */ + com::sun::star::drawing::XShape getZAxisTitle(); + + + /** @returns + the properties of the main grid (major grid) of the + z-axis of the diagram. + + @see ChartGrid + */ + com::sun::star::beans::XPropertySet getZMainGrid(); + + + /** @returns + the properties of the help grid (minor grid) of the + z-axis of the diagram. + + @see ChartGrid + */ + com::sun::star::beans::XPropertySet getZHelpGrid(); + + + /** @returns + the properties of the z-axis of the diagram. + +

The returned property set contains scaling properties as + well as formatting properties.

+ + @see ChartAxis + */ + com::sun::star::beans::XPropertySet getZAxis(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XChartData.idl b/offapi/com/sun/star/chart/XChartData.idl new file mode 100644 index 000000000..0ce2e1002 --- /dev/null +++ b/offapi/com/sun/star/chart/XChartData.idl @@ -0,0 +1,99 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XChartData_idl__ +#define __com_sun_star_chart_XChartData_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** manages the data of the chart. + + @see XChartDocument + */ +published interface XChartData: com::sun::star::uno::XInterface +{ + + /** allows a component supporting the + XChartDataChangeEventListener interface to + register as listener. The component will be notified with a + ChartDataChangeEvent every time the chart's data + changes.

+ + @param aListener + the component that is to be added as listener + + @see XChartDataChangeEventListener + @see ChartDataChangeEvent + */ + void addChartDataChangeEventListener( [in] com::sun::star::chart::XChartDataChangeEventListener aListener ); + + + /** removes a previously registered listener. + + @param aListener + the component that is to be removed + */ + void removeChartDataChangeEventListener( [in] com::sun::star::chart::XChartDataChangeEventListener aListener ); + + + /** @returns + the value which is to be used as an indicator for a + missing value in the data. + +

In IEEE arithmetic format it is one of the NaN values, so + there are no conflicts with existing numeric values.

+ */ + double getNotANumber(); + + + /** checks whether the value given is equal to the indicator value + for a missing value. + +

In IEEE arithmetic format it is one of the NaN values, so + there are no conflicts with existing numeric values.

+ +

Always use this method to check, if a value is not a + number. If you compare the value returned by + XChartData::getNotANumber() to another double + value using the = operator, you may not get the desired + result!

+ + @returns + `TRUE` if the number given is interpreted by the chart as + a missing value. + + @param nNumber + the number that you want to check for validity. + */ + boolean isNotANumber( [in] double nNumber ); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XChartDataArray.idl b/offapi/com/sun/star/chart/XChartDataArray.idl new file mode 100644 index 000000000..9764c85bd --- /dev/null +++ b/offapi/com/sun/star/chart/XChartDataArray.idl @@ -0,0 +1,97 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XChartDataArray_idl__ +#define __com_sun_star_chart_XChartDataArray_idl__ + +#include + + + module com { module sun { module star { module chart { + + +/** gives access to data represented as an array of rows. + +

Can be obtained from interface XChartDocument via method getData().

+ +

If used for an XYDiagram, the row number 0 + represents the x-values.

+ */ +published interface XChartDataArray: XChartData +{ + + /** retrieves the numerical data as a nested sequence of values. + + @returns + the values as a sequence of sequences. The inner sequence + represents rows. + */ + sequence< sequence< double > > getData(); + + + /** sets the chart data as an array of numbers. + + @param aData + the values as a sequence of sequences. The inner sequence + represents rows. + */ + void setData( [in] sequence< sequence< double > > aData ); + + + /** retrieves the description texts for all rows. + + @returns + a sequence of strings, each representing the description + of a row. + */ + sequence< string > getRowDescriptions(); + + + /** sets the description texts for all rows. + + @param aRowDescriptions + a sequence of strings which represent a description for + each row. + */ + void setRowDescriptions( [in] sequence< string > aRowDescriptions ); + + + /** retrieves the description texts for all columns. + + @returns + a sequence of strings, each representing the description + of a column. + */ + sequence< string > getColumnDescriptions(); + + + /** sets the description texts for all columns. + + @param aColumnDescriptions + a sequence of strings which represent a description for + each column. + */ + void setColumnDescriptions( [in] sequence< string > aColumnDescriptions ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XChartDataChangeEventListener.idl b/offapi/com/sun/star/chart/XChartDataChangeEventListener.idl new file mode 100644 index 000000000..d1899ca3f --- /dev/null +++ b/offapi/com/sun/star/chart/XChartDataChangeEventListener.idl @@ -0,0 +1,57 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XChartDataChangeEventListener_idl__ +#define __com_sun_star_chart_XChartDataChangeEventListener_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** makes it possible to receive events when chart data changes. + */ +published interface XChartDataChangeEventListener: com::sun::star::lang::XEventListener +{ + + /** is called whenever chart data changes in value or structure. + +

This interface must be implemented by components that wish + to get notified of changes in chart data. They can be + registered at an XChartData component.

+ + @param aEvent + the event that gives further information on what changed. + + @see ChartDataChangeEvent + @see XChartData + */ + void chartDataChanged( [in] com::sun::star::chart::ChartDataChangeEvent aEvent ); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XChartDocument.idl b/offapi/com/sun/star/chart/XChartDocument.idl new file mode 100644 index 000000000..c29cc1722 --- /dev/null +++ b/offapi/com/sun/star/chart/XChartDocument.idl @@ -0,0 +1,160 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XChartDocument_idl__ +#define __com_sun_star_chart_XChartDocument_idl__ + +#include + +#include + +#include + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** manages the chart document. + + @see XDiagram + @see XChartData + */ +published interface XChartDocument: com::sun::star::frame::XModel +{ + + /** @returns + the shape of the main title of the chart document. + + @see ChartTitle + */ + com::sun::star::drawing::XShape getTitle(); + + + /** @returns + the shape of the subtitle of the chart document. + +

Usually the subtitle is smaller than the main title by + default. And it is most commonly placed below the main title + by default.

+ + @see ChartTitle + */ + com::sun::star::drawing::XShape getSubTitle(); + + + /** @returns + the shape of the legend of the chart document. + + @see ChartLegend + */ + com::sun::star::drawing::XShape getLegend(); + + + /** @returns + the properties of the background area of the chart document. + +

The area's extent is equal to the document size. If you + want to access properties of the background area of the + diagram, in which the actual data is represented, you have to + change the chart wall which you get from the + X3DDisplay.

+ + @see ChartArea + @see X3DDisplay + */ + com::sun::star::beans::XPropertySet getArea(); + + + /** @returns + the diagram of the chart document. + + @see Diagram + */ + com::sun::star::chart::XDiagram getDiagram(); + + + /** sets the diagram for the chart document. + +

Setting a new diagram implicitly disposes the previous + diagram.

+ + @param xDiagram + the new diagram that should be set for the chart. To + create such a diagram component, you can use the + com::sun::star::lang::XMultiServiceFactory, + which should be implemented by an + XChartDocument. + */ + void setDiagram( [in] com::sun::star::chart::XDiagram xDiagram ); + + + /** @returns + the data of the chart. + +

The returned object supports interface XChartDataArray + which can be used to access the concrete data.

+ +

Since OOo 3.3 the returned object also supports interface XComplexDescriptionAccess + which can be used to access complex hierarchical axis descriptions.

+ +

Since OOo 3.4 the returned object also supports interface XDateCategories.

+ + @see XChartData + @see XChartDataArray + @see XComplexDescriptionAccess + @see XDateCategories + */ + com::sun::star::chart::XChartData getData(); + + + /** attaches data to the chart. + +

The given object needs to support interface XChartDataArray.

+ +

Since OOo 3.3 if the given object might support interface XComplexDescriptionAccess + which allows to set complex hierarchical axis descriptions.

+ +

Since OOo 3.4 if the given object might support interface XDateCategories + which allows to set date values as x values for category charts.

+ +

The given data is copied before it is applied to the chart. + So changing xData after this call will have no effect on the chart.

+ + @see XChartData + @see XChartDataArray + @see XComplexDescriptionAccess + @see XDateCategories + + @param xData + the object that provides the new data. + */ + void attachData( [in] com::sun::star::chart::XChartData xData ); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XComplexDescriptionAccess.idl b/offapi/com/sun/star/chart/XComplexDescriptionAccess.idl new file mode 100644 index 000000000..80c33ba6d --- /dev/null +++ b/offapi/com/sun/star/chart/XComplexDescriptionAccess.idl @@ -0,0 +1,83 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XComplexDescriptionAccess_idl__ +#define __com_sun_star_chart_XComplexDescriptionAccess_idl__ + +#include + + + module com { module sun { module star { module chart { + + +/** Offers access to complex column and row descriptions. + +

Can be obtained from interface XChartDocument via method getData().

+ +@since OOo 3.3 +*/ + +published interface XComplexDescriptionAccess : XChartDataArray +{ + + /** retrieves the description texts for all rows. + + @returns + a sequence of sequences of strings representing the descriptions + of all rows. The outer index represents different rows. + The inner index represents the different levels (usually there is only one). + */ + sequence< sequence< string > > getComplexRowDescriptions(); + + + /** sets the description texts for all rows. + + @param rRowDescriptions + a sequence of sequences of strings representing the descriptions of all + rows. The outer index represents different rows. + The inner index represents the different levels (usually there is only one). + */ + void setComplexRowDescriptions( [in] sequence< sequence< string > > rRowDescriptions ); + + + /** retrieves the description texts for all columns. + + @returns + a sequence of sequences of strings representing the descriptions + of all columns. The outer index represents different columns. + The inner index represents the different levels (usually there is only one). + */ + sequence< sequence< string > > getComplexColumnDescriptions(); + + + /** sets the description texts for all columns. + + @param rColumnDescriptions + a sequence of sequences of strings which represent the descriptions of + all columns. The outer index represents different columns. + The inner index represents the different levels (usually there is only one). + */ + void setComplexColumnDescriptions( [in] sequence< sequence< string > > rColumnDescriptions ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XDateCategories.idl b/offapi/com/sun/star/chart/XDateCategories.idl new file mode 100644 index 000000000..fa81062aa --- /dev/null +++ b/offapi/com/sun/star/chart/XDateCategories.idl @@ -0,0 +1,59 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XDateCategories_idl__ +#define __com_sun_star_chart_XDateCategories_idl__ + +#include + + + module com { module sun { module star { module chart { + + +/** Allows to set date values as categories. + +

Can be obtained from interface XChartDocument via method getData().

+ +@since OOo 3.4 +*/ + +published interface XDateCategories +{ + + /** sets dates as categories + + @param rDates + a sequence of sequences of doubles representing dates. + */ + void setDateCategories( [in] sequence< double > rDates ); + + + /** retrieves the date values if the category x-axis id a date axis + + @returns + a sequence of doubles representing dates. + */ + sequence< double > getDateCategories(); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XDiagram.idl b/offapi/com/sun/star/chart/XDiagram.idl new file mode 100644 index 000000000..998fff50b --- /dev/null +++ b/offapi/com/sun/star/chart/XDiagram.idl @@ -0,0 +1,80 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XDiagram_idl__ +#define __com_sun_star_chart_XDiagram_idl__ + +#include + +#include + +#include + + + module com { module sun { module star { module chart { + + +/** manages the diagram of the chart document. + + @see XChartDocument + */ +published interface XDiagram: com::sun::star::drawing::XShape +{ + + /** @returns + a string representing the diagram type. This string + contains the fully qualified name of the corresponding + service. + */ + string getDiagramType(); + + + /** @returns + the properties of the specified data row (series). + + @param nRow + the index of the series (0-based) + + @see ChartDataRowProperties + */ + com::sun::star::beans::XPropertySet getDataRowProperties( [in] long nRow ) + raises( com::sun::star::lang::IndexOutOfBoundsException ); + + + /** @returns + the properties of the specified data point. + + @param nCol + the index of the data point of a series (0-based). + @param nRow + the index of a series (0-based). + + @see ChartDataPointProperties + */ + com::sun::star::beans::XPropertySet getDataPointProperties( [in] long nCol, + [in] long nRow ) + raises( com::sun::star::lang::IndexOutOfBoundsException ); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XDiagramPositioning.idl b/offapi/com/sun/star/chart/XDiagramPositioning.idl new file mode 100644 index 000000000..401b0ab53 --- /dev/null +++ b/offapi/com/sun/star/chart/XDiagramPositioning.idl @@ -0,0 +1,91 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XDiagramPositioning_idl__ +#define __com_sun_star_chart_XDiagramPositioning_idl__ + +#include +#include + + + module com { module sun { module star { module chart { + + +/** allow for different positioning options for a diagram + + @see Diagram + */ +interface XDiagramPositioning : com::sun::star::uno::XInterface +{ + /** the diagram will be placed automatically + */ + void setAutomaticDiagramPositioning(); + + /** @returns whether the diagram is placed automatically + */ + boolean isAutomaticDiagramPositioning(); + + /** place the inner diagram part excluding any axes, labels and titles + @param PositionRect + specifies the position and size in 100/th mm + */ + void setDiagramPositionExcludingAxes( [in] com::sun::star::awt::Rectangle PositionRect ); + + /** @returns true in case the diagram position was set with method setDiagramPositionExcludingAxes + */ + boolean isExcludingDiagramPositioning(); + + /** @returns the position rectangle of the inner diagram part excluding any axes, labels and titles. + Position and size are given in 100/th mm. + It might be necessary to calculate the positioning so this method can be expensive and the result may depend on different other settings. + */ + com::sun::star::awt::Rectangle calculateDiagramPositionExcludingAxes(); + + + /** place the outer diagram part including the axes and axes labels, but excluding the axes titles. + @param PositionRect + specifies the position and size in 100/th mm + */ + void setDiagramPositionIncludingAxes( [in] com::sun::star::awt::Rectangle PositionRect ); + + /** @returns the position rectangle of the diagram including the axes and axes labels, but excluding the axes titles. + Position and size are given in 100/th mm. + It might be necessary to calculate the positioning so this method can be expensive and the result may depend on different other settings. + */ + com::sun::star::awt::Rectangle calculateDiagramPositionIncludingAxes(); + + /** place the diagram including the axes, axes labels and axes titles. + For the placement the current axis titles are taken into account, so the titles must be initialized properly before this method is called. + @param PositionRect + specifies the position and size in 100/th mm + */ + void setDiagramPositionIncludingAxesAndAxisTitles( [in] com::sun::star::awt::Rectangle PositionRect ); + + /** @returns the position rectangle of the diagram including the axes, axes labels and axes titles. + Position and size are given in 100/th mm. + It might be necessary to calculate the positioning so this method can be expensive and the result may depend on different other settings. + */ + com::sun::star::awt::Rectangle calculateDiagramPositionIncludingAxesAndAxisTitles(); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XSecondAxisTitleSupplier.idl b/offapi/com/sun/star/chart/XSecondAxisTitleSupplier.idl new file mode 100644 index 000000000..a17a02841 --- /dev/null +++ b/offapi/com/sun/star/chart/XSecondAxisTitleSupplier.idl @@ -0,0 +1,40 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_chart_XSecondAxisTitleSupplier_idl__ +#define __com_sun_star_chart_XSecondAxisTitleSupplier_idl__ + +#include +#include + + +module com { module sun { module star { module chart { + +interface XSecondAxisTitleSupplier: com::sun::star::uno::XInterface +{ + com::sun::star::drawing::XShape getSecondXAxisTitle(); + + com::sun::star::drawing::XShape getSecondYAxisTitle(); +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XStatisticDisplay.idl b/offapi/com/sun/star/chart/XStatisticDisplay.idl new file mode 100644 index 000000000..63dfe054b --- /dev/null +++ b/offapi/com/sun/star/chart/XStatisticDisplay.idl @@ -0,0 +1,83 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XStatisticDisplay_idl__ +#define __com_sun_star_chart_XStatisticDisplay_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** gives access to statistical elements for the chart. + +

Statistical elements are used by a + StockDiagram.

+ + @see XChartDocument + @see StockDiagram + */ +published interface XStatisticDisplay: com::sun::star::uno::XInterface +{ + + /** @returns + the properties of the up bars of a stock chart which has + StockDiagram::UpDown set to `TRUE`. + +

The UpBar is the box that is drawn between the + open and close value of a stock, when the closing value is + above the opening value, i.e., the stock price rose.

+ + @see ChartArea + */ + com::sun::star::beans::XPropertySet getUpBar(); + + + /** @returns + the properties of the down bars of a stock chart which has + StockDiagram::UpDown set to `TRUE`. + +

The DownBar is the box that is drawn between the + open and close value of a stock, when the closing value is + below the opening value, i.e., the stock price fell.

+ + @see ChartArea + */ + com::sun::star::beans::XPropertySet getDownBar(); + + + /** @returns + the properties of the lines that are drawn between the + lowest and highest stock value during a day. + + @see ChartLine + */ + com::sun::star::beans::XPropertySet getMinMaxLine(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XTwoAxisXSupplier.idl b/offapi/com/sun/star/chart/XTwoAxisXSupplier.idl new file mode 100644 index 000000000..de3fa8bb9 --- /dev/null +++ b/offapi/com/sun/star/chart/XTwoAxisXSupplier.idl @@ -0,0 +1,57 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XTwoAxisXSupplier_idl__ +#define __com_sun_star_chart_XTwoAxisXSupplier_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** gives access to both the primary and the secondary x-axis + of a chart. + + @see XDiagram + */ +published interface XTwoAxisXSupplier: com::sun::star::chart::XAxisXSupplier +{ + + /** @returns + the properties of the secondary x-axis of the + diagram. + +

The returned property set contains scaling properties as + well as formatting properties.

+ + @see ChartAxis + */ + com::sun::star::beans::XPropertySet getSecondaryXAxis(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XTwoAxisYSupplier.idl b/offapi/com/sun/star/chart/XTwoAxisYSupplier.idl new file mode 100644 index 000000000..f85718155 --- /dev/null +++ b/offapi/com/sun/star/chart/XTwoAxisYSupplier.idl @@ -0,0 +1,54 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XTwoAxisYSupplier_idl__ +#define __com_sun_star_chart_XTwoAxisYSupplier_idl__ + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** gives access to both the primary and the secondary y-axis of a diagram.@see XChartDocument + */ +published interface XTwoAxisYSupplier: com::sun::star::chart::XAxisYSupplier +{ + + /** @returns + the properties of the secondary y-axis of the + diagram. + +

The returned property set contains scaling properties as + well as formatting properties.

+ + @see ChartAxis + */ + com::sun::star::beans::XPropertySet getSecondaryYAxis(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/chart/XYDiagram.idl b/offapi/com/sun/star/chart/XYDiagram.idl new file mode 100644 index 000000000..8ee35ba14 --- /dev/null +++ b/offapi/com/sun/star/chart/XYDiagram.idl @@ -0,0 +1,58 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_chart_XYDiagram_idl__ +#define __com_sun_star_chart_XYDiagram_idl__ + +#include + +#include + +#include + +#include + +#include + + + + module com { module sun { module star { module chart { + + +/** a service for X/Y diagrams (Also known as scatter charts). + +

The special thing about X/Y diagrams is that the first series + of data contains x-values. The other series contain + y-values. Together both form two-dimensional coordinates, + at which data points are placed.

+ */ +published service XYDiagram +{ + service com::sun::star::chart::Diagram; + service com::sun::star::chart::ChartStatistics; + service com::sun::star::chart::ChartAxisXSupplier; + service com::sun::star::chart::ChartTwoAxisYSupplier; + service com::sun::star::chart::LineDiagram; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit v1.2.3