summaryrefslogtreecommitdiff
path: root/sc/source/filter
diff options
context:
space:
mode:
Diffstat (limited to 'sc/source/filter')
-rw-r--r--sc/source/filter/excel/colrowst.cxx5
-rw-r--r--sc/source/filter/excel/xechart.cxx2
2 files changed, 5 insertions, 2 deletions
diff --git a/sc/source/filter/excel/colrowst.cxx b/sc/source/filter/excel/colrowst.cxx
index 575093f48d2a..b469ea5de49c 100644
--- a/sc/source/filter/excel/colrowst.cxx
+++ b/sc/source/filter/excel/colrowst.cxx
@@ -278,6 +278,7 @@ void XclImpColRowSettings::Convert( SCTAB nScTab )
void XclImpColRowSettings::ConvertHiddenFlags( SCTAB nScTab )
{
ScDocument& rDoc = GetDoc();
+ rDoc.IncSizeRecalcLevel( nScTab ); // #i116460# performance with many hidden rows
// hide the columns
for( SCCOL nScCol = 0; nScCol <= MAXCOL; ++nScCol )
@@ -304,7 +305,7 @@ void XclImpColRowSettings::ConvertHiddenFlags( SCTAB nScTab )
if( ::get_flag( maRowFlags[ nScRow ], EXC_COLROW_HIDDEN ) )
{
// hide the row
- rDoc.ShowRow( nScRow, nScTab, sal_False );
+ rDoc.SetRowHidden(nScRow, nScRow, nScTab, true); // #i116460# SetRowHidden instead of ShowRow
// #i38093# rows hidden by filter need extra flag
if( (nFirstFilterScRow <= nScRow) && (nScRow <= nLastFilterScRow) )
rDoc.SetRowFiltered(nScRow, nScRow, nScTab, true);
@@ -314,5 +315,7 @@ void XclImpColRowSettings::ConvertHiddenFlags( SCTAB nScTab )
// #i47438# if default row format is hidden, hide remaining rows
if( ::get_flag( mnDefRowFlags, EXC_DEFROW_HIDDEN ) && (mnLastScRow < MAXROW) )
rDoc.ShowRows( mnLastScRow + 1, MAXROW, nScTab, sal_False );
+
+ rDoc.DecSizeRecalcLevel( nScTab ); // #i116460# performance with many hidden rows
}
diff --git a/sc/source/filter/excel/xechart.cxx b/sc/source/filter/excel/xechart.cxx
index 6aab83a050f7..1a171466f53a 100644
--- a/sc/source/filter/excel/xechart.cxx
+++ b/sc/source/filter/excel/xechart.cxx
@@ -212,7 +212,7 @@ sal_uInt16 lclGetTimeUnit( sal_Int32 nApiTimeUnit )
return EXC_CHDATERANGE_DAYS;
}
-bool lclConvertTimeInterval( sal_uInt16 rnValue, sal_uInt16& rnTimeUnit, const Any& rAny )
+bool lclConvertTimeInterval( sal_uInt16& rnValue, sal_uInt16& rnTimeUnit, const Any& rAny )
{
cssc::TimeInterval aInterval;
bool bAuto = lclIsAutoAnyOrGetValue( aInterval, rAny );