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 28#ifndef __com_sun_star_sheet_DataPilotFieldGroups_idl__ 29#define __com_sun_star_sheet_DataPilotFieldGroups_idl__ 30 31#ifndef __com_sun_star_container_XNameContainer_idl__ 32#include <com/sun/star/container/XNameContainer.idl> 33#endif 34#ifndef __com_sun_star_container_XEnumerationAccess_idl__ 35#include <com/sun/star/container/XEnumerationAccess.idl> 36#endif 37#ifndef __com_sun_star_container_XIndexAccess_idl__ 38#include <com/sun/star/container/XIndexAccess.idl> 39#endif 40 41//============================================================================= 42 43module com { module sun { module star { module sheet { 44 45//============================================================================= 46 47/** represents a collection of groups in a data pilot field. 48 49 <p>The members of this collection are instances of <type>DataPilotFieldGroup</type> 50 containing the names of all items in the group.</p> 51 52 @see DataPilotField 53 @see DataPilotFieldGroup 54 @see DataPilotFieldGroupInfo 55 */ 56published service DataPilotFieldGroups 57{ 58 //------------------------------------------------------------------------- 59 60 /** provides access to the data pilot field groups in the collection via 61 index. 62 */ 63 interface com::sun::star::container::XIndexAccess; 64 65 //------------------------------------------------------------------------- 66 67 /** creates an enumeration of all data pilot field groups. 68 69 @see DataPilotFieldGroupsEnumeration 70 */ 71 interface com::sun::star::container::XEnumerationAccess; 72 73 //------------------------------------------------------------------------- 74 75 /** provides access to the data pilot field groups in the collection via 76 name. 77 */ 78 interface com::sun::star::container::XNameAccess; 79 80 //------------------------------------------------------------------------- 81 82 /** provides read/write access to the data pilot field groups in the 83 collection via name. 84 85 <p>The <type scope="com::sun::star::container">XNameContainer</type> 86 and <type scope="com::sun::star::container">XNameReplace</type> 87 interfaces can be used to manage the item groups. It is possible to 88 insert, remove, and replace item groups.</p> 89 90 <p>The method <member scope="com::sun::star::container"> 91 XNameReplace::replaceByName</member> can be used to replace the item 92 names in an existing group with a new collection of item names. An 93 implementation should support the following data types: 94 95 <ul> 96 <li>an empty <atom>any</atom> to remove all items and leave the 97 group empty. The group can be filled later with new item names.</li> 98 <li>a <atom dim="[]">string</atom> containing all item names that will 99 be part of the group.</li> 100 <li>an object supporting <type scope="com::sun::star::container"> 101 XIndexAccess</type> containing elements that provide an item name per 102 element via the interface <type scope="com::sun::star::container"> 103 XNamed</type>, for example an instance of <type>DataPilotFieldGroup 104 </type>.</li> 105 </ul></p> 106 107 <p>The method <member scope="com::sun::star::container"> 108 XNameContainer::insertByName</member> can be used to insert a new 109 field group with the passed collection of item names. An 110 implementation should support the same data types as described above 111 for the method <member scope="com::sun::star::container"> 112 XNameReplace::replaceByName</member>.</p> 113 114 <p>The method <member scope="com::sun::star::container"> 115 XNameContainer::removeByName</member> can be used to remove an 116 existing field group.</p> 117 */ 118 [optional] interface com::sun::star::container::XNameContainer; 119 120}; 121 122//============================================================================= 123 124}; }; }; }; 125 126#endif 127 128