Index: sources/view/settings/VNetworkModel.cpp =================================================================== diff -u -r1c18f738693756ca1f0342c2cc158e32bc28f90b -ra302861c33cdda0f0a95ade9b7c6a02b5593a9f2 --- sources/view/settings/VNetworkModel.cpp (.../VNetworkModel.cpp) (revision 1c18f738693756ca1f0342c2cc158e32bc28f90b) +++ sources/view/settings/VNetworkModel.cpp (.../VNetworkModel.cpp) (revision a302861c33cdda0f0a95ade9b7c6a02b5593a9f2) @@ -1,5 +1,6 @@ // Qt +#include // Project #include "VNetworkModel.h" @@ -9,6 +10,7 @@ using namespace View; VNetworkModel::VNetworkModel(QAbstractListModel *parent) : QAbstractListModel(parent) { + startTimer(_interval); initConnections(); } @@ -348,6 +350,11 @@ emit didRequestSetDNS(vDNS.trimmed()); } +void VNetworkModel::timerEvent(QTimerEvent *) +{ + checkEthernet(); +} + /*! * \brief VNetworkModel::clearWifiSettings * Clears the selected network settings @@ -362,6 +369,20 @@ macAddress(""); } +void VNetworkModel::checkEthernet() +{ + const QNetworkInterface eth0 = QNetworkInterface::interfaceFromName("eth0"); + if ( eth0.isValid() ) { + auto addresses = eth0.allAddresses(); + if ( addresses.count() > 2 ) { + ethernetIP(addresses[2].toString()); + } + else { + ethernetIP("No Ethernet"); + } + } +} + /*! * \brief VNetworkModel::onSetIPAddressSuccess * Called when the IP address has been set