X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fcliparser.cpp;h=726030388fc4f233e0729e801b08021d471dc6eb;hp=5168ea22e0a9fc27ad0259d91b0751d6b8e0ecb9;hb=16f22647e6890d3eb8c3e94f7a0700e12fa29e44;hpb=84cd3561e97167ffb98ecab0fd2b884ba1d13ada diff --git a/src/common/cliparser.cpp b/src/common/cliparser.cpp index 5168ea22..72603038 100644 --- a/src/common/cliparser.cpp +++ b/src/common/cliparser.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2014 by the Quassel Project * + * Copyright (C) 2005-2016 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -32,10 +32,8 @@ CliParser::CliParser() : AbstractCliParser() } -void CliParser::addArgument(const QString &longName_, const CliParserArg &arg) +void CliParser::addArgument(const QString &longName, const CliParserArg &arg) { - QString longName = longName_; - longName.remove(QRegExp("\\s*<.*>\\s*")); // KCmdLineArgs takes args of the form "arg " if (argsMap.contains(longName)) qWarning() << "Warning: Multiple definition of argument" << longName; if (arg.shortName != 0 && !lnameOfShortArg(arg.shortName).isNull()) qWarning().nospace() << "Warning: Redefining shortName '" << arg.shortName << "' for " << longName << " previously defined for " << lnameOfShortArg(arg.shortName); @@ -148,7 +146,7 @@ bool CliParser::init(const QStringList &args) else value = currentArg->toLocal8Bit(); name = currentArg->mid(1).toLatin1().at(0); // we took one argument as argument to an option so skip it next time - if (skipNext) currentArg++; + if (skipNext) ++currentArg; if (!addShortArg(CliParserArg::CliArgOption, name, value)) return false; } } @@ -189,8 +187,8 @@ void CliParser::usage() } else output.append(" "); lnameField.append(" --").append(arg.key()); - if (arg.value().type == CliParserArg::CliArgOption) { - lnameField.append("=[").append(arg.key().toUpper()).append("]"); + if (arg.value().type == CliParserArg::CliArgOption && !arg.value().valueName.isEmpty()) { + lnameField.append("=<").append(arg.value().valueName).append(">"); } output.append(lnameField.leftJustified(lnameFieldSize)); if (!arg.value().help.isEmpty()) {