1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
10 #ifndef __SC_SUBTOTALPARAM_HXX__
11 #define __SC_SUBTOTALPARAM_HXX__
14 #include "address.hxx"
16 struct SC_DLLPUBLIC ScSubTotalParam
18 SCCOL nCol1
; // selected area
22 sal_uInt16 nUserIndex
; // index into list
24 bool bReplace
:1; // replace existing results
25 bool bPagebreak
:1; // page break at change of group
27 bool bDoSort
:1; // presort
28 bool bAscending
:1; // sort ascending
29 bool bUserDef
:1; // sort user defined
30 bool bIncludePattern
:1; // sort formats
31 bool bGroupActive
[MAXSUBTOTAL
]; // active groups
32 SCCOL nField
[MAXSUBTOTAL
]; // associated field
33 SCCOL nSubTotals
[MAXSUBTOTAL
]; // number of SubTotals
34 SCCOL
* pSubTotals
[MAXSUBTOTAL
]; // array of columns to be calculated
35 ScSubTotalFunc
* pFunctions
[MAXSUBTOTAL
]; // array of associated functions
38 ScSubTotalParam( const ScSubTotalParam
& r
);
40 ScSubTotalParam
& operator= ( const ScSubTotalParam
& r
);
41 bool operator== ( const ScSubTotalParam
& r
) const;
43 void SetSubTotals( sal_uInt16 nGroup
,
44 const SCCOL
* ptrSubTotals
,
45 const ScSubTotalFunc
* ptrFuncions
,
51 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */