21 #ifndef __ctkCommandLineParser_h
22 #define __ctkCommandLineParser_h
26 #include <QStringList>
32 #include "ctkCoreExport.h"
65 Q_PROPERTY(QString errorString READ errorString)
66 Q_PROPERTY(QStringList unparsedArguments READ unparsedArguments)
67 Q_PROPERTY(
bool settingsEnabled READ settingsEnabled)
125 QHash<QString, QVariant> parseArguments(const QStringList &arguments,
bool* ok = 0);
131 QHash<QString, QVariant> parseArguments(
int argc,
char** argv,
bool* ok = 0);
140 QString errorString() const;
151 const QStringList& unparsedArguments() const;
163 Q_INVOKABLE
bool argumentAdded(const QString& argument) const;
173 Q_INVOKABLE
bool argumentParsed(const QString& argument) const;
219 void addArgument(const QString& longarg, const QString& shortarg,
220 QVariant::Type
type, const QString& argHelp = QString(),
221 const QVariant& defaultValue = QVariant(),
222 bool ignoreRest = false,
bool deprecated = false);
236 void addDeprecatedArgument(const QString& longarg, const QString& shortarg,
237 const QString& argHelp);
253 bool setExactMatchRegularExpression(const QString& argument, const QString& expression,
254 const QString& exactMatchFailedMessage);
261 int fieldWidth() const;
271 QString helpText(const
char charPad = ' ') const;
297 void setArgumentPrefix(const QString& longPrefix, const QString& shortPrefix);
309 void beginGroup(const QString& description);
339 void enableSettings(const QString& disableLongArg = "",
340 const QString& disableShortArg = "");
353 void mergeSettings(
bool merge);
362 bool settingsEnabled() const;
371 void setStrictModeEnabled(
bool strictMode);
375 ctkInternal * Internal;