summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl/lib/Tk/palette.pod
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/tlperl/lib/Tk/palette.pod')
-rw-r--r--Master/tlpkg/tlperl/lib/Tk/palette.pod89
1 files changed, 89 insertions, 0 deletions
diff --git a/Master/tlpkg/tlperl/lib/Tk/palette.pod b/Master/tlpkg/tlperl/lib/Tk/palette.pod
new file mode 100644
index 00000000000..35a6ca0a40b
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/Tk/palette.pod
@@ -0,0 +1,89 @@
+# Copyright (c) 1995-1996 Sun Microsystems, Inc.
+# See the file "license.terms" for information on usage and redistribution
+# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
+#
+#
+
+=head1 NAME
+
+Tk::palette - Modify the Tk color palette
+
+=for category Creating and Configuring Widgets
+
+=head1 SYNOPSIS
+
+I<$widget>-E<gt>B<setPalette>(I<background>)
+
+I<$widget>-E<gt>B<setPalette(>I<name>=E<gt>I<value>?,I<name>=E<gt>I<value ...>?)
+
+I<$widget>-E<gt>B<bisque>
+
+=head1 DESCRIPTION
+
+The B<setPalette> method changes the color scheme for Tk.
+It does this by modifying the colors of existing widgets and by changing
+the option database so that future widgets will use the new color scheme.
+If B<setPalette> is invoked with a single argument, the
+argument is the name of a color to use as the normal background
+color; B<setPalette> will compute a complete color palette
+from this background color.
+Alternatively, the arguments to B<setPalette> may consist of any number
+of I<name>-I<value> pairs, where the first argument of the pair
+is the name of an option in the Tk option database and the second
+argument is the new value to use for that option. The following
+database names are currently supported:
+
+ activeBackground foreground selectColor
+ activeForeground highlightBackground selectBackground
+ background highlightColor selectForeground
+ disabledForeground insertBackground troughColor
+
+B<setPalette> tries to compute reasonable defaults for any
+options that you don't specify. You can specify options other
+than the above ones and Tk will change those options on widgets as
+well. This feature may be useful if you are using custom widgets with
+additional color options.
+
+Once it has computed the new value to use for each of the color options,
+B<setPalette> scans the widget hierarchy to modify the options
+of all existing widgets. For each widget, it checks to see if any
+of the above options is defined for the widget. If so, and if the
+option's current value is the default, then the value is changed; if
+the option has a value other than the default, B<setPalette>
+will not change it. The default for an option is the one provided by
+the widget (B<($w-E<gt>configure('option'))[3]>) unless
+B<setPalette> has been run previously, in which case it is the
+value specified in the previous invocation of B<setPalette>.
+
+After modifying all the widgets in the application, B<setPalette>
+adds options to the option database to change the defaults for
+widgets created in the future. The new options are added at
+priority B<widgetDefault>, so they will be overridden by options
+from the .Xdefaults file or options specified on the command-line
+that creates a widget.
+
+The method B<bisque> is provided for backward compatibility:
+it restores the application's colors to the light brown (``bisque'')
+color scheme used in Tk 3.6 and earlier versions.
+
+=head1 BUGS
+
+The use of option database names rather than the configure names is
+understandable given the mechanism (copied from Tcl/Tk), but
+is potentially confusing.
+
+The interpolation of different 'shades' of color used for 3D effects
+in 'RGB' space can lead to undesirable changes in 'hue'.
+Interpolation in 'HSV' (as used in B<Tk::ColorEditor>) would be more
+robust and X11R5's color support probably even more so.
+
+=head1 SEE ALSO
+
+L<Tk::options|Tk::options>
+
+=head1 KEYWORDS
+
+bisque, color, palette
+
+=cut
+