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

Caolán McNamara caolanm at redhat.com
Sat Jan 14 17:34:04 UTC 2017


 sfx2/source/notebookbar/SfxNotebookBar.cxx |   31 ++++++++++++++---------------
 1 file changed, 16 insertions(+), 15 deletions(-)

New commits:
commit e1b6ff7f622383ed4e667118107e144c6e183526
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Jan 14 17:21:01 2017 +0000

    avoid OConfigurationTreeRoot copy assignment
    
    Change-Id: I768558716d2e6054a85210e982a8bb7a87fe3469

diff --git a/sfx2/source/notebookbar/SfxNotebookBar.cxx b/sfx2/source/notebookbar/SfxNotebookBar.cxx
index b404a37..8adf1c0 100644
--- a/sfx2/source/notebookbar/SfxNotebookBar.cxx
+++ b/sfx2/source/notebookbar/SfxNotebookBar.cxx
@@ -113,24 +113,25 @@ static OUString lcl_getNotebookbarFileName( vcl::EnumContext::Application eApp )
     return OUString();
 }
 
-static const utl::OConfigurationNode lcl_getCurrentImplConfigNode( const Reference<css::frame::XFrame>& xFrame,
-                                                                   utl::OConfigurationTreeRoot& aNotebookbarNode )
+static utl::OConfigurationTreeRoot lcl_getCurrentImplConfigRoot()
 {
-    const Reference<frame::XModuleManager> xModuleManager  = frame::ModuleManager::create( ::comphelper::getProcessComponentContext() );
-
-    OUStringBuffer aPath("org.openoffice.Office.UI.Notebookbar/");
+    return utl::OConfigurationTreeRoot(::comphelper::getProcessComponentContext(),
+                                       "org.openoffice.Office.UI.Notebookbar/",
+                                       true);
+}
 
-    aNotebookbarNode = utl::OConfigurationTreeRoot(
-                                        ::comphelper::getProcessComponentContext(),
-                                        aPath.makeStringAndClear(),
-                                        true);
-    if ( !aNotebookbarNode.isValid() )
+static const utl::OConfigurationNode lcl_getCurrentImplConfigNode(const Reference<css::frame::XFrame>& xFrame,
+                                                                  utl::OConfigurationTreeRoot& rNotebookbarNode )
+{
+    if (!rNotebookbarNode.isValid())
         return utl::OConfigurationNode();
 
+    const Reference<frame::XModuleManager> xModuleManager  = frame::ModuleManager::create( ::comphelper::getProcessComponentContext() );
+
     vcl::EnumContext::Application eApp = vcl::EnumContext::GetApplicationEnum( xModuleManager->identify( xFrame ) );
     OUString aActive = lcl_getNotebookbarFileName( eApp );
 
-    const utl::OConfigurationNode aImplsNode = aNotebookbarNode.openNode("Applications/" + lcl_getAppName( eApp) + "/Implementations");
+    const utl::OConfigurationNode aImplsNode = rNotebookbarNode.openNode("Applications/" + lcl_getAppName( eApp) + "/Implementations");
     const Sequence<OUString> aModeNodeNames( aImplsNode.getNodeNames() );
     const sal_Int32 nCount( aModeNodeNames.getLength() );
 
@@ -287,8 +288,8 @@ bool SfxNotebookBar::StateMethod(SystemWindow* pSysWindow,
             pNotebookBar->GetParent()->Resize();
             pNotebookBar->SetIconClickHdl( LINK( nullptr, SfxNotebookBar, OpenNotebookbarPopupMenu ) );
 
-            utl::OConfigurationTreeRoot aRoot;
-            const utl::OConfigurationNode aModeNode( lcl_getCurrentImplConfigNode( xFrame, aRoot ) );
+            utl::OConfigurationTreeRoot aRoot(lcl_getCurrentImplConfigRoot());
+            const utl::OConfigurationNode aModeNode(lcl_getCurrentImplConfigNode(xFrame, aRoot));
             SfxNotebookBar::ShowMenubar( comphelper::getBOOL( aModeNode.getNodeValue( "HasMenubar" ) ) );
 
             SfxViewFrame* pView = SfxViewFrame::Current();
@@ -426,8 +427,8 @@ void SfxNotebookBar::ToggleMenubar()
             // Save menubar settings
             if (IsActive())
             {
-                utl::OConfigurationTreeRoot aRoot;
-                utl::OConfigurationNode aModeNode( lcl_getCurrentImplConfigNode( xFrame, aRoot ) );
+                utl::OConfigurationTreeRoot aRoot(lcl_getCurrentImplConfigRoot());
+                utl::OConfigurationNode aModeNode(lcl_getCurrentImplConfigNode(xFrame, aRoot));
                 aModeNode.setNodeValue( "HasMenubar", toAny<bool>( bShow ) );
                 aRoot.commit();
             }


More information about the Libreoffice-commits mailing list