summaryrefslogtreecommitdiff
path: root/src/Fl.cxx
diff options
context:
space:
mode:
authorMatthias Melcher <github@matthiasm.com>2024-06-15 15:16:42 +0200
committerMatthias Melcher <github@matthiasm.com>2024-06-15 15:16:42 +0200
commitd137ddfa7d7feee3fda34b41ea28448377c4bd24 (patch)
treea5e0e1800bd91abc6e73274c569333dcceed4b3f /src/Fl.cxx
parent3cc5c090f9b24180db428d55dceffd0aa7c7228c (diff)
Improve Fl::option documentation.
Diffstat (limited to 'src/Fl.cxx')
-rw-r--r--src/Fl.cxx30
1 files changed, 24 insertions, 6 deletions
diff --git a/src/Fl.cxx b/src/Fl.cxx
index 43517ee20..6d59aa9b5 100644
--- a/src/Fl.cxx
+++ b/src/Fl.cxx
@@ -1954,12 +1954,22 @@ void Fl::clear_widget_pointer(Fl_Widget const *w)
/**
\brief FLTK library options management.
- This function needs to be documented in more detail. It can be used for more
- optional settings, such as using a native file chooser instead of the FLTK one
+ Options provide a way for the user to modify the behavior of an FLTK
+ application. For example, clearing the `OPTION_SHOW_TOOLTIPS` will disable
+ tooltips for all FLTK applications.
+
+ Options are set by the user or the administrator on user or machine level.
+ In 1.3, FLUID has an Options dialog for that. In 1.4, there is an app named
+ `fltk-options` that can be used from the command line or as a GUI tool.
+ The machine level setting is read first, and the user setting can override
+ the machine setting.
+
+ This function is used throughout FLTK to quickly query the user's wishes.
+ There are options for using a native file chooser instead of the FLTK one
wherever possible, disabling tooltips, disabling visible focus, disabling
FLTK file chooser preview, etc. .
- There should be a command line option interface.
+ See `Fl::Fl_Option` for a list of available options.
Example:
\code
@@ -1969,12 +1979,14 @@ void Fl::clear_widget_pointer(Fl_Widget const *w)
{ ..off.. }
\endcode
- \note Options can be managed with the \c fltk-options program, new in FLTK 1.4.0.
+ \note Options can be managed with the \c fltk-options program, new in
+ FLTK 1.4.0. In 1.3.x, options can be set in FLUID.
\param opt which option
\return true or false
\see enum Fl::Fl_Option
\see Fl::option(Fl_Option, bool)
+ \see fltk-options application in command line and GUI mode
\since FLTK 1.3.0
*/
@@ -2053,7 +2065,12 @@ bool Fl::option(Fl_Option opt)
/**
\brief Override an option while the application is running.
- This function does not change any system or user settings.
+ Apps can override the machine settings and the user settings by calling
+ `Fl::option(option, bool)`. The override takes effect immediately for this
+ option for all widgets in the app for the life time of the app.
+
+ The override is not saved anywhere, and relaunching the app will restore the
+ old settings.
Example:
\code
@@ -2063,6 +2080,7 @@ bool Fl::option(Fl_Option opt)
\param opt which option
\param val set to true or false
+
\see enum Fl::Fl_Option
\see bool Fl::option(Fl_Option)
*/
@@ -2071,7 +2089,7 @@ void Fl::option(Fl_Option opt, bool val)
if (opt<0 || opt>=OPTION_LAST)
return;
if (!options_read_) {
- // first read this option, so we don't override our setting later
+ // make sure that the options_ array is filled in
option(opt);
}
options_[opt] = val;