VirtualBox

Changeset 52180 in vbox


Ignore:
Timestamp:
Jul 25, 2014 12:18:10 AM (11 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
95231
Message:

FE/Qt: Runtime UI: Missed menu restriction bits.

Location:
trunk/src/VBox/Frontends/VirtualBox/src
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/converter/UIConverterBackendGlobal.cpp

    r52129 r52180  
    407407    switch (runtimeMenuApplicationActionType)
    408408    {
    409         case RuntimeMenuApplicationActionType_About: strResult = "About"; break;
    410         case RuntimeMenuApplicationActionType_All:   strResult = "All"; break;
     409        case RuntimeMenuApplicationActionType_About:       strResult = "About"; break;
     410        case RuntimeMenuApplicationActionType_Preferences: strResult = "Preferences"; break;
     411        case RuntimeMenuApplicationActionType_Close:       strResult = "Close"; break;
     412        case RuntimeMenuApplicationActionType_All:         strResult = "All"; break;
    411413        default:
    412414        {
     
    423425    /* Here we have some fancy stuff allowing us
    424426     * to search through the keys using 'case-insensitive' rule: */
    425     QStringList keys; QList<RuntimeMenuApplicationActionType> values;
    426     keys << "About";  values << RuntimeMenuApplicationActionType_About;
    427     keys << "All";    values << RuntimeMenuApplicationActionType_All;
     427    QStringList keys;      QList<RuntimeMenuApplicationActionType> values;
     428    keys << "About";       values << RuntimeMenuApplicationActionType_About;
     429    keys << "Preferences"; values << RuntimeMenuApplicationActionType_Preferences;
     430    keys << "Close";       values << RuntimeMenuApplicationActionType_Close;
     431    keys << "All";         values << RuntimeMenuApplicationActionType_All;
    428432    /* Invalid type for unknown words: */
    429433    if (!keys.contains(strRuntimeMenuApplicationActionType, Qt::CaseInsensitive))
     
    514518        case RuntimeMenuViewActionType_StatusBarSettings: strResult = "StatusBarSettings"; break;
    515519        case RuntimeMenuViewActionType_ToggleStatusBar:   strResult = "ToggleStatusBar"; break;
     520        case RuntimeMenuViewActionType_Resize:            strResult = "Resize"; break;
    516521        case RuntimeMenuViewActionType_Multiscreen:       strResult = "Multiscreen"; break;
    517522        case RuntimeMenuViewActionType_All:               strResult = "All"; break;
     
    539544    keys << "StatusBarSettings"; values << RuntimeMenuViewActionType_StatusBarSettings;
    540545    keys << "ToggleStatusBar";   values << RuntimeMenuViewActionType_ToggleStatusBar;
     546    keys << "Resize";            values << RuntimeMenuViewActionType_Resize;
    541547    keys << "Multiscreen";       values << RuntimeMenuViewActionType_Multiscreen;
    542548    keys << "All";               values << RuntimeMenuViewActionType_All;
     
    554560    switch (runtimeMenuDevicesActionType)
    555561    {
     562        case RuntimeMenuDevicesActionType_HardDrives:            strResult = "HardDrives"; break;
     563        case RuntimeMenuDevicesActionType_HardDrivesSettings:    strResult = "HardDrivesSettings"; break;
    556564        case RuntimeMenuDevicesActionType_OpticalDevices:        strResult = "OpticalDevices"; break;
    557565        case RuntimeMenuDevicesActionType_FloppyDevices:         strResult = "FloppyDevices"; break;
     
    562570        case RuntimeMenuDevicesActionType_Network:               strResult = "Network"; break;
    563571        case RuntimeMenuDevicesActionType_NetworkSettings:       strResult = "NetworkSettings"; break;
     572        case RuntimeMenuDevicesActionType_SharedFolders:         strResult = "SharedFolders"; break;
    564573        case RuntimeMenuDevicesActionType_SharedFoldersSettings: strResult = "SharedFoldersSettings"; break;
    565574        case RuntimeMenuDevicesActionType_VRDEServer:            strResult = "VRDEServer"; break;
    566575        case RuntimeMenuDevicesActionType_VideoCapture:          strResult = "VideoCapture"; break;
     576        case RuntimeMenuDevicesActionType_VideoCaptureSettings:  strResult = "VideoCaptureSettings"; break;
    567577        case RuntimeMenuDevicesActionType_InstallGuestTools:     strResult = "InstallGuestTools"; break;
    568578        case RuntimeMenuDevicesActionType_All:                   strResult = "All"; break;
     
    582592     * to search through the keys using 'case-insensitive' rule: */
    583593    QStringList keys;                QList<RuntimeMenuDevicesActionType> values;
     594    keys << "HardDrives";            values << RuntimeMenuDevicesActionType_HardDrives;
     595    keys << "HardDrivesSettings";    values << RuntimeMenuDevicesActionType_HardDrivesSettings;
    584596    keys << "OpticalDevices";        values << RuntimeMenuDevicesActionType_OpticalDevices;
    585597    keys << "FloppyDevices";         values << RuntimeMenuDevicesActionType_FloppyDevices;
     
    590602    keys << "Network";               values << RuntimeMenuDevicesActionType_Network;
    591603    keys << "NetworkSettings";       values << RuntimeMenuDevicesActionType_NetworkSettings;
     604    keys << "SharedFolders";         values << RuntimeMenuDevicesActionType_SharedFolders;
    592605    keys << "SharedFoldersSettings"; values << RuntimeMenuDevicesActionType_SharedFoldersSettings;
    593606    keys << "VRDEServer";            values << RuntimeMenuDevicesActionType_VRDEServer;
    594607    keys << "VideoCapture";          values << RuntimeMenuDevicesActionType_VideoCapture;
     608    keys << "VideoCaptureSettings";  values << RuntimeMenuDevicesActionType_VideoCaptureSettings;
    595609    keys << "InstallGuestTools";     values << RuntimeMenuDevicesActionType_InstallGuestTools;
    596610    keys << "All";                   values << RuntimeMenuDevicesActionType_All;
     
    656670#ifndef Q_WS_MAC
    657671        case RuntimeMenuHelpActionType_About:                strResult = "About"; break;
     672        case RuntimeMenuHelpActionType_Preferences:          strResult = "Preferences"; break;
    658673#endif /* !Q_WS_MAC */
    659674        case RuntimeMenuHelpActionType_All:                  strResult = "All"; break;
     
    681696#ifndef Q_WS_MAC
    682697    keys << "About";                values << RuntimeMenuHelpActionType_About;
     698    keys << "Preferences";          values << RuntimeMenuHelpActionType_Preferences;
    683699#endif /* !Q_WS_MAC */
    684700    keys << "All";                  values << RuntimeMenuHelpActionType_All;
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h

    r52129 r52180  
    379379    RuntimeMenuApplicationActionType_About       = RT_BIT(0),
    380380    RuntimeMenuApplicationActionType_Preferences = RT_BIT(1),
     381    RuntimeMenuApplicationActionType_Close       = RT_BIT(2),
    381382    RuntimeMenuApplicationActionType_All         = 0xFFFF
    382383};
     
    420421    RuntimeMenuViewActionType_StatusBarSettings = RT_BIT(6),
    421422    RuntimeMenuViewActionType_ToggleStatusBar   = RT_BIT(7),
    422     RuntimeMenuViewActionType_Multiscreen       = RT_BIT(8),
     423    RuntimeMenuViewActionType_Resize            = RT_BIT(8),
     424    RuntimeMenuViewActionType_Multiscreen       = RT_BIT(9),
    423425    RuntimeMenuViewActionType_All               = 0xFFFF
    424426};
     
    428430{
    429431    RuntimeMenuDevicesActionType_Invalid               = 0,
    430     RuntimeMenuDevicesActionType_OpticalDevices        = RT_BIT(0),
    431     RuntimeMenuDevicesActionType_FloppyDevices         = RT_BIT(1),
    432     RuntimeMenuDevicesActionType_USBDevices            = RT_BIT(2),
    433     RuntimeMenuDevicesActionType_WebCams               = RT_BIT(3),
    434     RuntimeMenuDevicesActionType_SharedClipboard       = RT_BIT(4),
    435     RuntimeMenuDevicesActionType_DragAndDrop           = RT_BIT(5),
    436     RuntimeMenuDevicesActionType_Network               = RT_BIT(6),
    437     RuntimeMenuDevicesActionType_NetworkSettings       = RT_BIT(7),
    438     RuntimeMenuDevicesActionType_SharedFoldersSettings = RT_BIT(8),
    439     RuntimeMenuDevicesActionType_VRDEServer            = RT_BIT(9),
    440     RuntimeMenuDevicesActionType_VideoCapture          = RT_BIT(10),
    441     RuntimeMenuDevicesActionType_InstallGuestTools     = RT_BIT(11),
     432    RuntimeMenuDevicesActionType_HardDrives            = RT_BIT(0),
     433    RuntimeMenuDevicesActionType_HardDrivesSettings    = RT_BIT(1),
     434    RuntimeMenuDevicesActionType_OpticalDevices        = RT_BIT(2),
     435    RuntimeMenuDevicesActionType_FloppyDevices         = RT_BIT(3),
     436    RuntimeMenuDevicesActionType_USBDevices            = RT_BIT(4),
     437    RuntimeMenuDevicesActionType_WebCams               = RT_BIT(5),
     438    RuntimeMenuDevicesActionType_SharedClipboard       = RT_BIT(6),
     439    RuntimeMenuDevicesActionType_DragAndDrop           = RT_BIT(7),
     440    RuntimeMenuDevicesActionType_Network               = RT_BIT(8),
     441    RuntimeMenuDevicesActionType_NetworkSettings       = RT_BIT(9),
     442    RuntimeMenuDevicesActionType_SharedFolders         = RT_BIT(10),
     443    RuntimeMenuDevicesActionType_SharedFoldersSettings = RT_BIT(11),
     444    RuntimeMenuDevicesActionType_VRDEServer            = RT_BIT(12),
     445    RuntimeMenuDevicesActionType_VideoCapture          = RT_BIT(13),
     446    RuntimeMenuDevicesActionType_VideoCaptureSettings  = RT_BIT(14),
     447    RuntimeMenuDevicesActionType_InstallGuestTools     = RT_BIT(15),
    442448    RuntimeMenuDevicesActionType_All                   = 0xFFFF
    443449};
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp

    r52151 r52180  
    13961396    bool fSeparator1 = false;
    13971397
     1398    /* 'Hard Drives' submenu: */
     1399    if (uisession()->allowedActionsMenuDevices() & RuntimeMenuDevicesActionType_HardDrives)
     1400    {
     1401//        pMenu->addAction(gpActionPool->action(UIActionIndexRT_M_Devices_M_HardDrives));
     1402//        fSeparator1 = true;
     1403    }
     1404    else
     1405        gpActionPool->action(UIActionIndexRT_M_Devices_M_HardDrives)->setEnabled(false);
     1406    updateMenuDevicesHardDrives();
     1407
    13981408    /* 'Optical Devices' submenu: */
    13991409    if (uisession()->allowedActionsMenuDevices() & RuntimeMenuDevicesActionType_OpticalDevices)
     
    14601470    updateMenuDevicesNetwork();
    14611471
    1462     /* 'Shared Folders Settings' action: */
    1463     if (uisession()->allowedActionsMenuDevices() & RuntimeMenuDevicesActionType_SharedFoldersSettings)
    1464     {
    1465         pMenu->addAction(gpActionPool->action(UIActionIndexRT_M_Devices_M_SharedFolders_S_Settings));
    1466         fSeparator1 = true;
    1467     }
    1468     else
    1469         gpActionPool->action(UIActionIndexRT_M_Devices_M_SharedFolders_S_Settings)->setEnabled(false);
     1472    /* 'Shared Folders' submenu: */
     1473    if (uisession()->allowedActionsMenuDevices() & RuntimeMenuDevicesActionType_SharedFolders)
     1474    {
     1475//        pMenu->addAction(gpActionPool->action(UIActionIndexRT_M_Devices_M_SharedFolders));
     1476//        fSeparator1 = true;
     1477    }
     1478    else
     1479        gpActionPool->action(UIActionIndexRT_M_Devices_M_SharedFolders)->setEnabled(false);
     1480    updateMenuDevicesSharedFolders();
    14701481
    14711482    /* Separator #1: */
     
    14961507    else
    14971508        gpActionPool->action(UIActionIndexRT_M_Devices_M_VideoCapture_T_Start)->setEnabled(false);
     1509    updateMenuDevicesVideoCapture();
    14981510
    14991511    /* Separator #2: */
     
    15071519    else
    15081520        gpActionPool->action(UIActionIndexRT_M_Devices_S_InstallGuestTools)->setEnabled(false);
     1521}
     1522
     1523void UIMachineLogic::updateMenuDevicesHardDrives()
     1524{
     1525    /* Get corresponding menu: */
     1526    QMenu *pMenu = gpActionPool->action(UIActionIndexRT_M_Devices_M_HardDrives)->menu();
     1527    AssertPtrReturnVoid(pMenu);
     1528    /* Clear contents: */
     1529    pMenu->clear();
     1530
     1531
     1532    /* 'Hard Drives Settings' submenu: */
     1533    if (uisession()->allowedActionsMenuDevices() & RuntimeMenuDevicesActionType_HardDrivesSettings)
     1534        pMenu->addAction(gpActionPool->action(UIActionIndexRT_M_Devices_M_HardDrives_S_Settings));
     1535    else
     1536        gpActionPool->action(UIActionIndexRT_M_Devices_M_HardDrives_S_Settings)->setEnabled(false);
    15091537}
    15101538
     
    15231551    else
    15241552        gpActionPool->action(UIActionIndexRT_M_Devices_M_Network_S_Settings)->setEnabled(false);
     1553}
     1554
     1555void UIMachineLogic::updateMenuDevicesSharedFolders()
     1556{
     1557    /* Get corresponding menu: */
     1558    QMenu *pMenu = gpActionPool->action(UIActionIndexRT_M_Devices_M_SharedFolders)->menu();
     1559    AssertPtrReturnVoid(pMenu);
     1560    /* Clear contents: */
     1561    pMenu->clear();
     1562
     1563
     1564    /* 'Shared Folders Settings' action: */
     1565    if (uisession()->allowedActionsMenuDevices() & RuntimeMenuDevicesActionType_SharedFoldersSettings)
     1566        pMenu->addAction(gpActionPool->action(UIActionIndexRT_M_Devices_M_SharedFolders_S_Settings));
     1567    else
     1568        gpActionPool->action(UIActionIndexRT_M_Devices_M_SharedFolders_S_Settings)->setEnabled(false);
     1569}
     1570
     1571void UIMachineLogic::updateMenuDevicesVideoCapture()
     1572{
     1573    /* Get corresponding menu: */
     1574    QMenu *pMenu = gpActionPool->action(UIActionIndexRT_M_Devices_M_VideoCapture)->menu();
     1575    AssertPtrReturnVoid(pMenu);
     1576    /* Clear contents: */
     1577    pMenu->clear();
     1578
     1579
     1580    /* 'Video Capture Settings' action: */
     1581    if (uisession()->allowedActionsMenuDevices() & RuntimeMenuDevicesActionType_VideoCaptureSettings)
     1582        pMenu->addAction(gpActionPool->action(UIActionIndexRT_M_Devices_M_VideoCapture_S_Settings));
     1583    else
     1584        gpActionPool->action(UIActionIndexRT_M_Devices_M_VideoCapture_S_Settings)->setEnabled(false);
    15251585}
    15261586
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.h

    r52179 r52180  
    203203    /** Updates the 'Devices' menu. */
    204204    virtual void updateMenuDevices();
     205    /** Updates the 'Devices' : 'Hard Drives' menu. */
     206    virtual void updateMenuDevicesHardDrives();
    205207    /** Updates the 'Devices' : 'Network' menu. */
    206208    virtual void updateMenuDevicesNetwork();
     209    /** Updates the 'Devices' : 'Shared Folders' menu. */
     210    virtual void updateMenuDevicesSharedFolders();
     211    /** Updates the 'Devices' : 'Video Capture' menu. */
     212    virtual void updateMenuDevicesVideoCapture();
    207213#ifdef VBOX_WITH_DEBUGGER_GUI
    208214    virtual void updateMenuDebug();
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineLogicNormal.cpp

    r52179 r52180  
    143143
    144144    /* For each the machine-window: */
    145     foreach (UIMachineWindow *pMachineWindow, machineWindows())
    146     {
    147         /* Add 'Virtual Screen %1' menu: */
    148         const int iScreenID = pMachineWindow->screenId();
    149         QMenu *pSubMenu = pMenu->addMenu(QApplication::translate("UIMultiScreenLayout",
    150                                                                  "Virtual Screen %1").arg(iScreenID + 1));
    151         pSubMenu->setProperty("Screen ID", iScreenID);
    152         pSubMenu->setEnabled(fGAEnabled);
    153         connect(pSubMenu, SIGNAL(aboutToShow()), this, SLOT(sltPrepareMenuViewVirtualScreen()));
    154     }
     145    if (uisession()->allowedActionsMenuView() & RuntimeMenuViewActionType_Resize)
     146        foreach (UIMachineWindow *pMachineWindow, machineWindows())
     147        {
     148            /* Add 'Virtual Screen %1' menu: */
     149            const int iScreenID = pMachineWindow->screenId();
     150            QMenu *pSubMenu = pMenu->addMenu(QApplication::translate("UIMultiScreenLayout",
     151                                                                     "Virtual Screen %1").arg(iScreenID + 1));
     152            pSubMenu->setProperty("Screen ID", iScreenID);
     153            pSubMenu->setEnabled(fGAEnabled);
     154            connect(pSubMenu, SIGNAL(aboutToShow()), this, SLOT(sltPrepareMenuViewVirtualScreen()));
     155        }
    155156}
    156157
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette