framework/inc/uielement/macrosmenucontroller.hxx    |    4 ++--
 framework/source/uielement/headermenucontroller.cxx |   15 ++++++---------
 framework/source/uielement/macrosmenucontroller.cxx |   10 ++++++----
 3 files changed, 14 insertions(+), 15 deletions(-)

New commits:
commit a5792c32f342b3d5087c62c7a65deed4c1d1dc1c
Author:     Caolán McNamara <caol...@redhat.com>
AuthorDate: Mon Nov 29 11:07:23 2021 +0000
Commit:     Caolán McNamara <caol...@redhat.com>
CommitDate: Mon Nov 29 18:43:19 2021 +0100

    use css::awt::XPopupMenu api instead of PopupMenu
    
    Change-Id: Iedd1e2a7db826bdf876f4b6ed0535882b9460c12
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126037
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caol...@redhat.com>

diff --git a/framework/inc/uielement/macrosmenucontroller.hxx 
b/framework/inc/uielement/macrosmenucontroller.hxx
index 7e70f0f0a3bb..beb9779efb66 100644
--- a/framework/inc/uielement/macrosmenucontroller.hxx
+++ b/framework/inc/uielement/macrosmenucontroller.hxx
@@ -46,8 +46,8 @@ namespace framework
             virtual void SAL_CALL disposing( const css::lang::EventObject& 
Source ) override;
 
         private:
-            void fillPopupMenu( css::uno::Reference< css::awt::XPopupMenu > 
const & rPopupMenu );
-            void addScriptItems( PopupMenu* pPopupMenu, sal_uInt16 startItemId 
);
+            void fillPopupMenu(const 
css::uno::Reference<css::awt::XPopupMenu>& rPopupMenu);
+            void addScriptItems(const 
css::uno::Reference<css::awt::XPopupMenu>& rPopupMenu, sal_uInt16 startItemId);
     };
 }
 
diff --git a/framework/source/uielement/macrosmenucontroller.cxx 
b/framework/source/uielement/macrosmenucontroller.cxx
index a4c5123f50c7..cddfed74c693 100644
--- a/framework/source/uielement/macrosmenucontroller.cxx
+++ b/framework/source/uielement/macrosmenucontroller.cxx
@@ -94,7 +94,7 @@ void MacrosMenuController::fillPopupMenu( Reference< 
css::awt::XPopupMenu > cons
     pPopupMenu->SetItemCommand( 2, aCommand );
 
     // insert providers but not basic or java
-    addScriptItems( pPopupMenu, 4);
+    addScriptItems(rPopupMenu, 4);
 }
 
 // XEventListener
@@ -124,7 +124,7 @@ void SAL_CALL MacrosMenuController::statusChanged( const 
FeatureStateEvent& )
     }
 }
 
-void MacrosMenuController::addScriptItems( PopupMenu* pPopupMenu, sal_uInt16 
startItemId )
+void MacrosMenuController::addScriptItems(const 
Reference<css::awt::XPopupMenu>& rPopupMenu, sal_uInt16 startItemId)
 {
     static const OUStringLiteral 
aCmdBase(u".uno:ScriptOrganizer?ScriptOrganizer.Language:string=");
     static const OUStringLiteral ellipsis( u"..." );
@@ -133,6 +133,8 @@ void MacrosMenuController::addScriptItems( PopupMenu* 
pPopupMenu, sal_uInt16 sta
     Reference< XContentEnumerationAccess > xEnumAccess( 
m_xContext->getServiceManager(), UNO_QUERY_THROW );
     Reference< XEnumeration > xEnum = xEnumAccess->createContentEnumeration ( 
"com.sun.star.script.provider.LanguageScriptProvider" );
 
+    sal_Int16 nPos = rPopupMenu->getItemCount();
+
     while ( xEnum->hasMoreElements() )
     {
         Reference< XServiceInfo > xServiceInfo;
@@ -155,8 +157,8 @@ void MacrosMenuController::addScriptItems( PopupMenu* 
pPopupMenu, sal_uInt16 sta
                 }
                 aCommand += aDisplayName;
                 aDisplayName += ellipsis;
-                pPopupMenu->InsertItem( itemId, aDisplayName );
-                pPopupMenu->SetItemCommand( itemId, aCommand );
+                rPopupMenu->insertItem(itemId, aDisplayName, 0, nPos++);
+                rPopupMenu->setCommand(itemId, aCommand);
                 itemId++;
                 break;
             }
commit 50dc11ef9b0d5e3e2e08ecc1a2267c79f6ef8fb2
Author:     Caolán McNamara <caol...@redhat.com>
AuthorDate: Mon Nov 29 11:02:34 2021 +0000
Commit:     Caolán McNamara <caol...@redhat.com>
CommitDate: Mon Nov 29 18:42:55 2021 +0100

    can use css::awt::XPopupMenu::setCommand
    
    instead of PopupMenu::SetItemCommand since...
    
    commit 9aa4101c53e483be1d25c1e5aaad2cf542540a56
    Date:   Wed Feb 25 16:57:46 2004 +0000
    
        INTEGRATION: CWS layoutmanager (1.3.146); FILE MERGED
        2004/01/19 10:03:03 cd 1.3.146.2: #111899# Added new interface
    to support set/get commands/help URL
    
    Change-Id: I11fde1ec8928e7a331200be9182e465798a75965
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126036
    Tested-by: Caolán McNamara <caol...@redhat.com>
    Reviewed-by: Caolán McNamara <caol...@redhat.com>

diff --git a/framework/source/uielement/headermenucontroller.cxx 
b/framework/source/uielement/headermenucontroller.cxx
index 34476f9c2100..14a661e6f3a0 100644
--- a/framework/source/uielement/headermenucontroller.cxx
+++ b/framework/source/uielement/headermenucontroller.cxx
@@ -29,7 +29,6 @@
 #include <com/sun/star/container/XNameContainer.hpp>
 #include <com/sun/star/beans/XPropertySet.hpp>
 
-#include <toolkit/awt/vclxmenu.hxx>
 #include <vcl/menu.hxx>
 #include <vcl/svapp.hxx>
 #include <rtl/ustrbuf.hxx>
@@ -81,8 +80,6 @@ HeaderMenuController::~HeaderMenuController()
 // private function
 void HeaderMenuController::fillPopupMenu( const Reference< css::frame::XModel 
>& rModel, Reference< css::awt::XPopupMenu > const & rPopupMenu )
 {
-    VCLXPopupMenu*       pPopupMenu        = static_cast<VCLXPopupMenu 
*>(comphelper::getFromUnoTunnel<VCLXMenu>( rPopupMenu ));
-
     SolarMutexGuard aSolarMutexGuard;
 
     resetPopupMenu( rPopupMenu );
@@ -139,15 +136,15 @@ void HeaderMenuController::fillPopupMenu( const 
Reference< css::frame::XModel >&
                         else
                             aStrBuf.append( "false" );
                         OUString aCommand( aStrBuf.makeStringAndClear() );
-                        pPopupMenu->insertItem(nId, aDisplayName, 
css::awt::MenuItemStyle::CHECKABLE, nCount);
+                        rPopupMenu->insertItem(nId, aDisplayName, 
css::awt::MenuItemStyle::CHECKABLE, nCount);
                         if ( !bFirstItemInserted )
                         {
                             bFirstItemInserted = true;
                             bFirstChecked      = bHeaderIsOn;
                         }
 
-                        pPopupMenu->setCommand(nId, aCommand);
-                        pPopupMenu->checkItem(nId, bHeaderIsOn);
+                        rPopupMenu->setCommand(nId, aCommand);
+                        rPopupMenu->checkItem(nId, bHeaderIsOn);
                         ++nId;
 
                         // Check if all entries have the same state
@@ -162,7 +159,7 @@ void HeaderMenuController::fillPopupMenu( const Reference< 
css::frame::XModel >&
             if ( bAllOneState && ( nCount > 1 ))
             {
                 // Insert special item for all command
-                pPopupMenu->insertItem(ALL_MENUITEM_ID, 
FwkResId(STR_MENU_HEADFOOTALL), 0, 0);
+                rPopupMenu->insertItem(ALL_MENUITEM_ID, 
FwkResId(STR_MENU_HEADFOOTALL), 0, 0);
 
                 OUStringBuffer aStrBuf( aCmd );
                 aStrBuf.append( "?On:bool=" );
@@ -173,8 +170,8 @@ void HeaderMenuController::fillPopupMenu( const Reference< 
css::frame::XModel >&
                 else
                     aStrBuf.append( "false" );
 
-                pPopupMenu->setCommand(1, aStrBuf.makeStringAndClear());
-                pPopupMenu->insertSeparator(1);
+                rPopupMenu->setCommand(1, aStrBuf.makeStringAndClear());
+                rPopupMenu->insertSeparator(1);
             }
         }
     }

Reply via email to