update dev300-m58
[ooovba.git] / offapi / com / sun / star / chart2 / data / TabularDataProviderArguments.idl
blob5536c13d2076236914171695a16b73e04b2e0602
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: TabularDataProviderArguments.idl,v $
10 * $Revision: 1.3 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef com_sun_star_chart2_data_TabularDataProviderArguments_idl
31 #define com_sun_star_chart2_data_TabularDataProviderArguments_idl
33 #include <com/sun/star/chart/ChartDataRowSource.idl>
35 module com
37 module sun
39 module star
41 module chart2
43 module data
46 /**
48 service TabularDataProviderArguments
50 /** the range address string spanning all data.
52 <p>The range adress string must be interpretable by the
53 component that implements <type>XDataProvider</type> and gets
54 this property as argument to
55 <member>XDataProvider::detectArguments</member>.</p>
57 <p>The representation string is of a form that may be used in the
58 user interface. Example for OOo Calc: "$Sheet1.$A$1:$D$7",
59 example for OOo Writer: "&lt;Table1.A1:D7&gt;".</p>
61 <p>When used as input, this range will be split in columns or
62 rows depending on the property
63 <member>DataRowSource</member>.</p>
65 <p>When used as output of
66 <member>XDataProvider::detectArguments</member> this is the
67 range that spans the ranges of all given
68 <type>XDataSequence</type>s. If the result is ambiguous,
69 i.e., a splitting of this range would not yield the same
70 result, this property should be empty. The latter is the
71 case, when ranges are overlapping, the lengths of sequences
72 are not equal or even if the order of two sequences is swapped
73 (e.g. data comes from column A, C, B).</p>
75 [property] string CellRangeRepresentation;
77 /** determines, whether data sequences are created out of columns
78 or rows in a table.
80 <p>If this property is not given as argument it is assumed to
81 <member scope="com::sun::star::chart">ChartDataRowSource::COLUMNS</member>,
82 i.e., the default is "take data from columns".</p>
84 [property] ::com::sun::star::chart::ChartDataRowSource DataRowSource;
86 /** If data comes from columns, the first row will provide the
87 labels for all sequences, if data comes from rows, the first
88 column will provide the labels for all sequences.
90 <p>Even if this property is false, the
91 <type>XLabeledDataSequence</type> may contain a label, but
92 this will not be the first cell of the selection. It may be a
93 generic string like "Column C".</p>
95 <p>If this property is not given as argument it is assumed to
96 be <FALSE/>, i.e., the default is "no labels".</p>
98 [property] boolean FirstCellAsLabel;
100 /** determines the order of the created labeled sequences
102 <p>For example a SequenceMapping of [3,0,2,1] indicates that
103 the sequence from old position '3' should now be the first one.
104 Then comes the sequence from old position '0'. Then that one
105 from old position '2' and then the sequence from old position '1'.</p>
107 <p>If the SequenceMapping contains invalid indexes just
108 ignore those single indexes. For example if you only have three
109 labeled sequences and a SequenceMapping [2,5,1,0], you should
110 ignore the '5' and continue to place the sequence from
111 old index '1' to the next new position and so on.</p>
113 <p>If the given SequenceMapping does not cover all exsisting
114 labeled sequences just put the remaining sequences in old order
115 behind the others. For example you have 4 sequences and a
116 SequenceMapping [3,1]. The result should be a as if [3,1,0,2]
117 was given.</p>
119 [property] sequence< long > SequenceMapping;
121 /** If <FALSE/> the data provider may create a data sequence
122 containing generated categories that fit the rest of the data,
123 like e.g. "Row 12", "Row 13", etc.
125 <p>This property is not relevant for the splitting up of the
126 data. It just indicates, if the chart wants to use part of
127 the data as categories, so that generic categories can be
128 returned if it doesn't.</p>
130 <p>The generic category labeled sequence returned should be
131 the first one in the returned <type>XDataSource</type>. It
132 needs no label. The values should have their role set to
133 "categories". The generic strings returned should also be
134 localized.</p>
136 [optional, property] boolean HasCategories;
138 /** This property is for providing proprietary table indexes for
139 each table appearing in a range given in
140 CellRangeRepresentation.
142 @deprecated
144 <p>This argument is supported by Spreadsheets in order to be
145 able to export a document into the StarOffice 5.0 binary
146 format.</p>
148 <p>Example: If you have the sheets (Sheet1, Sheet2, Sheet3) in
149 your document and a chart uses the range
150 "Sheet2.A1:.A5 Sheet3.A1:.A5 Sheet2.B1:.B5 Sheet1:B1:.B5", your
151 TableNumberList would be "1 2 1 0". A simple range like
152 "Sheet1.A1:.E4" would have the TableNumberList in "0"</p>.
154 [optional, property] string TableNumberList;
157 } ; // data
158 } ; // chart2
159 } ; // com
160 } ; // sun
161 } ; // star
164 #endif