blob: 4d022f464c8e65926c87e03625d780f8f717ce7e [file] [log] [blame]
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef com_sun_star_chart2_XInternalDataProvider_idl
#define com_sun_star_chart2_XInternalDataProvider_idl
#include <com/sun/star/chart2/data/XDataProvider.idl>
#include <com/sun/star/chart2/data/XDataSequence.idl>
module com
{
module sun
{
module star
{
module chart2
{
/** An internal DataProvider that has more access to data than a plain
DataProvider.
*/
interface XInternalDataProvider : com::sun::star::chart2::data::XDataProvider
{
boolean hasDataByRangeRepresentation( [in] string aRange );
sequence< any > getDataByRangeRepresentation( [in] string aRange );
void setDataByRangeRepresentation( [in] string aRange, [in] sequence< any > aNewData );
/** @param Note that -1 is allowed as the sequence is inserted
after the given index. So to insert a sequence as the
new first sequence (index 0), you would pass -1 here.
*/
void insertSequence( [in] long nAfterIndex );
void deleteSequence( [in] long nAtIndex );
/** same as insertSequence with nAfterIndex being the largest
current index of the data, i.e. (size - 1)
*/
void appendSequence();
void insertDataPointForAllSequences( [in] long nAfterIndex );
void deleteDataPointForAllSequences( [in] long nAtIndex );
void swapDataPointWithNextOneForAllSequences( [in] long nAtIndex );
/** If range representations of data sequences change due to
internal structural changes, they must be registered at the
data provider.
<p>Sequences that are directly retrieved via the methods of
the XDataProvider interface are already registered. If a
labeled data sequence was created by cloning an existing one,
it has to be explicitly registered via this method.</p>
*/
void registerDataSequenceForChanges( [in] data::XDataSequence xSeq );
/** insert an additional sequence for categories nLevel>=1;
categories at level 0 are always present and cannot be inserted or deleted
@since OpenOffice 3.3
*/
void insertComplexCategoryLevel( [in] long nLevel );
/** deletes an additional sequence for categories at nLevel>=1;
categories at level 0 are always present and cannot be deleted
@since OpenOffice 3.3
*/
void deleteComplexCategoryLevel( [in] long nLevel );
};
} ; // chart2
} ; // com
} ; // sun
} ; // star
#endif