diff options
author | Maxim Monastirsky <momonasmon@gmail.com> | 2017-05-17 20:42:09 +0300 |
---|---|---|
committer | Maxim Monastirsky <momonasmon@gmail.com> | 2017-05-18 00:30:01 +0300 |
commit | 7d2ca8f226e3566e7e097f2eba940d98c5b5089e (patch) | |
tree | a2cc857566baf8186358fd1ce729212ea577ed43 | |
parent | fb1814900590e3a6d60a877fdd897aa6b9aaba97 (diff) |
Remove the useless AddonMenu and AddonPopupMenu
Change-Id: I3022d609e813d90e52990b570aa471540c9e2c18
-rw-r--r-- | framework/inc/uielement/menubarmanager.hxx | 2 | ||||
-rw-r--r-- | framework/source/fwe/classes/addonmenu.cxx | 51 | ||||
-rw-r--r-- | framework/source/uielement/menubarmanager.cxx | 2 | ||||
-rw-r--r-- | include/framework/addonmenu.hxx | 39 |
4 files changed, 13 insertions, 81 deletions
diff --git a/framework/inc/uielement/menubarmanager.hxx b/framework/inc/uielement/menubarmanager.hxx index 67f598247964..aab70b1f12be 100644 --- a/framework/inc/uielement/menubarmanager.hxx +++ b/framework/inc/uielement/menubarmanager.hxx @@ -66,8 +66,6 @@ struct PopupControllerEntry typedef std::unordered_map< OUString, PopupControllerEntry, OUStringHash > PopupControllerCache; -class AddonMenu; -class AddonPopupMenu; class MenuBarManager: public cppu::WeakImplHelper< css::frame::XStatusListener, diff --git a/framework/source/fwe/classes/addonmenu.cxx b/framework/source/fwe/classes/addonmenu.cxx index 4fd79253dafb..f4a326235e43 100644 --- a/framework/source/fwe/classes/addonmenu.cxx +++ b/framework/source/fwe/classes/addonmenu.cxx @@ -46,24 +46,6 @@ const sal_uInt16 SID_HELPMENU = (SID_SFX_START + 410); namespace framework { -AddonMenu::AddonMenu() -{ -} - -AddonMenu::~AddonMenu() -{ - disposeOnce(); -} - -AddonPopupMenu::AddonPopupMenu() : - AddonMenu() -{ -} - -AddonPopupMenu::~AddonPopupMenu() -{ -} - static OUString GetModuleIdentifier(const Reference<XComponentContext>& rContext, const Reference< XFrame >& rFrame) { @@ -86,31 +68,20 @@ bool AddonMenuManager::HasAddonMenuElements() return AddonsOptions().HasAddonsMenu(); } -// Factory method to create different Add-On menu types -VclPtr<PopupMenu> AddonMenuManager::CreatePopupMenuType( MenuType eMenuType ) -{ - if ( eMenuType == ADDON_MENU ) - return VclPtr<AddonMenu>::Create(); - else if ( eMenuType == ADDON_POPUPMENU ) - return VclPtr<AddonPopupMenu>::Create(); - else - return nullptr; -} - // Create the Add-Ons menu -VclPtr<AddonMenu> AddonMenuManager::CreateAddonMenu( const Reference< XFrame >& rFrame, - const Reference< XComponentContext >& rContext ) +VclPtr<PopupMenu> AddonMenuManager::CreateAddonMenu( const Reference< XFrame >& rFrame, + const Reference< XComponentContext >& rContext ) { AddonsOptions aOptions; - VclPtr<AddonMenu> pAddonMenu; + VclPtr<PopupMenu> pAddonMenu; sal_uInt16 nUniqueMenuId = ADDONMENU_ITEMID_START; const Sequence< Sequence< PropertyValue > >& rAddonMenuEntries = aOptions.GetAddonsMenu(); if ( rAddonMenuEntries.getLength() > 0 ) { - pAddonMenu = static_cast<AddonMenu *>(AddonMenuManager::CreatePopupMenuType( ADDON_MENU ).get()); + pAddonMenu = VclPtr<PopupMenu>::Create(); ::rtl::OUString aModuleIdentifier = GetModuleIdentifier( rContext, rFrame ); - AddonMenuManager::BuildMenu( pAddonMenu, ADDON_MENU, MENU_APPEND, nUniqueMenuId, rAddonMenuEntries, rFrame, aModuleIdentifier ); + AddonMenuManager::BuildMenu( pAddonMenu, MENU_APPEND, nUniqueMenuId, rAddonMenuEntries, rFrame, aModuleIdentifier ); // Don't return an empty Add-On menu if ( pAddonMenu->GetItemCount() == 0 ) @@ -176,7 +147,7 @@ void AddonMenuManager::MergeAddonHelpMenu( const Reference< XFrame >& rFrame, nInsSepAfterPos = nInsPos; ::rtl::OUString aModuleIdentifier = GetModuleIdentifier(rContext, rFrame); - AddonMenuManager::BuildMenu( pHelpMenu, ADDON_MENU, nInsPos, nUniqueMenuId, rAddonHelpMenuEntries, rFrame, aModuleIdentifier ); + AddonMenuManager::BuildMenu( pHelpMenu, nInsPos, nUniqueMenuId, rAddonHelpMenuEntries, rFrame, aModuleIdentifier ); if ( pHelpMenu->GetItemCount() > nItemCount ) { @@ -228,13 +199,12 @@ void AddonMenuManager::MergeAddonPopupMenus( const Reference< XFrame >& rFrame, AddonMenuManager::IsCorrectContext( aModuleIdentifier, aContext )) { sal_uInt16 nId = nUniqueMenuId++; - VclPtr<AddonPopupMenu> pAddonPopupMenu = static_cast<AddonPopupMenu *>(AddonMenuManager::CreatePopupMenuType( ADDON_POPUPMENU ).get()); + VclPtrInstance<PopupMenu> pAddonPopupMenu; - AddonMenuManager::BuildMenu( pAddonPopupMenu, ADDON_MENU, MENU_APPEND, nUniqueMenuId, aAddonSubMenu, rFrame, aModuleIdentifier ); + AddonMenuManager::BuildMenu( pAddonPopupMenu, MENU_APPEND, nUniqueMenuId, aAddonSubMenu, rFrame, aModuleIdentifier ); if ( pAddonPopupMenu->GetItemCount() > 0 ) { - pAddonPopupMenu->SetCommandURL( aURL ); pMergeMenuBar->InsertItem( nId, aTitle, MenuItemBits::NONE, OString(), nInsertPos++ ); pMergeMenuBar->SetPopupMenu( nId, pAddonPopupMenu ); @@ -250,7 +220,6 @@ void AddonMenuManager::MergeAddonPopupMenus( const Reference< XFrame >& rFrame, // Insert the menu and sub menu entries into pCurrentMenu with the aAddonMenuDefinition provided void AddonMenuManager::BuildMenu( PopupMenu* pCurrentMenu, - MenuType nSubMenuType, sal_uInt16 nInsPos, sal_uInt16& nUniqueMenuId, const Sequence< Sequence< PropertyValue > >& aAddonMenuDefinition, @@ -284,8 +253,8 @@ void AddonMenuManager::BuildMenu( PopupMenu* pCurrent VclPtr<PopupMenu> pSubMenu; if ( aAddonSubMenu.getLength() > 0 ) { - pSubMenu = AddonMenuManager::CreatePopupMenuType( nSubMenuType ); - AddonMenuManager::BuildMenu( pSubMenu, nSubMenuType, MENU_APPEND, nUniqueMenuId, aAddonSubMenu, rFrame, rModuleIdentifier ); + pSubMenu = VclPtr<PopupMenu>::Create(); + AddonMenuManager::BuildMenu( pSubMenu, MENU_APPEND, nUniqueMenuId, aAddonSubMenu, rFrame, rModuleIdentifier ); // Don't create a menu item for an empty sub menu if ( pSubMenu->GetItemCount() == 0 ) diff --git a/framework/source/uielement/menubarmanager.cxx b/framework/source/uielement/menubarmanager.cxx index 092a1db76ac6..cf7e938b3bb5 100644 --- a/framework/source/uielement/menubarmanager.cxx +++ b/framework/source/uielement/menubarmanager.cxx @@ -1225,7 +1225,7 @@ void MenuBarManager::FillMenuManager( Menu* pMenu, const Reference< XFrame >& rF AddonMenuManager::HasAddonMenuElements() ) { // Create addon popup menu if there exist elements and this is the tools popup menu - VclPtr<AddonMenu> pSubMenu = AddonMenuManager::CreateAddonMenu(rFrame, m_xContext); + VclPtr<PopupMenu> pSubMenu = AddonMenuManager::CreateAddonMenu(rFrame, m_xContext); if ( pSubMenu && ( pSubMenu->GetItemCount() > 0 )) { sal_uInt16 nCount = 0; diff --git a/include/framework/addonmenu.hxx b/include/framework/addonmenu.hxx index 9da7ec714a69..52f6cc79d7e8 100644 --- a/include/framework/addonmenu.hxx +++ b/include/framework/addonmenu.hxx @@ -34,51 +34,17 @@ namespace framework { -class FWE_DLLPUBLIC AddonMenu : public PopupMenu -{ - public: - AddonMenu(); - virtual ~AddonMenu() override; -}; - -class AddonMenuManager; - -class FWE_DLLPUBLIC AddonPopupMenu : public AddonMenu -{ - public: - virtual ~AddonPopupMenu() override; - - void SetCommandURL( const OUString& aCmdURL ) { m_aCommandURL = aCmdURL; } - - private: - AddonPopupMenu(); - - OUString m_aCommandURL; - - friend class AddonMenuManager; - friend class ::VclPtr<AddonPopupMenu>; -}; - class FWE_DLLPUBLIC AddonMenuManager { public: - enum MenuType - { - ADDON_MENU, - ADDON_POPUPMENU - }; - static bool HasAddonMenuElements(); // Check if the context string matches the provided xModel context static bool IsCorrectContext(const OUString& rModuleIdentifier, const OUString& rContext); - // Factory method to create different Add-On menu types - static VclPtr<PopupMenu> CreatePopupMenuType( MenuType eMenuType ); - // Create the Add-Ons menu - static VclPtr<AddonMenu> CreateAddonMenu( const css::uno::Reference< css::frame::XFrame >& rFrame, - const css::uno::Reference< css::uno::XComponentContext >& rContext ); + static VclPtr<PopupMenu> CreateAddonMenu( const css::uno::Reference< css::frame::XFrame >& rFrame, + const css::uno::Reference< css::uno::XComponentContext >& rContext ); // Merge the Add-Ons help menu items into the given menu bar at a defined pos static void MergeAddonHelpMenu( const css::uno::Reference< css::frame::XFrame >& rFrame, @@ -96,7 +62,6 @@ class FWE_DLLPUBLIC AddonMenuManager // Build up the menu item and sub menu into the provided pCurrentMenu. The sub menus should be of type nSubMenuType. static void BuildMenu( PopupMenu* pCurrentMenu, - MenuType nSubMenuType, sal_uInt16 nInsPos, sal_uInt16& nUniqueMenuId, const css::uno::Sequence< css::uno::Sequence< css::beans::PropertyValue > >& aAddonMenuDefinition, |