diff --git a/sources/.kdev4/sources.kdev4 b/sources/.kdev4/sources.kdev4 index 587b19d..d7d83c5 100644 --- a/sources/.kdev4/sources.kdev4 +++ b/sources/.kdev4/sources.kdev4 @@ -8,7 +8,7 @@ ProjectRootRelative=./ [CMake][CMake Build Directory 0] Build Directory Path=file:///home/arcanis/Documents/github/netctl-gui/build -Build Type=Debug +Build Type=Release CMake Binary=file:///usr/bin/cmake Environment Profile= Extra Arguments= diff --git a/sources/3rdparty/pdebug b/sources/3rdparty/pdebug index 294a590..9c63e10 160000 --- a/sources/3rdparty/pdebug +++ b/sources/3rdparty/pdebug @@ -1 +1 @@ -Subproject commit 294a590bb966fd79eb2e93a7b02377ca57731cd5 +Subproject commit 9c63e102b05e11ead690489ca470c8482b6335b1 diff --git a/sources/dataengine/netctl.cpp b/sources/dataengine/netctl.cpp index 2722d1a..f5b5346 100644 --- a/sources/dataengine/netctl.cpp +++ b/sources/dataengine/netctl.cpp @@ -82,6 +82,20 @@ QStringList Netctl::sources() const } +QString Netctl::getCmdOutput(const QString cmd) +{ + if (debug) qDebug() << PDEBUG; + if (debug) qDebug() << PDEBUG << ":" << "Cmd" << cmd; + + TaskResult process = runTask(cmd); + if (debug) qDebug() << PDEBUG << ":" << "Cmd returns" << process.exitCode; + if (process.exitCode != 0) + if (debug) qDebug() << PDEBUG << ":" << "Error" << process.error; + + return QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed(); +} + + void Netctl::readConfiguration() { if (debug) qDebug() << PDEBUG; @@ -118,35 +132,6 @@ bool Netctl::sourceRequestEvent(const QString &name) } -QStringList Netctl::getCurrentProfile(const QString cmdNetctl, const QString cmdNetctlAuto) -{ - if (debug) qDebug() << PDEBUG; - getNetctlAutoStatus(cmdNetctlAuto); - - QString cmd; - if (netctlAutoStatus) - cmd = cmdNetctlAuto; - else - cmd = cmdNetctl; - if (debug) qDebug() << PDEBUG << ":" << "Cmd" << cmd; - TaskResult process = runTask(QString("%1 list").arg(cmd)); - if (debug) qDebug() << PDEBUG << ":" << "Cmd returns" << process.exitCode; - if (process.exitCode != 0) - if (debug) qDebug() << PDEBUG << ":" << "Error" << process.error; - QStringList currentProfile; - QString cmdOutput = QTextCodec::codecForMib(106)->toUnicode(process.output); - QStringList profileList = cmdOutput.split(QChar('\n'), QString::SkipEmptyParts); - for (int i=0; itoUnicode(process.output).trimmed(); - return extIp; + return getCmdOutput(cmd); } -QString Netctl::getInfo() +QString Netctl::getInfo(const QStringList profiles, const QStringList statuses) { if (debug) qDebug() << PDEBUG; - if (current.split(QChar('|')).count() != status.split(QChar('|')).count()) return QString("N\\A"); + if (profiles.count() != statuses.count()) return QString("N\\A"); - QStringList profiles; - for (int i=0; itoUnicode(process.output); - if (cmdOutput.isEmpty()) { - netctlAutoStatus = false; - status = QString("false"); - } else { - netctlAutoStatus = true; - status = QString("true"); - } - - return status; -} - - QStringList Netctl::getProfileList(const QString cmdNetctl, const QString cmdNetctlAuto) { if (debug) qDebug() << PDEBUG; - getNetctlAutoStatus(cmdNetctlAuto); - QString cmd; - if (netctlAutoStatus) - cmd = cmdNetctlAuto; - else - cmd = cmdNetctl; - if (debug) qDebug() << PDEBUG << ":" << "Cmd" << cmd; - TaskResult process = runTask(QString("%1 list").arg(cmd)); - if (debug) qDebug() << PDEBUG << ":" << "Cmd returns" << process.exitCode; - if (process.exitCode != 0) - if (debug) qDebug() << PDEBUG << ":" << "Error" << process.error; - QString cmdOutput = QTextCodec::codecForMib(106)->toUnicode(process.output); - QStringList profileList = cmdOutput.split(QChar('\n'), QString::SkipEmptyParts); + netctlAutoStatus = true; + QString output = getCmdOutput(QString("%1 list").arg(cmdNetctlAuto)); + if (output.isEmpty()) { + output = getCmdOutput(QString("%1 list").arg(cmdNetctl)); + netctlAutoStatus = false; + } + + // parse + QStringList currentProfiles; + QStringList profileList = output.split(QChar('\n'), QString::SkipEmptyParts); + for (int i=0; i configuration; + QString getCmdOutput(const QString cmd); void readConfiguration(); };