Kaydet (Commit) 41a85923 authored tarafından Eike Rathke's avatar Eike Rathke

fdo#74194 Revert "Resolves: #i121136# Improve Spreadsheet performance ..."

This reverts commit 6a62557d.

pPageRows[] is a member array, so when not allocating MAXROWCOUNT
entries but nRealCnt instead it also needs some tracking mechanism to
reallocate in case a subsequent call needs more elements than the first
call.

Change-Id: Iadb7d2ceadcb8bd99d57c6188571d295c6b99fba
üst 862bec45
...@@ -842,8 +842,7 @@ uno::Any SAL_CALL ScShapeObj::getPropertyValue( const OUString& aPropertyName ) ...@@ -842,8 +842,7 @@ uno::Any SAL_CALL ScShapeObj::getPropertyValue( const OUString& aPropertyName )
} }
else else
{ {
if(!pShapePropertySet) //performance consideration GetShapePropertySet();
GetShapePropertySet();
if (pShapePropertySet) if (pShapePropertySet)
aAny = pShapePropertySet->getPropertyValue( aPropertyName ); aAny = pShapePropertySet->getPropertyValue( aPropertyName );
} }
......
...@@ -2963,9 +2963,8 @@ static void lcl_SetHidden( ScDocument* pDoc, SCTAB nPrintTab, ScPageRowEntry& rP ...@@ -2963,9 +2963,8 @@ static void lcl_SetHidden( ScDocument* pDoc, SCTAB nPrintTab, ScPageRowEntry& rP
void ScPrintFunc::CalcPages() // calculates aPageRect and pages from nZoom void ScPrintFunc::CalcPages() // calculates aPageRect and pages from nZoom
{ {
if (!pPageEndX) pPageEndX = new SCCOL[MAXCOL+1]; if (!pPageEndX) pPageEndX = new SCCOL[MAXCOL+1];
//performance impact if (!pPageEndY) pPageEndY = new SCROW[MAXROW+1];
// if (!pPageEndY) pPageEndY = new SCROW[MAXROW+1]; if (!pPageRows) pPageRows = new ScPageRowEntry[MAXROW+1]; //! count before !!!!
// if (!pPageRows) pPageRows = new ScPageRowEntry[MAXROW+1]; //! count before !!!!
pDoc->SetPageSize( nPrintTab, GetDocPageSize() ); pDoc->SetPageSize( nPrintTab, GetDocPageSize() );
if (aAreaParam.bPrintArea) if (aAreaParam.bPrintArea)
...@@ -2975,9 +2974,7 @@ void ScPrintFunc::CalcPages() // calculates aPageRect and pages fr ...@@ -2975,9 +2974,7 @@ void ScPrintFunc::CalcPages() // calculates aPageRect and pages fr
} }
else else
pDoc->UpdatePageBreaks( nPrintTab, NULL ); // else, end is marked pDoc->UpdatePageBreaks( nPrintTab, NULL ); // else, end is marked
SCROW nRealCnt = nEndRow-nStartRow+1;
if (!pPageEndY) pPageEndY = new SCROW[nRealCnt+1];
if (!pPageRows) pPageRows = new ScPageRowEntry[nRealCnt+1]; //! vorher zaehlen !!!!
// //
// Page alignment/splitting after breaks in Col/RowFlags // Page alignment/splitting after breaks in Col/RowFlags
// Of several breaks in a hidden area, only one counts. // Of several breaks in a hidden area, only one counts.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment