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_report_XGroup_idl__ 28#define __com_sun_star_report_XGroup_idl__ 29 30#ifndef __com_sun_star_container_NoSuchElementException_idl__ 31#include <com/sun/star/container/NoSuchElementException.idl> 32#endif 33#ifndef __com_sun_star_report_XSection_idl__ 34#include <com/sun/star/report/XSection.idl> 35#endif 36#ifndef __com_sun_star_report_XGroups_idl__ 37#include <com/sun/star/report/XGroups.idl> 38#endif 39#include <com/sun/star/report/XFunctions.idl> 40//============================================================================= 41 42 module com { module sun { module star { module report { 43 44//============================================================================= 45 46/** identifies a <type>XGroup</type>. 47 A group is always a child of the groups collection in the report. 48 @see XReportDefinition 49 @see XGroups 50 */ 51published interface XGroup 52{ 53 /** allows access to the groups collection of the report. 54 */ 55 interface com::sun::star::container::XChild; 56 57 /** allows access to the properties of the instance. 58 */ 59 interface com::sun::star::beans::XPropertySet; 60 61 /** allows life-time control of group instances. 62 */ 63 interface com::sun::star::lang::XComponent; 64 65 /** gives access to functions defined in the group definition. 66 */ 67 interface XFunctionsSupplier; 68 69 /** Defines if the group is sorted ascending or descending. 70 The default is <TRUE/>. 71 */ 72 [attribute,bound] boolean SortAscending; 73 74 /** Defines if a group has a header. 75 */ 76 [attribute,bound] boolean HeaderOn; 77 78 /** Defines if a group has a footer. 79 */ 80 [attribute,bound] boolean FooterOn; 81 82 /** returns the group header. 83 @throws <type scope="com::sun::star::container">NoSuchElementException</type> 84 If the group has the header disabled. 85 @see XSection 86 */ 87 88 [attribute,readonly] XSection Header 89 { 90 get raises (com::sun::star::container::NoSuchElementException); 91 }; 92 93 /** returns the group footer. 94 @throws <type scope="com::sun::star::container">NoSuchElementException</type> 95 If the group has the footer disabled. 96 @see XSection 97 */ 98 [attribute,readonly,bound] XSection Footer 99 { 100 get raises (com::sun::star::container::NoSuchElementException); 101 }; 102 103 /** Specifies how to group data. 104 @see GroupOn 105 */ 106 [attribute,bound] short GroupOn 107 { 108 set raises (com::sun::star::lang::IllegalArgumentException); 109 }; 110 111 /** Defines an interval value that rows are grouped by. 112 */ 113 [attribute,bound] long GroupInterval; 114 115 /** Specifies if a group header, detail, and footer section is printed on the same page. 116 @see KeepTogether 117 */ 118 [attribute,bound] short KeepTogether 119 { 120 set raises (com::sun::star::lang::IllegalArgumentException); 121 }; 122 123 /** Specifies the parent of the group. 124 @see XChild 125 */ 126 [attribute,readonly] com::sun::star::report::XGroups Groups; 127 128 /** Defines either a column name or a expression. 129 */ 130 [attribute,bound] string Expression; 131 132 /** Specifies that the group header should always be printed on a new column. 133 */ 134 [attribute,bound] boolean StartNewColumn; 135 136 /** Specifies that the group header should always be printed on a new page and the reset of the page number to zero. 137 */ 138 [attribute,bound] boolean ResetPageNumber; 139}; 140 141service Group : XGroup; 142//============================================================================= 143 144}; }; }; }; 145 146/*============================================================================= 147 148=============================================================================*/ 149#endif 150