summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Monastirsky <momonasmon@gmail.com>2017-05-17 20:58:48 +0300
committerMaxim Monastirsky <momonasmon@gmail.com>2017-05-18 00:30:31 +0300
commit29dd77c749f6bdae19ba1e81b0470f9009c42537 (patch)
tree8d6e2fb45ab64052b8138047a265f33f7c8708d3
parent7d2ca8f226e3566e7e097f2eba940d98c5b5089e (diff)
Use CommandInfoProvider::GetModuleIdentifier
Change-Id: I09f23360259e794ab2a0d8ad6d8bf6fc18d08597
-rw-r--r--framework/source/fwe/classes/addonmenu.cxx36
-rw-r--r--framework/source/uielement/menubarmanager.cxx6
-rw-r--r--include/framework/addonmenu.hxx9
3 files changed, 14 insertions, 37 deletions
diff --git a/framework/source/fwe/classes/addonmenu.cxx b/framework/source/fwe/classes/addonmenu.cxx
index f4a326235e43..5a7c7344b674 100644
--- a/framework/source/fwe/classes/addonmenu.cxx
+++ b/framework/source/fwe/classes/addonmenu.cxx
@@ -26,10 +26,9 @@
#include <com/sun/star/uno/Reference.hxx>
#include <com/sun/star/util/URL.hpp>
#include <com/sun/star/util/XURLTransformer.hpp>
-#include <com/sun/star/frame/ModuleManager.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
#include <tools/config.hxx>
+#include <vcl/commandinfoprovider.hxx>
#include <vcl/svapp.hxx>
#include <svtools/menuoptions.hxx>
#include <svl/solar.hrc>
@@ -46,31 +45,13 @@ const sal_uInt16 SID_HELPMENU = (SID_SFX_START + 410);
namespace framework
{
-static OUString GetModuleIdentifier(const Reference<XComponentContext>& rContext,
- const Reference< XFrame >& rFrame)
-{
- Reference< XModuleManager > xModuleManager(ModuleManager::create(rContext));
- if ( xModuleManager.is() )
- {
- try
- {
- return xModuleManager->identify( rFrame );
- }
- catch ( Exception& )
- {
- }
- }
- return OUString();
-}
-
bool AddonMenuManager::HasAddonMenuElements()
{
return AddonsOptions().HasAddonsMenu();
}
// Create the Add-Ons menu
-VclPtr<PopupMenu> AddonMenuManager::CreateAddonMenu( const Reference< XFrame >& rFrame,
- const Reference< XComponentContext >& rContext )
+VclPtr<PopupMenu> AddonMenuManager::CreateAddonMenu( const Reference< XFrame >& rFrame )
{
AddonsOptions aOptions;
VclPtr<PopupMenu> pAddonMenu;
@@ -80,7 +61,7 @@ VclPtr<PopupMenu> AddonMenuManager::CreateAddonMenu( const Reference< XFrame >&
if ( rAddonMenuEntries.getLength() > 0 )
{
pAddonMenu = VclPtr<PopupMenu>::Create();
- ::rtl::OUString aModuleIdentifier = GetModuleIdentifier( rContext, rFrame );
+ ::rtl::OUString aModuleIdentifier = vcl::CommandInfoProvider::GetModuleIdentifier( rFrame );
AddonMenuManager::BuildMenu( pAddonMenu, MENU_APPEND, nUniqueMenuId, rAddonMenuEntries, rFrame, aModuleIdentifier );
// Don't return an empty Add-On menu
@@ -116,8 +97,7 @@ static sal_uInt16 FindMenuId( Menu* pMenu, const OUString& aCommand )
// Merge the Add-Ons help menu items into the given menu bar at a defined pos
void AddonMenuManager::MergeAddonHelpMenu( const Reference< XFrame >& rFrame,
- MenuBar* pMergeMenuBar,
- const Reference<XComponentContext>& rContext )
+ MenuBar* pMergeMenuBar )
{
if ( pMergeMenuBar )
{
@@ -146,7 +126,7 @@ void AddonMenuManager::MergeAddonHelpMenu( const Reference< XFrame >& rFrame,
if ( nInsPos < nItemCount && pHelpMenu->GetItemType( nInsPos ) != MenuItemType::SEPARATOR )
nInsSepAfterPos = nInsPos;
- ::rtl::OUString aModuleIdentifier = GetModuleIdentifier(rContext, rFrame);
+ ::rtl::OUString aModuleIdentifier = vcl::CommandInfoProvider::GetModuleIdentifier(rFrame);
AddonMenuManager::BuildMenu( pHelpMenu, nInsPos, nUniqueMenuId, rAddonHelpMenuEntries, rFrame, aModuleIdentifier );
if ( pHelpMenu->GetItemCount() > nItemCount )
@@ -166,8 +146,7 @@ void AddonMenuManager::MergeAddonHelpMenu( const Reference< XFrame >& rFrame,
// Merge the addon popup menus into the given menu bar at the provided pos.
void AddonMenuManager::MergeAddonPopupMenus( const Reference< XFrame >& rFrame,
sal_uInt16 nMergeAtPos,
- MenuBar* pMergeMenuBar,
- const Reference< XComponentContext >& rContext )
+ MenuBar* pMergeMenuBar )
{
if ( pMergeMenuBar )
{
@@ -181,7 +160,8 @@ void AddonMenuManager::MergeAddonPopupMenus( const Reference< XFrame >& rFrame,
OUString aContext;
Sequence< Sequence< PropertyValue > > aAddonSubMenu;
sal_uInt16 nUniqueMenuId = ADDONMENU_ITEMID_START;
- OUString aModuleIdentifier = GetModuleIdentifier(rContext, rFrame);
+
+ OUString aModuleIdentifier = vcl::CommandInfoProvider::GetModuleIdentifier(rFrame);
const Sequence< Sequence< PropertyValue > >& rAddonMenuEntries = aAddonsOptions.GetAddonsMenuBarPart();
for ( sal_Int32 i = 0; i < rAddonMenuEntries.getLength(); i++ )
diff --git a/framework/source/uielement/menubarmanager.cxx b/framework/source/uielement/menubarmanager.cxx
index cf7e938b3bb5..8a187f204152 100644
--- a/framework/source/uielement/menubarmanager.cxx
+++ b/framework/source/uielement/menubarmanager.cxx
@@ -1120,13 +1120,13 @@ void MenuBarManager::FillMenuManager( Menu* pMenu, const Reference< XFrame >& rF
nItemId == SID_HELPMENU || aCommand == aCmdHelpMenu )
{
// Retrieve addon popup menus and add them to our menu bar
- framework::AddonMenuManager::MergeAddonPopupMenus( rFrame, nPos, static_cast<MenuBar *>(pMenu), m_xContext );
+ framework::AddonMenuManager::MergeAddonPopupMenus( rFrame, nPos, static_cast<MenuBar *>(pMenu) );
break;
}
}
// Merge the Add-Ons help menu items into the Office help menu
- framework::AddonMenuManager::MergeAddonHelpMenu( rFrame, static_cast<MenuBar *>(pMenu), m_xContext );
+ framework::AddonMenuManager::MergeAddonHelpMenu( rFrame, static_cast<MenuBar *>(pMenu) );
}
bool bAccessibilityEnabled( Application::GetSettings().GetMiscSettings().GetEnableATToolSupport() );
@@ -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<PopupMenu> pSubMenu = AddonMenuManager::CreateAddonMenu(rFrame, m_xContext);
+ VclPtr<PopupMenu> pSubMenu = AddonMenuManager::CreateAddonMenu(rFrame);
if ( pSubMenu && ( pSubMenu->GetItemCount() > 0 ))
{
sal_uInt16 nCount = 0;
diff --git a/include/framework/addonmenu.hxx b/include/framework/addonmenu.hxx
index 52f6cc79d7e8..363982f777d1 100644
--- a/include/framework/addonmenu.hxx
+++ b/include/framework/addonmenu.hxx
@@ -43,19 +43,16 @@ class FWE_DLLPUBLIC AddonMenuManager
static bool IsCorrectContext(const OUString& rModuleIdentifier, const OUString& rContext);
// Create the Add-Ons menu
- static VclPtr<PopupMenu> 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 );
// 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,
- MenuBar* pMergeMenuBar,
- const css::uno::Reference< css::uno::XComponentContext >& rContext );
+ MenuBar* pMergeMenuBar );
// Merge the addon popup menus into the given menu bar at the provided pos.
static void MergeAddonPopupMenus( const css::uno::Reference< css::frame::XFrame >& rFrame,
sal_uInt16 nMergeAtPos,
- MenuBar* pMergeMenuBar,
- const css::uno::Reference< css::uno::XComponentContext >& rContext );
+ MenuBar* pMergeMenuBar );
// Returns the next position to insert a menu item/sub menu
static sal_uInt16 GetNextPos( sal_uInt16 nPos );