diff options
author | Pranav Kant <pranavk@collabora.com> | 2016-05-16 17:13:40 +0530 |
---|---|---|
committer | Pranav Kant <pranavk@collabora.com> | 2016-05-16 17:13:40 +0530 |
commit | 19e246ce0e5a333b00c405db33b035bafa0e10cc (patch) | |
tree | f3f5fb2532da1e797b91c412430929332f6c1cbc | |
parent | d57994a20b012c67db47d488409ee14fb11b9751 (diff) |
Revert "lok context menu: Include uno commands for submenus too"
By mistake resolved conflicts incorrectly. Correct version
comming up.
This reverts commit d57994a20b012c67db47d488409ee14fb11b9751.
-rw-r--r-- | sfx2/source/control/dispatch.cxx | 99 |
1 files changed, 0 insertions, 99 deletions
diff --git a/sfx2/source/control/dispatch.cxx b/sfx2/source/control/dispatch.cxx index e578d2de3515..0b9555aafb1b 100644 --- a/sfx2/source/control/dispatch.cxx +++ b/sfx2/source/control/dispatch.cxx @@ -26,8 +26,6 @@ #include <stdarg.h> #include <stdlib.h> -#include <boost/property_tree/json_parser.hpp> - #include <com/sun/star/beans/XPropertySet.hpp> #include <com/sun/star/frame/XDispatchRecorderSupplier.hpp> #include <com/sun/star/frame/XLayoutManager.hpp> @@ -142,103 +140,6 @@ struct SfxDispatcher_Impl std::deque< std::deque<SfxToDo_Impl> > aToDoCopyStack; }; -namespace { - - boost::property_tree::ptree fillPopupMenu(Menu* pMenu) - { - // Activate this menu first - pMenu->HandleMenuActivateEvent(pMenu); - pMenu->HandleMenuDeActivateEvent(pMenu); - - boost::property_tree::ptree aTree; - // If last item inserted is some valid text - bool bIsLastItemText = false; - sal_uInt16 nCount = pMenu->GetItemCount(); - for (sal_uInt16 nPos = 0; nPos < nCount; nPos++) - { - boost::property_tree::ptree aItemTree; - const MenuItemType aItemType = pMenu->GetItemType(nPos); - - if (aItemType == MenuItemType::DONTKNOW) - continue; - - if (aItemType == MenuItemType::SEPARATOR) - { - if (bIsLastItemText) - aItemTree.put("type", "separator"); - bIsLastItemText = false; - } - else - { - const sal_uInt16 nItemId = pMenu->GetItemId(nPos); - OUString aCommandURL = pMenu->GetItemCommand(nItemId); - - if (aCommandURL.isEmpty()) - { - const SfxSlot *pSlot = SFX_SLOTPOOL().GetSlot(nItemId); - if (pSlot) - aCommandURL = pSlot->GetCommandString(); - } - - const OUString aItemText = pMenu->GetItemText(nItemId); - Menu* pPopupSubmenu = pMenu->GetPopupMenu(nItemId); - - if (!aItemText.isEmpty()) - aItemTree.put("text", aItemText.toUtf8().getStr()); - - if (pPopupSubmenu) - { - boost::property_tree::ptree aSubmenu = fillPopupMenu(pPopupSubmenu); - if (aSubmenu.empty()) - continue; - - aItemTree.put("type", "menu"); - if (!aCommandURL.isEmpty()) - aItemTree.put("command", aCommandURL.toUtf8().getStr()); - aItemTree.push_back(std::make_pair("menu", aSubmenu)); - } - else - { - // no point in exposing choices that don't have the .uno: - // command - if (aCommandURL.isEmpty()) - continue; - - aItemTree.put("type", "command"); - aItemTree.put("command", aCommandURL.toUtf8().getStr()); - } - - aItemTree.put("enabled", pMenu->IsItemEnabled(nItemId)); - - MenuItemBits aItemBits = pMenu->GetItemBits(nItemId); - bool bHasChecks = true; - if (aItemBits & MenuItemBits::CHECKABLE) - aItemTree.put("checktype", "checkmark"); - else if (aItemBits & MenuItemBits::RADIOCHECK) - aItemTree.put("checktype", "radio"); - else if (aItemBits & MenuItemBits::AUTOCHECK) - aItemTree.put("checktype", "auto"); - else - bHasChecks = false; - - if (bHasChecks) - aItemTree.put("checked", pMenu->IsItemChecked(nItemId)); - } - - if (!aItemTree.empty()) - { - aTree.push_back(std::make_pair("", aItemTree)); - if (aItemType != MenuItemType::SEPARATOR) - bIsLastItemText = true; - } - } - - return aTree; - } - -} // end anonymous namespace - - /** This method checks if the stack of the SfxDispatchers is flushed, or if push- or pop- commands are pending. */ |