summaryrefslogtreecommitdiff
path: root/offapi
diff options
context:
space:
mode:
authorVladimir Glazounov <vg@openoffice.org>2007-05-22 14:08:15 +0000
committerVladimir Glazounov <vg@openoffice.org>2007-05-22 14:08:15 +0000
commitd5b4f0c903db5bed0f85f319df7520b3353dffd1 (patch)
tree6c81f43cc56e31345f6bec3803c1de9a7bd38685 /offapi
parent6a9a4773c34ed85b1318b15e9393750e884558e4 (diff)
INTEGRATION: CWS chart2mst3 (1.1.2); FILE ADDED
2005/10/11 12:07:55 bm 1.1.2.6: license header change 2005/09/22 13:19:58 dr 1.1.2.5: typos and wrong function names 2005/09/08 11:51:47 iha 1.1.2.4: set number formatter independent from dataprovider thus also a chart with own data can have the numberformatter of the parent 2005/07/21 08:58:32 bm 1.1.2.3: +getNumberFormatsSupplier 2005/05/12 13:59:19 bm 1.1.2.2: -mergeRangeRepresentations, detectArguments changed, createDataByRangeRepresentation -> createDataSource 2005/05/09 09:22:41 bm 1.1.2.1: moved here from namespace css.chart2
Diffstat (limited to 'offapi')
-rw-r--r--offapi/com/sun/star/chart2/data/XDataProvider.idl159
1 files changed, 159 insertions, 0 deletions
diff --git a/offapi/com/sun/star/chart2/data/XDataProvider.idl b/offapi/com/sun/star/chart2/data/XDataProvider.idl
new file mode 100644
index 000000000000..f7bc2dacc231
--- /dev/null
+++ b/offapi/com/sun/star/chart2/data/XDataProvider.idl
@@ -0,0 +1,159 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: XDataProvider.idl,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: vg $ $Date: 2007-05-22 15:08:15 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+#ifndef com_sun_star_chart2_data_XDataProvider_idl
+#define com_sun_star_chart2_data_XDataProvider_idl
+
+#include <com/sun/star/uno/XInterface.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+
+#include <com/sun/star/chart2/data/XDataSource.idl>
+
+#include <com/sun/star/beans/PropertyValue.idl>
+
+#include <com/sun/star/sheet/XRangeSelection.idl>
+
+module com
+{
+module sun
+{
+module star
+{
+module chart2
+{
+module data
+{
+
+/** An application that provides data for a chart must implement this
+ interface.
+ */
+interface XDataProvider : ::com::sun::star::uno::XInterface
+{
+ /** Creates a data source object that matches the given range
+ representation string.
+
+ <p>This can be used for creating the necessary data for a new
+ chart out of a previously selected range of cells in a
+ spreadsheet.</p>
+
+ @param aArguments
+ Arguments that tell the data provider how to slice the
+ given range. The properties should be defined in a
+ separate service.
+
+ <p>For spreadsheets and textdocument tables there exists a
+ service <type>TabularDataProviderArguments</type>
+ describing valid values for this list.</p>
+
+ @return
+ a data source containing <type>DataSequence</type>s that
+ span the entire region given in <code>aArguments</code>.
+
+ @throws ::com::sun::star::lang::IllegalArgumentException
+ may be raised by the <type>XDataProvider</type> if it is
+ unable to interpret the arguments passed in
+ <code>aArguments</code> appropriately.
+ */
+ XDataSource createDataSource( // createDataByRangeRepresentation
+ [in] sequence< com::sun::star::beans::PropertyValue > aArguments )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** Tries to find out with what parameters the passed
+ <type>DataSource</type> most probably was created.
+
+ <p>if xDataSource is a data source that was created with
+ <member>createDataSource</member>, the arguments returned here
+ should be the same than the ones passed to the function.
+ Of course, this cannot be guaranteed. However, if detection
+ is ambiguous, the returned arguments should be empty. </p>
+
+ <p>This method may merge representation strings together if
+ adjacent ranges appear successively in the range identifiers.
+ E.g., if the first range refers to "$Sheet1.$A$1:$A$8" and the
+ second range refers to "$Sheet1.$B$1:$B$8", those should be
+ merged together to "$Sheet1.$A$1:$B$8".</p>
+
+ @param xDataSource
+ A data source containing all data used in a chart.
+
+ @return
+ Arguments that when being passed to
+ <member>createDataSource</member> should in an ideal case
+ return the same data source as <code>xDataSource</code>.
+ */
+ sequence< com::sun::star::beans::PropertyValue > detectArguments(
+ [in] XDataSource xDataSource );
+
+ /** creates a single data sequence for the given data range.
+
+ @param aRangeRepresentation
+ is a string that can be interpreted by the component that
+ implements this interface. The representation string is
+ of a form that may be used in the user interface.
+
+ @see createDataSource
+
+ @throw com::sun::star::lang::IllegalArgumentException
+ if the given range does not contain a valid range
+ representation for a one-dimensional range of data.
+ */
+ XDataSequence createDataSequenceByRangeRepresentation(
+ [in] string aRangeRepresentation )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+ /** Returns a component that is able to change a given range
+ representation to another one. This usually is a
+ controller-component that uses the GUI to allow a user to
+ select a new range.
+
+ <p>This method may return nothing, if it does not support
+ range selection or if there is no current controller available
+ that offers the functionality.</p>
+
+ @return
+ The component for selecting a new range. It must support
+ <type>XComponent</type>, in order to inform the receiver
+ about its lifetime.</p>
+ */
+ com::sun::star::sheet::XRangeSelection getRangeSelection();
+};
+
+} ; // data
+} ; // chart2
+} ; // com
+} ; // sun
+} ; // star
+
+
+#endif