VirtualBox

Changeset 74560 in vbox for trunk/src


Ignore:
Timestamp:
Oct 1, 2018 4:50:07 PM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
125429
Message:

FE/Qt: bugref:9241: VirtualBox Manager: Lots of fixes for Main toolbar.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/manager
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxManagerWidget.cpp

    r74557 r74560  
    380380
    381381    /* Prepare: */
    382     prepareToolbar();
    383382    prepareWidgets();
    384383    prepareConnections();
     
    392391    /* Make sure current Chooser-pane index fetched: */
    393392    sltHandleChooserPaneIndexChange();
    394 }
    395 
    396 void UIVirtualBoxManagerWidget::prepareToolbar()
    397 {
    398     /* Create Main toolbar: */
    399     m_pToolBar = new UIToolBar;
    400     if (m_pToolBar)
    401     {
    402         /* Configure toolbar: */
    403         const int iIconMetric = QApplication::style()->pixelMetric(QStyle::PM_LargeIconSize);
    404         m_pToolBar->setIconSize(QSize(iIconMetric, iIconMetric));
    405         m_pToolBar->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
    406         m_pToolBar->setContextMenuPolicy(Qt::CustomContextMenu);
    407         m_pToolBar->setToolButtonStyle(Qt::ToolButtonTextUnderIcon);
    408 
    409         /* Update finally: */
    410         updateToolbar();
    411     }
    412393}
    413394
     
    449430                    pLayoutRight->setContentsMargins(0, 0, 0, 0);
    450431
    451                     /* Add tool-bar into layout: */
    452                     pLayoutRight->addWidget(m_pToolBar);
     432                    /* Create Main toolbar: */
     433                    m_pToolBar = new UIToolBar;
     434                    if (m_pToolBar)
     435                    {
     436                        /* Configure toolbar: */
     437                        const int iIconMetric = QApplication::style()->pixelMetric(QStyle::PM_LargeIconSize);
     438                        m_pToolBar->setIconSize(QSize(iIconMetric, iIconMetric));
     439                        m_pToolBar->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
     440                        m_pToolBar->setContextMenuPolicy(Qt::CustomContextMenu);
     441                        m_pToolBar->setToolButtonStyle(Qt::ToolButtonTextUnderIcon);
     442
     443                        /* Add tool-bar into layout: */
     444                        pLayoutRight->addWidget(m_pToolBar);
     445                    }
    453446
    454447                    /* Create stacked-widget: */
     
    523516        }
    524517    }
     518
     519    /* Update toolbar finally: */
     520    updateToolbar();
    525521
    526522    /* Bring the VM list to the focus: */
     
    595591    m_pToolBar->clear();
    596592
    597     /* Add main actions block: */
    598     m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_New));
    599     m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_Settings));
    600     m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_Discard));
    601     m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_M_StartOrShow));
    602 
    603     /* Separator: */
    604     if (   isToolOpened(ToolTypeMachine_Snapshots)
    605         || isToolOpened(ToolTypeMachine_Logs)
    606         || isToolOpened(ToolTypeGlobal_Media)
    607         || isToolOpened(ToolTypeGlobal_Network))
    608         m_pToolBar->addSeparator();
    609 
    610     /* Add 'Snapshots' actions block: */
    611     if (isToolOpened(ToolTypeMachine_Snapshots))
    612     {
    613         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Snapshot_S_Take));
    614         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Snapshot_S_Delete));
    615         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Snapshot_S_Restore));
    616         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Snapshot_T_Properties));
    617         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Snapshot_S_Clone));
    618     }
    619 
    620     /* Add 'Logs' actions block: */
    621     if (isToolOpened(ToolTypeMachine_Logs))
    622     {
    623         m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_S_Save));
    624         m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_T_Find));
    625         m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_T_Filter));
    626         m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_T_Bookmark));
    627         m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_T_Settings));
    628         m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_S_Refresh));
    629     }
    630 
    631     /* Add 'Media' actions block: */
    632     if (isToolOpened(ToolTypeGlobal_Media))
    633     {
    634         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Add));
    635         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Copy));
    636         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Move));
    637         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Remove));
    638         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Release));
    639         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_T_Details));
    640         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Refresh));
    641     }
    642 
    643     /* Add 'Network' actions block: */
    644     if (isToolOpened(ToolTypeGlobal_Network))
    645     {
    646         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Network_S_Create));
    647         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Network_S_Remove));
    648         m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Network_T_Details));
    649 //        m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Network_S_Refresh));
     593    /* Basic action set: */
     594    switch (m_pPaneTools->toolsClass())
     595    {
     596        /* Global toolbar: */
     597        case UIToolsClass_Global:
     598        {
     599            switch (currentGlobalTool())
     600            {
     601                case ToolTypeGlobal_Media:
     602                {
     603                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Add));
     604                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Copy));
     605                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Move));
     606                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Remove));
     607                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Release));
     608                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_T_Details));
     609                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Medium_S_Refresh));
     610                    break;
     611                }
     612                case ToolTypeGlobal_Network:
     613                {
     614                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Network_S_Create));
     615                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Network_S_Remove));
     616                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Network_T_Details));
     617                    //m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Network_S_Refresh));
     618                    break;
     619                }
     620                default:
     621                    break;
     622            }
     623            break;
     624        }
     625        /* Machine toolbar: */
     626        case UIToolsClass_Machine:
     627        {
     628            switch (currentMachineTool())
     629            {
     630                case ToolTypeMachine_Details:
     631                {
     632                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_New));
     633                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_Settings));
     634                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_Discard));
     635                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_M_StartOrShow));
     636                    break;
     637                }
     638                case ToolTypeMachine_Snapshots:
     639                {
     640                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_New));
     641                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_Settings));
     642                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_Discard));
     643                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_M_StartOrShow));
     644                    m_pToolBar->addSeparator();
     645                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Snapshot_S_Take));
     646                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Snapshot_S_Delete));
     647                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Snapshot_S_Restore));
     648                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Snapshot_T_Properties));
     649                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Snapshot_S_Clone));
     650                    break;
     651                }
     652                case ToolTypeMachine_Logs:
     653                {
     654                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_New));
     655                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_Settings));
     656                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_S_Discard));
     657                    m_pToolBar->addAction(actionPool()->action(UIActionIndexST_M_Machine_M_StartOrShow));
     658                    m_pToolBar->addSeparator();
     659                    m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_S_Save));
     660                    m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_T_Find));
     661                    m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_T_Filter));
     662                    m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_T_Bookmark));
     663                    m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_T_Settings));
     664                    m_pToolBar->addAction(actionPool()->action(UIActionIndex_M_Log_S_Refresh));
     665                    break;
     666                }
     667                default:
     668                    break;
     669            }
     670            break;
     671        }
     672        default:
     673            break;
    650674    }
    651675
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxManagerWidget.h

    r74483 r74560  
    151151        /** Prepares window. */
    152152        void prepare();
    153         /** Prepares toolbar. */
    154         void prepareToolbar();
    155153        /** Prepares widgets. */
    156154        void prepareWidgets();
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