---
name: "wxSystemOptions"
section: "3erl"
platform: "linux"
package: "erlang-manpages"
version: "1:25.2.3+dfsg-1+deb12u4"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/wxSystemOptions"
---

# wxSystemOptions(3erl)

Functions for wxSystemOptions class

## NAME

wxSystemOptions - Functions for wxSystemOptions class

## DESCRIPTION

*wxSystemOptions* stores option/value pairs that wxWidgets itself or applications can use to alter behaviour at run-time. It can be used to optimize behaviour that doesn't deserve a distinct API, but is still important to be able to configure.

System options can be set by the program itself using *setOption/2* method and they also can be set from the program environment by defining an environment variable *wx\_option* to set the given option for all wxWidgets applications or *wx\_appname\_option* to set it just for the application with the given name (as returned by *wxApp::GetAppName()* (not implemented in wx)). Notice that any characters not allowed in the environment variables names, such as periods and dashes, should be replaced with underscores. E.g. to define a system option "foo-bar" you need to define the environment variable "wx\_foo\_bar".

The program may use system options for its own needs but they are mostly used to control the behaviour of wxWidgets library itself.

These options are currently recognised by wxWidgets:

All platforms

Windows

GTK+

Mac

Motif

The compile-time option to include or exclude this functionality is wxUSE\_SYSTEM\_OPTIONS.

See: *wxSystemSettings*

wxWidgets docs: wxSystemOptions

## DATA TYPES

```
wxSystemOptions() = wx:wx_object()
```

## EXPORTS

```
getOption(Name) -> unicode:charlist()
```

Types:

Name = unicode:chardata()\

Gets an option.

The function is case-insensitive to *name*. Returns empty string if the option hasn't been set.

See: *setOption/2*, *getOptionInt/1*, *hasOption/1*

```
getOptionInt(Name) -> integer()
```

Types:

Name = unicode:chardata()\

Gets an option as an integer.

The function is case-insensitive to *name*. If the option hasn't been set, this function returns 0.

See: *setOption/2*, *getOption/1*, *hasOption/1*

```
hasOption(Name) -> boolean()
```

Types:

Name = unicode:chardata()\

Returns true if the given option is present.

The function is case-insensitive to *name*.

See: *setOption/2*, *getOption/1*, *getOptionInt/1*

```
isFalse(Name) -> boolean()
```

Types:

Name = unicode:chardata()\

Returns true if the option with the given *name* had been set to 0 value.

This is mostly useful for boolean options for which you can't use *GetOptionInt(name)* == 0 as this would also be true if the option hadn't been set at all.

```
setOption(Name, Value) -> ok
```

```
setOption(Name, Value) -> ok
```

Types:

Name = Value = unicode:chardata()\

Sets an option.

The function is case-insensitive to *name*.
