summaryrefslogtreecommitdiff
path: root/sc/inc
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@googlemail.com>2011-06-03 06:03:40 +0200
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2011-06-03 06:03:40 +0200
commitea7fe02f4d149466bb2170b4bf0a45676936112b (patch)
tree4487bf54ce2f85345bce570cf6e21a9b8a9d570f /sc/inc
parentd4a8a64c218a4640e9701356aa87701d5a80589b (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.hxx2
-rw-r--r--sc/inc/column.hxx2
-rw-r--r--sc/inc/compiler.hxx2
-rw-r--r--sc/inc/document.hxx1
-rw-r--r--sc/inc/table.hxx2
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);