49 GetOpt(
int argc,
char *argv[] );
50 GetOpt(
const QStringList &a );
52 QString appName()
const {
return aname; }
55 void addSwitch(
const QString &lname,
bool *b );
58 void addOption(
char s,
const QString &l, QString *v );
59 void addVarLengthOption(
const QString &l, QStringList *v );
60 void addRepeatableOption(
char s, QStringList *v );
61 void addRepeatableOption(
const QString &l, QStringList *v );
62 void addOptionalOption(
const QString &l, QString *v,
64 void addOptionalOption(
char s,
const QString &l,
65 QString *v,
const QString &def );
68 void addArgument(
const QString &name, QString *v );
69 void addOptionalArgument(
const QString &name, QString *v );
71 bool parse(
bool untilFirstSwitchOnly );
74 bool isSet(
const QString &name )
const;
76 int currentArgument()
const {
return currArg; }
79 enum OptionType { OUnknown, OEnd, OSwitch, OArg1, OOpt, ORepeat, OVarLen };
81 struct LIB_EXPORT Option;
85 Option( OptionType t = OUnknown,
86 char s = 0,
const QString &l = QString::null )
91 bool operator==(
const Option & opt)
const
93 return (type==opt.type) && (sname==opt.sname) && (lname==opt.lname);
101 QString *stringValue;
102 QStringList *listValue;
107#include "templexports.h"
109 QValueList<Option> options;
110 typedef QValueList<Option>::const_iterator OptionConstIterator;
112 QMap<QString, int> setOptions;
114 void init(
int argc,
char *argv[],
int offset = 1 );
115 void addOption( Option o );
116 void setSwitch(
const Option &o );