summaryrefslogtreecommitdiff
path: root/sc/source/core/data/column2.cxx
diff options
context:
space:
mode:
authorRĂ¼diger Timm <rt@openoffice.org>2004-08-20 08:08:46 +0000
committerRĂ¼diger Timm <rt@openoffice.org>2004-08-20 08:08:46 +0000
commit16d931e0ada3a0d838d7fa3e504917c9bfa34516 (patch)
tree03286c8b35cbbaef5659c08103b4ad16a5d91142 /sc/source/core/data/column2.cxx
parent6616af804d1e726af5ac2e667be4334b8e8aa93e (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.cxx14
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;
}