Kaydet (Commit) 6a62557d authored tarafından Wang Lei's avatar Wang Lei Kaydeden (comit) Caolán McNamara

Resolves: #i121136# Improve Spreadsheet performance in some areas

Patch by: Wang Lei
Review by: Wang Lei

(cherry picked from commit d39376c4)

Conflicts:
	sc/source/core/data/document.cxx
	sc/source/core/data/table2.cxx
	sc/source/filter/excel/colrowst.cxx
	sc/source/ui/view/printfun.cxx

Change-Id: I17ff418ad5d09be1e760ee25e9c377ef1362f10e
üst 930127da
......@@ -841,7 +841,8 @@ uno::Any SAL_CALL ScShapeObj::getPropertyValue( const OUString& aPropertyName )
}
else
{
GetShapePropertySet();
if(!pShapePropertySet) //performance consideration
GetShapePropertySet();
if (pShapePropertySet)
aAny = pShapePropertySet->getPropertyValue( aPropertyName );
}
......
......@@ -2932,8 +2932,9 @@ static void lcl_SetHidden( ScDocument* pDoc, SCTAB nPrintTab, ScPageRowEntry& rP
void ScPrintFunc::CalcPages() // calculates aPageRect and pages from nZoom
{
if (!pPageEndX) pPageEndX = new SCCOL[MAXCOL+1];
if (!pPageEndY) pPageEndY = new SCROW[MAXROW+1];
if (!pPageRows) pPageRows = new ScPageRowEntry[MAXROW+1]; //! count before !!!!
//performance impact
// if (!pPageEndY) pPageEndY = new SCROW[MAXROW+1];
// if (!pPageRows) pPageRows = new ScPageRowEntry[MAXROW+1]; //! count before !!!!
pDoc->SetPageSize( nPrintTab, GetDocPageSize() );
if (aAreaParam.bPrintArea)
......@@ -2943,7 +2944,9 @@ void ScPrintFunc::CalcPages() // calculates aPageRect and pages fr
}
else
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
// 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