[Libreoffice-commits] core.git: cui/source include/sfx2 sfx2/source

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Tue Feb 5 11:45:48 UTC 2019


 cui/source/tabpages/macroass.cxx |    8 ++++----
 include/sfx2/evntconf.hxx        |   14 +++++++-------
 sfx2/source/config/evntconf.cxx  |   24 +++++++-----------------
 3 files changed, 18 insertions(+), 28 deletions(-)

New commits:
commit 00da9792c51e2dd36c81e66493b8cafc1588104b
Author:     Noel Grandin <noel.grandin at collabora.co.uk>
AuthorDate: Tue Feb 5 12:24:35 2019 +0200
Commit:     Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Tue Feb 5 12:45:26 2019 +0100

    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: Noel Grandin <noel.grandin at collabora.co.uk>

diff --git a/cui/source/tabpages/macroass.cxx b/cui/source/tabpages/macroass.cxx
index d23661eb560c..8f64493e40dd 100644
--- a/cui/source/tabpages/macroass.cxx
+++ b/cui/source/tabpages/macroass.cxx
@@ -197,8 +197,8 @@ void SfxMacroTabPage::PageCreated(const SfxAllItemSet& aSet)
         const SfxEventNamesList& rList = static_cast<const SfxEventNamesItem*>(pEventsItem)->GetEvents();
         for ( size_t nNo = 0, nCnt = rList.size(); nNo < nCnt; ++nNo )
         {
-            const SfxEventName *pOwn = rList.at(nNo);
-            AddEvent( pOwn->maUIName, pOwn->mnId );
+            const SfxEventName &rOwn = rList.at(nNo);
+            AddEvent( rOwn.maUIName, rOwn.mnId );
         }
     }
 }
@@ -216,8 +216,8 @@ void SfxMacroTabPage::Reset( const SfxItemSet* rSet )
         const SfxEventNamesList& rList = static_cast<const SfxEventNamesItem*>(pEventsItem)->GetEvents();
         for ( size_t nNo = 0, nCnt = rList.size(); nNo < nCnt; ++nNo )
         {
-            const SfxEventName *pOwn = rList.at(nNo);
-            AddEvent( pOwn->maUIName, pOwn->mnId );
+            const SfxEventName &rOwn = rList.at(nNo);
+            AddEvent( rOwn.maUIName, rOwn.mnId );
         }
     }
 
diff --git a/include/sfx2/evntconf.hxx b/include/sfx2/evntconf.hxx
index 5db89bc023b6..86769b324f95 100644
--- a/include/sfx2/evntconf.hxx
+++ b/include/sfx2/evntconf.hxx
@@ -35,9 +35,9 @@ class SvxMacroTableDtor;
 
 struct SFX2_DLLPUBLIC SfxEventName
 {
-    SvMacroItemId const mnId;
-    OUString const      maEventName;
-    OUString const      maUIName;
+    SvMacroItemId mnId;
+    OUString      maEventName;
+    OUString      maUIName;
 
             SfxEventName( SvMacroItemId nId,
                              const OUString& rEventName,
@@ -50,7 +50,7 @@ struct SFX2_DLLPUBLIC SfxEventName
 class SFX2_DLLPUBLIC SfxEventNamesList
 {
 private:
-    ::std::vector< std::unique_ptr<SfxEventName> > aEventNamesList;
+    ::std::vector< SfxEventName > aEventNamesList;
 
 public:
     SfxEventNamesList() {}
@@ -60,10 +60,10 @@ public:
 
     size_t size() const { return aEventNamesList.size(); };
 
-    SfxEventName* at( size_t Index ) const
-        { return Index < aEventNamesList.size() ? aEventNamesList[ Index ].get() : nullptr; }
+    SfxEventName& at( size_t Index ) { return aEventNamesList[ Index ]; }
+    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
diff --git a/sfx2/source/config/evntconf.cxx b/sfx2/source/config/evntconf.cxx
index a6710302e09a..af680f3ff7ec 100644
--- a/sfx2/source/config/evntconf.cxx
+++ b/sfx2/source/config/evntconf.cxx
@@ -49,17 +49,7 @@
 
 using namespace com::sun::star;
 
-SfxEventNamesList& SfxEventNamesList::operator=( const SfxEventNamesList& rTbl )
-{
-    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::operator=( const SfxEventNamesList& ) = default;
 
 SfxEventNamesList::~SfxEventNamesList()
 {
@@ -77,11 +67,11 @@ bool SfxEventNamesItem::operator==( const SfxPoolItem& rAttr ) const
 
     for ( size_t nNo = 0, nCnt = rOwn.size(); nNo < nCnt; ++nNo )
     {
-        const SfxEventName *pOwn = rOwn.at( nNo );
-        const SfxEventName *pOther = rOther.at( nNo );
-        if (    pOwn->mnId != pOther->mnId ||
-                pOwn->maEventName != pOther->maEventName ||
-                pOwn->maUIName != pOther->maUIName )
+        const SfxEventName &rOwnEvent = rOwn.at( nNo );
+        const SfxEventName &rOtherEvent = rOther.at( nNo );
+        if (    rOwnEvent.mnId != rOtherEvent.mnId ||
+                rOwnEvent.maEventName != rOtherEvent.maEventName ||
+                rOwnEvent.maUIName != rOtherEvent.maUIName )
             return false;
     }
 
@@ -112,7 +102,7 @@ sal_uInt16 SfxEventNamesItem::GetVersion( sal_uInt16 ) const
 
 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 ) );
 }
 
 


More information about the Libreoffice-commits mailing list