Files
loongoffice/sc/inc/subtotalparam.hxx

52 lines
2.0 KiB
C++

/* -*- 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/.
*/
#ifndef __SC_SUBTOTALPARAM_HXX__
#define __SC_SUBTOTALPARAM_HXX__
#include "global.hxx"
#include "address.hxx"
struct SC_DLLPUBLIC ScSubTotalParam
{
SCCOL nCol1; // selected area
SCROW nRow1;
SCCOL nCol2;
SCROW nRow2;
sal_uInt16 nUserIndex; // index into list
bool bRemoveOnly:1;
bool bReplace:1; // replace existing results
bool bPagebreak:1; // page break at change of group
bool bCaseSens:1; //
bool bDoSort:1; // presort
bool bAscending:1; // sort ascending
bool bUserDef:1; // sort user defined
bool bIncludePattern:1; // sort formats
bool bGroupActive[MAXSUBTOTAL]; // active groups
SCCOL nField[MAXSUBTOTAL]; // associated field
SCCOL nSubTotals[MAXSUBTOTAL]; // number of SubTotals
SCCOL* pSubTotals[MAXSUBTOTAL]; // array of columns to be calculated
ScSubTotalFunc* pFunctions[MAXSUBTOTAL]; // array of associated functions
ScSubTotalParam();
ScSubTotalParam( const ScSubTotalParam& r );
ScSubTotalParam& operator= ( const ScSubTotalParam& r );
bool operator== ( const ScSubTotalParam& r ) const;
void Clear();
void SetSubTotals( sal_uInt16 nGroup,
const SCCOL* ptrSubTotals,
const ScSubTotalFunc* ptrFuncions,
sal_uInt16 nCount );
};
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */