diff options
author | David Tardon <dtardon@redhat.com> | 2012-05-28 12:35:25 +0200 |
---|---|---|
committer | David Tardon <dtardon@redhat.com> | 2012-05-29 07:37:25 +0200 |
commit | 824270f1829461895938c5794e7b2a255307ed9f (patch) | |
tree | ad9ad21ee2070ea15e6851fc47d0c7dc7f25ea11 /writerfilter | |
parent | 44074025027be3d2d0d9ac539361a6958c744a86 (diff) |
implement operator= too
Change-Id: I5d5b5562a130ac5ba46afa3273cf65e7bbed2c13
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/rtftok/rtfsprm.cxx | 12 | ||||
-rw-r--r-- | writerfilter/source/rtftok/rtfsprm.hxx | 2 | ||||
-rw-r--r-- | writerfilter/source/rtftok/rtfvalue.hxx | 1 |
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; |