// Purpose: interface of wxSystemOptions
// Author: wxWidgets team
// RCS-ID: $Id$
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/**
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() method
+ and they also can be set from the program environment by defining an
+ environment variable @c wx_option to set the given option for all wxWidgets
+ applications or @c wx_appname_option to set it just for the application
+ with the given name (as returned by wxApp::GetAppName()). 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:
+ @section sysopt_all All platforms
+
+ @beginFlagTable
+ @flag{exit-on-assert}
+ If set to non-zero value, abort the program if an assertion fails. The
+ default behaviour in case of assertion failure depends on the build mode
+ and can be changed by overriding wxApp::OnAssertFailure() but setting
+ this option allows to change it without modifying the program code and
+ also applies to asserts which may happen before the wxApp object
+ creation or after its destruction.
+ @endFlagTable
@section sysopt_win Windows
@flag{no-maskblt}
1 to never use WIN32's MaskBlt function, 0 to allow it to be used where possible.
Default: 0. In some circumstances the MaskBlt function can be slower than using
- the fallback code, especially if using DC cacheing. By default, MaskBlt will be
+ the fallback code, especially if using DC caching. By default, MaskBlt will be
used where it is implemented by the operating system and driver.
@flag{msw.remap}
If 1 (the default), wxToolBar bitmap colours will be remapped to the current
Also known as wxWINDOW_DEFAULT_VARIANT.
@flag{mac.listctrl.always_use_generic}
Tells wxListCtrl to use the generic control even when it is capable of
- using the native control instead. Also knwon as wxMAC_ALWAYS_USE_GENERIC_LISTCTRL.
+ using the native control instead. Also known as wxMAC_ALWAYS_USE_GENERIC_LISTCTRL.
@flag{mac.textcontrol-use-spell-checker}
This option only has effect for Mac OS X 10.4 and higher.
If 1 activates the spell checking in wxTextCtrl.
+ @flag{osx.openfiledialog.always-show-types}
+ Per default a wxFileDialog with wxFD_OPEN does not show a types-popup on OSX but allows
+ the selection of files from any of the supported types. Setting this to 1 shows a wxChoice
+ for selection (if there is more than one supported filetype).
@endFlagTable
/**
Sets an option. The function is case-insensitive to @a name.
*/
- void SetOption(const wxString& name, const wxString& value);
- void SetOption(const wxString& name, int value);
+ static void SetOption(const wxString& name, const wxString& value);
+ static void SetOption(const wxString& name, int value);
//@}
};