VirtualBox

Changeset 51515 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Jun 3, 2014 4:00:51 PM (11 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
94136
Message:

FE/Qt: 6660: Advanced extra-data management framework: Integrate GUI_Toolbar and GUI_Statusbar.

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

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp

    r51514 r51515  
    403403}
    404404
     405bool UIExtraDataManager::selectorWindowToolBarVisible() const
     406{
     407    /* Show unless feature restricted: */
     408    return !isFeatureRestricted(GUI_Toolbar);
     409}
     410
     411void UIExtraDataManager::setSelectorWindowToolBarVisible(bool fVisible)
     412{
     413    /* Remember if feature restricted: */
     414    setExtraDataString(GUI_Toolbar, toFeatureRestricted(!fVisible));
     415}
     416
     417bool UIExtraDataManager::selectorWindowStatusBarVisible() const
     418{
     419    /* Show unless feature restricted: */
     420    return !isFeatureRestricted(GUI_Statusbar);
     421}
     422
     423void UIExtraDataManager::setSelectorWindowStatusBarVisible(bool fVisible)
     424{
     425    /* Remember if feature restricted: */
     426    setExtraDataString(GUI_Statusbar, toFeatureRestricted(!fVisible));
     427}
     428
    405429bool UIExtraDataManager::isFirstRun(const QString &strId) const
    406430{
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h

    r51514 r51515  
    142142    /** Defines selector-window splitter @a hints. */
    143143    void setSelectorWindowSplitterHints(const QList<int> &hints);
     144
     145    /** Returns whether selector-window tool-bar visible. */
     146    bool selectorWindowToolBarVisible() const;
     147    /** Defines whether selector-window tool-bar @a fVisible. */
     148    void setSelectorWindowToolBarVisible(bool fVisible);
     149    /** Returns whether selector-window status-bar visible. */
     150    bool selectorWindowStatusBarVisible() const;
     151    /** Defines whether selector-window status-bar @a fVisible. */
     152    void setSelectorWindowStatusBarVisible(bool fVisible);
    144153
    145154    /** Returns whether this machine started for the first time. */
  • trunk/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.cpp

    r51514 r51515  
    222222void UISelectorWindow::sltShowSelectorContextMenu(const QPoint &pos)
    223223{
    224     /* Load toolbar/statusbar availability settings: */
    225     CVirtualBox vbox = vboxGlobal().virtualBox();
    226     QString strToolbar = vbox.GetExtraData(GUI_Toolbar);
    227     QString strStatusbar = vbox.GetExtraData(GUI_Statusbar);
    228     bool fToolbar = strToolbar.isEmpty() || strToolbar == "true";
    229     bool fStatusbar = strStatusbar.isEmpty() || strStatusbar == "true";
    230 
    231224    /* Populate toolbar/statusbar acctions: */
    232225    QList<QAction*> actions;
    233226    QAction *pShowToolBar = new QAction(tr("Show Toolbar"), 0);
    234227    pShowToolBar->setCheckable(true);
    235     pShowToolBar->setChecked(fToolbar);
     228#ifdef Q_WS_MAC
     229    pShowToolBar->setChecked(mVMToolBar->isVisible());
     230#else /* Q_WS_MAC */
     231    pShowToolBar->setChecked(m_pBar->isVisible());
     232#endif /* !Q_WS_MAC */
    236233    actions << pShowToolBar;
    237234    QAction *pShowStatusBar = new QAction(tr("Show Statusbar"), 0);
    238235    pShowStatusBar->setCheckable(true);
    239     pShowStatusBar->setChecked(fStatusbar);
     236    pShowStatusBar->setChecked(statusBar()->isVisible());
    240237    actions << pShowStatusBar;
    241238
     
    254251            m_pBar->show();
    255252#endif /* !Q_WS_MAC */
    256             vbox.SetExtraData(GUI_Toolbar, "true");
    257253        }
    258254        else
     
    263259            m_pBar->hide();
    264260#endif /* !Q_WS_MAC */
    265             vbox.SetExtraData(GUI_Toolbar, "false");
    266261        }
    267262    }
     
    269264    {
    270265        if (pResult->isChecked())
    271         {
    272266            statusBar()->show();
    273             vbox.SetExtraData(GUI_Statusbar, "true");
    274         }
    275267        else
    276         {
    277268            statusBar()->hide();
    278             vbox.SetExtraData(GUI_Statusbar, "false");
    279         }
    280269    }
    281270}
     
    10251014            break;
    10261015        }
    1027         case QEvent::ToolBarChange:
    1028         {
    1029             CVirtualBox vbox = vboxGlobal().virtualBox();
    1030             /* We have to invert the isVisible check one time, cause this event
    1031              * is sent *before* the real toggle is done. Really intuitive Trolls. */
    1032             vbox.SetExtraData(GUI_Toolbar, !::darwinIsToolbarVisible(mVMToolBar) ? "true" : "false");
    1033             break;
    1034         }
    10351016#endif /* Q_WS_MAC */
    10361017        default:
     
    15481529    /* Restore toolbar and statusbar visibility: */
    15491530    {
    1550         QString strToolbar = vbox.GetExtraData(GUI_Toolbar);
    1551         QString strStatusbar = vbox.GetExtraData(GUI_Statusbar);
    1552 
    1553 #ifdef Q_WS_MAC
    1554         mVMToolBar->setVisible(strToolbar.isEmpty() || strToolbar == "true");
     1531#ifdef Q_WS_MAC
     1532        mVMToolBar->setHidden(!gEDataManager->selectorWindowToolBarVisible());
    15551533#else /* Q_WS_MAC */
    1556         m_pBar->setVisible(strToolbar.isEmpty() || strToolbar == "true");
     1534        m_pBar->setHidden(!gEDataManager->selectorWindowToolBarVisible());
    15571535#endif /* !Q_WS_MAC */
    1558         statusBar()->setVisible(strStatusbar.isEmpty() || strStatusbar == "true");
     1536        statusBar()->setHidden(!gEDataManager->selectorWindowStatusBarVisible());
    15591537    }
    15601538}
     
    15621540void UISelectorWindow::saveSettings()
    15631541{
    1564     /* Get VBox object: */
    1565     CVirtualBox vbox = vboxGlobal().virtualBox();
     1542    /* Save toolbar and statusbar visibility: */
     1543    {
     1544#ifdef Q_WS_MAC
     1545        gEDataManager->setSelectorWindowToolBarVisible(!mVMToolBar->isHidden());
     1546#else /* Q_WS_MAC */
     1547        gEDataManager->setSelectorWindowToolBarVisible(!m_pBar->isHidden());
     1548#endif /* !Q_WS_MAC */
     1549        gEDataManager->setSelectorWindowStatusBarVisible(!statusBar()->isHidden());
     1550    }
    15661551
    15671552    /* Save splitter handle position: */
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