#include "ndgui.h" ndgui::ndgui(QWidget *parent) : QWidget(parent) { ui.setupUi(this); buildGui(); addInterfacesToGroupBox(list); setWindowTitle(tr("NetD")); } ndgui::~ndgui() { } void ndgui::buildGui() { ndStatusLabel = new QLabel(tr("test")); ndStatusLabel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); ndStatusLabel->setAlignment(Qt::AlignCenter); ndStatusLabel->setMinimumSize(100, 20); // create interface group box createInterfaceGroupBox(); mainLayout = new QVBoxLayout; mainLayout->addWidget(ndStatusLabel); mainLayout->addWidget(interfaceGroupBox); setLayout(mainLayout); } void ndgui::createInterfaceGroupBox(){ interfaceGroupBox = new QGroupBox(tr("Interfaces")); interfaceGroupBoxLayout = new QVBoxLayout; /* add interfaces via addInterfacesToGroupBox()*/ interfaceGroupBox->setLayout(interfaceGroupBoxLayout); } void ndgui::addInterfacesToGroupBox(QList &interfaces) { foreach(QNetworkInterface nI, interfaces){ int index = indexToIfaceNameMap.value(nI.humanReadableName()); QHBoxLayout *hBoxLayout = new QHBoxLayout; QLabel *label = new QLabel(nI.humanReadableName()); QProgressBar *pBar = new QProgressBar(this); pBar->setRange(1,100); pBar->setMaximumSize(200,20); progressBars.insert(index,pBar); hBoxLayout->addWidget(label, Qt::AlignLeft); hBoxLayout->addWidget(pBar, Qt::AlignRight); interfaceGroupBoxLayout->addLayout(hBoxLayout,2); } } void ndgui::handleProgress(int iFaceIndex, int newValue) { QProgressBar * pBar = progressBars.value(iFaceIndex); if(newValue >= pBar->value()) { pBar->setValue(newValue); } else { qDebug() << "Error: new value is smaller than the old value!"; } }