summaryrefslogtreecommitdiff
path: root/editeng
diff options
context:
space:
mode:
Diffstat (limited to 'editeng')
-rw-r--r--editeng/source/editeng/editobj.cxx28
1 files changed, 10 insertions, 18 deletions
diff --git a/editeng/source/editeng/editobj.cxx b/editeng/source/editeng/editobj.cxx
index ad096dfa7f82..a0112468af5b 100644
--- a/editeng/source/editeng/editobj.cxx
+++ b/editeng/source/editeng/editobj.cxx
@@ -217,24 +217,16 @@ void ContentInfo::Dump() const
}
#endif
-bool ContentInfo::Equals( const ContentInfo& rCompare, bool bComparePool ) const
-{
- if( (maText == rCompare.maText) &&
- (aStyle == rCompare.aStyle ) &&
- (maCharAttribs.size() == rCompare.maCharAttribs.size()) &&
- (eFamily == rCompare.eFamily ) &&
- aParaAttribs.Equals( rCompare.aParaAttribs, bComparePool ) )
- {
- for (size_t i = 0, n = maCharAttribs.size(); i < n; ++i)
- {
- if (!(*(maCharAttribs[i]) == *(rCompare.maCharAttribs[i])))
- return false;
- }
-
- return true;
- }
-
- return false;
+bool ContentInfo::Equals(const ContentInfo& rCompare, bool bComparePool) const
+{
+ return maText == rCompare.maText && aStyle == rCompare.aStyle && eFamily == rCompare.eFamily
+ && aParaAttribs.Equals(rCompare.aParaAttribs, bComparePool)
+ && std::equal(maCharAttribs.cbegin(), maCharAttribs.cend(),
+ rCompare.maCharAttribs.cbegin(), rCompare.maCharAttribs.cend(),
+ [](const std::unique_ptr<XEditAttribute>& pAttribute1,
+ const std::unique_ptr<XEditAttribute>& pAttribute2) -> bool {
+ return *pAttribute1 == *pAttribute2;
+ });
}
EditTextObject::EditTextObject( SfxItemPool* pPool ) :