blob: 781a4a400a24248f2beb6e22ff6ce3b0a12ec770 [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_report_XGroup_idl__
#define __com_sun_star_report_XGroup_idl__
#ifndef __com_sun_star_container_NoSuchElementException_idl__
#include <com/sun/star/container/NoSuchElementException.idl>
#endif
#ifndef __com_sun_star_report_XSection_idl__
#include <com/sun/star/report/XSection.idl>
#endif
#ifndef __com_sun_star_report_XGroups_idl__
#include <com/sun/star/report/XGroups.idl>
#endif
#include <com/sun/star/report/XFunctions.idl>
//=============================================================================
module com { module sun { module star { module report {
//=============================================================================
/** identifies a <type>XGroup</type>.
A group is always a child of the groups collection in the report.
@see XReportDefinition
@see XGroups
*/
published interface XGroup
{
/** allows access to the groups collection of the report.
*/
interface com::sun::star::container::XChild;
/** allows access to the properties of the instance.
*/
interface com::sun::star::beans::XPropertySet;
/** allows life-time control of group instances.
*/
interface com::sun::star::lang::XComponent;
/** gives access to functions defined in the group definition.
*/
interface XFunctionsSupplier;
/** Defines if the group is sorted ascending or descending.
The default is <TRUE/>.
*/
[attribute,bound] boolean SortAscending;
/** Defines if a group has a header.
*/
[attribute,bound] boolean HeaderOn;
/** Defines if a group has a footer.
*/
[attribute,bound] boolean FooterOn;
/** returns the group header.
@throws <type scope="com::sun::star::container">NoSuchElementException</type>
If the group has the header disabled.
@see XSection
*/
[attribute,readonly] XSection Header
{
get raises (com::sun::star::container::NoSuchElementException);
};
/** returns the group footer.
@throws <type scope="com::sun::star::container">NoSuchElementException</type>
If the group has the footer disabled.
@see XSection
*/
[attribute,readonly,bound] XSection Footer
{
get raises (com::sun::star::container::NoSuchElementException);
};
/** Specifies how to group data.
@see GroupOn
*/
[attribute,bound] short GroupOn
{
set raises (com::sun::star::lang::IllegalArgumentException);
};
/** Defines an interval value that rows are grouped by.
*/
[attribute,bound] long GroupInterval;
/** Specifies if a group header, detail, and footer section is printed on the same page.
@see KeepTogether
*/
[attribute,bound] short KeepTogether
{
set raises (com::sun::star::lang::IllegalArgumentException);
};
/** Specifies the parent of the group.
@see XChild
*/
[attribute,readonly] com::sun::star::report::XGroups Groups;
/** Defines either a column name or a expression.
*/
[attribute,bound] string Expression;
/** Specifies that the group header should always be printed on a new column.
*/
[attribute,bound] boolean StartNewColumn;
/** Specifies that the group header should always be printed on a new page and the reset of the page number to zero.
*/
[attribute,bound] boolean ResetPageNumber;
};
service Group : XGroup;
//=============================================================================
}; }; }; };
/*=============================================================================
=============================================================================*/
#endif