Changeset 46797 in vbox
- Timestamp:
- Jun 26, 2013 11:10:15 AM (12 years ago)
- svn:sync-xref-src-repo-rev:
- 86733
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/globals/UIDefs.cpp
r46782 r46797 52 52 53 53 /* Machine-window definitions: */ 54 const char* UIDefs::GUI_RestrictedRuntimeMenus = "GUI/RestrictedRuntimeMenus"; 54 55 const char* UIDefs::GUI_Input_MachineShortcuts = "GUI/Input/MachineShortcuts"; 55 56 const char* UIDefs::GUI_LastNormalWindowPosition = "GUI/LastNormalWindowPosition"; -
trunk/src/VBox/Frontends/VirtualBox/src/globals/UIDefs.h
r46795 r46797 124 124 125 125 /* Machine-window declarations: */ 126 extern const char* GUI_RestrictedRuntimeMenus; 126 127 extern const char* GUI_Input_MachineShortcuts; 127 128 extern const char* GUI_LastNormalWindowPosition; -
trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
r46782 r46797 3766 3766 /* 'true' if snapshot operations are not restricted by the extra-data: */ 3767 3767 return !isApprovedByExtraData(machine, GUI_PreventSnapshotOperations); 3768 } 3769 3770 /* static */ 3771 RuntimeMenuType VBoxGlobal::restrictedRuntimeMenuTypes(CMachine &machine) 3772 { 3773 /* Prepare result: */ 3774 RuntimeMenuType result = RuntimeMenuType_Invalid; 3775 /* Load restricted runtime-menu-types: */ 3776 QString strList(machine.GetExtraData(GUI_RestrictedRuntimeMenus)); 3777 QStringList list = strList.split(','); 3778 /* Convert list into appropriate values: */ 3779 foreach (const QString &strValue, list) 3780 { 3781 RuntimeMenuType value = gpConverter->fromInternalString<RuntimeMenuType>(strValue); 3782 if (value != RuntimeMenuType_Invalid) 3783 result = static_cast<RuntimeMenuType>(result | value); 3784 } 3785 /* Return result: */ 3786 return result; 3768 3787 } 3769 3788 -
trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.h
r46782 r46797 386 386 static bool shouldWeAutoMountGuestScreens(CMachine &machine, bool fIncludingSanityCheck = true); 387 387 static bool shouldWeAllowSnapshotOperations(CMachine &machine, bool fIncludingSanityCheck = true); 388 static RuntimeMenuType restrictedRuntimeMenuTypes(CMachine &machine); 388 389 static QList<IndicatorType> restrictedStatusBarIndicators(CMachine &machine); 389 390 static QList<MachineCloseAction> restrictedMachineCloseActions(CMachine &machine); -
trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp
r46696 r46797 845 845 { 846 846 #ifdef Q_WS_MAC 847 m_pMenuBar = uisession()->newMenuBar(); 847 /* Prepare native menu-bar: */ 848 CMachine machine = session().GetMachine(); 849 RuntimeMenuType restrictedMenus = VBoxGlobal::restrictedRuntimeMenuTypes(machine); 850 RuntimeMenuType allowedMenus = static_cast<RuntimeMenuType>(RuntimeMenuType_All ^ restrictedMenus); 851 m_pMenuBar = uisession()->newMenuBar(allowedMenus); 848 852 #endif /* Q_WS_MAC */ 849 853 } -
trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.cpp
r46256 r46797 24 24 25 25 /* GUI includes: */ 26 #include "UIDefs.h" 27 #include "UIMiniToolBar.h" 26 #include "VBoxGlobal.h" 28 27 #include "UISession.h" 29 28 #include "UIActionPoolRuntime.h" 30 29 #include "UIMachineLogicFullscreen.h" 31 30 #include "UIMachineWindowFullscreen.h" 31 #include "UIMiniToolBar.h" 32 32 33 33 /* COM includes: */ 34 #include "CMachine.h"35 34 #include "CSnapshot.h" 36 35 … … 67 66 68 67 /* Prepare menu: */ 69 m_pMainMenu = uisession()->newMenu(); 68 CMachine machine = session().GetMachine(); 69 RuntimeMenuType restrictedMenus = VBoxGlobal::restrictedRuntimeMenuTypes(machine); 70 RuntimeMenuType allowedMenus = static_cast<RuntimeMenuType>(RuntimeMenuType_All ^ restrictedMenus); 71 m_pMainMenu = uisession()->newMenu(allowedMenus); 70 72 } 71 73 … … 106 108 fIsAutoHide); 107 109 QList<QMenu*> menus; 108 QList<QAction*> actions = uisession()->newMenu()->actions(); 110 RuntimeMenuType restrictedMenus = VBoxGlobal::restrictedRuntimeMenuTypes(m); 111 RuntimeMenuType allowedMenus = static_cast<RuntimeMenuType>(RuntimeMenuType_All ^ restrictedMenus); 112 QList<QAction*> actions = uisession()->newMenu(allowedMenus)->actions(); 109 113 for (int i=0; i < actions.size(); ++i) 110 114 menus << actions.at(i)->menu(); -
trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp
r46686 r46797 223 223 224 224 #ifndef Q_WS_MAC 225 /* Prepare menu-bar: */ 226 setMenuBar(uisession()->newMenuBar()); 225 /* Prepare application menu-bar: */ 226 CMachine machine = session().GetMachine(); 227 RuntimeMenuType restrictedMenus = VBoxGlobal::restrictedRuntimeMenuTypes(machine); 228 RuntimeMenuType allowedMenus = static_cast<RuntimeMenuType>(RuntimeMenuType_All ^ restrictedMenus); 229 setMenuBar(uisession()->newMenuBar(allowedMenus)); 227 230 #endif /* !Q_WS_MAC */ 228 231 } -
trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.cpp
r44954 r46797 24 24 #include <QSpacerItem> 25 25 #include <QResizeEvent> 26 #ifdef Q_WS_MAC27 # include <QMenuBar>28 #endif /* Q_WS_MAC */29 26 30 27 /* GUI includes: */ 31 #include " UIDefs.h"28 #include "VBoxGlobal.h" 32 29 #include "UISession.h" 33 30 #include "UIMachineLogic.h" … … 38 35 #ifdef Q_WS_MAC 39 36 # include "VBoxUtils.h" 40 # include "VBoxGlobal.h"41 37 # include "UIImageTools.h" 42 38 #endif /* Q_WS_MAC */ 43 44 /* COM includes: */45 #include "CMachine.h"46 39 47 40 UIMachineWindowScale::UIMachineWindowScale(UIMachineLogic *pMachineLogic, ulong uScreenId) … … 79 72 80 73 /* Prepare menu: */ 81 m_pMainMenu = uisession()->newMenu(); 74 CMachine machine = session().GetMachine(); 75 RuntimeMenuType restrictedMenus = VBoxGlobal::restrictedRuntimeMenuTypes(machine); 76 RuntimeMenuType allowedMenus = static_cast<RuntimeMenuType>(RuntimeMenuType_All ^ restrictedMenus); 77 m_pMainMenu = uisession()->newMenu(allowedMenus); 82 78 } 83 79 -
trunk/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineWindowSeamless.cpp
r46256 r46797 76 76 77 77 /* Prepare menu: */ 78 m_pMainMenu = uisession()->newMenu(); 78 CMachine machine = session().GetMachine(); 79 RuntimeMenuType restrictedMenus = VBoxGlobal::restrictedRuntimeMenuTypes(machine); 80 RuntimeMenuType allowedMenus = static_cast<RuntimeMenuType>(RuntimeMenuType_All ^ restrictedMenus); 81 m_pMainMenu = uisession()->newMenu(allowedMenus); 79 82 } 80 83 … … 132 135 m_pMiniToolBar->show(); 133 136 QList<QMenu*> menus; 134 QList<QAction*> actions = uisession()->newMenu()->actions(); 137 RuntimeMenuType restrictedMenus = VBoxGlobal::restrictedRuntimeMenuTypes(m); 138 RuntimeMenuType allowedMenus = static_cast<RuntimeMenuType>(RuntimeMenuType_All ^ restrictedMenus); 139 QList<QAction*> actions = uisession()->newMenu(allowedMenus)->actions(); 135 140 for (int i=0; i < actions.size(); ++i) 136 141 menus << actions.at(i)->menu();
Note:
See TracChangeset
for help on using the changeset viewer.