| Version: 3.3.1

Classes | Enumerations | Variables
cmdline.h File Reference

## Classes
struct | wxCmdLineEntryDesc
| The structure wxCmdLineEntryDesc is used to describe a command line switch, option or parameter. More...
class | wxCmdLineArg
| The interface wxCmdLineArg provides information for an instance of argument passed on command line. More...
class | wxCmdLineArgs
| An ordered collection of wxCmdLineArg providing an iterator to enumerate the arguments passed on command line. More...
class | wxCmdLineParser
| wxCmdLineParser is a class for parsing the command line. More...

## Enumerations
enum | wxCmdLineEntryFlags { wxCMD_LINE_OPTION_MANDATORY = 0x01 , wxCMD_LINE_PARAM_OPTIONAL = 0x02 , wxCMD_LINE_PARAM_MULTIPLE = 0x04 , wxCMD_LINE_OPTION_HELP = 0x08 , wxCMD_LINE_NEEDS_SEPARATOR = 0x10 , wxCMD_LINE_SWITCH_NEGATABLE = 0x20 , wxCMD_LINE_HIDDEN = 0x40 }
| wxCmdLineEntryDesc::flags field is a combination of these bit masks. More...
enum | wxCmdLineParamType { wxCMD_LINE_VAL_STRING , wxCMD_LINE_VAL_NUMBER , wxCMD_LINE_VAL_DATE , wxCMD_LINE_VAL_DOUBLE , wxCMD_LINE_VAL_NONE }
| The possible values of wxCmdLineEntryDesc::type which specify the type of the value accepted by an option. More...
enum | wxCmdLineEntryType { wxCMD_LINE_SWITCH , wxCMD_LINE_OPTION , wxCMD_LINE_PARAM , wxCMD_LINE_USAGE_TEXT , wxCMD_LINE_NONE }
| The type of a command line entity used for wxCmdLineEntryDesc::kind. More...
enum | wxCmdLineSwitchState { wxCMD_SWITCH_OFF , wxCMD_SWITCH_ON }
| The state of a switch as returned by wxCmdLineParser::FoundSwitch(). More...
enum | wxCmdLineSplitType { wxCMD_LINE_SPLIT_DOS , wxCMD_LINE_SPLIT_UNIX }
| Flags determining wxCmdLineParser::ConvertStringToArgs() behaviour. More...

## Variables
constexpr int | wxCMD_LINE_WRAP_AUTO = -1
| Value indicating that wxCmdLineParser::Parse() should determine the wrap column automatically. More...
constexpr int | wxCMD_LINE_WRAP_NONE = 0
| Value indicating that wxCmdLineParser::Parse() should not wrap the output. More...

## Enumeration Type Documentation

## ◆ wxCmdLineEntryFlags

enum wxCmdLineEntryFlags

wxCmdLineEntryDesc::flags field is a combination of these bit masks.

Notice that by default (i.e. if flags are just 0), options are optional (sic) and each call to wxCmdLineParser::AddParam() allows one more parameter - this may be changed by giving non-default flags to it, i.e. use `wxCMD_LINE_OPTION_MANDATORY` to require that the option is given and `wxCMD_LINE_PARAM_OPTIONAL` to make a parameter optional.

Also, `wxCMD_LINE_PARAM_MULTIPLE` may be specified if the programs accepts a variable number of parameters - but it only can be given for the last parameter in the command line description. If you use this flag, you will probably need to use wxCmdLineEntryDesc::GetParamCount() to retrieve the number of parameters effectively specified after calling wxCmdLineEntryDesc::Parse().

`wxCMD_LINE_NEEDS_SEPARATOR` can be specified to require a separator (either a colon, an equal sign or white space) between the option name and its value. By default, no separator is required.

`wxCMD_LINE_SWITCH_NEGATABLE` can be specified if you want to allow the user to specify the switch in both normal form and in negated one (e.g. /R-). You will need to use wxCmdLineParser::FoundSwitch() to distinguish between the normal and negated forms of the switch. This flag is new since wxWidgets 2.9.2.

`wxCMD_LINE_HIDDEN` can be specified for arguments that should exist but are not to be included in the output of Usage(). These could be, for example, diagnostics switches that are not useful to the end user. This flags is new since wxWidgets 3.1.1.

Enumerator
wxCMD_LINE_OPTION_MANDATORY | This option must be given.
wxCMD_LINE_PARAM_OPTIONAL | The parameter may be omitted.
wxCMD_LINE_PARAM_MULTIPLE | The parameter may be repeated.
wxCMD_LINE_OPTION_HELP | This option is a help request.
wxCMD_LINE_NEEDS_SEPARATOR | Must have a separator before the value.
wxCMD_LINE_SWITCH_NEGATABLE | This switch can be negated (e.g. /S-)
wxCMD_LINE_HIDDEN | This switch is not listed by Usage()

## ◆ wxCmdLineEntryType

enum wxCmdLineEntryType

The type of a command line entity used for wxCmdLineEntryDesc::kind.

Enumerator
wxCMD_LINE_SWITCH | A boolean argument of the program; e.g. `-v` to enable verbose mode.
wxCMD_LINE_OPTION | An argument with an associated value; e.g. `"-o filename"` to specify an optional output filename.
wxCMD_LINE_PARAM | A parameter: a required program argument.
wxCMD_LINE_USAGE_TEXT | Additional usage text. See wxCmdLineParser::AddUsageText.
wxCMD_LINE_NONE | Use this to terminate the list.

## ◆ wxCmdLineParamType

enum wxCmdLineParamType

The possible values of wxCmdLineEntryDesc::type which specify the type of the value accepted by an option.

Enumerator
wxCMD_LINE_VAL_STRING |
wxCMD_LINE_VAL_NUMBER |
wxCMD_LINE_VAL_DATE |
wxCMD_LINE_VAL_DOUBLE |
wxCMD_LINE_VAL_NONE |

## ◆ wxCmdLineSplitType

enum wxCmdLineSplitType

Flags determining wxCmdLineParser::ConvertStringToArgs() behaviour.

Enumerator
wxCMD_LINE_SPLIT_DOS |
wxCMD_LINE_SPLIT_UNIX |

## ◆ wxCmdLineSwitchState

enum wxCmdLineSwitchState

The state of a switch as returned by wxCmdLineParser::FoundSwitch().

Since
  2.9.2

Enumerator
wxCMD_SWITCH_OFF | The switch was found in negated form, i.e. followed by a '-'.
wxCMD_SWITCH_ON | The switch was not found at all on the command line. The switch was found (and was not negated)

## Variable Documentation

## ◆ wxCMD_LINE_WRAP_AUTO

constexpr int wxCMD_LINE_WRAP_AUTO = -1
| constexpr

Value indicating that wxCmdLineParser::Parse() should determine the wrap column automatically.

This is the default value for the `wrapColumn` parameter of wxCmdLineParser::Parse() and means that the text will be wrapped at the window boundary if it is possible to find it (which may not be the case if the output is redirected and doesn't appear on a terminal at all, for example).

Since
  3.3.0

## ◆ wxCMD_LINE_WRAP_NONE

constexpr int wxCMD_LINE_WRAP_NONE = 0
| constexpr

Value indicating that wxCmdLineParser::Parse() should not wrap the output.

Passing this value as `wrapColumn` parameter of wxCmdLineParser::Parse() means that the text should not be wrapped at all.

Since
  3.3.0