1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 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. 14 * 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). 20 * 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. 25 * 26 ************************************************************************/ 27#ifndef com_sun_star_chart2_XInternalDataProvider_idl 28#define com_sun_star_chart2_XInternalDataProvider_idl 29 30#include <com/sun/star/chart2/data/XDataProvider.idl> 31#include <com/sun/star/chart2/data/XDataSequence.idl> 32 33module com 34{ 35module sun 36{ 37module star 38{ 39module chart2 40{ 41 42/** An internal DataProvider that has more access to data than a plain 43 DataProvider. 44 */ 45interface XInternalDataProvider : com::sun::star::chart2::data::XDataProvider 46{ 47 boolean hasDataByRangeRepresentation( [in] string aRange ); 48 sequence< any > getDataByRangeRepresentation( [in] string aRange ); 49 void setDataByRangeRepresentation( [in] string aRange, [in] sequence< any > aNewData ); 50 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. 54 */ 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) 59 */ 60 void appendSequence(); 61 62 void insertDataPointForAllSequences( [in] long nAfterIndex ); 63 void deleteDataPointForAllSequences( [in] long nAtIndex ); 64 void swapDataPointWithNextOneForAllSequences( [in] long nAtIndex ); 65 66 /** If range representations of data sequences change due to 67 internal structural changes, they must be registered at the 68 data provider. 69 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> 74 */ 75 void registerDataSequenceForChanges( [in] data::XDataSequence xSeq ); 76 77 /** insert an additional sequence for categories nLevel>=1; 78 categories at level 0 are always present and cannot be inserted or deleted 79 @since OOo 3.3 80 */ 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 84 @since OOo 3.3 85 */ 86 void deleteComplexCategoryLevel( [in] long nLevel ); 87}; 88 89} ; // chart2 90} ; // com 91} ; // sun 92} ; // star 93 94 95#endif 96