xref: /trunk/main/offapi/com/sun/star/report/XSection.idl (revision cdf0e10c)
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_XSection_idl__
28#define __com_sun_star_report_XSection_idl__
29
30#ifndef __com_sun_star_container_XChild_idl__
31#include <com/sun/star/container/XChild.idl>
32#endif
33#ifndef __com_sun_star_drawing_XShapes_idl__
34#include <com/sun/star/drawing/XShapes.idl>
35#endif
36#ifndef __com_sun_star_container_XEnumerationAccess_idl__
37#include <com/sun/star/container/XEnumerationAccess.idl>
38#endif
39#ifndef __com_sun_star_container_XContainer_idl__
40#include <com/sun/star/container/XContainer.idl>
41#endif
42#ifndef __com_sun_star_util_Color_idl__
43#include <com/sun/star/util/Color.idl>
44#endif
45#ifndef __com_sun_star_beans_XPropertySet_idl__
46#include <com/sun/star/beans/XPropertySet.idl>
47#endif
48#ifndef __com_sun_star_report_XReportDefinition_idl__
49#include <com/sun/star/report/XReportDefinition.idl>
50#endif
51#ifndef __com_sun_star_report_XReportComponent_idl__
52#include <com/sun/star/report/XReportComponent.idl>
53#endif
54//=============================================================================
55
56 module com {  module sun {  module star {  module report {
57 published interface XGroup;
58//=============================================================================
59
60/** identifies a <type>XSection</type> inside a report.
61
62    <p>A section acts like a container of report components. This generic
63    construction allows the definition of hierarchies of reports and their
64    dependent subreports.</p>
65
66    @see XReportDefinition
67    @see XGroup
68 */
69published interface XSection
70{
71    /** allows to navigate to group or report definition.
72    */
73    interface com::sun::star::container::XChild;
74    /** allows to register listeners to be notified of changes in the container.
75    */
76    interface com::sun::star::container::XContainer;
77
78    /** gives access to the elements by index.
79    */
80    interface com::sun::star::drawing::XShapes;
81
82    /** creates an enumeration of the elements.
83    */
84    interface com::sun::star::container::XEnumerationAccess;
85
86    /** provides generic access to the instance properties
87    */
88    interface com::sun::star::beans::XPropertySet;
89
90    /** allows life-time control of sections.
91     */
92    interface com::sun::star::lang::XComponent;
93
94    //-------------------------------------------------------------------------
95
96    /** Defines if the section should be visible in report.
97    */
98    [attribute,bound] boolean Visible;
99
100    /** Defines the name of the section.
101    */
102    [attribute,bound] string Name;
103
104    /** Defines the height of the section.
105    */
106    [attribute,bound] unsigned long Height;
107
108    /** Defines the back ground color of the section.
109    */
110    [attribute,bound] com::sun::star::util::Color BackColor;
111
112    /** determines if the back ground color is set to transparent.
113     */
114    [attribute,bound] boolean BackTransparent;
115
116    /** Defines the expression which is executed before printing the section.
117        If the return value of the expression is <TRUE/> then the section will be printed.
118    */
119    [attribute,bound] string ConditionalPrintExpression;
120
121    /** Specifies wether the section is printed on a separate page.
122        <p>Not valid for page header or page footer.</p>
123        @see ForceNewPage
124    */
125    [attribute,bound] short ForceNewPage
126    {
127        set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
128        get raises ( com::sun::star::beans::UnknownPropertyException );
129    };
130
131    /** Specifies wether the section is printed in a new row or column within a multi column report.
132        <p>Not valid for page header or page footer.</p>
133        @see ForceNewPage
134    */
135    [attribute,bound] short NewRowOrCol
136    {
137        set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
138        get raises ( com::sun::star::beans::UnknownPropertyException );
139    };
140
141    /** Specifies that the section is printed on one page.
142    <p>Not valid for page header or page footer.</p>
143    */
144    [attribute,bound] boolean KeepTogether
145    {
146        set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
147        get raises ( com::sun::star::beans::UnknownPropertyException );
148    };
149
150    /** Specifies that elements with dynamic state will be expanded vertically when then content of the element is larger than it's container.
151        If this property is disabled the content will be truncated when it's size is larger than the container.
152    */
153    [attribute,bound] boolean CanGrow
154    {
155        set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
156        get raises ( com::sun::star::beans::UnknownPropertyException );
157    };
158
159/**
160  <p>Represents ...</p>
161
162 */
163    [attribute,bound] boolean CanShrink
164    {
165        set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
166        get raises ( com::sun::star::beans::UnknownPropertyException );
167    };
168
169    /** Defines that the group header should be repeated on the next page when a group spans more than one page.
170        It only applies to group headers.
171    */
172    [attribute,bound] boolean RepeatSection
173    {
174        set raises ( com::sun::star::lang::IllegalArgumentException,com::sun::star::beans::UnknownPropertyException );
175        get raises ( com::sun::star::beans::UnknownPropertyException );
176    };
177
178    /** Specifies the parent of the section if it is a group header or group footer.
179    */
180    [attribute,readonly] com::sun::star::report::XGroup Group;
181
182    /** Specifies the parent of the section if it is a page header or page footer.
183    */
184    [attribute,readonly] com::sun::star::report::XReportDefinition ReportDefinition;
185};
186
187service Section : XSection;
188//=============================================================================
189
190}; }; }; };
191
192/*=============================================================================
193
194=============================================================================*/
195#endif
196