Kaydet (Commit) 31e82d9f authored tarafından Julien Nabet's avatar Julien Nabet Kaydeden (comit) Kohei Yoshida

Add deleteOnTab for ScDBCollection::AnonDBs

and use it instead of just using remove_if which is useless nothing!

Change-Id: I37d8254b05123e50b076ddbb6f67726198ec4d6c
Reviewed-on: https://gerrit.libreoffice.org/13723Reviewed-by: 's avatarKohei Yoshida <libreoffice@kohei.us>
Tested-by: 's avatarKohei Yoshida <libreoffice@kohei.us>
üst e26f5744
...@@ -203,6 +203,7 @@ public: ...@@ -203,6 +203,7 @@ public:
const_iterator end() const; const_iterator end() const;
const ScDBData* findAtCursor(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bStartOnly) const; const ScDBData* findAtCursor(SCCOL nCol, SCROW nRow, SCTAB nTab, bool bStartOnly) const;
const ScDBData* findByRange(const ScRange& rRange) const; const ScDBData* findByRange(const ScRange& rRange) const;
void deleteOnTab(SCTAB nTab);
ScDBData* getByRange(const ScRange& rRange); ScDBData* getByRange(const ScRange& rRange);
void insert(ScDBData* p); void insert(ScDBData* p);
bool empty() const; bool empty() const;
......
...@@ -762,6 +762,12 @@ const ScDBData* ScDBCollection::AnonDBs::findByRange(const ScRange& rRange) cons ...@@ -762,6 +762,12 @@ const ScDBData* ScDBCollection::AnonDBs::findByRange(const ScRange& rRange) cons
return itr == maDBs.end() ? NULL : &(*itr); return itr == maDBs.end() ? NULL : &(*itr);
} }
void ScDBCollection::AnonDBs::deleteOnTab(SCTAB nTab)
{
FindByTable func(nTab);
maDBs.erase_if(func);
}
ScDBData* ScDBCollection::AnonDBs::getByRange(const ScRange& rRange) ScDBData* ScDBCollection::AnonDBs::getByRange(const ScRange& rRange)
{ {
const ScDBData* pData = findByRange(rRange); const ScDBData* pData = findByRange(rRange);
...@@ -905,7 +911,7 @@ void ScDBCollection::DeleteOnTab( SCTAB nTab ) ...@@ -905,7 +911,7 @@ void ScDBCollection::DeleteOnTab( SCTAB nTab )
for (; itr != itrEnd; ++itr) for (; itr != itrEnd; ++itr)
maNamedDBs.erase(*itr); maNamedDBs.erase(*itr);
remove_if(maAnonDBs.begin(), maAnonDBs.end(), func); maAnonDBs.deleteOnTab(nTab);
} }
void ScDBCollection::UpdateReference(UpdateRefMode eUpdateRefMode, void ScDBCollection::UpdateReference(UpdateRefMode eUpdateRefMode,
......
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