1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23#ifndef __com_sun_star_report_XGroup_idl__ 24#define __com_sun_star_report_XGroup_idl__ 25 26#ifndef __com_sun_star_container_NoSuchElementException_idl__ 27#include <com/sun/star/container/NoSuchElementException.idl> 28#endif 29#ifndef __com_sun_star_report_XSection_idl__ 30#include <com/sun/star/report/XSection.idl> 31#endif 32#ifndef __com_sun_star_report_XGroups_idl__ 33#include <com/sun/star/report/XGroups.idl> 34#endif 35#include <com/sun/star/report/XFunctions.idl> 36//============================================================================= 37 38 module com { module sun { module star { module report { 39 40//============================================================================= 41 42/** identifies a <type>XGroup</type>. 43 A group is always a child of the groups collection in the report. 44 @see XReportDefinition 45 @see XGroups 46 */ 47published interface XGroup 48{ 49 /** allows access to the groups collection of the report. 50 */ 51 interface com::sun::star::container::XChild; 52 53 /** allows access to the properties of the instance. 54 */ 55 interface com::sun::star::beans::XPropertySet; 56 57 /** allows life-time control of group instances. 58 */ 59 interface com::sun::star::lang::XComponent; 60 61 /** gives access to functions defined in the group definition. 62 */ 63 interface XFunctionsSupplier; 64 65 /** Defines if the group is sorted ascending or descending. 66 The default is <TRUE/>. 67 */ 68 [attribute,bound] boolean SortAscending; 69 70 /** Defines if a group has a header. 71 */ 72 [attribute,bound] boolean HeaderOn; 73 74 /** Defines if a group has a footer. 75 */ 76 [attribute,bound] boolean FooterOn; 77 78 /** returns the group header. 79 @throws <type scope="com::sun::star::container">NoSuchElementException</type> 80 If the group has the header disabled. 81 @see XSection 82 */ 83 84 [attribute,readonly] XSection Header 85 { 86 get raises (com::sun::star::container::NoSuchElementException); 87 }; 88 89 /** returns the group footer. 90 @throws <type scope="com::sun::star::container">NoSuchElementException</type> 91 If the group has the footer disabled. 92 @see XSection 93 */ 94 [attribute,readonly,bound] XSection Footer 95 { 96 get raises (com::sun::star::container::NoSuchElementException); 97 }; 98 99 /** Specifies how to group data. 100 @see GroupOn 101 */ 102 [attribute,bound] short GroupOn 103 { 104 set raises (com::sun::star::lang::IllegalArgumentException); 105 }; 106 107 /** Defines an interval value that rows are grouped by. 108 */ 109 [attribute,bound] long GroupInterval; 110 111 /** Specifies if a group header, detail, and footer section is printed on the same page. 112 @see KeepTogether 113 */ 114 [attribute,bound] short KeepTogether 115 { 116 set raises (com::sun::star::lang::IllegalArgumentException); 117 }; 118 119 /** Specifies the parent of the group. 120 @see XChild 121 */ 122 [attribute,readonly] com::sun::star::report::XGroups Groups; 123 124 /** Defines either a column name or a expression. 125 */ 126 [attribute,bound] string Expression; 127 128 /** Specifies that the group header should always be printed on a new column. 129 */ 130 [attribute,bound] boolean StartNewColumn; 131 132 /** Specifies that the group header should always be printed on a new page and the reset of the page number to zero. 133 */ 134 [attribute,bound] boolean ResetPageNumber; 135}; 136 137service Group : XGroup; 138//============================================================================= 139 140}; }; }; }; 141 142/*============================================================================= 143 144=============================================================================*/ 145#endif 146