VirtualBox

Changeset 84412 in vbox


Ignore:
Timestamp:
May 20, 2020 2:43:30 PM (5 years ago)
Author:
vboxsync
Message:

FE/Qt: bugref:9653: VirtualBox Manager: Chooser pane: Split extra-data related enum to few separate to be reused in various places.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/manager/chooser
Files:
7 edited

Legend:

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

    r84401 r84412  
    317317
    318318/* static */
    319 QString UIChooserAbstractModel::definitionOption(NodeDef enmOption)
    320 {
    321     switch (enmOption)
     319QString UIChooserAbstractModel::prefixToString(UIChooserNodeDataPrefixType enmType)
     320{
     321    switch (enmType)
    322322    {
    323323        /* Global nodes: */
    324         case NodeDef_GlobalPrefix:         return "n";
    325         case NodeDef_GlobalOptionFavorite: return "f";
    326         case NodeDef_GlobalValueDefault:   return "GLOBAL";
     324        case UIChooserNodeDataPrefixType_Global:        return "n";
    327325        /* Machine nodes: */
    328         case NodeDef_MachinePrefix:        return "m";
     326        case UIChooserNodeDataPrefixType_Machine:       return "m";
    329327        /* Group nodes: */
    330         case NodeDef_GroupPrefixLocal:     return "g";
    331         case NodeDef_GroupPrefixProvider:  return "p";
    332         case NodeDef_GroupPrefixProfile:   return "a";
    333         case NodeDef_GroupOptionOpened:    return "o";
     328        case UIChooserNodeDataPrefixType_Local:    return "g";
     329        case UIChooserNodeDataPrefixType_Provider: return "p";
     330        case UIChooserNodeDataPrefixType_Profile:  return "a";
     331    }
     332    return QString();
     333}
     334
     335/* static */
     336QString UIChooserAbstractModel::optionToString(UIChooserNodeDataOptionType enmType)
     337{
     338    switch (enmType)
     339    {
     340        /* Global nodes: */
     341        case UIChooserNodeDataOptionType_GlobalFavorite: return "f";
     342        /* Group nodes: */
     343        case UIChooserNodeDataOptionType_GroupOpened:    return "o";
     344    }
     345    return QString();
     346}
     347
     348/* static */
     349QString UIChooserAbstractModel::valueToString(UIChooserNodeDataValueType enmType)
     350{
     351    switch (enmType)
     352    {
     353        /* Global nodes: */
     354        case UIChooserNodeDataValueType_GlobalDefault: return "GLOBAL";
    334355    }
    335356    return QString();
     
    726747
    727748    /* Prepare required group definition reg-exp: */
    728     const QString strNodePrefixLocal = definitionOption(NodeDef_GroupPrefixLocal);
    729     const QString strNodePrefixProvider = definitionOption(NodeDef_GroupPrefixProvider);
    730     const QString strNodePrefixProfile = definitionOption(NodeDef_GroupPrefixProfile);
    731     const QString strNodeOptionOpened = definitionOption(NodeDef_GroupOptionOpened);
     749    const QString strNodePrefixLocal = prefixToString(UIChooserNodeDataPrefixType_Local);
     750    const QString strNodePrefixProvider = prefixToString(UIChooserNodeDataPrefixType_Provider);
     751    const QString strNodePrefixProfile = prefixToString(UIChooserNodeDataPrefixType_Profile);
     752    const QString strNodeOptionOpened = optionToString(UIChooserNodeDataOptionType_GroupOpened);
    732753    const QString strDefinitionTemplate = QString("[%1%2%3](\\S)*=%4").arg(strNodePrefixLocal,
    733754                                                                           strNodePrefixProvider,
     
    778799
    779800    /* Prepare required group definition reg-exp: */
    780     const QString strNodePrefix = definitionOption(NodeDef_GlobalPrefix);
    781     const QString strNodeOptionFavorite = definitionOption(NodeDef_GlobalOptionFavorite);
    782     const QString strNodeValueDefault = definitionOption(NodeDef_GlobalValueDefault);
     801    const QString strNodePrefix = prefixToString(UIChooserNodeDataPrefixType_Global);
     802    const QString strNodeOptionFavorite = optionToString(UIChooserNodeDataOptionType_GlobalFavorite);
     803    const QString strNodeValueDefault = valueToString(UIChooserNodeDataValueType_GlobalDefault);
    783804    const QString strDefinitionTemplate = QString("%1(\\S)*=%2").arg(strNodePrefix, strNodeValueDefault);
    784805    const QRegExp definitionRegExp(strDefinitionTemplate);
     
    857878        case UIChooserNodeType_Group:
    858879        {
    859             const QString strNodePrefixLocal = definitionOption(NodeDef_GroupPrefixLocal);
    860             const QString strNodePrefixProvider = definitionOption(NodeDef_GroupPrefixProvider);
    861             const QString strNodePrefixProfile = definitionOption(NodeDef_GroupPrefixProfile);
     880            const QString strNodePrefixLocal = prefixToString(UIChooserNodeDataPrefixType_Local);
     881            const QString strNodePrefixProvider = prefixToString(UIChooserNodeDataPrefixType_Provider);
     882            const QString strNodePrefixProfile = prefixToString(UIChooserNodeDataPrefixType_Profile);
    862883            strDefinitionTemplateShort = QString("^[%1%2%3](\\S)*=").arg(strNodePrefixLocal, strNodePrefixProvider, strNodePrefixProfile);
    863884            strDefinitionTemplateFull = QString("^[%1%2%3](\\S)*=%4$").arg(strNodePrefixLocal, strNodePrefixProvider, strNodePrefixProfile, strName);
     
    866887        case UIChooserNodeType_Machine:
    867888        {
    868             const QString strNodePrefix = definitionOption(NodeDef_MachinePrefix);
     889            const QString strNodePrefix = prefixToString(UIChooserNodeDataPrefixType_Machine);
    869890            strDefinitionTemplateShort = QString("^%1=").arg(strNodePrefix);
    870891            strDefinitionTemplateFull = QString("^%1=%2$").arg(strNodePrefix, strName);
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/chooser/UIChooserAbstractModel.h

    r84378 r84412  
    6565public:
    6666
    67     /** Extra-data node definition option types. */
    68     enum NodeDef
    69     {
    70         NodeDef_GlobalPrefix,
    71         NodeDef_GlobalOptionFavorite,
    72         NodeDef_GlobalValueDefault,
    73         NodeDef_MachinePrefix,
    74         NodeDef_GroupPrefixLocal,
    75         NodeDef_GroupPrefixProvider,
    76         NodeDef_GroupPrefixProfile,
    77         NodeDef_GroupOptionOpened,
    78     };
    79 
    8067    /** Constructs abstract Chooser-model passing @a pParent to the base-class. */
    8168    UIChooserAbstractModel(UIChooser *pParent);
     
    123110        static QString toOldStyleUuid(const QUuid &uId);
    124111
    125         /** Returns extra-data node definition option of certain @a enmType. */
    126         static QString definitionOption(NodeDef enmType);
     112        /** Returns node extra-data prefix of certain @a enmType. */
     113        static QString prefixToString(UIChooserNodeDataPrefixType enmType);
     114        /** Returns node extra-data option of certain @a enmType. */
     115        static QString optionToString(UIChooserNodeDataOptionType enmType);
     116        /** Returns node extra-data value of certain @a enmType. */
     117        static QString valueToString(UIChooserNodeDataValueType enmType);
    127118    /** @} */
    128119
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/chooser/UIChooserDefs.h

    r84400 r84412  
    4949
    5050
     51/** UIChooserNode extra-data prefix types. */
     52enum UIChooserNodeDataPrefixType
     53{
     54    UIChooserNodeDataPrefixType_Global,
     55    UIChooserNodeDataPrefixType_Machine,
     56    UIChooserNodeDataPrefixType_Local,
     57    UIChooserNodeDataPrefixType_Provider,
     58    UIChooserNodeDataPrefixType_Profile
     59};
     60
     61
     62/** UIChooserNode extra-data option types. */
     63enum UIChooserNodeDataOptionType
     64{
     65    UIChooserNodeDataOptionType_GlobalFavorite,
     66    UIChooserNodeDataOptionType_GroupOpened
     67};
     68
     69
     70/** UIChooserNode extra-data value types. */
     71enum UIChooserNodeDataValueType
     72{
     73    UIChooserNodeDataValueType_GlobalDefault
     74};
     75
     76
    5177/** UIChooserItem search flags. */
    5278enum UIChooserItemSearchFlag
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/chooser/UIChooserModel.cpp

    r84400 r84412  
    222222    const QString strItemDescriptor = strDefinition.section('=', 1, -1);
    223223    /* Its a local group-item definition? */
    224     if (strItemType == definitionOption(NodeDef_GroupPrefixLocal))
     224    if (strItemType == prefixToString(UIChooserNodeDataPrefixType_Local))
    225225    {
    226226        /* Search for group-item with passed descriptor (name): */
     
    230230    }
    231231    /* Its a provider group-item definition? */
    232     else if (strItemType == definitionOption(NodeDef_GroupPrefixProvider))
     232    else if (strItemType == prefixToString(UIChooserNodeDataPrefixType_Provider))
    233233    {
    234234        /* Search for group-item with passed descriptor (name): */
     
    238238    }
    239239    /* Its a profile group-item definition? */
    240     else if (strItemType == definitionOption(NodeDef_GroupPrefixProfile))
     240    else if (strItemType == prefixToString(UIChooserNodeDataPrefixType_Profile))
    241241    {
    242242        /* Search for group-item with passed descriptor (name): */
     
    246246    }
    247247    /* Its a global-item definition? */
    248     else if (strItemType == definitionOption(NodeDef_GlobalPrefix))
     248    else if (strItemType == prefixToString(UIChooserNodeDataPrefixType_Global))
    249249    {
    250250        /* Search for global-item with required name: */
     
    254254    }
    255255    /* Its a machine-item definition? */
    256     else if (strItemType == definitionOption(NodeDef_MachinePrefix))
     256    else if (strItemType == prefixToString(UIChooserNodeDataPrefixType_Machine))
    257257    {
    258258        /* Search for machine-item with required ID: */
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/chooser/UIChooserNodeGlobal.cpp

    r84376 r84412  
    7878QString UIChooserNodeGlobal::definition(bool fFull /* = false */) const
    7979{
    80     const QString strNodePrefix = UIChooserAbstractModel::definitionOption(UIChooserAbstractModel::NodeDef_GlobalPrefix);
    81     const QString strNodeOptionFavorite = UIChooserAbstractModel::definitionOption(UIChooserAbstractModel::NodeDef_GlobalOptionFavorite);
    82     const QString strNodeValueDefault = UIChooserAbstractModel::definitionOption(UIChooserAbstractModel::NodeDef_GlobalValueDefault);
     80    const QString strNodePrefix = UIChooserAbstractModel::prefixToString(UIChooserNodeDataPrefixType_Global);
     81    const QString strNodeOptionFavorite = UIChooserAbstractModel::optionToString(UIChooserNodeDataOptionType_GlobalFavorite);
     82    const QString strNodeValueDefault = UIChooserAbstractModel::valueToString(UIChooserNodeDataValueType_GlobalDefault);
    8383    return   fFull
    8484           ? QString("%1%2=%3").arg(strNodePrefix).arg(isFavorite() ? strNodeOptionFavorite : "").arg(strNodeValueDefault)
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/chooser/UIChooserNodeGroup.cpp

    r84400 r84412  
    112112    {
    113113        case UIChooserNodeGroupType_Local:
    114             strNodePrefix = UIChooserAbstractModel::definitionOption(UIChooserAbstractModel::NodeDef_GroupPrefixLocal);
     114            strNodePrefix = UIChooserAbstractModel::prefixToString(UIChooserNodeDataPrefixType_Local);
    115115            break;
    116116        case UIChooserNodeGroupType_Provider:
    117             strNodePrefix = UIChooserAbstractModel::definitionOption(UIChooserAbstractModel::NodeDef_GroupPrefixProvider);
     117            strNodePrefix = UIChooserAbstractModel::prefixToString(UIChooserNodeDataPrefixType_Provider);
    118118            break;
    119119        case UIChooserNodeGroupType_Profile:
    120             strNodePrefix = UIChooserAbstractModel::definitionOption(UIChooserAbstractModel::NodeDef_GroupPrefixProfile);
     120            strNodePrefix = UIChooserAbstractModel::prefixToString(UIChooserNodeDataPrefixType_Profile);
    121121            break;
    122122        default:
    123123            AssertFailedReturn(QString());
    124124    }
    125     const QString strNodeOptionOpened = UIChooserAbstractModel::definitionOption(UIChooserAbstractModel::NodeDef_GroupOptionOpened);
     125    const QString strNodeOptionOpened = UIChooserAbstractModel::optionToString(UIChooserNodeDataOptionType_GroupOpened);
    126126    return   fFull
    127127           ? QString("%1%2=%3").arg(strNodePrefix).arg(isOpened() ? strNodeOptionOpened : "").arg(name())
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/chooser/UIChooserNodeMachine.cpp

    r84376 r84412  
    138138QString UIChooserNodeMachine::definition(bool) const
    139139{
    140     const QString strNodePrefix = UIChooserAbstractModel::definitionOption(UIChooserAbstractModel::NodeDef_MachinePrefix);
     140    const QString strNodePrefix = UIChooserAbstractModel::prefixToString(UIChooserNodeDataPrefixType_Machine);
    141141    return QString("%1=%2").arg(strNodePrefix).arg(UIChooserAbstractModel::toOldStyleUuid(id()));
    142142}
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