summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2015-09-01 17:05:13 +0200
committerEike Rathke <erack@redhat.com>2015-09-01 18:10:44 +0200
commitb0d6a8ea09148fce6f6c806086835a86eb8ff03d (patch)
tree79f2865b3019a275256128cf1ec46d545717c305 /sc
parentd38e4b2ee73ad38881465f9f97eb8d8397ee98ff (diff)
TableRef: reuse TableColumnNameSearch in RefreshTableColumnNames()
Change-Id: I354698d6959aeb9ce022ecc420f2e10b0155c184
Diffstat (limited to 'sc')
-rw-r--r--sc/source/core/tool/dbdata.cxx50
1 files changed, 21 insertions, 29 deletions
diff --git a/sc/source/core/tool/dbdata.cxx b/sc/source/core/tool/dbdata.cxx
index 46b9b2f34e3b..adc401a1a4a5 100644
--- a/sc/source/core/tool/dbdata.cxx
+++ b/sc/source/core/tool/dbdata.cxx
@@ -622,6 +622,25 @@ void ScDBData::AdjustTableColumnNames( UpdateRefMode eUpdateRefMode, SCCOL nDx,
aNewNames.swap( maTableColumnNames);
}
+namespace {
+class TableColumnNameSearch : public unary_function<ScDBData, bool>
+{
+public:
+ explicit TableColumnNameSearch( const OUString& rSearchName ) :
+ maSearchName( rSearchName )
+ {
+ }
+
+ bool operator()( const OUString& rName ) const
+ {
+ return ScGlobal::GetpTransliteration()->isEqual( maSearchName, rName);
+ }
+
+private:
+ OUString maSearchName;
+};
+}
+
void ScDBData::RefreshTableColumnNames( ScDocument* pDoc )
{
if (!HasHeader())
@@ -659,17 +678,9 @@ void ScDBData::RefreshTableColumnNames( ScDocument* pDoc )
{
if (aNewNames[i].isEmpty())
{
- bool bCopy = true;
const OUString& rStr = maTableColumnNames[i];
- for (size_t j=0; j < n; ++j)
- {
- if (ScGlobal::GetpTransliteration()->isEqual( aNewNames[j], rStr))
- {
- bCopy = false;
- break; // for
- }
- }
- if (bCopy)
+ auto it( ::std::find_if( aNewNames.begin(), aNewNames.end(), TableColumnNameSearch( rStr)));
+ if (it == aNewNames.end())
aNewNames[i] = rStr;
}
}
@@ -678,25 +689,6 @@ void ScDBData::RefreshTableColumnNames( ScDocument* pDoc )
aNewNames.swap( maTableColumnNames);
}
-namespace {
-class TableColumnNameSearch : public unary_function<ScDBData, bool>
-{
-public:
- explicit TableColumnNameSearch( const OUString& rSearchName ) :
- maSearchName( rSearchName )
- {
- }
-
- bool operator()( const OUString& rName ) const
- {
- return ScGlobal::GetpTransliteration()->isEqual( maSearchName, rName);
- }
-
-private:
- OUString maSearchName;
-};
-}
-
sal_Int32 ScDBData::GetColumnNameOffset( const OUString& rName ) const
{
if (maTableColumnNames.empty())