xref: /trunk/main/offapi/com/sun/star/chart/Diagram.idl (revision cdf0e10c)
1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27#ifndef __com_sun_star_chart_Diagram_idl__
28#define __com_sun_star_chart_Diagram_idl__
29
30#ifndef __com_sun_star_chart_XDiagram_idl__
31#include <com/sun/star/chart/XDiagram.idl>
32#endif
33
34#ifndef __com_sun_star_chart_XAxisSupplier_idl__
35#include <com/sun/star/chart/XAxisSupplier.idl>
36#endif
37
38#ifndef __com_sun_star_chart_XDiagramPositioning_idl__
39#include <com/sun/star/chart/XDiagramPositioning.idl>
40#endif
41
42#ifndef __com_sun_star_chart_XSecondAxisTitleSupplier_idl__
43#include <com/sun/star/chart/XSecondAxisTitleSupplier.idl>
44#endif
45
46#ifndef __com_sun_star_beans_XPropertySet_idl__
47#include <com/sun/star/beans/XPropertySet.idl>
48#endif
49
50#ifndef __com_sun_star_chart_ChartDataRowSource_idl__
51#include <com/sun/star/chart/ChartDataRowSource.idl>
52#endif
53
54#ifndef _com_sun_star_xml_UserDefinedAttributeSupplier_idl_
55#include <com/sun/star/xml/UserDefinedAttributeSupplier.idl>
56#endif
57
58//=============================================================================
59
60 module com {  module sun {  module star {  module chart {
61
62//=============================================================================
63
64/** the base service for the diagram of the chart document.
65
66    <p>The diagram is the object that contains the actual plot.</p>
67
68    <p>Different Diagram Types, e.g., <type>PieDiagram</type> or
69    <type>LineDiagram</type>, can be instantiated by the
70    <type scope="com::sun::star::lang">XMultiServiceFactory</type> of
71    the <type>XChartDocument</type>.</p>
72
73 */
74published service Diagram
75{
76
77    interface com::sun::star::chart::XDiagram;
78
79    /** Provides easier access to the differnet axes and their sub elements.
80        @since OOo 3.4
81    */
82    [optional] interface com::sun::star::chart::XAxisSupplier;
83
84    /** Provides access to the titles of the secondary X axis and Y axis.
85        @since OOo 3.0
86     */
87    [optional] interface com::sun::star::chart::XSecondAxisTitleSupplier;
88
89    /**
90    @since OOo 3.3
91     */
92    [optional] interface com::sun::star::chart::XDiagramPositioning;
93
94    //-------------------------------------------------------------------------
95
96	/** If this property is <TRUE/> the position is calculated by the application automatically.
97        Setting this property to false will have no effect. Instead use the interface <type scope="com::sun::star::drawing">XShape</type>
98        to set a concrete position (note <type scope="com::sun::star::chart">XDiagram</type> is derived from <type scope="com::sun::star::drawing">XShape</type>).
99	 */
100	[optional, property] boolean AutomaticPosition;
101
102    //-------------------------------------------------------------------------
103
104	/** If this property is <TRUE/> the size is calculated by the application automatically.
105        Setting this property to false will have no effect. Instead use the interface <type scope="com::sun::star::drawing">XShape</type>
106        to set a concrete size (note <type scope="com::sun::star::chart">XDiagram</type> is derived from <type scope="com::sun::star::drawing">XShape</type>).
107	 */
108	[optional, property] boolean AutomaticSize;
109
110    //-------------------------------------------------------------------------
111
112	interface com::sun::star::beans::XPropertySet;
113
114	//-------------------------------------------------------------------------
115
116    /** If a <type>Diagram</type> may be stored as XML file, this
117        service should be supported in order to preserve unparsed XML
118        attributes.
119
120	@since OOo 1.1.2
121     */
122    [optional] service com::sun::star::xml::UserDefinedAttributeSupplier;
123
124    //-------------------------------------------------------------------------
125
126	/** determines if the data for a data row is contained in the
127		columns or in the rows of the data array.
128
129        @see ChartDataRowSource
130        @see ChartDataArray
131	 */
132	[property] com::sun::star::chart::ChartDataRowSource DataRowSource;
133
134	//-------------------------------------------------------------------------
135
136	/** specifies how the caption of data points is displayed.
137
138        @see ChartDataCaption
139	 */
140	[property] long DataCaption;
141
142    //-------------------------------------------------------------------------
143
144    /** specifies how empty or invalid cells in the provided data should be handled when displayed
145
146        @see MissingValueTreatment
147	 */
148    [optional, property] long MissingValueTreatment;
149
150};
151
152//=============================================================================
153
154}; }; }; };
155
156#endif
157