summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/chart2/XChartDocument.idl
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/chart2/XChartDocument.idl')
-rw-r--r--offapi/com/sun/star/chart2/XChartDocument.idl141
1 files changed, 141 insertions, 0 deletions
diff --git a/offapi/com/sun/star/chart2/XChartDocument.idl b/offapi/com/sun/star/chart2/XChartDocument.idl
new file mode 100644
index 000000000000..890b54a5112d
--- /dev/null
+++ b/offapi/com/sun/star/chart2/XChartDocument.idl
@@ -0,0 +1,141 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_XChartDocument_idl
+#define com_sun_star_chart2_XChartDocument_idl
+
+#include <com/sun/star/chart2/XDiagram.idl>
+#include <com/sun/star/chart2/XChartTypeManager.idl>
+#include <com/sun/star/chart2/data/XDataProvider.idl>
+#include <com/sun/star/frame/XModel.idl>
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#include <com/sun/star/util/CloseVetoException.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+
+interface XChartDocument : ::com::sun::star::frame::XModel
+{
+ /** @todo allow more than one diagram
+
+ <p>Notes: this is preliminary, we need an API that supports
+ more than one diagram. The method name getDiagram exists in
+ the css.chart API, so there is would be no way to chose either
+ this or the other method from Basic (it would chose one or the
+ other by random).</p>
+ */
+ XDiagram getFirstDiagram();
+
+ /** @todo allow more than one diagram
+
+ <p>Notes: this is preliminary, we need an API that supports
+ more than one diagram. The method name setDiagram exists in
+ the css.chart API, so there is would be no way to chose either
+ this or the other method from Basic (it would chose one or the
+ other by random).</p>
+ */
+ void setFirstDiagram( [in] XDiagram xDiagram );
+
+ /** creates an internal
+ <type scope="com::sun::star::chart2">XDataProvider</type> that
+ is handled by the chart document itself.
+
+ <p>When the model is stored, the data provider will also be
+ stored in a sub-storage.</p>
+
+ @param bCloneExistingData
+ if <TRUE/> and a data provider was previously attached,
+ its referred data will be copied to the new internal data
+ provider. Note, that the range representation set before
+ will usually change after cloning.</p>
+
+ @throws com::sun::star::util:CloseVetoException
+ If the new data provider could not be created due to a
+ failed removal of the former data provider.
+ */
+ void createInternalDataProvider( [in] boolean bCloneExistingData )
+ raises( com::sun::star::util::CloseVetoException );
+
+ /** @return <TRUE/> if the data provider set at the chart document
+ is an internal one.
+
+ <p>This is the case directly after
+ <member>createInternalDataProvider</member> has been called,
+ but this is not necessary. The chart can also create an
+ internal data provider by other means, e.g. a call to
+ <member scope="com::sun::star::frame">XModel::initNew</member>.
+ </p>
+ */
+ boolean hasInternalDataProvider();
+
+ /** Returns the currently set data provider. This may be an
+ internal one, if <member>createInternalDataProvider</member>
+ has been called before, or an external one if
+ <member>XDataReceiver::attachDataProvider</member> has been
+ called.
+ */
+ data::XDataProvider getDataProvider();
+
+ /** sets a new component that is able to create different chart
+ type templates (components of type
+ <type>ChartTypeTemplate</type>)
+ */
+ void setChartTypeManager( [in] XChartTypeManager xNewManager );
+
+ /** retrieves the component that is able to create different chart
+ type templates (components of type
+ <type>ChartTypeTemplate</type>)
+ */
+ XChartTypeManager getChartTypeManager();
+
+ /** Gives access to the page background appearance.
+
+ @return
+ the properties of the background area of the chart
+ document.
+
+ <p>The area's extent is equal to the document size. If you
+ want to access properties of the background area of a single
+ diagram (the part where data points are actually plotted in),
+ you have to get its wall. You can get the wall by calling
+ <member>XDiagram::getWall</member>.</p>
+ */
+ com::sun::star::beans::XPropertySet getPageBackground();
+};
+
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+#endif