diff options
Diffstat (limited to 'comphelper/source/xml/attributelist.cxx')
-rw-r--r-- | comphelper/source/xml/attributelist.cxx | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/comphelper/source/xml/attributelist.cxx b/comphelper/source/xml/attributelist.cxx index f196b48ce645..cefede87dfc9 100644 --- a/comphelper/source/xml/attributelist.cxx +++ b/comphelper/source/xml/attributelist.cxx @@ -100,15 +100,20 @@ OUString SAL_CALL AttributeList::getValueByName(const OUString& sName) throw( cs return OUString(); } - AttributeList::AttributeList() + : m_pImpl(new AttributeList_Impl) +{ +} + +AttributeList::AttributeList(const AttributeList &r) + : cppu::WeakImplHelper<XAttributeList, XCloneable>() + , m_pImpl(new AttributeList_Impl) { - m_pImpl = new AttributeList_Impl; + *m_pImpl = *(r.m_pImpl); } AttributeList::~AttributeList() { - delete m_pImpl; } void AttributeList::AddAttribute(const OUString &sName, @@ -122,6 +127,13 @@ void AttributeList::Clear() m_pImpl->vecAttribute.clear(); } +css::uno::Reference< css::util::XCloneable > AttributeList::createClone() throw (css::uno::RuntimeException, std::exception) + +{ + AttributeList *p = new AttributeList( *this ); + return css::uno::Reference< css::util::XCloneable > ( static_cast<css::util::XCloneable *>(p) ); +} + } // namespace comphelper /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |