VirtualBox

Changeset 94725 in vbox for trunk/src/VBox/Frontends


Ignore:
Timestamp:
Apr 27, 2022 2:39:28 PM (3 years ago)
Author:
vboxsync
Message:

FE/Qt/Ds: bugref:10205: Migrating global update preferences and linked stuff from internal BranchType enum to Main API KUpdateChannel.

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

Legend:

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

    r93996 r94725  
    6565    }
    6666    url.addQueryItem("count", QString::number(gEDataManager->applicationUpdateCheckCounter()));
    67     url.addQueryItem("branch", VBoxUpdateData(gEDataManager->applicationUpdateData()).branchName());
     67    url.addQueryItem("branch", VBoxUpdateData(gEDataManager->applicationUpdateData()).updateChannelName());
    6868    const QString strUserAgent(QString("VirtualBox %1 <%2>").arg(uiCommon().virtualBox().GetVersion()).arg(platformInfo()));
    6969
  • trunk/src/VBox/Frontends/VirtualBox/src/networking/UIUpdateDefs.cpp

    r94009 r94725  
    6868    : m_strData(strData)
    6969    , m_enmPeriodIndex(Period1Day)
    70     , m_enmBranchIndex(BranchStable)
     70    , m_enmUpdateChannel(KUpdateChannel_Stable)
    7171{
    7272    decode();
    7373}
    7474
    75 VBoxUpdateData::VBoxUpdateData(PeriodType enmPeriodIndex, BranchType enmBranchIndex)
     75VBoxUpdateData::VBoxUpdateData(PeriodType enmPeriodIndex, KUpdateChannel enmUpdateChannel)
    7676    : m_strData(QString())
    7777    , m_enmPeriodIndex(enmPeriodIndex)
    78     , m_enmBranchIndex(enmBranchIndex)
     78    , m_enmUpdateChannel(enmUpdateChannel)
    7979{
    8080    encode();
     
    126126}
    127127
    128 VBoxUpdateData::BranchType VBoxUpdateData::branchIndex() const
    129 {
    130     return m_enmBranchIndex;
    131 }
    132 
    133 QString VBoxUpdateData::branchName() const
    134 {
    135     switch (m_enmBranchIndex)
    136     {
    137         case BranchStable:
    138             return "stable";
    139         case BranchAllRelease:
    140             return "allrelease";
    141         case BranchWithBetas:
    142             return "withbetas";
    143     }
    144     return QString();
     128KUpdateChannel VBoxUpdateData::updateChannel() const
     129{
     130    return m_enmUpdateChannel;
     131}
     132
     133QString VBoxUpdateData::updateChannelName() const
     134{
     135    return updateChannelToInternalString(m_enmUpdateChannel);
    145136}
    146137
     
    156147           && (m_enmPeriodIndex == another.periodIndex())
    157148           && (m_date == another.internalDate())
    158            && (m_enmBranchIndex == another.branchIndex())
     149           && (m_enmUpdateChannel == another.updateChannel())
    159150           && (m_version == another.version())
    160151              ;
     
    169160{
    170161    return !isEqual(another);
     162}
     163
     164/* static */
     165QString VBoxUpdateData::updateChannelToInternalString(KUpdateChannel enmUpdateChannel)
     166{
     167    switch (enmUpdateChannel)
     168    {
     169        case KUpdateChannel_WithTesting: return "withtesting";
     170        case KUpdateChannel_WithBetas: return "withbetas";
     171        case KUpdateChannel_All: return "allrelease";
     172        default: return "stable";
     173    }
     174}
     175
     176/* static */
     177KUpdateChannel VBoxUpdateData::updateChannelFromInternalString(const QString &strUpdateChannel)
     178{
     179    QMap<QString, KUpdateChannel> pairs;
     180    pairs["withtesting"] = KUpdateChannel_WithTesting;
     181    pairs["withbetas"] = KUpdateChannel_WithBetas;
     182    pairs["allrelease"] = KUpdateChannel_All;
     183    return pairs.value(strUpdateChannel, KUpdateChannel_Stable);
    171184}
    172185
     
    180193    {
    181194#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)
    182         QStringList parser(m_strData.split(", ", Qt::SkipEmptyParts));
     195        QStringList parser = m_strData.split(", ", Qt::SkipEmptyParts);
    183196#else
    184         QStringList parser(m_strData.split(", ", QString::SkipEmptyParts));
     197        QStringList parser = m_strData.split(", ", QString::SkipEmptyParts);
    185198#endif
    186199
     
    190203            if (m_dayList.isEmpty())
    191204                populate();
    192             PeriodType index = (PeriodType)m_dayList.indexOf(VBoxUpdateDay(QString(), parser[0]));
     205            PeriodType index = (PeriodType)m_dayList.indexOf(VBoxUpdateDay(QString(), parser.at(0)));
    193206            m_enmPeriodIndex = index == PeriodUndefined ? Period1Day : index;
    194207        }
     
    197210        if (parser.size() > 1)
    198211        {
    199             QDate date = QDate::fromString(parser[1], Qt::ISODate);
     212            QDate date = QDate::fromString(parser.at(1), Qt::ISODate);
    200213            m_date = date.isValid() ? date : QDate::currentDate();
    201214        }
    202215
    203         /* Parse 'branch' value: */
     216        /* Parse 'update channel' value: */
    204217        if (parser.size() > 2)
    205218        {
    206             QString branch(parser[2]);
    207             m_enmBranchIndex = branch == "withbetas" ? BranchWithBetas :
    208                             branch == "allrelease" ? BranchAllRelease : BranchStable;
     219            m_enmUpdateChannel = updateChannelFromInternalString(parser.at(2));
    209220        }
    210221
     
    212223        if (parser.size() > 3)
    213224        {
    214             m_version = UIVersion(parser[3]);
     225            m_version = UIVersion(parser.at(3));
    215226        }
    216227    }
     
    241252        QString remindDate = m_date.toString(Qt::ISODate);
    242253
    243         /* Encode 'branch' value: */
    244         QString branchValue = m_enmBranchIndex == BranchWithBetas ? "withbetas" :
    245                               m_enmBranchIndex == BranchAllRelease ? "allrelease" : "stable";
     254        /* Encode 'update channel' value: */
     255        QString strUpdateChannel = updateChannelName();
    246256
    247257        /* Encode 'version' value: */
     
    249259
    250260        /* Composite m_strData: */
    251         m_strData = QString("%1, %2, %3, %4").arg(remindPeriod, remindDate, branchValue, versionValue);
     261        m_strData = QString("%1, %2, %3, %4").arg(remindPeriod, remindDate, strUpdateChannel, versionValue);
    252262    }
    253263}
  • trunk/src/VBox/Frontends/VirtualBox/src/networking/UIUpdateDefs.h

    r94017 r94725  
    2828#include "UILibraryDefs.h"
    2929#include "UIVersion.h"
     30
     31/* COM includes: */
     32#include "COMEnums.h"
    3033
    3134
     
    6669    };
    6770
    68     /** Branch types. */
    69     enum BranchType
    70     {
    71         BranchStable     = 0,
    72         BranchAllRelease = 1,
    73         BranchWithBetas  = 2
    74     };
    75 
    7671    /** Populates a set of update options. */
    7772    static void populate();
     
    8176    /** Constructs update description on the basis of passed @a strData. */
    8277    VBoxUpdateData(const QString &strData = QString());
    83     /** Constructs update description on the basis of passed @a enmPeriodIndex and @a enmBranchIndex. */
    84     VBoxUpdateData(PeriodType enmPeriodIndex, BranchType enmBranchIndex);
     78    /** Constructs update description on the basis of passed @a enmPeriodIndex and @a enmUpdateChannel. */
     79    VBoxUpdateData(PeriodType enmPeriodIndex, KUpdateChannel enmUpdateChannel);
    8580
    8681    /** Returns whether there is no need to check. */
     
    9691    /** Returns internal update date. */
    9792    QDate internalDate() const;
    98     /** Returns branch index. */
    99     BranchType branchIndex() const;
    100     /** Returns period name. */
    101     QString branchName() const;
     93    /** Returns update channel. */
     94    KUpdateChannel updateChannel() const;
     95    /** Returns update channel name. */
     96    QString updateChannelName() const;
    10297    /** Returns version. */
    10398    UIVersion version() const;
     
    109104    /** Returns whether this item isn't equal to @a another one. */
    110105    bool operator!=(const VBoxUpdateData &another) const;
     106
     107    /** Converts passed @a enmUpdateChannel to internal QString value.
     108      * @note This isn't a member of UIConverter since it's used for
     109      *       legacy extra-data settings saving routine only. */
     110    static QString updateChannelToInternalString(KUpdateChannel enmUpdateChannel);
     111    /** Converts passed @a strUpdateChannel to KUpdateChannel value.
     112      * @note This isn't a member of UIConverter since it's used for
     113      *       legacy extra-data settings saving routine only. */
     114    static KUpdateChannel updateChannelFromInternalString(const QString &strUpdateChannel);
    111115
    112116private:
     
    121125
    122126    /** Holds the update data. */
    123     QString     m_strData;
     127    QString         m_strData;
    124128    /** Holds the update period index. */
    125     PeriodType  m_enmPeriodIndex;
     129    PeriodType      m_enmPeriodIndex;
    126130    /** Holds the update date. */
    127     QDate       m_date;
    128     /** Holds the update branch index. */
    129     BranchType  m_enmBranchIndex;
     131    QDate           m_date;
     132    /** Holds the update channel. */
     133    KUpdateChannel  m_enmUpdateChannel;
    130134    /** Holds the update version. */
    131     UIVersion   m_version;
     135    UIVersion       m_version;
    132136};
    133137
  • trunk/src/VBox/Frontends/VirtualBox/src/networking/UIUpdateManager.cpp

    r94516 r94725  
    364364    VBoxUpdateData currentData(gEDataManager->applicationUpdateData());
    365365    /* Encode/save new update data: */
    366     VBoxUpdateData newData(currentData.periodIndex(), currentData.branchIndex());
     366    VBoxUpdateData newData(currentData.periodIndex(), currentData.updateChannel());
    367367    gEDataManager->setApplicationUpdateData(newData.data());
    368368
  • trunk/src/VBox/Frontends/VirtualBox/src/settings/editors/UIUpdateSettingsEditor.cpp

    r94395 r94725  
    5858                if (m_pComboUpdatePeriod)
    5959                    m_pComboUpdatePeriod->setCurrentIndex(m_guiValue.periodIndex());
    60                 if (m_mapRadioButtons.value(m_guiValue.branchIndex()))
    61                     m_mapRadioButtons.value(m_guiValue.branchIndex())->setChecked(true);
     60                if (m_mapRadioButtons.value(m_guiValue.updateChannel()))
     61                    m_mapRadioButtons.value(m_guiValue.updateChannel())->setChecked(true);
    6262            }
    6363
     
    6969VBoxUpdateData UIUpdateSettingsEditor::value() const
    7070{
    71     return m_pCheckBox ? VBoxUpdateData(periodType(), branchType()) : m_guiValue;
     71    return m_pCheckBox ? VBoxUpdateData(periodType(), updateChannel()) : m_guiValue;
    7272}
    7373
     
    100100
    101101    /* Translate branch widgets: */
    102     if (m_mapRadioButtons.value(VBoxUpdateData::BranchStable))
    103     {
    104         m_mapRadioButtons.value(VBoxUpdateData::BranchStable)->setToolTip(tr("When chosen, you will be notified "
    105                                                                              "about stable updates to VirtualBox."));
    106         m_mapRadioButtons.value(VBoxUpdateData::BranchStable)->setText(tr("&Stable Release Versions"));
    107     }
    108     if (m_mapRadioButtons.value(VBoxUpdateData::BranchAllRelease))
    109     {
    110         m_mapRadioButtons.value(VBoxUpdateData::BranchAllRelease)->setToolTip(tr("When chosen, you will be notified "
    111                                                                                  "about all new VirtualBox releases."));
    112         m_mapRadioButtons.value(VBoxUpdateData::BranchAllRelease)->setText(tr("&All New Releases"));
    113     }
    114     if (m_mapRadioButtons.value(VBoxUpdateData::BranchWithBetas))
    115     {
    116         m_mapRadioButtons.value(VBoxUpdateData::BranchWithBetas)->setToolTip(tr("When chosen, you will be notified "
    117                                                                                 "about all new VirtualBox releases and "
    118                                                                                 "pre-release versions of VirtualBox."));
    119         m_mapRadioButtons.value(VBoxUpdateData::BranchWithBetas)->setText(tr("All New Releases and &Pre-Releases"));
     102    if (m_mapRadioButtons.value(KUpdateChannel_Stable))
     103    {
     104        m_mapRadioButtons.value(KUpdateChannel_Stable)->setText(tr("&Stable Release Versions"));
     105        m_mapRadioButtons.value(KUpdateChannel_Stable)->setToolTip(tr("When chosen, you will be notified "
     106                                                                      "about stable updates to VirtualBox."));
     107    }
     108    if (m_mapRadioButtons.value(KUpdateChannel_All))
     109    {
     110        m_mapRadioButtons.value(KUpdateChannel_All)->setText(tr("&All New Releases"));
     111        m_mapRadioButtons.value(KUpdateChannel_All)->setToolTip(tr("When chosen, you will be notified "
     112                                                                   "about all new VirtualBox releases."));
     113    }
     114    if (m_mapRadioButtons.value(KUpdateChannel_WithBetas))
     115    {
     116        m_mapRadioButtons.value(KUpdateChannel_WithBetas)->setText(tr("All New Releases and &Pre-Releases"));
     117        m_mapRadioButtons.value(KUpdateChannel_WithBetas)->setToolTip(tr("When chosen, you will be notified "
     118                                                                         "about all new VirtualBox releases and "
     119                                                                         "pre-release versions of VirtualBox."));
    120120    }
    121121}
     
    134134        && m_pRadioButtonGroup
    135135        && !m_pRadioButtonGroup->checkedButton()
    136         && m_mapRadioButtons.value(VBoxUpdateData::BranchStable))
    137         m_mapRadioButtons.value(VBoxUpdateData::BranchStable)->setChecked(true);
     136        && m_mapRadioButtons.value(KUpdateChannel_Stable))
     137        m_mapRadioButtons.value(KUpdateChannel_Stable)->setChecked(true);
    138138}
    139139
     
    141141{
    142142    if (m_pFieldUpdateDate)
    143         m_pFieldUpdateDate->setText(VBoxUpdateData(periodType(), branchType()).date());
     143        m_pFieldUpdateDate->setText(VBoxUpdateData(periodType(), updateChannel()).date());
    144144}
    145145
     
    228228                {
    229229                    /* Prepare 'update to "stable"' radio-button: */
    230                     m_mapRadioButtons[VBoxUpdateData::BranchStable] = new QRadioButton(m_pWidgetUpdateSettings);
    231                     if (m_mapRadioButtons.value(VBoxUpdateData::BranchStable))
     230                    m_mapRadioButtons[KUpdateChannel_Stable] = new QRadioButton(m_pWidgetUpdateSettings);
     231                    if (m_mapRadioButtons.value(KUpdateChannel_Stable))
    232232                    {
    233                         m_pRadioButtonGroup->addButton(m_mapRadioButtons.value(VBoxUpdateData::BranchStable));
    234                         pLayoutUpdateSettings->addWidget(m_mapRadioButtons.value(VBoxUpdateData::BranchStable), 2, 1);
     233                        m_pRadioButtonGroup->addButton(m_mapRadioButtons.value(KUpdateChannel_Stable));
     234                        pLayoutUpdateSettings->addWidget(m_mapRadioButtons.value(KUpdateChannel_Stable), 2, 1);
    235235                    }
    236236                    /* Prepare 'update to "all release"' radio-button: */
    237                     m_mapRadioButtons[VBoxUpdateData::BranchAllRelease] = new QRadioButton(m_pWidgetUpdateSettings);
    238                     if (m_mapRadioButtons.value(VBoxUpdateData::BranchAllRelease))
     237                    m_mapRadioButtons[KUpdateChannel_All] = new QRadioButton(m_pWidgetUpdateSettings);
     238                    if (m_mapRadioButtons.value(KUpdateChannel_All))
    239239                    {
    240                         m_pRadioButtonGroup->addButton(m_mapRadioButtons.value(VBoxUpdateData::BranchAllRelease));
    241                         pLayoutUpdateSettings->addWidget(m_mapRadioButtons.value(VBoxUpdateData::BranchAllRelease), 3, 1);
     240                        m_pRadioButtonGroup->addButton(m_mapRadioButtons.value(KUpdateChannel_All));
     241                        pLayoutUpdateSettings->addWidget(m_mapRadioButtons.value(KUpdateChannel_All), 3, 1);
    242242                    }
    243243                    /* Prepare 'update to "with betas"' radio-button: */
    244                     m_mapRadioButtons[VBoxUpdateData::BranchWithBetas] = new QRadioButton(m_pWidgetUpdateSettings);
    245                     if (m_mapRadioButtons.value(VBoxUpdateData::BranchWithBetas))
     244                    m_mapRadioButtons[KUpdateChannel_WithBetas] = new QRadioButton(m_pWidgetUpdateSettings);
     245                    if (m_mapRadioButtons.value(KUpdateChannel_WithBetas))
    246246                    {
    247                         m_pRadioButtonGroup->addButton(m_mapRadioButtons.value(VBoxUpdateData::BranchWithBetas));
    248                         pLayoutUpdateSettings->addWidget(m_mapRadioButtons.value(VBoxUpdateData::BranchWithBetas), 4, 1);
     247                        m_pRadioButtonGroup->addButton(m_mapRadioButtons.value(KUpdateChannel_WithBetas));
     248                        pLayoutUpdateSettings->addWidget(m_mapRadioButtons.value(KUpdateChannel_WithBetas), 4, 1);
    249249                    }
    250250                }
     
    273273}
    274274
    275 VBoxUpdateData::BranchType UIUpdateSettingsEditor::branchType() const
     275KUpdateChannel UIUpdateSettingsEditor::updateChannel() const
    276276{
    277277    QAbstractButton *pCheckedButton = m_pRadioButtonGroup ? m_pRadioButtonGroup->checkedButton() : 0;
    278     return pCheckedButton ? m_mapRadioButtons.key(pCheckedButton, VBoxUpdateData::BranchStable) : VBoxUpdateData::BranchStable;
    279 }
     278    return m_mapRadioButtons.key(pCheckedButton, KUpdateChannel_Stable);
     279}
  • trunk/src/VBox/Frontends/VirtualBox/src/settings/editors/UIUpdateSettingsEditor.h

    r94395 r94725  
    7474    /** Returns period type. */
    7575    VBoxUpdateData::PeriodType periodType() const;
    76     /** Returns branch type. */
    77     VBoxUpdateData::BranchType branchType() const;
     76    /** Returns update channel. */
     77    KUpdateChannel updateChannel() const;
    7878
    7979    /** Holds the value to be set. */
     
    9898
    9999        /** Holds the radio button group instance. */
    100         QButtonGroup                                       *m_pRadioButtonGroup;
     100        QButtonGroup                           *m_pRadioButtonGroup;
    101101        /** Holds the radio button map instance. */
    102         QMap<VBoxUpdateData::BranchType, QAbstractButton*>  m_mapRadioButtons;
     102        QMap<KUpdateChannel, QAbstractButton*>  m_mapRadioButtons;
    103103    /** @} */
    104104};
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