Kaydet (Commit) 00da9792 authored tarafından Noel Grandin's avatar Noel Grandin

simplify SfxEventNamesList

no need to store elements of vector on the heap

Change-Id: I314372b8f81b117c07676263c0c3481b51374f33
Reviewed-on: https://gerrit.libreoffice.org/67397
Tested-by: Jenkins
Reviewed-by: 's avatarNoel Grandin <noel.grandin@collabora.co.uk>
üst 3be2a53e
...@@ -197,8 +197,8 @@ void SfxMacroTabPage::PageCreated(const SfxAllItemSet& aSet) ...@@ -197,8 +197,8 @@ void SfxMacroTabPage::PageCreated(const SfxAllItemSet& aSet)
const SfxEventNamesList& rList = static_cast<const SfxEventNamesItem*>(pEventsItem)->GetEvents(); const SfxEventNamesList& rList = static_cast<const SfxEventNamesItem*>(pEventsItem)->GetEvents();
for ( size_t nNo = 0, nCnt = rList.size(); nNo < nCnt; ++nNo ) for ( size_t nNo = 0, nCnt = rList.size(); nNo < nCnt; ++nNo )
{ {
const SfxEventName *pOwn = rList.at(nNo); const SfxEventName &rOwn = rList.at(nNo);
AddEvent( pOwn->maUIName, pOwn->mnId ); AddEvent( rOwn.maUIName, rOwn.mnId );
} }
} }
} }
...@@ -216,8 +216,8 @@ void SfxMacroTabPage::Reset( const SfxItemSet* rSet ) ...@@ -216,8 +216,8 @@ void SfxMacroTabPage::Reset( const SfxItemSet* rSet )
const SfxEventNamesList& rList = static_cast<const SfxEventNamesItem*>(pEventsItem)->GetEvents(); const SfxEventNamesList& rList = static_cast<const SfxEventNamesItem*>(pEventsItem)->GetEvents();
for ( size_t nNo = 0, nCnt = rList.size(); nNo < nCnt; ++nNo ) for ( size_t nNo = 0, nCnt = rList.size(); nNo < nCnt; ++nNo )
{ {
const SfxEventName *pOwn = rList.at(nNo); const SfxEventName &rOwn = rList.at(nNo);
AddEvent( pOwn->maUIName, pOwn->mnId ); AddEvent( rOwn.maUIName, rOwn.mnId );
} }
} }
......
...@@ -35,9 +35,9 @@ class SvxMacroTableDtor; ...@@ -35,9 +35,9 @@ class SvxMacroTableDtor;
struct SFX2_DLLPUBLIC SfxEventName struct SFX2_DLLPUBLIC SfxEventName
{ {
SvMacroItemId const mnId; SvMacroItemId mnId;
OUString const maEventName; OUString maEventName;
OUString const maUIName; OUString maUIName;
SfxEventName( SvMacroItemId nId, SfxEventName( SvMacroItemId nId,
const OUString& rEventName, const OUString& rEventName,
...@@ -50,7 +50,7 @@ struct SFX2_DLLPUBLIC SfxEventName ...@@ -50,7 +50,7 @@ struct SFX2_DLLPUBLIC SfxEventName
class SFX2_DLLPUBLIC SfxEventNamesList class SFX2_DLLPUBLIC SfxEventNamesList
{ {
private: private:
::std::vector< std::unique_ptr<SfxEventName> > aEventNamesList; ::std::vector< SfxEventName > aEventNamesList;
public: public:
SfxEventNamesList() {} SfxEventNamesList() {}
...@@ -60,10 +60,10 @@ public: ...@@ -60,10 +60,10 @@ public:
size_t size() const { return aEventNamesList.size(); }; size_t size() const { return aEventNamesList.size(); };
SfxEventName* at( size_t Index ) const SfxEventName& at( size_t Index ) { return aEventNamesList[ Index ]; }
{ return Index < aEventNamesList.size() ? aEventNamesList[ Index ].get() : nullptr; } SfxEventName const & at( size_t Index ) const { return aEventNamesList[ Index ]; }
void push_back( std::unique_ptr<SfxEventName> Item ) { aEventNamesList.push_back( std::move(Item) ); } void push_back( SfxEventName Item ) { aEventNamesList.push_back( std::move(Item) ); }
}; };
class SFX2_DLLPUBLIC SfxEventNamesItem : public SfxPoolItem class SFX2_DLLPUBLIC SfxEventNamesItem : public SfxPoolItem
......
...@@ -49,17 +49,7 @@ ...@@ -49,17 +49,7 @@
using namespace com::sun::star; using namespace com::sun::star;
SfxEventNamesList& SfxEventNamesList::operator=( const SfxEventNamesList& rTbl ) SfxEventNamesList& SfxEventNamesList::operator=( const SfxEventNamesList& ) = default;
{
aEventNamesList.clear();
for ( size_t i = 0, n = rTbl.size(); i < n; ++i )
{
SfxEventName* pTmp = rTbl.at( i );
std::unique_ptr<SfxEventName> pNew(new SfxEventName( *pTmp ));
aEventNamesList.push_back( std::move(pNew) );
}
return *this;
}
SfxEventNamesList::~SfxEventNamesList() SfxEventNamesList::~SfxEventNamesList()
{ {
...@@ -77,11 +67,11 @@ bool SfxEventNamesItem::operator==( const SfxPoolItem& rAttr ) const ...@@ -77,11 +67,11 @@ bool SfxEventNamesItem::operator==( const SfxPoolItem& rAttr ) const
for ( size_t nNo = 0, nCnt = rOwn.size(); nNo < nCnt; ++nNo ) for ( size_t nNo = 0, nCnt = rOwn.size(); nNo < nCnt; ++nNo )
{ {
const SfxEventName *pOwn = rOwn.at( nNo ); const SfxEventName &rOwnEvent = rOwn.at( nNo );
const SfxEventName *pOther = rOther.at( nNo ); const SfxEventName &rOtherEvent = rOther.at( nNo );
if ( pOwn->mnId != pOther->mnId || if ( rOwnEvent.mnId != rOtherEvent.mnId ||
pOwn->maEventName != pOther->maEventName || rOwnEvent.maEventName != rOtherEvent.maEventName ||
pOwn->maUIName != pOther->maUIName ) rOwnEvent.maUIName != rOtherEvent.maUIName )
return false; return false;
} }
...@@ -112,7 +102,7 @@ sal_uInt16 SfxEventNamesItem::GetVersion( sal_uInt16 ) const ...@@ -112,7 +102,7 @@ sal_uInt16 SfxEventNamesItem::GetVersion( sal_uInt16 ) const
void SfxEventNamesItem::AddEvent( const OUString& rName, const OUString& rUIName, SvMacroItemId nID ) void SfxEventNamesItem::AddEvent( const OUString& rName, const OUString& rUIName, SvMacroItemId nID )
{ {
aEventsList.push_back( std::unique_ptr<SfxEventName>(new SfxEventName( nID, rName, !rUIName.isEmpty() ? rUIName : rName )) ); aEventsList.push_back( SfxEventName( nID, rName, !rUIName.isEmpty() ? rUIName : rName ) );
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment