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); } } }