diff --git a/client/portgroup.cpp b/client/portgroup.cpp
index 956a04e..8ebe1f5 100644
--- a/client/portgroup.cpp
+++ b/client/portgroup.cpp
@@ -26,12 +26,15 @@ along with this program. If not, see
#include
#include
+#include
#include
#include
#include
+#include
#include
#include
#include
+#include
using ::google::protobuf::NewCallback;
@@ -299,18 +302,23 @@ void PortGroup::on_rpcChannel_notification(int notifType,
void PortGroup::when_portListChanged(quint32 /*portGroupId*/)
{
+ QString faq("http://ostinato.org/docs/faq#q-port-group-has-no-interfaces");
if (state() == QAbstractSocket::ConnectedState && numPorts() <= 0)
{
- QMessageBox::warning(NULL, tr("No ports in portgroup"),
+ if (QMessageBox::warning(NULL, tr("No ports in portgroup"),
QString("The portgroup %1:%2 does not contain any ports!\n\n"
"Packet Transmit/Capture requires elevated privileges. "
"Please ensure that you are running 'drone' - the server "
"component of Ostinato with admin/root OR setuid privilege.\n\n"
- "For more information see "
- "http://code.google.com/p/ostinato/wiki/FAQ#"
- "Q._Port_group_has_no_interfaces")
+ "For help see the Ostinato FAQ (%3)")
.arg(serverName())
- .arg(int(serverPort())));
+ .arg(int(serverPort()))
+ .arg(faq.remove(QRegExp("#.*$"))),
+ QMessageBox::Ok | QMessageBox::Help,
+ QMessageBox::Ok) == QMessageBox::Help)
+ {
+ QDesktopServices::openUrl(QUrl(faq));
+ }
}
}