From aa0af8ce541966c0d6f0eea75d29d2bdd054b652 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 20 Jun 2010 17:43:15 +0000 Subject: [PATCH] Document and improve system options definition in the environment. Document that system options can be defined in the environment. Replace another character (dash) invalid in environment variable names but present in some standard system option names with underscore. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64651 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- interface/wx/sysopt.h | 12 ++++++++++++ src/common/sysopt.cpp | 1 + 2 files changed, 13 insertions(+) diff --git a/interface/wx/sysopt.h b/interface/wx/sysopt.h index 2b595766dc..2eef48cd48 100644 --- a/interface/wx/sysopt.h +++ b/interface/wx/sysopt.h @@ -14,6 +14,18 @@ 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: diff --git a/src/common/sysopt.cpp b/src/common/sysopt.cpp index c9834763be..2f611918dd 100644 --- a/src/common/sysopt.cpp +++ b/src/common/sysopt.cpp @@ -83,6 +83,7 @@ wxString wxSystemOptions::GetOption(const wxString& name) // and then for "wx_name" which can be set to change the option globally wxString var(name); var.Replace(wxT("."), wxT("_")); // '.'s not allowed in env var names + var.Replace(wxT("-"), wxT("_")); // and neither are '-'s wxString appname; if ( wxTheApp ) -- 2.45.2