Add support for Qt5's native command line parser
[quassel.git] / src / uisupport / kcmdlinewrapper.cpp
index fc102cc..a263e3c 100644 (file)
@@ -27,11 +27,16 @@ KCmdLineWrapper::KCmdLineWrapper()
 }
 
 
-void KCmdLineWrapper::addArgument(const QString &longName, const CliParserArg &arg)
+void KCmdLineWrapper::addArgument(const QString &longName_, const CliParserArg &arg)
 {
+    QString longName = longName_;
+    if (arg.type == CliParserArg::CliArgOption && !arg.valueName.isEmpty())
+        longName += " <" + arg.valueName + ">";
+
     if (arg.shortName != 0) {
-        _cmdLineOptions.add(QByteArray().append(arg.shortName));
+        _cmdLineOptions.add(QByteArray(1, arg.shortName));
     }
+
     _cmdLineOptions.add(longName.toUtf8(), ki18n(arg.help.toUtf8()), arg.def.toUtf8());
 }