diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2023-01-13 15:09:47 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2023-01-14 10:51:22 +0000 |
commit | 8d97a90564abba49dcc072d33ddd12c93f4992fe (patch) | |
tree | 5a802ee1c9394a95ec739e0027bd5c3bb4d5534e | |
parent | 6f812b7ac60c1c4fbc8ccba234c19ccf3871dee4 (diff) |
XUnoTunnel->dynamic_cast in VCLXMenu
Change-Id: Iee992e2e09647a7678fd05321e601a4c5bf0c430
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145469
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r-- | framework/source/layoutmanager/layoutmanager.cxx | 4 | ||||
-rw-r--r-- | framework/source/uielement/newmenucontroller.cxx | 4 | ||||
-rw-r--r-- | include/toolkit/awt/vclxmenu.hxx | 5 | ||||
-rw-r--r-- | toolkit/source/awt/vclxmenu.cxx | 10 | ||||
-rw-r--r-- | toolkit/source/awt/vclxtopwindow.cxx | 2 |
5 files changed, 8 insertions, 17 deletions
diff --git a/framework/source/layoutmanager/layoutmanager.cxx b/framework/source/layoutmanager/layoutmanager.cxx index 9220b805c83a..ec6ed5572d94 100644 --- a/framework/source/layoutmanager/layoutmanager.cxx +++ b/framework/source/layoutmanager/layoutmanager.cxx @@ -181,7 +181,7 @@ void LayoutManager::implts_createMenuBar(const OUString& rMenuBarName) if ( !xMenuBar.is() ) return; - VCLXMenu* pAwtMenuBar = comphelper::getFromUnoTunnel<VCLXMenu>( xMenuBar ); + VCLXMenu* pAwtMenuBar = dynamic_cast<VCLXMenu*>( xMenuBar.get() ); if ( pAwtMenuBar ) { MenuBar* pMenuBar = static_cast<MenuBar*>(pAwtMenuBar->GetMenu()); @@ -229,7 +229,7 @@ void LayoutManager::impl_clearUpMenuBar() } } - VCLXMenu* pAwtMenuBar = comphelper::getFromUnoTunnel<VCLXMenu>( xMenuBar ); + VCLXMenu* pAwtMenuBar = dynamic_cast<VCLXMenu*>( xMenuBar.get() ); if ( pAwtMenuBar ) pSetMenuBar = static_cast<MenuBar*>(pAwtMenuBar->GetMenu()); } diff --git a/framework/source/uielement/newmenucontroller.cxx b/framework/source/uielement/newmenucontroller.cxx index c36818341ad0..3e2260e3fae8 100644 --- a/framework/source/uielement/newmenucontroller.cxx +++ b/framework/source/uielement/newmenucontroller.cxx @@ -283,7 +283,7 @@ NewMenuController::~NewMenuController() // private function void NewMenuController::fillPopupMenu( Reference< css::awt::XPopupMenu > const & rPopupMenu ) { - VCLXPopupMenu* pPopupMenu = static_cast<VCLXPopupMenu *>(comphelper::getFromUnoTunnel<VCLXMenu>( rPopupMenu )); + VCLXPopupMenu* pPopupMenu = static_cast<VCLXPopupMenu *>(dynamic_cast<VCLXMenu*>( rPopupMenu.get() )); PopupMenu* pVCLPopupMenu = nullptr; SolarMutexGuard aSolarMutexGuard; @@ -367,7 +367,7 @@ void SAL_CALL NewMenuController::itemSelected( const css::awt::MenuEvent& rEvent if ( !xPopupMenu.is() ) return; - VCLXPopupMenu* pPopupMenu = static_cast<VCLXPopupMenu *>(comphelper::getFromUnoTunnel<VCLXMenu>( xPopupMenu )); + VCLXPopupMenu* pPopupMenu = static_cast<VCLXPopupMenu *>(dynamic_cast<VCLXMenu*>( xPopupMenu.get() )); if ( !pPopupMenu ) return; diff --git a/include/toolkit/awt/vclxmenu.hxx b/include/toolkit/awt/vclxmenu.hxx index 096c370bce82..bc971a2088ec 100644 --- a/include/toolkit/awt/vclxmenu.hxx +++ b/include/toolkit/awt/vclxmenu.hxx @@ -28,7 +28,6 @@ #include <com/sun/star/awt/XPopupMenu.hpp> #include <com/sun/star/lang/XServiceInfo.hpp> #include <com/sun/star/lang/XTypeProvider.hpp> -#include <com/sun/star/lang/XUnoTunnel.hpp> #include <comphelper/servicehelper.hxx> #include <cppuhelper/weak.hxx> @@ -54,7 +53,6 @@ class TOOLKIT_DLLPUBLIC VCLXMenu : public css::awt::XMenuBar, public css::awt::XPopupMenu, public css::lang::XServiceInfo, public css::lang::XTypeProvider, - public css::lang::XUnoTunnel, public ::cppu::OWeakObject { private: @@ -87,9 +85,6 @@ public: void SAL_CALL acquire() noexcept override { OWeakObject::acquire(); } void SAL_CALL release() noexcept override { OWeakObject::release(); } - // css::lang::XUnoTunnel - UNO3_GETIMPLEMENTATION_DECL(VCLXMenu) - // css::lang::XTypeProvider css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() override; css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() override; diff --git a/toolkit/source/awt/vclxmenu.cxx b/toolkit/source/awt/vclxmenu.cxx index b17f32c2aebc..52edfb5caa49 100644 --- a/toolkit/source/awt/vclxmenu.cxx +++ b/toolkit/source/awt/vclxmenu.cxx @@ -214,22 +214,18 @@ css::uno::Any VCLXMenu::queryInterface( static_cast< css::awt::XMenu* >(static_cast<css::awt::XMenuBar*>(this)), static_cast< css::awt::XPopupMenu* >(this), static_cast< css::lang::XTypeProvider* >(this), - static_cast< css::lang::XServiceInfo* >(this), - static_cast< css::lang::XUnoTunnel* >(this) ); + static_cast< css::lang::XServiceInfo* >(this) ); else aRet = ::cppu::queryInterface( rType, static_cast< css::awt::XMenu* >(static_cast<css::awt::XMenuBar*>(this)), static_cast< css::awt::XMenuBar* >(this), static_cast< css::lang::XTypeProvider* >(this), - static_cast< css::lang::XServiceInfo* >(this), - static_cast< css::lang::XUnoTunnel* >(this) ); + static_cast< css::lang::XServiceInfo* >(this) ); return (aRet.hasValue() ? aRet : OWeakObject::queryInterface( rType )); } -UNO3_GETIMPLEMENTATION_IMPL( VCLXMenu ); - css::uno::Sequence< css::uno::Type > VCLXMenu::getTypes() { std::unique_lock aGuard( maMutex ); @@ -385,7 +381,7 @@ void VCLXMenu::setPopupMenu( SolarMutexGuard aSolarGuard; std::unique_lock aGuard( maMutex ); - VCLXMenu* pVCLMenu = comphelper::getFromUnoTunnel<VCLXMenu>( rxPopupMenu ); + VCLXMenu* pVCLMenu = dynamic_cast<VCLXMenu*>( rxPopupMenu.get() ); DBG_ASSERT( pVCLMenu && pVCLMenu->GetMenu() && pVCLMenu->IsPopupMenu(), "setPopupMenu: Invalid Menu!" ); if ( mpMenu && pVCLMenu && pVCLMenu->GetMenu() && pVCLMenu->IsPopupMenu() ) diff --git a/toolkit/source/awt/vclxtopwindow.cxx b/toolkit/source/awt/vclxtopwindow.cxx index 7e392675b3f7..5a06c8e21506 100644 --- a/toolkit/source/awt/vclxtopwindow.cxx +++ b/toolkit/source/awt/vclxtopwindow.cxx @@ -128,7 +128,7 @@ void VCLXTopWindow::setMenuBar( const css::uno::Reference< css::awt::XMenuBar >& pSystemWindow->SetMenuBar( nullptr ); if ( rxMenu.is() ) { - VCLXMenu* pMenu = comphelper::getFromUnoTunnel<VCLXMenu>( rxMenu ); + VCLXMenu* pMenu = dynamic_cast<VCLXMenu*>( rxMenu.get() ); if ( pMenu && !pMenu->IsPopupMenu() ) pSystemWindow->SetMenuBar( static_cast<MenuBar*>( pMenu->GetMenu() )); } |