1*d1766043SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3*d1766043SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4*d1766043SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5*d1766043SAndrew Rist * distributed with this work for additional information
6*d1766043SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7*d1766043SAndrew Rist * to you under the Apache License, Version 2.0 (the
8*d1766043SAndrew Rist * "License"); you may not use this file except in compliance
9*d1766043SAndrew Rist * with the License.  You may obtain a copy of the License at
10*d1766043SAndrew Rist *
11*d1766043SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12*d1766043SAndrew Rist *
13*d1766043SAndrew Rist * Unless required by applicable law or agreed to in writing,
14*d1766043SAndrew Rist * software distributed under the License is distributed on an
15*d1766043SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*d1766043SAndrew Rist * KIND, either express or implied.  See the License for the
17*d1766043SAndrew Rist * specific language governing permissions and limitations
18*d1766043SAndrew Rist * under the License.
19*d1766043SAndrew Rist *
20*d1766043SAndrew Rist *************************************************************/
21*d1766043SAndrew Rist
22*d1766043SAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweir#ifndef __com_sun_star_sheet_DataPilotFieldGroupInfo_idl__
25cdf0e10cSrcweir#define __com_sun_star_sheet_DataPilotFieldGroupInfo_idl__
26cdf0e10cSrcweir
27cdf0e10cSrcweir#ifndef __com_sun_star_sheet_XDataPilotField_idl__
28cdf0e10cSrcweir#include <com/sun/star/sheet/XDataPilotField.idl>
29cdf0e10cSrcweir#endif
30cdf0e10cSrcweir#ifndef __com_sun_star_container_XNameAccess_idl__
31cdf0e10cSrcweir#include <com/sun/star/container/XNameAccess.idl>
32cdf0e10cSrcweir#endif
33cdf0e10cSrcweir
34cdf0e10cSrcweir//=============================================================================
35cdf0e10cSrcweir
36cdf0e10cSrcweirmodule com {  module sun {  module star {  module sheet {
37cdf0e10cSrcweir
38cdf0e10cSrcweir//=============================================================================
39cdf0e10cSrcweir
40cdf0e10cSrcweir/** contains the grouping information of a <type>DataPilotField</type>.
41cdf0e10cSrcweir */
42cdf0e10cSrcweirpublished struct DataPilotFieldGroupInfo
43cdf0e10cSrcweir{
44cdf0e10cSrcweir    //-------------------------------------------------------------------------
45cdf0e10cSrcweir
46cdf0e10cSrcweir    /** specifies whether the start value for the grouping is taken
47cdf0e10cSrcweir        automatically from the minimum of the item values.
48cdf0e10cSrcweir
49cdf0e10cSrcweir        <p><ul>
50cdf0e10cSrcweir        <li>If <FALSE/> is set, the value from <member>Start</member> will be
51cdf0e10cSrcweir        used as start value for the grouping.</li>
52cdf0e10cSrcweir        <li>If <TRUE/> is set, the start value for the grouping will be
53cdf0e10cSrcweir        calculated automatically from the minimum of all member values of the
54cdf0e10cSrcweir        DataPilot field.</li>
55cdf0e10cSrcweir        </ul></p>
56cdf0e10cSrcweir     */
57cdf0e10cSrcweir    boolean HasAutoStart;
58cdf0e10cSrcweir
59cdf0e10cSrcweir    //-------------------------------------------------------------------------
60cdf0e10cSrcweir
61cdf0e10cSrcweir    /** specifies whether the end value for the grouping is taken
62cdf0e10cSrcweir        automatically from the maximum of the item values.
63cdf0e10cSrcweir
64cdf0e10cSrcweir        <p><ul>
65cdf0e10cSrcweir        <li>If <FALSE/> is set, the value from <member>End</member> will be
66cdf0e10cSrcweir        used as end value for the grouping.</li>
67cdf0e10cSrcweir        <li>If <TRUE/> is set, the end value for the grouping will be
68cdf0e10cSrcweir        calculated automatically from the maximum of all member values of the
69cdf0e10cSrcweir        DataPilot field.</li>
70cdf0e10cSrcweir        </ul></p>
71cdf0e10cSrcweir     */
72cdf0e10cSrcweir    boolean HasAutoEnd;
73cdf0e10cSrcweir
74cdf0e10cSrcweir    //-------------------------------------------------------------------------
75cdf0e10cSrcweir
76cdf0e10cSrcweir    /** specifies whether date values are grouped by ranges of days.
77cdf0e10cSrcweir
78cdf0e10cSrcweir        <p><ul>
79cdf0e10cSrcweir        <li>If <FALSE/> is set, and <member>GroupBy</member> contains zero,
80cdf0e10cSrcweir        grouping is performed inplace on the item values.</li>
81cdf0e10cSrcweir        <li>If <FALSE/> is set, and <member>GroupBy</member> contains one or
82cdf0e10cSrcweir        more flags from <type>DataPilotFieldGroupBy</type>, grouping is
83cdf0e10cSrcweir        performed on date or time.</li>
84cdf0e10cSrcweir        <li>If <TRUE/> is set, <member>Step</member> contains a value greater
85cdf0e10cSrcweir        than or equal to 1, and <member>GroupBy</member> set to <const>
86cdf0e10cSrcweir        DataPilotFieldGroupBy::DAYS</const>, grouping is performed on ranges
87cdf0e10cSrcweir        of days (see descriptions for <member>
88cdf0e10cSrcweir        XDataPilotFieldGrouping::createDateGroup</member> for more details
89cdf0e10cSrcweir        about day grouping).</li>
90cdf0e10cSrcweir        </ul></p>
91cdf0e10cSrcweir     */
92cdf0e10cSrcweir    boolean HasDateValues;
93cdf0e10cSrcweir
94cdf0e10cSrcweir    //-------------------------------------------------------------------------
95cdf0e10cSrcweir
96cdf0e10cSrcweir    /** specifies the start value for the grouping if <member>HasAutoStart
97cdf0e10cSrcweir        </member> is set to <FALSE/>.
98cdf0e10cSrcweir     */
99cdf0e10cSrcweir    double Start;
100cdf0e10cSrcweir
101cdf0e10cSrcweir    //-------------------------------------------------------------------------
102cdf0e10cSrcweir
103cdf0e10cSrcweir    /** specifies the end value for the grouping if <member>HasAutoEnd
104cdf0e10cSrcweir        </member> is set to <FALSE/>.
105cdf0e10cSrcweir     */
106cdf0e10cSrcweir    double End;
107cdf0e10cSrcweir
108cdf0e10cSrcweir    //-------------------------------------------------------------------------
109cdf0e10cSrcweir
110cdf0e10cSrcweir    /** specifies the size of the ranges for numeric or day grouping.
111cdf0e10cSrcweir
112cdf0e10cSrcweir        <p>Example: With <member>HasAutoStart</member> set to <FALSE/>,
113cdf0e10cSrcweir        <member>Start</member> set to 2, and <member>Step</member> set to 3,
114cdf0e10cSrcweir        the first group will contain all values greater than or equal to 2 and
115cdf0e10cSrcweir        less than 5. The second group will contain all values greater than or
116cdf0e10cSrcweir        equal to 5 and less then 8, and so on.</p>
117cdf0e10cSrcweir     */
118cdf0e10cSrcweir    double Step;
119cdf0e10cSrcweir
120cdf0e10cSrcweir    //-------------------------------------------------------------------------
121cdf0e10cSrcweir
122cdf0e10cSrcweir    /** specifies the grouping of the date values.
123cdf0e10cSrcweir
124cdf0e10cSrcweir        @see DataPilotFieldGroupBy
125cdf0e10cSrcweir     */
126cdf0e10cSrcweir    long GroupBy;
127cdf0e10cSrcweir
128cdf0e10cSrcweir    //-------------------------------------------------------------------------
129cdf0e10cSrcweir
130cdf0e10cSrcweir    /** contains the source DataPilot field grouping is based on. Will be
131cdf0e10cSrcweir        <NULL/> if this field is not grouped or contains numeric grouping.
132cdf0e10cSrcweir
133cdf0e10cSrcweir        @see DataPilotField
134cdf0e10cSrcweir     */
135cdf0e10cSrcweir    XDataPilotField SourceField;
136cdf0e10cSrcweir
137cdf0e10cSrcweir    //-------------------------------------------------------------------------
138cdf0e10cSrcweir
139cdf0e10cSrcweir    /** specifies the named groups in this field if there are some.
140cdf0e10cSrcweir
141cdf0e10cSrcweir        <p>The returned object is an instance of <type>DataPilotFieldGroups
142cdf0e10cSrcweir        </type>. The collection of groups can be modified by inserting,
143cdf0e10cSrcweir        removing, replacing, or renaming single groups or item names in the
144cdf0e10cSrcweir        groups. When writing back this struct containing such a changed
145cdf0e10cSrcweir        collection of groups to the <member>DataPilotField::GroupInfo</member>
146cdf0e10cSrcweir        property, the modified grouping settings are applied at the DataPilot
147cdf0e10cSrcweir        field.</p>
148cdf0e10cSrcweir
149cdf0e10cSrcweir        @see DataPilotField
150cdf0e10cSrcweir        @see DataPilotFieldGroups
151cdf0e10cSrcweir     */
152cdf0e10cSrcweir    com::sun::star::container::XNameAccess Groups;
153cdf0e10cSrcweir};
154cdf0e10cSrcweir
155cdf0e10cSrcweir//=============================================================================
156cdf0e10cSrcweir
157cdf0e10cSrcweir}; }; }; };
158cdf0e10cSrcweir
159cdf0e10cSrcweir#endif
160cdf0e10cSrcweir
161