VirtualBox

Changeset 44982 in vbox


Ignore:
Timestamp:
Mar 11, 2013 12:58:09 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
84203
Message:

FE/Qt: Runtime UI: Multi-screen support: Make sure view-menu is updated properly under mac-host.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/runtime
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp

    r44981 r44982  
    178178    prepareMachineWindows();
    179179
     180    /* Prepare menu: */
     181    prepareMenu();
     182
    180183#ifdef Q_WS_MAC
    181     /* Prepare menu-bar: */
    182     prepareMenuBar();
    183184    /* Prepare dock: */
    184185    prepareDock();
     
    212213    /* Cleanup dock: */
    213214    cleanupDock();
    214     /* Cleanup menu-bar: */
    215     cleanupMenuBar();
    216215#endif /* Q_WS_MAC */
     216
     217    /* Cleanup menu: */
     218    cleanupMenu();
    217219
    218220    /* Cleanup machine window(s): */
     
    731733}
    732734
     735void UIMachineLogic::prepareMenu()
     736{
    733737#ifdef Q_WS_MAC
    734 void UIMachineLogic::prepareMenuBar()
    735 {
    736738    m_pMenuBar = uisession()->newMenuBar();
    737 }
    738 
     739#endif /* Q_WS_MAC */
     740}
     741
     742#ifdef Q_WS_MAC
    739743void UIMachineLogic::prepareDock()
    740744{
     
    850854    }
    851855}
    852 
    853 void UIMachineLogic::cleanupMenuBar()
    854 {
     856#endif /* Q_WS_MAC */
     857
     858void UIMachineLogic::cleanupMenu()
     859{
     860#ifdef Q_WS_MAC
    855861    delete m_pMenuBar;
    856862    m_pMenuBar = 0;
    857 }
    858863#endif /* Q_WS_MAC */
     864}
    859865
    860866void UIMachineLogic::cleanupHandlers()
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.h

    r44981 r44982  
    133133    virtual void prepareHandlers();
    134134    virtual void prepareMachineWindows() = 0;
    135 #ifdef Q_WS_MAC
    136     virtual void prepareMenuBar();
     135    virtual void prepareMenu();
     136#ifdef Q_WS_MAC
    137137    virtual void prepareDock();
    138138#endif /* Q_WS_MAC */
     
    147147#ifdef Q_WS_MAC
    148148    virtual void cleanupDock();
    149     virtual void cleanupMenuBar();
    150 #endif /* Q_WS_MAC */
     149#endif /* Q_WS_MAC */
     150    virtual void cleanupMenu();
    151151    virtual void cleanupMachineWindows() = 0;
    152152    virtual void cleanupHandlers();
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMultiScreenLayout.cpp

    r44839 r44982  
    270270    cleanupViewMenu();
    271271
    272     /* If we do have more than one host screen: */
    273     if (m_cHostScreens > 1)
    274     {
     272    /* If we do have more than one host/guest screen: */
     273    if (m_cHostScreens > 1 || m_guestScreens.size() > 1)
     274    {
     275        m_pViewMenu->addSeparator();
    275276        foreach (int iGuestScreen, m_guestScreens)
    276277        {
     
    289290        }
    290291    }
     292
     293    /* Update menu actions: */
     294    updateMenuActions(false);
    291295}
    292296
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineLogicFullscreen.cpp

    r44981 r44982  
    141141    /* Adjust-window action isn't allowed in fullscreen: */
    142142    gActionPool->action(UIActionIndexRuntime_Simple_AdjustWindow)->setVisible(false);
    143 
    144     /* Add the view menu: */
    145     QMenu *pMenu = gActionPool->action(UIActionIndexRuntime_Menu_View)->menu();
    146     m_pScreenLayout->setViewMenu(pMenu);
    147     pMenu->setVisible(true);
    148143}
    149144
     
    192187    /* Remember what machine window(s) created: */
    193188    setMachineWindowsCreated(true);
     189}
     190
     191void UIMachineLogicFullscreen::prepareMenu()
     192{
     193    /* Call to base-class: */
     194    UIMachineLogic::prepareMenu();
     195
     196    /* Finally update view-menu: */
     197    m_pScreenLayout->setViewMenu(gActionPool->action(UIActionIndexRuntime_Menu_View)->menu());
    194198}
    195199
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineLogicFullscreen.h

    r44981 r44982  
    6161#endif /* Q_WS_MAC */
    6262    void prepareMachineWindows();
     63    void prepareMenu();
    6364
    6465    /* Cleanup helpers: */
     66    //void cleanupMenu() {}
    6567    void cleanupMachineWindows();
    6668#ifdef Q_WS_MAC
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineLogicSeamless.cpp

    r44865 r44982  
    132132    /* Disable mouse-integration isn't allowed in seamless: */
    133133    gActionPool->action(UIActionIndexRuntime_Toggle_MouseIntegration)->setVisible(false);
    134 
    135     /* Add the view menu: */
    136     QMenu *pMenu = gActionPool->action(UIActionIndexRuntime_Menu_View)->menu();
    137     m_pScreenLayout->setViewMenu(pMenu);
    138     pMenu->setVisible(true);
    139134}
    140135
     
    167162}
    168163
     164void UIMachineLogicSeamless::prepareMenu()
     165{
     166    /* Call to base-class: */
     167    UIMachineLogic::prepareMenu();
     168
     169    /* Finally update view-menu: */
     170    m_pScreenLayout->setViewMenu(gActionPool->action(UIActionIndexRuntime_Menu_View)->menu());
     171}
     172
    169173void UIMachineLogicSeamless::cleanupMachineWindows()
    170174{
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineLogicSeamless.h

    r44865 r44982  
    5454    void prepareActionGroups();
    5555    void prepareMachineWindows();
     56    void prepareMenu();
    5657
    5758    /* Cleanup helpers: */
     59    //void cleanupMenu() {}
    5860    void cleanupMachineWindows();
    5961    void cleanupActionGroups();
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