summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2013-10-09 10:08:06 -0400
committerKohei Yoshida <kohei.yoshida@collabora.com>2013-10-11 12:14:24 -0400
commitcff2f333aecdb8911736d919e3c5252320100d7e (patch)
tree1fd15eecf719e0b45c257db80ff55b91e118b417
parenta11e224e07a4fda0de64a9a0a181f6034e08d2e5 (diff)
Add isEmpty() to SharedString. This simplies a lot of its call sites.
Change-Id: I0ebc43abe59ac317c053a4f606dbe376d85c03b0
-rw-r--r--include/svl/sharedstring.hxx1
-rw-r--r--sc/source/core/data/table3.cxx2
-rw-r--r--sc/source/core/tool/interpr1.cxx2
-rw-r--r--sc/source/core/tool/queryentry.cxx4
-rw-r--r--svl/source/misc/sharedstring.cxx5
5 files changed, 10 insertions, 4 deletions
diff --git a/include/svl/sharedstring.hxx b/include/svl/sharedstring.hxx
index 1e16c5373de2..183dc43de18c 100644
--- a/include/svl/sharedstring.hxx
+++ b/include/svl/sharedstring.hxx
@@ -40,6 +40,7 @@ public:
const rtl_uString* getDataIgnoreCase() const;
bool isValid() const;
+ bool isEmpty() const;
};
}
diff --git a/sc/source/core/data/table3.cxx b/sc/source/core/data/table3.cxx
index 9b63531aecdb..10c7ca767ac1 100644
--- a/sc/source/core/data/table3.cxx
+++ b/sc/source/core/data/table3.cxx
@@ -1487,7 +1487,7 @@ public:
// Simple string matching i.e. no regexp match.
if (isTextMatchOp(rEntry))
{
- if (rItem.meType != ScQueryEntry::ByString && rItem.maString.getString().isEmpty())
+ if (rItem.meType != ScQueryEntry::ByString && rItem.maString.isEmpty())
{
// #i18374# When used from functions (match, countif, sumif, vlookup, hlookup, lookup),
// the query value is assigned directly, and the string is empty. In that case,
diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx
index 9400beca2fa0..314c2caa59a8 100644
--- a/sc/source/core/tool/interpr1.cxx
+++ b/sc/source/core/tool/interpr1.cxx
@@ -976,7 +976,7 @@ double ScInterpreter::CompareFunc( const ScCompare& rComp, ScCompareOptions* pOp
if (!rItems.empty())
{
const ScQueryEntry::Item& rItem = rItems[0];
- if (rItem.meType != ScQueryEntry::ByString && !rItem.maString.getString().isEmpty() &&
+ if (rItem.meType != ScQueryEntry::ByString && !rItem.maString.isEmpty() &&
(rEntry.eOp == SC_EQUAL || rEntry.eOp == SC_NOT_EQUAL))
{
// As in ScTable::ValidQuery() match a numeric string for a
diff --git a/sc/source/core/tool/queryentry.cxx b/sc/source/core/tool/queryentry.cxx
index f93351687a98..a282f4dce500 100644
--- a/sc/source/core/tool/queryentry.cxx
+++ b/sc/source/core/tool/queryentry.cxx
@@ -107,7 +107,7 @@ bool ScQueryEntry::IsQueryByEmpty() const
const Item& rItem = maQueryItems[0];
return eOp == SC_EQUAL &&
rItem.meType == ByEmpty &&
- rItem.maString.getString().isEmpty() &&
+ rItem.maString.isEmpty() &&
rItem.mfVal == SC_EMPTYFIELDS;
}
@@ -129,7 +129,7 @@ bool ScQueryEntry::IsQueryByNonEmpty() const
const Item& rItem = maQueryItems[0];
return eOp == SC_EQUAL &&
rItem.meType == ByEmpty &&
- rItem.maString.getString().isEmpty() &&
+ rItem.maString.isEmpty() &&
rItem.mfVal == SC_NONEMPTYFIELDS;
}
diff --git a/svl/source/misc/sharedstring.cxx b/svl/source/misc/sharedstring.cxx
index 5eb3af5cbbf4..9c0cad2f73af 100644
--- a/svl/source/misc/sharedstring.cxx
+++ b/svl/source/misc/sharedstring.cxx
@@ -113,6 +113,11 @@ bool SharedString::isValid() const
return mpData != NULL;
}
+bool SharedString::isEmpty() const
+{
+ return mpData == NULL || mpData->length == 0;
+}
+
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */