VirtualBox

Changeset 66571 in vbox


Ignore:
Timestamp:
Apr 14, 2017 12:39:44 PM (7 years ago)
Author:
vboxsync
Message:

FE/Qt: Get rid of VBoxGlobalSettings: Moving auto-capture feature handling into extra-data manager.

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

Legend:

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

    r66569 r66571  
    5151{
    5252    /* default settings */
    53 #if defined(VBOX_WS_X11) && defined(DEBUG)
    54     autoCapture = false;
    55 #else
    56     autoCapture = true;
    57 #endif
    5853    guiFeatures = QString::null;
    5954    languageId  = QString::null;
     
    6661VBoxGlobalSettingsData::VBoxGlobalSettingsData (const VBoxGlobalSettingsData &that)
    6762{
    68     autoCapture = that.autoCapture;
    6963    guiFeatures = that.guiFeatures;
    7064    languageId  = that.languageId;
     
    8276{
    8377    return this == &that ||
    84         (autoCapture == that.autoCapture &&
    85          guiFeatures == that.guiFeatures &&
     78        (guiFeatures == that.guiFeatures &&
    8679         languageId  == that.languageId &&
    8780         maxGuestRes == that.maxGuestRes &&
     
    110103gPropertyMap[] =
    111104{
    112     { "GUI/Input/AutoCapture",                     "autoCapture",             "true|false", true },
    113105    { "GUI/Customizations",                        "guiFeatures",             "\\S+", true },
    114106    { "GUI/LanguageID",                            "languageId",              gVBoxLangIDRegExp, true },
  • trunk/src/VBox/Frontends/VirtualBox/src/VBoxGlobalSettings.h

    r66569 r66571  
    3737private:
    3838
    39     bool autoCapture;
    4039    QString guiFeatures;
    4140    QString languageId;
     
    5352{
    5453    Q_OBJECT
    55     Q_PROPERTY (bool autoCapture READ autoCapture WRITE setAutoCapture)
    5654    Q_PROPERTY (QString guiFeatures READ guiFeatures WRITE setGuiFeatures)
    5755    Q_PROPERTY (QString languageId READ languageId WRITE setLanguageId)
     
    7371
    7472    // Properties
    75 
    76     bool autoCapture() const { return data()->autoCapture; }
    77     void setAutoCapture (bool aAutoCapture)
    78     {
    79         mData()->autoCapture = aAutoCapture;
    80         resetError();
    81     }
    8273
    8374    QString guiFeatures() const { return data()->guiFeatures; }
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.cpp

    r66569 r66571  
    5555const char* UIExtraDataDefs::GUI_Input_MachineShortcuts = "GUI/Input/MachineShortcuts";
    5656const char* UIExtraDataDefs::GUI_Input_HostKeyCombination = "GUI/Input/HostKeyCombination";
     57const char* UIExtraDataDefs::GUI_Input_AutoCapture = "GUI/Input/AutoCapture";
    5758
    5859/* Settings: Storage: */
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h

    r66569 r66571  
    8585        /** Holds Runtime UI host-key combination. */
    8686        extern const char* GUI_Input_HostKeyCombination;
     87        /** Holds whether Runtime UI auto-capture is enabled. */
     88        extern const char* GUI_Input_AutoCapture;
    8789    /** @} */
    8890
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp

    r66570 r66571  
    23572357#endif
    23582358    }
    2359     /* Return host-combo: */
     2359    /* Return host-key combination: */
    23602360    return strHostCombo;
    23612361}
     
    23782378        return extraDataStringList(GUI_Input_MachineShortcuts);
    23792379    return QStringList();
     2380}
     2381
     2382bool UIExtraDataManager::autoCaptureEnabled()
     2383{
     2384    /* Prepare auto-capture flag: */
     2385    bool fAutoCapture = true /* indifferently */;
     2386    /* Acquire whether the auto-capture is restricted: */
     2387    QString strAutoCapture = extraDataString(GUI_Input_AutoCapture);
     2388    /* Invent some sane default if it's empty: */
     2389    if (strAutoCapture.isEmpty())
     2390    {
     2391#if defined(VBOX_WS_X11) && defined(DEBUG)
     2392        fAutoCapture = false;
     2393#else
     2394        fAutoCapture = true;
     2395#endif
     2396    }
     2397    /* 'True' unless feature restricted: */
     2398    else
     2399        fAutoCapture = !isFeatureRestricted(GUI_Input_AutoCapture);
     2400    /* Return auto-capture flag: */
     2401    return fAutoCapture;
     2402}
     2403
     2404void UIExtraDataManager::setAutoCaptureEnabled(bool fEnabled)
     2405{
     2406    /* Store actual feature state, whether it is "true" or "false",
     2407     * because absent state means default, different on various hosts: */
     2408    setExtraDataString(GUI_Input_AutoCapture, toFeatureState(fEnabled));
    23802409}
    23812410
     
    42304259}
    42314260
     4261QString UIExtraDataManager::toFeatureState(bool fState)
     4262{
     4263    return fState ? QString("true") : QString("false");
     4264}
     4265
    42324266QString UIExtraDataManager::toFeatureAllowed(bool fAllowed)
    42334267{
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h

    r66569 r66571  
    202202        /** Returns shortcut overrides for shortcut-pool with @a strPoolExtraDataID. */
    203203        QStringList shortcutOverrides(const QString &strPoolExtraDataID);
     204
     205        /** Returns whether the Runtime UI auto-capture is enabled. */
     206        bool autoCaptureEnabled();
     207        /** Defines whether the Runtime UI auto-capture is @a fEnabled. */
     208        void setAutoCaptureEnabled(bool fEnabled);
    204209    /** @} */
    205210
     
    619624    bool isFeatureRestricted(const QString &strKey, const QString &strID = GlobalID);
    620625
     626    /** Translates bool flag into QString value. */
     627    QString toFeatureState(bool fState);
    621628    /** Translates bool flag into 'allowed' value. */
    622629    QString toFeatureAllowed(bool fAllowed);
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIKeyboardHandler.cpp

    r66569 r66571  
    15441544    , m_pMachineLogic(pMachineLogic)
    15451545    , m_iKeyboardCaptureViewIndex(-1)
    1546     , m_globalSettings(vboxGlobal().settings())
    15471546    , m_fIsKeyboardCaptured(false)
    15481547    , m_bIsHostComboPressed(false)
     
    24762475bool UIKeyboardHandler::autoCaptureSetGlobally()
    24772476{
    2478     return m_globalSettings.autoCapture() && !m_fDebuggerActive;
     2477    return gEDataManager->autoCaptureEnabled() && !m_fDebuggerActive;
    24792478}
    24802479
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIKeyboardHandler.h

    r66389 r66571  
    3737/* Forward declarations: */
    3838class QWidget;
    39 class VBoxGlobalSettings;
    4039class UIActionPool;
    4140class UISession;
     
    212211    /* Other keyboard variables: */
    213212    int m_iKeyboardCaptureViewIndex;
    214     const VBoxGlobalSettings &m_globalSettings;
    215213
    216214    uint8_t m_pressedKeys[128];
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp

    r65795 r66571  
    167167
    168168    /* Notify user about mouse&keyboard auto-capturing: */
    169     if (vboxGlobal().settings().autoCapture())
     169    if (gEDataManager->autoCaptureEnabled())
    170170        popupCenter().remindAboutAutoCapture(machineLogic()->activeMachineWindow());
    171171
  • trunk/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsInput.cpp

    r66569 r66571  
    3636# include "UIShortcutPool.h"
    3737# include "UIExtraDataManager.h"
    38 # include "VBoxGlobalSettings.h"
    3938
    4039#endif /* !VBOX_WITH_PRECOMPILED_HEADERS */
     
    906905                                                 shortcut.defaultSequence().toString(QKeySequence::NativeText));
    907906    }
    908     oldInputData.setAutoCapture(m_settings.autoCapture());
     907    oldInputData.setAutoCapture(gEDataManager->autoCaptureEnabled());
    909908
    910909    /* Cache old input data: */
     
    972971        /* Save other new things from the cache: */
    973972        if (m_pCache->data().autoCapture() != m_pCache->base().autoCapture())
    974             m_settings.setAutoCapture(m_pCache->data().autoCapture());
     973            gEDataManager->setAutoCaptureEnabled(m_pCache->data().autoCapture());
    975974    }
    976975
Note: See TracChangeset for help on using the changeset viewer.

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