X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fcliparser.cpp;h=a34af80af41701db135876a7b016d3e3c41ace46;hp=c4ca9b8c847d059dca0f17e59fe6b361c3919ea6;hb=5c6804f291a63f978e328aeddcc8448e3443b45e;hpb=85b55cf023c96f4dbd61ec415a15214f99e281b3 diff --git a/src/common/cliparser.cpp b/src/common/cliparser.cpp index c4ca9b8c..a34af80a 100644 --- a/src/common/cliparser.cpp +++ b/src/common/cliparser.cpp @@ -24,11 +24,6 @@ #include #include -CliParser::CliParser(QStringList arguments) -{ - argsRaw = arguments; -} - void CliParser::addArgument(const QString &longName, const CliParserArg &arg) { if(argsHash.contains(longName)) qWarning() << "Warning: Multiple definition of argument" << longName; if(arg.shortName != 0 && !lnameOfShortArg(arg.shortName).isNull()) @@ -82,7 +77,8 @@ QString CliParser::escapedValue(const QString &value) { return escapedValue; } -bool CliParser::parse() { +bool CliParser::parse(const QStringList &args) { + argsRaw = args; QStringList::const_iterator currentArg; for (currentArg = argsRaw.constBegin(); currentArg != argsRaw.constEnd(); ++currentArg) { if(currentArg->startsWith("--")) { @@ -147,7 +143,7 @@ bool CliParser::parse() { void CliParser::usage() { qWarning() << "Usage:" << QFileInfo(argsRaw.at(0)).completeBaseName() << "[arguments]"; - + // get size of longName field QStringList keys = argsHash.keys(); uint lnameFieldSize = 0; @@ -161,12 +157,12 @@ void CliParser::usage() { size += 8; if(size > lnameFieldSize) lnameFieldSize = size; } - + QHash::const_iterator arg; for(arg = argsHash.constBegin(); arg != argsHash.constEnd(); ++arg) { QString output; QString lnameField; - + if(arg.value().shortName) { output.append(" -").append(arg.value().shortName).append(","); }