VirtualBox

Changeset 51671 in vbox


Ignore:
Timestamp:
Jun 19, 2014 3:32:15 PM (11 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
94440
Message:

FE/Qt: 6660: Advanced extra-data management framework: Integrate GUI_PresentationModeEnabled, GUI_RealtimeDockIconUpdateEnabled, GUI_RealtimeDockIconUpdateMonitor.

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

Legend:

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

    r51665 r51671  
    106106#ifdef Q_WS_MAC
    107107/* Runtime UI: Mac-dock definitions: */
     108const char* UIExtraDataDefs::GUI_PresentationModeEnabled = "GUI/PresentationModeEnabled";
    108109const char* UIExtraDataDefs::GUI_RealtimeDockIconUpdateEnabled = "GUI/RealtimeDockIconUpdateEnabled";
    109110const char* UIExtraDataDefs::GUI_RealtimeDockIconUpdateMonitor = "GUI/RealtimeDockIconUpdateMonitor";
    110 const char* UIExtraDataDefs::GUI_PresentationModeEnabled = "GUI/PresentationModeEnabled";
    111111#endif /* Q_WS_MAC */
    112112
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h

    r51668 r51671  
    114114#ifdef Q_WS_MAC
    115115    /* Runtime UI: Mac-dock declarations: */
     116    extern const char* GUI_PresentationModeEnabled;
    116117    extern const char* GUI_RealtimeDockIconUpdateEnabled;
    117118    extern const char* GUI_RealtimeDockIconUpdateMonitor;
    118     extern const char* GUI_PresentationModeEnabled;
    119119#endif /* Q_WS_MAC */
    120120
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp

    r51668 r51671  
    10901090}
    10911091
     1092#ifdef Q_WS_MAC
     1093bool UIExtraDataManager::presentationModeEnabled(const QString &strID) const
     1094{
     1095    /* 'False' unless feature allowed: */
     1096    return isFeatureAllowed(GUI_PresentationModeEnabled, strID);
     1097}
     1098
     1099bool UIExtraDataManager::realtimeDockIconUpdateEnabled(const QString &strID) const
     1100{
     1101    /* 'True' unless feature restricted: */
     1102    return !isFeatureRestricted(GUI_RealtimeDockIconUpdateEnabled, strID);
     1103}
     1104
     1105void UIExtraDataManager::setRealtimeDockIconUpdateEnabled(bool fEnabled, const QString &strID)
     1106{
     1107    /* 'False' if feature restricted, null-string otherwise: */
     1108    setExtraDataString(GUI_RealtimeDockIconUpdateEnabled, toFeatureRestricted(!fEnabled), strID);
     1109}
     1110
     1111int UIExtraDataManager::realtimeDockIconUpdateMonitor(const QString &strID) const
     1112{
     1113    return extraDataString(GUI_RealtimeDockIconUpdateMonitor, strID).toInt();
     1114}
     1115
     1116void UIExtraDataManager::setRealtimeDockIconUpdateMonitor(int iIndex, const QString &strID)
     1117{
     1118    setExtraDataString(GUI_RealtimeDockIconUpdateMonitor, iIndex ? QString::number(iIndex) : QString(), strID);
     1119}
     1120#endif /* Q_WS_MAC */
     1121
    10921122MachineCloseAction UIExtraDataManager::defaultMachineCloseAction(const QString &strID) const
    10931123{
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h

    r51667 r51671  
    312312    void setMiniToolbarAlignment(Qt::AlignmentFlag alignment, const QString &strID);
    313313
     314#ifdef Q_WS_MAC
     315    /** Mac OS X: Returns whether 'presentation mode' should be enabled. */
     316    bool presentationModeEnabled(const QString &strID) const;
     317
     318    /** Mac OS X: Returns whether Dock icon should be updated at runtime. */
     319    bool realtimeDockIconUpdateEnabled(const QString &strID) const;
     320    /** Mac OS X: Defines whether Dock icon update should be fEnabled at runtime. */
     321    void setRealtimeDockIconUpdateEnabled(bool fEnabled, const QString &strID);
     322
     323    /** Mac OS X: Returns guest-screen which Dock icon should reflect at runtime. */
     324    int realtimeDockIconUpdateMonitor(const QString &strID) const;
     325    /** Mac OS X: Defines guest-screen @a iIndex which Dock icon should reflect at runtime. */
     326    void setRealtimeDockIconUpdateMonitor(int iIndex, const QString &strID);
     327#endif /* Q_WS_MAC */
     328
    314329    /** Returns default machine close action. */
    315330    MachineCloseAction defaultMachineCloseAction(const QString &strID) const;
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp

    r51669 r51671  
    9797# include <QX11Info>
    9898#endif /* Q_WS_X11 */
    99 
    100 #ifdef Q_WS_MAC
    101 /* Namespaces: */
    102 using namespace UIExtraDataDefs;
    103 #endif /* Q_WS_MAC */
    10499
    105100
     
    10081003    {
    10091004        pDockSettingsMenu->addSeparator();
    1010         m_DockIconPreviewMonitor = qMin(session().GetMachine().GetExtraData(GUI_RealtimeDockIconUpdateMonitor).toInt(), cGuestScreens - 1);
     1005        m_DockIconPreviewMonitor = qMin(gEDataManager->realtimeDockIconUpdateMonitor(vboxGlobal().managedVMUuid()),
     1006                                        cGuestScreens - 1);
    10111007        m_pDockPreviewSelectMonitorGroup = new QActionGroup(this);
    10121008        for (int i = 0; i < cGuestScreens; ++i)
     
    10321028    m_pDockIconPreview = new UIDockIconPreview(uisession(), vboxGlobal().vmGuestOSTypeIcon(osTypeId));
    10331029
    1034     QString strTest = session().GetMachine().GetExtraData(GUI_RealtimeDockIconUpdateEnabled).toLower();
    1035     /* Default to true if it is an empty value */
    1036     bool f = (strTest.isEmpty() || strTest == "true");
    1037     if (f)
     1030    /* Should the dock-icon be updated at runtime? */
     1031    bool fEnabled = gEDataManager->realtimeDockIconUpdateEnabled(vboxGlobal().managedVMUuid());
     1032    if (fEnabled)
    10381033        pDockEnablePreviewMonitor->setChecked(true);
    10391034    else
     
    10431038            m_pDockPreviewSelectMonitorGroup->setEnabled(false);
    10441039    }
    1045 
    1046     /* Default to true if it is an empty value */
    1047     setDockIconPreviewEnabled(f);
     1040    setDockIconPreviewEnabled(fEnabled);
    10481041    updateDockOverlay();
    10491042}
     
    21732166    if (!machine.isNull())
    21742167    {
    2175         bool fEnabled = true;
    2176         if (pAction == gActionPool->action(UIActionIndexRuntime_Toggle_DockDisableMonitor))
    2177             fEnabled = false;
    2178 
    2179         machine.SetExtraData(GUI_RealtimeDockIconUpdateEnabled, fEnabled ? "true" : "false");
     2168        bool fEnabled = pAction != gActionPool->action(UIActionIndexRuntime_Toggle_DockDisableMonitor);
     2169        gEDataManager->setRealtimeDockIconUpdateEnabled(fEnabled, vboxGlobal().managedVMUuid());
    21802170        updateDockOverlay();
    21812171    }
     
    21872177    if (!machine.isNull())
    21882178    {
    2189         int monitor = pAction->data().toInt();
    2190         machine.SetExtraData(GUI_RealtimeDockIconUpdateMonitor, QString::number(monitor));
     2179        gEDataManager->setRealtimeDockIconUpdateMonitor(pAction->data().toInt(), vboxGlobal().managedVMUuid());
    21912180        updateDockOverlay();
    21922181    }
     
    22022191            m_pDockPreviewSelectMonitorGroup->setEnabled(fEnabled);
    22032192            CMachine machine = session().GetMachine();
    2204             m_DockIconPreviewMonitor = qMin(machine.GetExtraData(GUI_RealtimeDockIconUpdateMonitor).toInt(), (int)machine.GetMonitorCount() - 1);
     2193            m_DockIconPreviewMonitor = qMin(gEDataManager->realtimeDockIconUpdateMonitor(vboxGlobal().managedVMUuid()),
     2194                                            (int)machine.GetMonitorCount() - 1);
    22052195        }
    22062196        /* Resize the dock icon in the case the preview monitor has changed. */
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineLogicFullscreen.cpp

    r51669 r51671  
    3232# include "UIFrameBuffer.h"
    3333# include <Carbon/Carbon.h>
    34 #endif /* Q_WS_MAC */
    35 
    36 #ifdef Q_WS_MAC
    37 /* Namespaces: */
    38 using namespace UIExtraDataDefs;
    3934#endif /* Q_WS_MAC */
    4035
     
    631626            if (m_pScreenLayout->isHostTaskbarCovert())
    632627            {
    633                 /* Load 'presentation mode' preference: */
    634                 QString strPresentationMode = vboxGlobal().virtualBox().GetExtraData(GUI_PresentationModeEnabled).toLower();
    635                 /* Default to 'false' if it is an empty value: */
    636                 if (strPresentationMode.isEmpty() || strPresentationMode == "false")
     628                if (gEDataManager->presentationModeEnabled(vboxGlobal().managedVMUuid()))
    637629                    SetSystemUIMode(kUIModeAllHidden, 0);
    638630                else
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