#endif
-WpaGui::WpaGui(QApplication *_app, QWidget *parent, const char *, Qt::WFlags)
+WpaGui::WpaGui(QApplication *_app, QWidget *parent, const char *,
+ Qt::WindowFlags)
: QMainWindow(parent), app(_app)
{
setupUi(this);
textStatus->setText(tr("connecting to wpa_supplicant"));
timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), SLOT(ping()));
- timer->setSingleShot(FALSE);
+ timer->setSingleShot(false);
timer->start(1000);
signalMeterTimer = new QTimer(this);
void WpaGui::parse_argv()
{
int c;
+ WpaGuiApp *app = qobject_cast<WpaGuiApp*>(qApp);
for (;;) {
- c = getopt(qApp->argc(), qApp->argv(), "i:m:p:tq");
+ c = getopt(app->argc, app->argv, "i:m:p:tq");
if (c < 0)
break;
switch (c) {
void WpaGui::updateNetworks()
{
- char buf[2048], *start, *end, *id, *ssid, *bssid, *flags;
+ char buf[4096], *start, *end, *id, *ssid, *bssid, *flags;
size_t len;
int first_active = -1;
int was_selected = -1;
void WpaGui::helpAbout()
{
QMessageBox::about(this, "wpa_gui for wpa_supplicant",
- "Copyright (c) 2003-2013,\n"
+ "Copyright (c) 2003-2015,\n"
"Jouni Malinen <j@w1.fi>\n"
"and contributors.\n"
"\n"
else
cmd = "any";
cmd.prepend("SELECT_NETWORK ");
- ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
+ ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
triggerUpdate();
stopWpsRun(false);
}
cmd.truncate(cmd.indexOf(':'));
else if (!cmd.startsWith("all")) {
debug("Invalid editNetwork '%s'",
- cmd.toAscii().constData());
+ cmd.toLocal8Bit().constData());
return;
}
cmd.prepend("ENABLE_NETWORK ");
- ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
+ ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
triggerUpdate();
}
cmd.truncate(cmd.indexOf(':'));
else if (!cmd.startsWith("all")) {
debug("Invalid editNetwork '%s'",
- cmd.toAscii().constData());
+ cmd.toLocal8Bit().constData());
return;
}
cmd.prepend("DISABLE_NETWORK ");
- ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
+ ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
triggerUpdate();
}
cmd.truncate(cmd.indexOf(':'));
else if (!cmd.startsWith("all")) {
debug("Invalid editNetwork '%s'",
- cmd.toAscii().constData());
+ cmd.toLocal8Bit().constData());
return;
}
cmd.prepend("REMOVE_NETWORK ");
- ctrlRequest(cmd.toAscii().constData(), reply, &reply_len);
+ ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len);
triggerUpdate();
}
int pos = cmd.indexOf(':');
if (pos < 0) {
debug("Invalid getNetworkDisabled '%s'",
- cmd.toAscii().constData());
+ cmd.toLocal8Bit().constData());
return -1;
}
cmd.truncate(pos);
cmd.prepend("GET_NETWORK ");
cmd.append(" disabled");
- if (ctrlRequest(cmd.toAscii().constData(), reply, &reply_len) >= 0
+ if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) >= 0
&& reply_len >= 1) {
reply[reply_len] = '\0';
if (!str_match(reply, "FAIL"))
void WpaGui::selectAdapter( const QString & sel )
{
- if (openCtrlConnection(sel.toAscii().constData()) < 0)
+ if (openCtrlConnection(sel.toLocal8Bit().constData()) < 0)
debug("Failed to open control connection to "
"wpa_supplicant.");
updateStatus();
if (!tray_icon || currentIconType == type)
return;
- QIcon icon;
QIcon fallback_icon;
+ QStringList names;
if (QImageReader::supportedImageFormats().contains(QByteArray("svg")))
fallback_icon = QIcon(":/icons/wpa_gui.svg");
switch (type) {
case TrayIconOffline:
- icon = QIcon::fromTheme("network-wireless-offline",
- fallback_icon);
+ names << "network-wireless-offline-symbolic"
+ << "network-wireless-offline"
+ << "network-wireless-signal-none-symbolic"
+ << "network-wireless-signal-none";
break;
case TrayIconAcquiring:
- icon = QIcon::fromTheme("network-wireless-acquiring",
- fallback_icon);
+ names << "network-wireless-acquiring-symbolic"
+ << "network-wireless-acquiring";
break;
case TrayIconConnected:
- icon = QIcon::fromTheme("network-wireless-connected",
- fallback_icon);
+ names << "network-wireless-connected-symbolic"
+ << "network-wireless-connected";
break;
case TrayIconSignalNone:
- icon = QIcon::fromTheme("network-wireless-signal-none",
- fallback_icon);
+ names << "network-wireless-signal-none-symbolic"
+ << "network-wireless-signal-none";
break;
case TrayIconSignalWeak:
- icon = QIcon::fromTheme("network-wireless-signal-weak",
- fallback_icon);
+ names << "network-wireless-signal-weak-symbolic"
+ << "network-wireless-signal-weak";
break;
case TrayIconSignalOk:
- icon = QIcon::fromTheme("network-wireless-signal-ok",
- fallback_icon);
+ names << "network-wireless-signal-ok-symbolic"
+ << "network-wireless-signal-ok";
break;
case TrayIconSignalGood:
- icon = QIcon::fromTheme("network-wireless-signal-good",
- fallback_icon);
+ names << "network-wireless-signal-good-symbolic"
+ << "network-wireless-signal-good";
break;
case TrayIconSignalExcellent:
- icon = QIcon::fromTheme("network-wireless-signal-excellent",
- fallback_icon);
+ names << "network-wireless-signal-excellent-symbolic"
+ << "network-wireless-signal-excellent";
break;
}
currentIconType = type;
- tray_icon->setIcon(icon);
+ tray_icon->setIcon(loadThemedIcon(names, fallback_icon));
+}
+
+
+QIcon WpaGui::loadThemedIcon(const QStringList &names,
+ const QIcon &fallback)
+{
+ QIcon icon;
+
+ for (QStringList::ConstIterator it = names.begin();
+ it != names.end(); it++) {
+ icon = QIcon::fromTheme(*it);
+ if (!icon.isNull())
+ return icon;
+ }
+
+ return fallback;
}
size_t reply_len = sizeof(reply);
QString cmd("WPS_REG " + bssFromScan + " " + wpsApPinEdit->text());
- if (ctrlRequest(cmd.toAscii().constData(), reply, &reply_len) < 0)
+ if (ctrlRequest(cmd.toLocal8Bit().constData(), reply, &reply_len) < 0)
return;
wpsStatusText->setText(tr("Waiting for AP/Enrollee"));