summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl/lib/Tk/Scale.pod
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/tlperl/lib/Tk/Scale.pod')
-rw-r--r--Master/tlpkg/tlperl/lib/Tk/Scale.pod356
1 files changed, 356 insertions, 0 deletions
diff --git a/Master/tlpkg/tlperl/lib/Tk/Scale.pod b/Master/tlpkg/tlperl/lib/Tk/Scale.pod
new file mode 100644
index 00000000000..72f6f8c7b5e
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/Tk/Scale.pod
@@ -0,0 +1,356 @@
+# Copyright (c) 1990-1994 The Regents of the University of California.
+# Copyright (c) 1994-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::Scale - Create and manipulate Scale widgets
+
+=for category Tk Widget Classes
+
+=head1 SYNOPSIS
+
+I<$scale> = I<$parent>-E<gt>B<Scale>(?I<options>?);
+
+=head1 STANDARD OPTIONS
+
+B<-activebackground> B<-font> B<-highlightthickness> B<-repeatinterval>
+B<-background> B<-foreground> B<-orient> B<-takefocus>
+B<-borderwidth> B<-highlightbackground> B<-relief> B<-troughcolor>
+B<-cursor> B<-highlightcolor> B<-repeatdelay>
+
+See L<Tk::options> for details of the standard options.
+
+=head1 WIDGET-SPECIFIC OPTIONS
+
+=over 4
+
+=item Name: B<bigIncrement>
+
+=item Class: B<BigIncrement>
+
+=item Switch: B<-bigincrement>
+
+Some interactions with the scale cause its value to change by
+``large'' increments; this option specifies the size of the
+large increments. If specified as 0, the large increments default
+to 1/10 the range of the scale.
+
+=item Name: B<command>
+
+=item Class: B<Command>
+
+=item Switch: B<-command>
+
+Specifies the prefix of a L<perlE<sol>Tk callback|Tk::callbacks> to invoke whenever the scale's
+value is changed via a method.
+The actual command consists
+of this option followed by a space and a real number indicating the
+new value of the scale.
+
+=item Name: B<digits>
+
+=item Class: B<Digits>
+
+=item Switch: B<-digits>
+
+An integer specifying how many significant digits should be retained
+when converting the value of the scale to a string.
+If the number is less than or equal to zero, then the scale picks
+the smallest value that guarantees that every possible slider
+position prints as a different string.
+
+=item Name: B<from>
+
+=item Class: B<From>
+
+=item Switch: B<-from>
+
+A real value corresponding to the left or top end of the scale.
+
+=item Name: B<label>
+
+=item Class: B<Label>
+
+=item Switch: B<-label>
+
+A string to display as a label for the scale. For
+vertical scales the label is displayed just to the right of the
+top end of the scale. For horizontal scales the label is displayed
+just above the left end of the scale. If the option is specified
+as an empty string, no label is displayed.
+
+=item Name: B<length>
+
+=item Class: B<Length>
+
+=item Switch: B<-length>
+
+Specifies the desired long dimension of the scale in screen units
+(i.e. any of the forms acceptable to B<Tk_GetPixels>).
+For vertical scales this is the scale's height; for horizontal scales
+it is the scale's width.
+
+=item Name: B<resolution>
+
+=item Class: B<Resolution>
+
+=item Switch: B<-resolution>
+
+A real value specifying the resolution for the scale.
+If this value is greater than zero then the scale's value will always be
+rounded to an even multiple of this value, as will tick marks and
+the endpoints of the scale. If the value is less than zero then no
+rounding occurs. Defaults to 1 (i.e., the value will be integral).
+
+=item Name: B<showValue>
+
+=item Class: B<ShowValue>
+
+=item Switch: B<-showvalue>
+
+Specifies a boolean value indicating whether or not the current
+value of the scale is to be displayed.
+
+=item Name: B<sliderLength>
+
+=item Class: B<SliderLength>
+
+=item Switch: B<-sliderlength>
+
+Specfies the size of the slider, measured in screen units along the slider's
+long dimension. The value may be specified in any of the forms acceptable
+to B<Tk_GetPixels>.
+
+=item Name: B<sliderRelief>
+
+=item Class: B<SliderRelief>
+
+=item Switch: B<-sliderrelief>
+
+Specifies the relief to use when drawing the slider, such as B<raised>
+or B<sunken>.
+
+=item Name: B<state>
+
+=item Class: B<State>
+
+=item Switch: B<-state>
+
+Specifies one of three states for the scale: B<normal>,
+B<active>, or B<disabled>.
+If the scale is disabled then the value may not be changed and the scale
+won't activate.
+If the scale is active, the slider is displayed using the color
+specified by the B<activeBackground> option.
+
+=item Name: B<tickInterval>
+
+=item Class: B<TickInterval>
+
+=item Switch: B<-tickinterval>
+
+Must be a real value.
+Determines the spacing between numerical
+tick marks displayed below or to the left of the slider.
+If 0, no tick marks will be displayed.
+
+=item Name: B<to>
+
+=item Class: B<To>
+
+=item Switch: B<-to>
+
+Specifies a real value corresponding
+to the right or bottom end of the scale.
+This value may be either less than or greater than the B<from> option.
+
+=item Name: B<variable>
+
+=item Class: B<Variable>
+
+=item Switch: B<-variable>
+
+Specifies the name of a global variable to link to the scale. Whenever the
+value of the variable changes, the scale will update to reflect this
+value.
+Whenever the scale is manipulated interactively, the variable
+will be modified to reflect the scale's new value.
+
+=item Name: B<width>
+
+=item Class: B<Width>
+
+=item Switch: B<-width>
+
+Specifies the desired narrow dimension of the trough in screen units
+(i.e. any of the forms acceptable to B<Tk_GetPixels>).
+For vertical scales this is the trough's width; for horizontal scales
+this is the trough's height.
+
+=back
+
+=head1 DESCRIPTION
+
+The B<Scale> method creates a new window (given by the
+$widget argument) and makes it into a scale widget.
+Additional
+options, described above, may be specified on the command line
+or in the option database
+to configure aspects of the scale such as its colors, orientation,
+and relief. The B<scale> command returns its
+$widget argument. At the time this command is invoked,
+there must not exist a window named $widget, but
+$widget's parent must exist.
+
+A scale is a widget that displays a rectangular I<trough> and a
+small I<slider>. The trough corresponds to a range
+of real values (determined by the B<from>, B<to>, and
+B<resolution> options),
+and the position of the slider selects a particular real value.
+The slider's position (and hence the scale's value) may be adjusted
+with the mouse or keyboard as described in
+the L<"BINDINGS"> section below. Whenever the scale's value is changed, a Tcl
+command is invoked (using the B<command> option) to notify
+other interested widgets of the change.
+In addition, the value
+of the scale can be linked to a Tcl variable (using the B<variable>
+option), so that changes in either are reflected in the other.
+
+Three annotations may be displayed in a scale widget: a label
+appearing at the top right of the widget (top left for horizontal
+scales), a number displayed just to the left of the slider
+(just above the slider for horizontal scales), and a collection
+of numerical tick marks just to the left of the current value
+(just below the trough for horizontal scales). Each of these three
+annotations may be enabled or disabled using the
+configuration options.
+
+=head1 WIDGET METHODS
+
+The B<Scale> method creates a widget object.
+This object supports the B<configure> and B<cget> methods
+described in L<Tk::options> which can be used to enquire and
+modify the options described above.
+The widget also inherits all the methods provided by the generic
+L<Tk::Widget|Tk::Widget> class.
+
+The following additional methods are available for scale widgets:
+
+=over 4
+
+=item I<$scale>-E<gt>B<coords>(?I<value>?)
+
+Returns a list whose elements are the x and y coordinates of
+the point along the centerline of the trough that corresponds
+to I<value>.
+If I<value> is omitted then the scale's current value is used.
+
+=item I<$scale>-E<gt>B<get>(?I<x, y>?)
+
+If I<x> and I<y> are omitted, returns the current value
+of the scale. If I<x> and I<y> are specified, they give
+pixel coordinates within the widget; the command returns
+the scale value corresponding to the given pixel.
+Only one of I<x> or I<y> is used: for horizontal scales
+I<y> is ignored, and for vertical scales I<x> is ignored.
+
+=item I<$scale>-E<gt>B<identify>(I<x, y>)
+
+Returns a string indicating what part of the scale lies under
+the coordinates given by I<x> and I<y>.
+A return value of B<slider> means that the point is over
+the slider; B<trough1> means that the point is over the
+portion of the slider above or to the left of the slider;
+and B<trough2> means that the point is over the portion
+of the slider below or to the right of the slider.
+If the point isn't over one of these elements, an empty string
+is returned.
+
+=item I<$scale>-E<gt>B<set>(I<value>)
+
+This command is invoked to change the current value of the scale,
+and hence the position at which the slider is displayed. I<Value>
+gives the new value for the scale.
+The command has no effect if the scale is disabled.
+
+=back
+
+=head1 BINDINGS
+
+Tk automatically creates class bindings for scales that give them
+the following default behavior.
+Where the behavior is different for vertical and horizontal scales,
+the horizontal behavior is described in parentheses.
+
+=over 4
+
+=item [1]
+
+If button 1 is pressed in the trough, the scale's value will
+be incremented or decremented by the value of the B<resolution>
+option so that the slider moves in the direction of the cursor.
+If the button is held down, the action auto-repeats.
+
+=item [2]
+
+If button 1 is pressed over the slider, the slider can be dragged
+with the mouse.
+
+=item [3]
+
+If button 1 is pressed in the trough with the Control key down,
+the slider moves all the way to the end of its range, in the
+direction towards the mouse cursor.
+
+=item [4]
+
+If button 2 is pressed, the scale's value is set to the mouse
+position. If the mouse is dragged with button 2 down, the scale's
+value changes with the drag.
+
+=item [5]
+
+The Up and Left keys move the slider up (left) by the value
+of the B<resolution> option.
+
+=item [6]
+
+The Down and Right keys move the slider down (right) by the value
+of the B<resolution> option.
+
+=item [7]
+
+Control-Up and Control-Left move the slider up (left) by the
+value of the B<bigIncrement> option.
+
+=item [8]
+
+Control-Down and Control-Right move the slider down (right) by the
+value of the B<bigIncrement> option.
+
+=item [9]
+
+Home moves the slider to the top (left) end of its range.
+
+=item [10]
+
+End moves the slider to the bottom (right) end of its range.
+
+If the scale is disabled using the B<state> option then
+none of the above bindings have any effect.
+
+The behavior of scales can be changed by defining new bindings for
+individual widgets or by redefining the class bindings.
+
+=back
+
+=head1 KEYWORDS
+
+scale, slider, trough, widget
+
+=cut
+