VirtualBox

Changeset 66562 in vbox


Ignore:
Timestamp:
Apr 13, 2017 3:35:30 PM (7 years ago)
Author:
vboxsync
Message:

FE/Qt: Reworking UIPortForwardingData => UIDataPortForwardingRule, extending it with standard UIData* APIs.

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

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetwork.cpp

    r66460 r66562  
    10841084        if (rules.size() != 6)
    10851085            continue;
    1086         data.m_ipv4rules << UIPortForwardingData(rules[0],
    1087                                                  gpConverter->fromInternalString<KNATProtocol>(rules[1]),
    1088                                                  QString(rules[2]).remove('[').remove(']'),
    1089                                                  rules[3].toUInt(),
    1090                                                  QString(rules[4]).remove('[').remove(']'),
    1091                                                  rules[5].toUInt());
     1086        data.m_ipv4rules << UIDataPortForwardingRule(rules[0],
     1087                                                     gpConverter->fromInternalString<KNATProtocol>(rules[1]),
     1088                                                     QString(rules[2]).remove('[').remove(']'),
     1089                                                     rules[3].toUInt(),
     1090                                                     QString(rules[4]).remove('[').remove(']'),
     1091                                                     rules[5].toUInt());
    10921092    }
    10931093
     
    11121112        if (rules.size() != 6)
    11131113            continue;
    1114         data.m_ipv6rules << UIPortForwardingData(rules[0],
    1115                                                  gpConverter->fromInternalString<KNATProtocol>(rules[1]),
    1116                                                  QString(rules[2]).remove('[').remove(']'),
    1117                                                  rules[3].toUInt(),
    1118                                                  QString(rules[4]).remove('[').remove(']'),
    1119                                                  rules[5].toUInt());
     1114        data.m_ipv6rules << UIDataPortForwardingRule(rules[0],
     1115                                                     gpConverter->fromInternalString<KNATProtocol>(rules[1]),
     1116                                                     QString(rules[2]).remove('[').remove(']'),
     1117                                                     rules[3].toUInt(),
     1118                                                     QString(rules[4]).remove('[').remove(']'),
     1119                                                     rules[5].toUInt());
    11201120    }
    11211121}
     
    11391139    foreach (const QString &strRule, network.GetPortForwardRules4())
    11401140        network.RemovePortForwardRule(false, strRule.section(':', 0, 0));
    1141     foreach (const UIPortForwardingData &newRule, data.m_ipv4rules)
     1141    foreach (const UIDataPortForwardingRule &newRule, data.m_ipv4rules)
    11421142        network.AddPortForwardRule(false,
    11431143                                   newRule.name, newRule.protocol,
     
    11481148    foreach (const QString &strRule, network.GetPortForwardRules6())
    11491149        network.RemovePortForwardRule(true, strRule.section(':', 0, 0));
    1150     foreach (const UIPortForwardingData &newRule, data.m_ipv6rules)
     1150    foreach (const UIDataPortForwardingRule &newRule, data.m_ipv6rules)
    11511151        network.AddPortForwardRule(true,
    11521152                                   newRule.name, newRule.protocol,
  • trunk/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetworkDetailsNAT.h

    r66169 r66562  
    3838        , m_fSupportsIPv6(false)
    3939        , m_fAdvertiseDefaultIPv6Route(false)
    40         , m_ipv4rules(QList<UIPortForwardingData>())
    41         , m_ipv6rules(QList<UIPortForwardingData>())
     40        , m_ipv4rules(QList<UIDataPortForwardingRule>())
     41        , m_ipv6rules(QList<UIDataPortForwardingRule>())
    4242    {}
    4343
  • trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsNetwork.cpp

    r66559 r66562  
    10581058                const QStringList redirectData = redirect.split(',');
    10591059                AssertMsg(redirectData.size() == 6, ("Redirect rule should be composed of 6 parts!\n"));
    1060                 oldAdapterData.m_redirects << UIPortForwardingData(redirectData.at(0),
    1061                                                                    (KNATProtocol)redirectData.at(1).toUInt(),
    1062                                                                    redirectData.at(2),
    1063                                                                    redirectData.at(3).toUInt(),
    1064                                                                    redirectData.at(4),
    1065                                                                    redirectData.at(5).toUInt());
     1060                oldAdapterData.m_redirects << UIDataPortForwardingRule(redirectData.at(0),
     1061                                                                       (KNATProtocol)redirectData.at(1).toUInt(),
     1062                                                                       redirectData.at(2),
     1063                                                                       redirectData.at(3).toUInt(),
     1064                                                                       redirectData.at(4),
     1065                                                                       redirectData.at(5).toUInt());
    10661066            }
    10671067        }
     
    15901590                foreach (const QString &strOldRedirect, comAdapter.GetNATEngine().GetRedirects())
    15911591                    comAdapter.GetNATEngine().RemoveRedirect(strOldRedirect.section(',', 0, 0));
    1592                 foreach (const UIPortForwardingData &newRedirect, newAdapterData.m_redirects)
     1592                foreach (const UIDataPortForwardingRule &newRedirect, newAdapterData.m_redirects)
    15931593                    comAdapter.GetNATEngine().AddRedirect(newRedirect.name, newRedirect.protocol,
    1594                                                        newRedirect.hostIp, newRedirect.hostPort.value(),
    1595                                                        newRedirect.guestIp, newRedirect.guestPort.value());
     1594                                                          newRedirect.hostIp, newRedirect.hostPort.value(),
     1595                                                          newRedirect.guestIp, newRedirect.guestPort.value());
    15961596            }
    15971597
  • trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIPortForwardingTable.cpp

    r65759 r66562  
    559559{
    560560    /* Fetch the incoming data: */
    561     foreach (const UIPortForwardingData &rule, rules)
     561    foreach (const UIDataPortForwardingRule &rule, rules)
    562562        m_dataList << new UIPortForwardingRow(pParent,
    563563                                              rule.name, rule.protocol,
     
    592592    UIPortForwardingDataList data;
    593593    foreach (const UIPortForwardingRow *pRow, m_dataList)
    594         data << UIPortForwardingData(pRow->name(), pRow->protocol(),
    595                                      pRow->hostIp(), pRow->hostPort(),
    596                                      pRow->guestIp(), pRow->guestPort());
     594        data << UIDataPortForwardingRule(pRow->name(), pRow->protocol(),
     595                                         pRow->hostIp(), pRow->hostPort(),
     596                                         pRow->guestIp(), pRow->guestPort());
    597597    return data;
    598598}
  • trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIPortForwardingTable.h

    r64803 r66562  
    6262    PortData(ushort uValue) : m_uValue(uValue) {}
    6363    PortData(const PortData &other) : m_uValue(other.value()) {}
    64     bool operator==(const PortData &other) { return m_uValue == other.m_uValue; }
     64    bool operator==(const PortData &other) const { return m_uValue == other.m_uValue; }
    6565    ushort value() const { return m_uValue; }
    6666
     
    7171Q_DECLARE_METATYPE(PortData);
    7272
    73 /* Port forwarding data: */
    74 struct UIPortForwardingData
    75 {
    76     UIPortForwardingData(const NameData &strName, KNATProtocol protocol,
    77                          const IpData &strHostIP, PortData uHostPort,
    78                          const IpData &strGuestIP, PortData uGuestPort)
    79         : name(strName), protocol(protocol)
    80         , hostIp(strHostIP), hostPort(uHostPort)
    81         , guestIp(strGuestIP), guestPort(uGuestPort) {}
    82     bool operator==(const UIPortForwardingData &other)
     73/** Port Forwarding Rule data structure. */
     74struct UIDataPortForwardingRule
     75{
     76    /** Constructs data. */
     77    UIDataPortForwardingRule()
     78        : name(QString())
     79        , protocol(KNATProtocol_UDP)
     80        , hostIp(IpData())
     81        , hostPort(PortData())
     82        , guestIp(IpData())
     83        , guestPort(PortData())
     84    {}
     85
     86    /** Constructs data on the basis of passed arguments.
     87      * @param  strName      Brings the rule name.
     88      * @param  enmProtocol  Brings the rule protocol.
     89      * @param  strHostIP    Brings the rule host IP.
     90      * @param  uHostPort    Brings the rule host port.
     91      * @param  strGuestIP   Brings the rule guest IP.
     92      * @param  uGuestPort   Brings the rule guest port. */
     93    UIDataPortForwardingRule(const NameData &strName,
     94                             KNATProtocol enmProtocol,
     95                             const IpData &strHostIP,
     96                             PortData uHostPort,
     97                             const IpData &strGuestIP,
     98                             PortData uGuestPort)
     99        : name(strName)
     100        , protocol(enmProtocol)
     101        , hostIp(strHostIP)
     102        , hostPort(uHostPort)
     103        , guestIp(strGuestIP)
     104        , guestPort(uGuestPort)
     105    {}
     106
     107    /** Returns whether the @a other passed data is equal to this one. */
     108    bool equal(const UIDataPortForwardingRule &other) const
    83109    {
    84         return name == other.name &&
    85                protocol == other.protocol &&
    86                hostIp == other.hostIp &&
    87                hostPort == other.hostPort &&
    88                guestIp == other.guestIp &&
    89                guestPort == other.guestPort;
     110        return true
     111               && (name == other.name)
     112               && (protocol == other.protocol)
     113               && (hostIp == other.hostIp)
     114               && (hostPort == other.hostPort)
     115               && (guestIp == other.guestIp)
     116               && (guestPort == other.guestPort)
     117               ;
    90118    }
     119
     120    /** Returns whether the @a other passed data is equal to this one. */
     121    bool operator==(const UIDataPortForwardingRule &other) const { return equal(other); }
     122    /** Returns whether the @a other passed data is different from this one. */
     123    bool operator!=(const UIDataPortForwardingRule &other) const { return !equal(other); }
     124
     125    /** Holds the rule name. */
    91126    NameData name;
     127    /** Holds the rule protocol. */
    92128    KNATProtocol protocol;
     129    /** Holds the rule host IP. */
    93130    IpData hostIp;
     131    /** Holds the rule host port. */
    94132    PortData hostPort;
     133    /** Holds the rule guest IP. */
    95134    IpData guestIp;
     135    /** Holds the rule guest port. */
    96136    PortData guestPort;
    97137};
     
    120160
    121161/* Port forwarding data list: */
    122 typedef QList<UIPortForwardingData> UIPortForwardingDataList;
     162typedef QList<UIDataPortForwardingRule> UIPortForwardingDataList;
    123163
    124164/* Port forwarding dialog: */
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