/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* 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 .
*/
#ifndef __com_sun_star_sheet_DataPilotFieldGroups_idl__
#define __com_sun_star_sheet_DataPilotFieldGroups_idl__
#include
#include
#include
module com { module sun { module star { module sheet {
/** represents a collection of groups in a data pilot field.
The members of this collection are instances of DataPilotFieldGroup
containing the names of all items in the group.
@see DataPilotField
@see DataPilotFieldGroup
@see DataPilotFieldGroupInfo
*/
published service DataPilotFieldGroups
{
/** provides access to the data pilot field groups in the collection via
index.
*/
interface com::sun::star::container::XIndexAccess;
/** creates an enumeration of all data pilot field groups.
@see DataPilotFieldGroupsEnumeration
*/
interface com::sun::star::container::XEnumerationAccess;
/** provides access to the data pilot field groups in the collection via
name.
*/
interface com::sun::star::container::XNameAccess;
/** provides read/write access to the data pilot field groups in the
collection via name.
The XNameContainer
and XNameReplace
interfaces can be used to manage the item groups. It is possible to
insert, remove, and replace item groups.
The method
XNameReplace::replaceByName can be used to replace the item
names in an existing group with a new collection of item names. An
implementation should support the following data types:
- an empty any to remove all items and leave the
group empty. The group can be filled later with new item names.
- a string containing all item names that will
be part of the group.
- an object supporting
XIndexAccess containing elements that provide an item name per
element via the interface
XNamed, for example an instance of DataPilotFieldGroup
.
The method
XNameContainer::insertByName can be used to insert a new
field group with the passed collection of item names. An
implementation should support the same data types as described above
for the method
XNameReplace::replaceByName.
The method
XNameContainer::removeByName can be used to remove an
existing field group.
*/
[optional] interface com::sun::star::container::XNameContainer;
};
}; }; }; };
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */