1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23#ifndef __com_sun_star_chart_XChartDocument_idl__ 24#define __com_sun_star_chart_XChartDocument_idl__ 25 26#ifndef __com_sun_star_frame_XModel_idl__ 27#include <com/sun/star/frame/XModel.idl> 28#endif 29 30#ifndef __com_sun_star_drawing_XShape_idl__ 31#include <com/sun/star/drawing/XShape.idl> 32#endif 33 34#ifndef __com_sun_star_beans_XPropertySet_idl__ 35#include <com/sun/star/beans/XPropertySet.idl> 36#endif 37 38#ifndef __com_sun_star_chart_XDiagram_idl__ 39#include <com/sun/star/chart/XDiagram.idl> 40#endif 41 42#ifndef __com_sun_star_chart_XChartData_idl__ 43#include <com/sun/star/chart/XChartData.idl> 44#endif 45 46 47//============================================================================= 48 49 module com { module sun { module star { module chart { 50 51//============================================================================= 52 53/** manages the chart document. 54 55 @see XDiagram 56 @see XChartData 57 */ 58published interface XChartDocument: com::sun::star::frame::XModel 59{ 60 //------------------------------------------------------------------------- 61 62 /** @returns 63 the shape of the main title of the chart document. 64 65 @see ChartTitle 66 */ 67 com::sun::star::drawing::XShape getTitle(); 68 69 //------------------------------------------------------------------------- 70 71 /** @returns 72 the shape of the subtitle of the chart document. 73 74 <p>Usually the subtitle is smaller than the main title by 75 default. And it is most commonly placed below the main title 76 by default.</p> 77 78 @see ChartTitle 79 */ 80 com::sun::star::drawing::XShape getSubTitle(); 81 82 //------------------------------------------------------------------------- 83 84 /** @returns 85 the shape of the legend of the chart document. 86 87 @see ChartLegend 88 */ 89 com::sun::star::drawing::XShape getLegend(); 90 91 //------------------------------------------------------------------------- 92 93 /** @returns 94 the properties of the background area of the chart document. 95 96 <p>The area's extent is equal to the document size. If you 97 want to access properties of the background area of the 98 diagram, in which the actual data is represented, you have to 99 change the chart wall which you get from the 100 <type>X3DDisplay</type>.</p> 101 102 @see ChartArea 103 @see X3DDisplay 104 */ 105 com::sun::star::beans::XPropertySet getArea(); 106 107 //------------------------------------------------------------------------- 108 109 /** @returns 110 the diagram of the chart document. 111 112 @see Diagram 113 */ 114 com::sun::star::chart::XDiagram getDiagram(); 115 116 //------------------------------------------------------------------------- 117 118 /** sets the diagram for the chart document. 119 120 <p>Setting a new diagram implicitly disposes the previous 121 diagram.</p> 122 123 @param xDiagram 124 the new diagram that should be set for the chart. To 125 create such a diagram component, you can use the 126 <type scope="com::sun::star::lang">XMultiServiceFactory</type>, 127 which should be implemented by an 128 <type>XChartDocument</type>. 129 */ 130 void setDiagram( [in] com::sun::star::chart::XDiagram xDiagram ); 131 132 //------------------------------------------------------------------------- 133 134 /** @returns 135 the data of the chart. 136 137 <p>The returned object supports interface <type>XChartDataArray</type> 138 which can be used to access the concrete data.</p> 139 140 <p>Since OpenOffice 3.3 the returned object also supports interface <type>XComplexDescriptionAccess</type> 141 which can be used to access complex hierarchical axis descriptions.</p> 142 143 <p>Since OpenOffice 3.4 the returned object also supports interface <type>XDateCategories</type>.</p> 144 145 @see XChartData 146 @see XChartDataArray 147 @see XComplexDescriptionAccess 148 @see XDateCategories 149 */ 150 com::sun::star::chart::XChartData getData(); 151 152 //------------------------------------------------------------------------- 153 154 /** attaches data to the chart. 155 156 <p>The given object needs to support interface <type>XChartDataArray</type>.</p> 157 158 <p>Since OpenOffice 3.3 if the given object might support interface <type>XComplexDescriptionAccess</type> 159 which allows to set complex hierarchical axis descriptions.</p> 160 161 <p>Since OpenOffice 3.4 if the given object might support interface <type>XDateCategories</type> 162 which allows to set date values as x values for category charts.</p> 163 164 <p>The given data is copied before it is applied to the chart. 165 So changing xData after this call will have no effect on the chart.</p> 166 167 @see XChartData 168 @see XChartDataArray 169 @see XComplexDescriptionAccess 170 @see XDateCategories 171 172 @param xData 173 the object that provides the new data. 174 */ 175 void attachData( [in] com::sun::star::chart::XChartData xData ); 176 177}; 178 179//============================================================================= 180 181}; }; }; }; 182 183#endif 184