diff options
| author | Albrecht Schlosser <albrechts.fltk@online.de> | 2010-12-03 16:41:45 +0000 |
|---|---|---|
| committer | Albrecht Schlosser <albrechts.fltk@online.de> | 2010-12-03 16:41:45 +0000 |
| commit | 8c72400a20e21501a98d7ce844a9a0299fbca4a1 (patch) | |
| tree | 6deea67cb26417993da1fc049d9ac201fce8c121 /src | |
| parent | b6bfb36bc1c6ba8e72630bd95cad2355d2672c4d (diff) | |
Fixed reading the correct preferences for Fl::options() (STR #2463).
Fixed not to override system options with user options, if they are not
explicitly set (same STR).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7944 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
| -rw-r--r-- | src/Fl.cxx | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/Fl.cxx b/src/Fl.cxx index b46a278ad..6a4daaabe 100644 --- a/src/Fl.cxx +++ b/src/Fl.cxx @@ -1777,15 +1777,16 @@ bool Fl::option(Fl_Option opt) int tmp; { // first, read the system wide preferences Fl_Preferences prefs(Fl_Preferences::SYSTEM, "fltk.org", "fltk"); - Fl_Preferences opt(prefs, "options"); - prefs.get("ArrowFocus", tmp, 0); options_[OPTION_ARROW_FOCUS] = tmp; - prefs.get("NativeFilechooser", tmp, 0); options_[OPTION_NATIVE_FILECHOOSER] = tmp; + Fl_Preferences opt_prefs(prefs, "options"); + opt_prefs.get("ArrowFocus", tmp, 0); options_[OPTION_ARROW_FOCUS] = tmp; + opt_prefs.get("NativeFilechooser", tmp, 0); options_[OPTION_NATIVE_FILECHOOSER] = tmp; } { // next, check the user preferences + // override system options only, if the option is set ( >= 0 ) Fl_Preferences prefs(Fl_Preferences::USER, "fltk.org", "fltk"); - Fl_Preferences opt(prefs, "options"); - prefs.get("ArrowFocus", tmp, 0); options_[OPTION_ARROW_FOCUS] = tmp; - prefs.get("NativeFilechooser", tmp, 0); options_[OPTION_NATIVE_FILECHOOSER] = tmp; + Fl_Preferences opt_prefs(prefs, "options"); + opt_prefs.get("ArrowFocus", tmp, -1); if (tmp >= 0) options_[OPTION_ARROW_FOCUS] = tmp; + opt_prefs.get("NativeFilechooser", tmp, -1); if (tmp >= 0) options_[OPTION_NATIVE_FILECHOOSER] = tmp; } { // now, if the developer has registered this app, we could as for per-application preferences } |
