summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Monastirsky <momonasmon@gmail.com>2017-05-17 20:42:09 +0300
committerMaxim Monastirsky <momonasmon@gmail.com>2017-05-18 00:30:01 +0300
commit7d2ca8f226e3566e7e097f2eba940d98c5b5089e (patch)
treea2cc857566baf8186358fd1ce729212ea577ed43
parentfb1814900590e3a6d60a877fdd897aa6b9aaba97 (diff)
Remove the useless AddonMenu and AddonPopupMenu
Change-Id: I3022d609e813d90e52990b570aa471540c9e2c18
-rw-r--r--framework/inc/uielement/menubarmanager.hxx2
-rw-r--r--framework/source/fwe/classes/addonmenu.cxx51
-rw-r--r--framework/source/uielement/menubarmanager.cxx2
-rw-r--r--include/framework/addonmenu.hxx39
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,