/***************************************************************************
- * Copyright (C) 2005-08 by the Quassel IRC Team *
+ * Copyright (C) 2005-09 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#include <QString>
#include <QFileInfo>
-#ifdef HAVE_KDE
-# include <KCmdLineArgs>
-#endif
+#include <iostream>
-CliParser::CliParser() {
+CliParser::CliParser() : AbstractCliParser() {
}
-#ifdef HAVE_KDE
-void CliParser::addArgument(const QString &longName, const CliParserArg &arg) {
- if(arg.shortName != 0) {
- _cmdLineOptions.add(QByteArray().append(arg.shortName));
- }
- _cmdLineOptions.add(longName.toUtf8(), ki18n(arg.help.toUtf8()), arg.def.toUtf8());
-}
-
-bool CliParser::init(const QStringList &) {
- KCmdLineArgs::addCmdLineOptions(_cmdLineOptions);
- return true;
-}
-
-QString CliParser::value(const QString &longName) {
- return KCmdLineArgs::parsedArgs()->getOption(longName.toUtf8());
-}
-
-bool CliParser::isSet(const QString &longName) {
- return KCmdLineArgs::parsedArgs()->isSet(longName.toUtf8());
-}
-
-void CliParser::usage() {
- KCmdLineArgs::usage();
-}
-
-#else
void CliParser::addArgument(const QString &longName_, const CliParserArg &arg) {
QString longName = longName_;
longName.remove(QRegExp("\\s*<.*>\\s*")); // KCmdLineArgs takes args of the form "arg <defval>"
}
void CliParser::usage() {
- qWarning() << "Usage:" << QFileInfo(argsRaw.at(0)).completeBaseName() << "[arguments]";
+ std::cout << "Usage: " << qPrintable(QFileInfo(argsRaw.at(0)).completeBaseName()) << " [arguments]" << std::endl;
// get size of longName field
QStringList keys = argsHash.keys();
if(arg.value().type == CliParserArg::CliArgOption && !arg.value().def.isNull()) {
output.append(". Default is: ").append(arg.value().def);
}
- qWarning() << output.toLatin1();
+ std::cout << qPrintable(output) << std::endl;
}
}
}
return QString();
}
-
-#endif