1d1766043SAndrew Rist/************************************************************** 2cdf0e10cSrcweir * 3d1766043SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4d1766043SAndrew Rist * or more contributor license agreements. See the NOTICE file 5d1766043SAndrew Rist * distributed with this work for additional information 6d1766043SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7d1766043SAndrew Rist * to you under the Apache License, Version 2.0 (the 8d1766043SAndrew Rist * "License"); you may not use this file except in compliance 9d1766043SAndrew Rist * with the License. You may obtain a copy of the License at 10d1766043SAndrew Rist * 11d1766043SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12d1766043SAndrew Rist * 13d1766043SAndrew Rist * Unless required by applicable law or agreed to in writing, 14d1766043SAndrew Rist * software distributed under the License is distributed on an 15d1766043SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16d1766043SAndrew Rist * KIND, either express or implied. See the License for the 17d1766043SAndrew Rist * specific language governing permissions and limitations 18d1766043SAndrew Rist * under the License. 19d1766043SAndrew Rist * 20d1766043SAndrew Rist *************************************************************/ 21d1766043SAndrew Rist 22d1766043SAndrew Rist 23cdf0e10cSrcweir#ifndef com_sun_star_chart2_data_TabularDataProviderArguments_idl 24cdf0e10cSrcweir#define com_sun_star_chart2_data_TabularDataProviderArguments_idl 25cdf0e10cSrcweir 26cdf0e10cSrcweir#include <com/sun/star/chart/ChartDataRowSource.idl> 27cdf0e10cSrcweir 28cdf0e10cSrcweirmodule com 29cdf0e10cSrcweir{ 30cdf0e10cSrcweirmodule sun 31cdf0e10cSrcweir{ 32cdf0e10cSrcweirmodule star 33cdf0e10cSrcweir{ 34cdf0e10cSrcweirmodule chart2 35cdf0e10cSrcweir{ 36cdf0e10cSrcweirmodule data 37cdf0e10cSrcweir{ 38cdf0e10cSrcweir 39cdf0e10cSrcweir/** 40cdf0e10cSrcweir */ 41cdf0e10cSrcweirservice TabularDataProviderArguments 42cdf0e10cSrcweir{ 43cdf0e10cSrcweir /** the range address string spanning all data. 44cdf0e10cSrcweir 45cdf0e10cSrcweir <p>The range adress string must be interpretable by the 46cdf0e10cSrcweir component that implements <type>XDataProvider</type> and gets 47cdf0e10cSrcweir this property as argument to 48cdf0e10cSrcweir <member>XDataProvider::detectArguments</member>.</p> 49cdf0e10cSrcweir 50cdf0e10cSrcweir <p>The representation string is of a form that may be used in the 51*0d3a54ffSJürgen Schmidt user interface. Example for OpenOffice Calc: "$Sheet1.$A$1:$D$7", 52*0d3a54ffSJürgen Schmidt example for OpenOffice Writer: "<Table1.A1:D7>".</p> 53cdf0e10cSrcweir 54cdf0e10cSrcweir <p>When used as input, this range will be split in columns or 55cdf0e10cSrcweir rows depending on the property 56cdf0e10cSrcweir <member>DataRowSource</member>.</p> 57cdf0e10cSrcweir 58cdf0e10cSrcweir <p>When used as output of 59cdf0e10cSrcweir <member>XDataProvider::detectArguments</member> this is the 60cdf0e10cSrcweir range that spans the ranges of all given 61cdf0e10cSrcweir <type>XDataSequence</type>s. If the result is ambiguous, 62cdf0e10cSrcweir i.e., a splitting of this range would not yield the same 63cdf0e10cSrcweir result, this property should be empty. The latter is the 64cdf0e10cSrcweir case, when ranges are overlapping, the lengths of sequences 65cdf0e10cSrcweir are not equal or even if the order of two sequences is swapped 66cdf0e10cSrcweir (e.g. data comes from column A, C, B).</p> 67cdf0e10cSrcweir */ 68cdf0e10cSrcweir [property] string CellRangeRepresentation; 69cdf0e10cSrcweir 70cdf0e10cSrcweir /** determines, whether data sequences are created out of columns 71cdf0e10cSrcweir or rows in a table. 72cdf0e10cSrcweir 73cdf0e10cSrcweir <p>If this property is not given as argument it is assumed to 74cdf0e10cSrcweir <member scope="com::sun::star::chart">ChartDataRowSource::COLUMNS</member>, 75cdf0e10cSrcweir i.e., the default is "take data from columns".</p> 76cdf0e10cSrcweir */ 77cdf0e10cSrcweir [property] ::com::sun::star::chart::ChartDataRowSource DataRowSource; 78cdf0e10cSrcweir 79cdf0e10cSrcweir /** If data comes from columns, the first row will provide the 80cdf0e10cSrcweir labels for all sequences, if data comes from rows, the first 81cdf0e10cSrcweir column will provide the labels for all sequences. 82cdf0e10cSrcweir 83cdf0e10cSrcweir <p>Even if this property is false, the 84cdf0e10cSrcweir <type>XLabeledDataSequence</type> may contain a label, but 85cdf0e10cSrcweir this will not be the first cell of the selection. It may be a 86cdf0e10cSrcweir generic string like "Column C".</p> 87cdf0e10cSrcweir 88cdf0e10cSrcweir <p>If this property is not given as argument it is assumed to 89cdf0e10cSrcweir be <FALSE/>, i.e., the default is "no labels".</p> 90cdf0e10cSrcweir */ 91cdf0e10cSrcweir [property] boolean FirstCellAsLabel; 92cdf0e10cSrcweir 93cdf0e10cSrcweir /** determines the order of the created labeled sequences 94cdf0e10cSrcweir 95cdf0e10cSrcweir <p>For example a SequenceMapping of [3,0,2,1] indicates that 96cdf0e10cSrcweir the sequence from old position '3' should now be the first one. 97cdf0e10cSrcweir Then comes the sequence from old position '0'. Then that one 98cdf0e10cSrcweir from old position '2' and then the sequence from old position '1'.</p> 99cdf0e10cSrcweir 100cdf0e10cSrcweir <p>If the SequenceMapping contains invalid indexes just 101cdf0e10cSrcweir ignore those single indexes. For example if you only have three 102cdf0e10cSrcweir labeled sequences and a SequenceMapping [2,5,1,0], you should 103cdf0e10cSrcweir ignore the '5' and continue to place the sequence from 104cdf0e10cSrcweir old index '1' to the next new position and so on.</p> 105cdf0e10cSrcweir 106cdf0e10cSrcweir <p>If the given SequenceMapping does not cover all exsisting 107cdf0e10cSrcweir labeled sequences just put the remaining sequences in old order 108cdf0e10cSrcweir behind the others. For example you have 4 sequences and a 109cdf0e10cSrcweir SequenceMapping [3,1]. The result should be a as if [3,1,0,2] 110cdf0e10cSrcweir was given.</p> 111cdf0e10cSrcweir */ 112cdf0e10cSrcweir [property] sequence< long > SequenceMapping; 113cdf0e10cSrcweir 114cdf0e10cSrcweir /** If <FALSE/> the data provider may create a data sequence 115cdf0e10cSrcweir containing generated categories that fit the rest of the data, 116cdf0e10cSrcweir like e.g. "Row 12", "Row 13", etc. 117cdf0e10cSrcweir 118cdf0e10cSrcweir <p>This property is not relevant for the splitting up of the 119cdf0e10cSrcweir data. It just indicates, if the chart wants to use part of 120cdf0e10cSrcweir the data as categories, so that generic categories can be 121cdf0e10cSrcweir returned if it doesn't.</p> 122cdf0e10cSrcweir 123cdf0e10cSrcweir <p>The generic category labeled sequence returned should be 124cdf0e10cSrcweir the first one in the returned <type>XDataSource</type>. It 125cdf0e10cSrcweir needs no label. The values should have their role set to 126cdf0e10cSrcweir "categories". The generic strings returned should also be 127cdf0e10cSrcweir localized.</p> 128cdf0e10cSrcweir */ 129cdf0e10cSrcweir [optional, property] boolean HasCategories; 130cdf0e10cSrcweir 131cdf0e10cSrcweir /** This property is for providing proprietary table indexes for 132cdf0e10cSrcweir each table appearing in a range given in 133cdf0e10cSrcweir CellRangeRepresentation. 134cdf0e10cSrcweir 135cdf0e10cSrcweir @deprecated 136cdf0e10cSrcweir 137cdf0e10cSrcweir <p>This argument is supported by Spreadsheets in order to be 138cdf0e10cSrcweir able to export a document into the StarOffice 5.0 binary 139cdf0e10cSrcweir format.</p> 140cdf0e10cSrcweir 141cdf0e10cSrcweir <p>Example: If you have the sheets (Sheet1, Sheet2, Sheet3) in 142cdf0e10cSrcweir your document and a chart uses the range 143cdf0e10cSrcweir "Sheet2.A1:.A5 Sheet3.A1:.A5 Sheet2.B1:.B5 Sheet1:B1:.B5", your 144cdf0e10cSrcweir TableNumberList would be "1 2 1 0". A simple range like 145cdf0e10cSrcweir "Sheet1.A1:.E4" would have the TableNumberList in "0"</p>. 146cdf0e10cSrcweir */ 147cdf0e10cSrcweir [optional, property] string TableNumberList; 148cdf0e10cSrcweir}; 149cdf0e10cSrcweir 150cdf0e10cSrcweir} ; // data 151cdf0e10cSrcweir} ; // chart2 152cdf0e10cSrcweir} ; // com 153cdf0e10cSrcweir} ; // sun 154cdf0e10cSrcweir} ; // star 155cdf0e10cSrcweir 156cdf0e10cSrcweir 157cdf0e10cSrcweir#endif 158