VirtualBox

Ignore:
Timestamp:
Jul 8, 2014 12:39:11 PM (11 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
94818
Message:

FE/Qt: 6660: Advanced extra-data management framework: Move GlobalID specifier to global Extra-data Manager part to be able to address to it from another parts of GUI.

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

Legend:

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

    r51679 r51927  
    118118
    119119/* static */
    120 UIExtraDataManager *UIExtraDataManager::m_pInstance = 0;
    121 QString UIExtraDataManager::m_sstrGlobalID = QUuid().toString().remove(QRegExp("[{}]"));
     120UIExtraDataManager *UIExtraDataManager::m_spInstance = 0;
     121const QString UIExtraDataManager::GlobalID = QUuid().toString().remove(QRegExp("[{}]"));
    122122
    123123/* static */
     
    125125{
    126126    /* Create/prepare instance if not yet exists: */
    127     if (!m_pInstance)
     127    if (!m_spInstance)
    128128    {
    129129        new UIExtraDataManager;
    130         m_pInstance->prepare();
     130        m_spInstance->prepare();
    131131    }
    132132    /* Return instance: */
    133     return m_pInstance;
     133    return m_spInstance;
    134134}
    135135
     
    138138{
    139139    /* Destroy/cleanup instance if still exists: */
    140     if (m_pInstance)
    141     {
    142         m_pInstance->cleanup();
    143         delete m_pInstance;
     140    if (m_spInstance)
     141    {
     142        m_spInstance->cleanup();
     143        delete m_spInstance;
    144144    }
    145145}
     
    149149{
    150150    /* Connect to static instance: */
    151     m_pInstance = this;
     151    m_spInstance = this;
    152152}
    153153
     
    155155{
    156156    /* Disconnect from static instance: */
    157     m_pInstance = 0;
     157    m_spInstance = 0;
    158158}
    159159
     
    437437{
    438438    /* Read-only access global extra-data map: */
    439     const ExtraDataMap &data = m_data[m_sstrGlobalID];
     439    const ExtraDataMap &data = m_data[GlobalID];
    440440    /* Wipe-out each the group definition record: */
    441441    foreach (const QString &strKey, data.keys())
     
    11651165
    11661166    /* Global extra-data 'change' event: */
    1167     if (strMachineID == m_sstrGlobalID)
     1167    if (strMachineID == GlobalID)
    11681168    {
    11691169        if (strKey.startsWith("GUI/"))
     
    12151215
    12161216    /* Make sure at least empty map is created: */
    1217     m_data[m_sstrGlobalID] = ExtraDataMap();
     1217    m_data[GlobalID] = ExtraDataMap();
    12181218
    12191219    /* Load global extra-data map: */
    12201220    foreach (const QString &strKey, vbox.GetExtraDataKeys())
    1221         m_data[m_sstrGlobalID][strKey] = vbox.GetExtraData(strKey);
     1221        m_data[GlobalID][strKey] = vbox.GetExtraData(strKey);
    12221222}
    12231223
     
    12801280{
    12811281    /* Make sure it is valid ID: */
    1282     AssertMsgReturnVoid(!strID.isNull() && strID != m_sstrGlobalID,
     1282    AssertMsgReturnVoid(!strID.isNull() && strID != GlobalID,
    12831283                        ("Invalid VM ID = {%s}\n", strID.toAscii().constData()));
    12841284    /* Which is not loaded yet: */
     
    13021302}
    13031303
    1304 bool UIExtraDataManager::isFeatureAllowed(const QString &strKey, const QString &strID /* = m_sstrGlobalID */) const
     1304bool UIExtraDataManager::isFeatureAllowed(const QString &strKey, const QString &strID /* = GlobalID */) const
    13051305{
    13061306    /* Hot-load machine extra-data map if necessary: */
    1307     if (strID != m_sstrGlobalID && !m_data.contains(strID))
     1307    if (strID != GlobalID && !m_data.contains(strID))
    13081308        hotloadMachineExtraDataMap(strID);
    13091309
     
    13231323}
    13241324
    1325 bool UIExtraDataManager::isFeatureRestricted(const QString &strKey, const QString &strID /* = m_sstrGlobalID */) const
     1325bool UIExtraDataManager::isFeatureRestricted(const QString &strKey, const QString &strID /* = GlobalID */) const
    13261326{
    13271327    /* Hot-load machine extra-data map if necessary: */
    1328     if (strID != m_sstrGlobalID && !m_data.contains(strID))
     1328    if (strID != GlobalID && !m_data.contains(strID))
    13291329        hotloadMachineExtraDataMap(strID);
    13301330
     
    13541354}
    13551355
    1356 QString UIExtraDataManager::extraDataString(const QString &strKey, const QString &strID /* = m_sstrGlobalID */) const
     1356QString UIExtraDataManager::extraDataString(const QString &strKey, const QString &strID /* = GlobalID */) const
    13571357{
    13581358    /* Hot-load machine extra-data map if necessary: */
    1359     if (strID != m_sstrGlobalID && !m_data.contains(strID))
     1359    if (strID != GlobalID && !m_data.contains(strID))
    13601360        hotloadMachineExtraDataMap(strID);
    13611361
     
    13711371}
    13721372
    1373 void UIExtraDataManager::setExtraDataString(const QString &strKey, const QString &strValue, const QString &strID /* = m_sstrGlobalID */)
     1373void UIExtraDataManager::setExtraDataString(const QString &strKey, const QString &strValue, const QString &strID /* = GlobalID */)
    13741374{
    13751375    /* Hot-load machine extra-data map if necessary: */
    1376     if (strID != m_sstrGlobalID && !m_data.contains(strID))
     1376    if (strID != GlobalID && !m_data.contains(strID))
    13771377        hotloadMachineExtraDataMap(strID);
    13781378
     
    13841384
    13851385    /* Global extra-data: */
    1386     if (strID == m_sstrGlobalID)
     1386    if (strID == GlobalID)
    13871387    {
    13881388        /* Get global object: */
     
    14031403}
    14041404
    1405 QStringList UIExtraDataManager::extraDataStringList(const QString &strKey, const QString &strID /* = m_sstrGlobalID */) const
     1405QStringList UIExtraDataManager::extraDataStringList(const QString &strKey, const QString &strID /* = GlobalID */) const
    14061406{
    14071407    /* Hot-load machine extra-data map if necessary: */
    1408     if (strID != m_sstrGlobalID && !m_data.contains(strID))
     1408    if (strID != GlobalID && !m_data.contains(strID))
    14091409        hotloadMachineExtraDataMap(strID);
    14101410
     
    14211421}
    14221422
    1423 void UIExtraDataManager::setExtraDataStringList(const QString &strKey, const QStringList &strValue, const QString &strID /* = m_sstrGlobalID */)
     1423void UIExtraDataManager::setExtraDataStringList(const QString &strKey, const QStringList &strValue, const QString &strID /* = GlobalID */)
    14241424{
    14251425    /* Hot-load machine extra-data map if necessary: */
    1426     if (strID != m_sstrGlobalID && !m_data.contains(strID))
     1426    if (strID != GlobalID && !m_data.contains(strID))
    14271427        hotloadMachineExtraDataMap(strID);
    14281428
     
    14341434
    14351435    /* Global extra-data: */
    1436     if (strID == m_sstrGlobalID)
     1436    if (strID == GlobalID)
    14371437    {
    14381438        /* Get global object: */
  • trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h

    r51679 r51927  
    6767
    6868public:
     69
     70    /** Global extra-data ID. */
     71    static const QString GlobalID;
    6972
    7073    /** Static Extra-data Manager instance/constructor. */
     
    408411    /** Determines whether feature corresponding to passed @a strKey is allowed.
    409412      * If valid @a strID is set => applies to machine extra-data, otherwise => to global one. */
    410     bool isFeatureAllowed(const QString &strKey, const QString &strID = m_sstrGlobalID) const;
     413    bool isFeatureAllowed(const QString &strKey, const QString &strID = GlobalID) const;
    411414    /** Determines whether feature corresponding to passed @a strKey is restricted.
    412415      * If valid @a strID is set => applies to machine extra-data, otherwise => to global one. */
    413     bool isFeatureRestricted(const QString &strKey, const QString &strID = m_sstrGlobalID) const;
     416    bool isFeatureRestricted(const QString &strKey, const QString &strID = GlobalID) const;
    414417
    415418    /** Translates bool flag into 'allowed' value. */
     
    420423    /** Returns extra-data value corresponding to passed @a strKey as QString.
    421424      * If valid @a strID is set => applies to machine extra-data, otherwise => to global one. */
    422     QString extraDataString(const QString &strKey, const QString &strID = m_sstrGlobalID) const;
     425    QString extraDataString(const QString &strKey, const QString &strID = GlobalID) const;
    423426    /** Defines extra-data value corresponding to passed @a strKey as strValue.
    424427      * If valid @a strID is set => applies to machine extra-data, otherwise => to global one. */
    425     void setExtraDataString(const QString &strKey, const QString &strValue, const QString &strID = m_sstrGlobalID);
     428    void setExtraDataString(const QString &strKey, const QString &strValue, const QString &strID = GlobalID);
    426429
    427430    /** Returns extra-data value corresponding to passed @a strKey as QStringList.
    428431      * If valid @a strID is set => applies to machine extra-data, otherwise => to global one. */
    429     QStringList extraDataStringList(const QString &strKey, const QString &strID = m_sstrGlobalID) const;
     432    QStringList extraDataStringList(const QString &strKey, const QString &strID = GlobalID) const;
    430433    /** Defines extra-data value corresponding to passed @a strKey as strValue.
    431434      * If valid @a strID is set => applies to machine extra-data, otherwise => to global one. */
    432     void setExtraDataStringList(const QString &strKey, const QStringList &strValue, const QString &strID = m_sstrGlobalID);
     435    void setExtraDataStringList(const QString &strKey, const QStringList &strValue, const QString &strID = GlobalID);
    433436
    434437    /** Returns string consisting of @a strBase appended with @a uScreenIndex for the *non-primary* screen-index.
     
    437440
    438441    /** Singleton Extra-data Manager instance. */
    439     static UIExtraDataManager *m_pInstance;
    440 
    441     /** Global extra-data ID. */
    442     static QString m_sstrGlobalID;
    443 
    444     /** Main event-listener instance. */
     442    static UIExtraDataManager *m_spInstance;
     443
     444    /** Holds main event-listener instance. */
    445445    CEventListener m_listener;
    446     /** Extra-data event-handler instance. */
     446    /** Holds extra-data event-handler instance. */
    447447    UIExtraDataEventHandler *m_pHandler;
    448448
    449     /** Extra-data map. */
     449    /** Holds extra-data map instance. */
    450450    mutable QMap<QString, ExtraDataMap> m_data;
    451451};
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