1
0
Fork 0
libreoffice/offapi/com/sun/star/sheet/DataPilotFieldGroupInfo.idl
Daniel Baumann 8e63e14cf6
Adding upstream version 4:25.2.3.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-22 16:20:04 +02:00

133 lines
4.4 KiB
Text

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* 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 .
*/
module com { module sun { module star { module sheet {
/** contains the grouping information of a DataPilotField.
*/
published struct DataPilotFieldGroupInfo
{
/** specifies whether the start value for the grouping is taken
automatically from the minimum of the item values.
<p><ul>
<li>If `FALSE` is set, the value from #Start will be
used as start value for the grouping.</li>
<li>If `TRUE` is set, the start value for the grouping will be
calculated automatically from the minimum of all member values of the
DataPilot field.</li>
</ul></p>
*/
boolean HasAutoStart;
/** specifies whether the end value for the grouping is taken
automatically from the maximum of the item values.
<p><ul>
<li>If `FALSE` is set, the value from #End will be
used as end value for the grouping.</li>
<li>If `TRUE` is set, the end value for the grouping will be
calculated automatically from the maximum of all member values of the
DataPilot field.</li>
</ul></p>
*/
boolean HasAutoEnd;
/** specifies whether date values are grouped by ranges of days.
<p><ul>
<li>If `FALSE` is set, and #GroupBy contains zero,
grouping is performed inplace on the item values.</li>
<li>If `FALSE` is set, and #GroupBy contains one or
more flags from DataPilotFieldGroupBy, grouping is
performed on date or time.</li>
<li>If `TRUE` is set, #Step contains a value greater
than or equal to 1, and #GroupBy set to
DataPilotFieldGroupBy::DAYS, grouping is performed on ranges
of days (see descriptions for
XDataPilotFieldGrouping::createDateGroup() for more details
about day grouping).</li>
</ul></p>
*/
boolean HasDateValues;
/** specifies the start value for the grouping if #HasAutoStart
is set to `FALSE`.
*/
double Start;
/** specifies the end value for the grouping if #HasAutoEnd
is set to `FALSE`.
*/
double End;
/** specifies the size of the ranges for numeric or day grouping.
<p>Example: With #HasAutoStart set to `FALSE`,
#Start set to 2, and #Step set to 3,
the first group will contain all values greater than or equal to 2 and
less than 5. The second group will contain all values greater than or
equal to 5 and less than 8, and so on.</p>
*/
double Step;
/** specifies the grouping of the date values.
@see DataPilotFieldGroupBy
*/
long GroupBy;
/** contains the source DataPilot field grouping is based on. Will be
`NULL` if this field is not grouped or contains numeric grouping.
@see DataPilotField
*/
XDataPilotField SourceField;
/** specifies the named groups in this field if there are some.
<p>The returned object is an instance of DataPilotFieldGroups
. The collection of groups can be modified by inserting,
removing, replacing, or renaming single groups or item names in the
groups. When writing back this struct containing such a changed
collection of groups to the DataPilotField::GroupInfo
property, the modified grouping settings are applied at the DataPilot
field.</p>
@see DataPilotField
@see DataPilotFieldGroups
*/
com::sun::star::container::XNameAccess Groups;
};
}; }; }; };
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */