diff options
author | RĂ¼diger Timm <rt@openoffice.org> | 2004-08-20 08:08:46 +0000 |
---|---|---|
committer | RĂ¼diger Timm <rt@openoffice.org> | 2004-08-20 08:08:46 +0000 |
commit | 16d931e0ada3a0d838d7fa3e504917c9bfa34516 (patch) | |
tree | 03286c8b35cbbaef5659c08103b4ad16a5d91142 /sc/source/core/data/column2.cxx | |
parent | 6616af804d1e726af5ac2e667be4334b8e8aa93e (diff) |
INTEGRATION: CWS rowlimit2 (1.19.4); FILE MERGED
2004/06/18 20:01:59 er 1.19.4.1: #i28834# increased row limit memory footprint reduction, compressed array; raw check-in before vacation
Diffstat (limited to 'sc/source/core/data/column2.cxx')
-rw-r--r-- | sc/source/core/data/column2.cxx | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/sc/source/core/data/column2.cxx b/sc/source/core/data/column2.cxx index 8d7ab2f43..fad6dbe54 100644 --- a/sc/source/core/data/column2.cxx +++ b/sc/source/core/data/column2.cxx @@ -2,9 +2,9 @@ * * $RCSfile: column2.cxx,v $ * - * $Revision: 1.20 $ + * $Revision: 1.21 $ * - * last change: $Author: hr $ $Date: 2004-08-02 16:54:06 $ + * last change: $Author: rt $ $Date: 2004-08-20 09:08:46 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -2295,7 +2295,8 @@ void lcl_UpdateSubTotal( ScFunctionData& rData, ScBaseCell* pCell ) // Mehrfachselektion: void ScColumn::UpdateSelectionFunction( const ScMarkData& rMark, - ScFunctionData& rData, const BYTE* pRowFlags, + ScFunctionData& rData, + const ScBitMaskCompressedArray< SCROW, BYTE>* pRowFlags, BOOL bDoExclude, SCROW nExStartRow, SCROW nExEndRow ) { SCSIZE nIndex; @@ -2303,14 +2304,15 @@ void ScColumn::UpdateSelectionFunction( const ScMarkData& rMark, while (aDataIter.Next( nIndex )) { SCROW nRow = pItems[nIndex].nRow; - if ( !pRowFlags || !( pRowFlags[nRow] & CR_HIDDEN ) ) + if ( !pRowFlags || !( pRowFlags->GetValue(nRow) & CR_HIDDEN ) ) if ( !bDoExclude || nRow < nExStartRow || nRow > nExEndRow ) lcl_UpdateSubTotal( rData, pItems[nIndex].pCell ); } } // bei bNoMarked die Mehrfachselektion weglassen -void ScColumn::UpdateAreaFunction( ScFunctionData& rData, BYTE* pRowFlags, +void ScColumn::UpdateAreaFunction( ScFunctionData& rData, + const ScBitMaskCompressedArray< SCROW, BYTE>* pRowFlags, SCROW nStartRow, SCROW nEndRow ) { SCSIZE nIndex; @@ -2318,7 +2320,7 @@ void ScColumn::UpdateAreaFunction( ScFunctionData& rData, BYTE* pRowFlags, while ( nIndex<nCount && pItems[nIndex].nRow<=nEndRow ) { SCROW nRow = pItems[nIndex].nRow; - if ( !pRowFlags || !( pRowFlags[nRow] & CR_HIDDEN ) ) + if ( !pRowFlags || !( pRowFlags->GetValue(nRow) & CR_HIDDEN ) ) lcl_UpdateSubTotal( rData, pItems[nIndex].pCell ); ++nIndex; } |