X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fcliparser.h;h=3927df7e2db75f8d2e37d6f8c0bbcdd6c9829392;hp=00f22b982bad297e3d7e5bf40e32f5a6b14aa920;hb=6eb132ee838e98925303db804fd9f36a0c2f1c1b;hpb=b3a2bd9e7d829afca26c6ab3ea09dfc6490319ce diff --git a/src/common/cliparser.h b/src/common/cliparser.h index 00f22b98..3927df7e 100644 --- a/src/common/cliparser.h +++ b/src/common/cliparser.h @@ -37,15 +37,15 @@ public: inline CliParserArg() {}; CliParserArg(const CliParserArg &other); - CliParserArg(CliArgType type, QString longName, char shortName = 0, QVariant _def = QVariant()); + CliParserArg(const CliArgType type, const char _shortName = 0, const QString _help = QString(), const QString _def = QString()); CliParserArg &operator=(const CliParserArg &other); CliArgType type; - QString lname; - char sname; - QString shortHelp; - QVariant def; - QVariant value; + char shortName; + QString help; + QString def; + QString value; + bool boolValue; }; Q_DECLARE_METATYPE(CliParserArg); @@ -54,17 +54,15 @@ public: inline CliParser() {}; CliParser(QStringList arguments); bool parse(); - QVariant value(QString key); - void addSwitch(QString longName, char shortName = 0, QVariant def = false); - void addOption(QString longName, char shortName = 0, QVariant def = QVariant()); - void addHelp(QString key, QString txt); + QString value(const QString &longName); + bool isSet(const QString &longName); + void addSwitch(const QString longName, const char shortName = 0, const QString help = QString()); + void addOption(const QString longName, const char shortName = 0, const QString help = QString(), const QString def = QString()); void usage(); private: - void addArgument(CliParserArg::CliArgType type, QString longName, char shortName, QVariant def); QStringList argsRaw; QHash argsHash; QHash::iterator> shortHash; }; - #endif