1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org. If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
26 ************************************************************************/
27 #ifndef com_sun_star_chart2_XInternalDataProvider_idl
28 #define com_sun_star_chart2_XInternalDataProvider_idl
30 #include
<com
/sun
/star
/chart2
/data
/XDataProvider.idl
>
31 #include
<com
/sun
/star
/chart2
/data
/XDataSequence.idl
>
42 /** An internal DataProvider that has more access to data than a plain
45 interface XInternalDataProvider
: com
::sun
::star
::chart2
::data
::XDataProvider
47 boolean hasDataByRangeRepresentation
( [in] string aRange
);
48 sequence
< any
> getDataByRangeRepresentation
( [in] string aRange
);
49 void setDataByRangeRepresentation
( [in] string aRange
, [in] sequence
< any
> aNewData
);
51 /** @param Note that -1 is allowed as the sequence is inserted
52 after the given index. So to insert a sequence as the
53 new first sequence (index 0), you would pass -1 here.
55 void insertSequence
( [in] long nAfterIndex
);
56 void deleteSequence
( [in] long nAtIndex
);
57 /** same as insertSequence with nAfterIndex being the largest
58 current index of the data, i.e. (size - 1)
60 void appendSequence
();
62 void insertDataPointForAllSequences
( [in] long nAfterIndex
);
63 void deleteDataPointForAllSequences
( [in] long nAtIndex
);
64 void swapDataPointWithNextOneForAllSequences
( [in] long nAtIndex
);
66 /** If range representations of data sequences change due to
67 internal structural changes, they must be registered at the
70 <p>Sequences that are directly retrieved via the methods of
71 the XDataProvider interface are already registered. If a
72 labeled data sequence was created by cloning an existing one,
73 it has to be explicitly registered via this method.</p>
75 void registerDataSequenceForChanges
( [in] data
::XDataSequence xSeq
);
77 /** insert an additional sequence for categories nLevel>=1;
78 categories at level 0 are always present and cannot be inserted or deleted
81 void insertComplexCategoryLevel
( [in] long nLevel
);
82 /** deletes an additional sequence for categories at nLevel>=1;
83 categories at level 0 are always present and cannot be deleted
86 void deleteComplexCategoryLevel
( [in] long nLevel
);