diff options
author | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2011-06-03 06:03:40 +0200 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2011-06-03 06:03:40 +0200 |
commit | ea7fe02f4d149466bb2170b4bf0a45676936112b (patch) | |
tree | 4487bf54ce2f85345bce570cf6e21a9b8a9d570f /sc/inc | |
parent | d4a8a64c218a4640e9701356aa87701d5a80589b (diff) |
improve performance of ScUndoInsertTables::Undo
we can now insert several sheets and then undo in nearly no time
Diffstat (limited to 'sc/inc')
-rw-r--r-- | sc/inc/cell.hxx | 2 | ||||
-rw-r--r-- | sc/inc/column.hxx | 2 | ||||
-rw-r--r-- | sc/inc/compiler.hxx | 2 | ||||
-rw-r--r-- | sc/inc/document.hxx | 1 | ||||
-rw-r--r-- | sc/inc/table.hxx | 2 |
5 files changed, 5 insertions, 4 deletions
diff --git a/sc/inc/cell.hxx b/sc/inc/cell.hxx index 4d257e4d53f5..8384d51772d5 100644 --- a/sc/inc/cell.hxx +++ b/sc/inc/cell.hxx @@ -444,7 +444,7 @@ public: void UpdateInsertTab(SCTAB nTable, SCTAB nNewSheets = 1); void UpdateInsertTabAbs(SCTAB nTable); - sal_Bool UpdateDeleteTab(SCTAB nTable, sal_Bool bIsMove = false); + sal_Bool UpdateDeleteTab(SCTAB nTable, sal_Bool bIsMove = false, SCTAB nSheets = 1); void UpdateMoveTab(SCTAB nOldPos, SCTAB nNewPos, SCTAB nTabNo); void UpdateRenameTab(SCTAB nTable, const String& rName); sal_Bool TestTabRefAbs(SCTAB nTable); diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx index b2c202a93031..6ce3bed4639e 100644 --- a/sc/inc/column.hxx +++ b/sc/inc/column.hxx @@ -292,7 +292,7 @@ public: ScDocument* pUndoDoc = NULL ); void UpdateInsertTab( SCTAB nTable, SCTAB nNewSheets = 1); void UpdateInsertTabOnlyCells( SCTAB nTable, SCTAB nNewSheets = 1); - void UpdateDeleteTab( SCTAB nTable, bool bIsMove, ScColumn* pRefUndo = NULL ); + void UpdateDeleteTab( SCTAB nTable, bool bIsMove, ScColumn* pRefUndo = NULL, SCTAB nSheets = 1 ); void UpdateMoveTab(SCTAB nOldPos, SCTAB nNewPos, SCTAB nTabNo); void UpdateCompile( bool bForceIfNameInUse = false ); void UpdateTranspose( const ScRange& rSource, const ScAddress& rDest, diff --git a/sc/inc/compiler.hxx b/sc/inc/compiler.hxx index 614051f9d5f7..1e1d81e73912 100644 --- a/sc/inc/compiler.hxx +++ b/sc/inc/compiler.hxx @@ -445,7 +445,7 @@ public: SCsCOL nDx, SCsROW nDy, SCsTAB nDz ); ScRangeData* UpdateInsertTab(SCTAB nTable, sal_Bool bIsName, SCTAB nNewSheets = 1 ); - ScRangeData* UpdateDeleteTab(SCTAB nTable, sal_Bool bIsMove, sal_Bool bIsName, sal_Bool& bCompile); + ScRangeData* UpdateDeleteTab(SCTAB nTable, sal_Bool bIsMove, sal_Bool bIsName, sal_Bool& bCompile, SCTAB nSheets = 1); ScRangeData* UpdateMoveTab(SCTAB nOldPos, SCTAB nNewPos, sal_Bool bIsName ); bool HasModifiedRange(); diff --git a/sc/inc/document.hxx b/sc/inc/document.hxx index abd11159cdc8..b85218cf3fe2 100644 --- a/sc/inc/document.hxx +++ b/sc/inc/document.hxx @@ -579,6 +579,7 @@ public: sal_Bool bExternalDocument = false ); SC_DLLPUBLIC bool InsertTabs( SCTAB nPos, const std::vector<rtl::OUString>& rNames, bool bExternalDocument = false, bool bNamesValid = false ); + SC_DLLPUBLIC bool DeleteTabs( SCTAB nTab, SCTAB nSheets, ScDocument* pRefUndoDoc = NULL ); SC_DLLPUBLIC sal_Bool DeleteTab( SCTAB nTab, ScDocument* pRefUndoDoc = NULL ); SC_DLLPUBLIC sal_Bool RenameTab( SCTAB nTab, const String& rName, sal_Bool bUpdateRef = sal_True, diff --git a/sc/inc/table.hxx b/sc/inc/table.hxx index 1ed9d4ccd206..4f2c8458f9d2 100644 --- a/sc/inc/table.hxx +++ b/sc/inc/table.hxx @@ -477,7 +477,7 @@ public: void UpdateGrow( const ScRange& rArea, SCCOL nGrowX, SCROW nGrowY ); void UpdateInsertTab(SCTAB nTable, SCTAB nNewSheets = 1); - void UpdateDeleteTab( SCTAB nTable, sal_Bool bIsMove, ScTable* pRefUndo = NULL ); + void UpdateDeleteTab( SCTAB nTable, sal_Bool bIsMove, ScTable* pRefUndo = NULL, SCTAB nSheets = 1 ); void UpdateMoveTab(SCTAB nOldPos, SCTAB nNewPos, SCTAB nTabNo, ScProgress& ); void UpdateCompile( sal_Bool bForceIfNameInUse = false ); void SetTabNo(SCTAB nNewTab); |