summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorDavid Tardon <dtardon@redhat.com>2012-05-28 12:35:25 +0200
committerDavid Tardon <dtardon@redhat.com>2012-05-29 07:37:25 +0200
commit824270f1829461895938c5794e7b2a255307ed9f (patch)
treead9ad21ee2070ea15e6851fc47d0c7dc7f25ea11 /writerfilter
parent44074025027be3d2d0d9ac539361a6958c744a86 (diff)
implement operator= too
Change-Id: I5d5b5562a130ac5ba46afa3273cf65e7bbed2c13
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/rtftok/rtfsprm.cxx12
-rw-r--r--writerfilter/source/rtftok/rtfsprm.hxx2
-rw-r--r--writerfilter/source/rtftok/rtfvalue.hxx1
3 files changed, 15 insertions, 0 deletions
diff --git a/writerfilter/source/rtftok/rtfsprm.cxx b/writerfilter/source/rtftok/rtfsprm.cxx
index 976505f78292..d84d37474f80 100644
--- a/writerfilter/source/rtftok/rtfsprm.cxx
+++ b/writerfilter/source/rtftok/rtfsprm.cxx
@@ -127,11 +127,23 @@ RTFSprms::RTFSprms(const RTFSprms& rSprms)
m_aSprms.push_back(std::make_pair(i->first, RTFValue::Pointer_t(i->second->Clone())));
}
+RTFSprms& RTFSprms::operator=(const RTFSprms& rOther)
+{
+ RTFSprms aTmp(rOther);
+ swap(aTmp);
+ return *this;
+}
+
std::vector< std::pair<Id, RTFValue::Pointer_t> >* RTFSprms::operator->()
{
return &m_aSprms;
}
+void RTFSprms::swap(RTFSprms& rOther)
+{
+ m_aSprms.swap(rOther.m_aSprms);
+}
+
} // namespace rtftok
} // namespace writerfilter
diff --git a/writerfilter/source/rtftok/rtfsprm.hxx b/writerfilter/source/rtftok/rtfsprm.hxx
index 7c73d0e87a37..b8275e14a637 100644
--- a/writerfilter/source/rtftok/rtfsprm.hxx
+++ b/writerfilter/source/rtftok/rtfsprm.hxx
@@ -41,9 +41,11 @@ namespace writerfilter {
typedef std::vector< std::pair<Id, RTFValue::Pointer_t> >::iterator Iterator_t;
RTFSprms();
RTFSprms(const RTFSprms& rSprms);
+ RTFSprms& operator=(const RTFSprms& rOther);
std::vector< std::pair<Id, RTFValue::Pointer_t> >* operator->();
RTFValue::Pointer_t find(Id nKeyword);
bool erase(Id nKeyword);
+ void swap(RTFSprms& rOther);
private:
std::vector< std::pair<Id, RTFValue::Pointer_t> > m_aSprms;
};
diff --git a/writerfilter/source/rtftok/rtfvalue.hxx b/writerfilter/source/rtftok/rtfvalue.hxx
index d5c6b3e7ae79..8a14ef5d8d9a 100644
--- a/writerfilter/source/rtftok/rtfvalue.hxx
+++ b/writerfilter/source/rtftok/rtfvalue.hxx
@@ -61,6 +61,7 @@ namespace writerfilter {
RTFSprms& getAttributes();
RTFSprms& getSprms();
private:
+ RTFValue& operator=(RTFValue const& rOther);
int m_nValue;
rtl::OUString m_sValue;
boost::shared_ptr<RTFSprms> m_pAttributes;