aboutsummaryrefslogtreecommitdiff
path: root/libXaw/spec/Scrollbar
diff options
context:
space:
mode:
Diffstat (limited to 'libXaw/spec/Scrollbar')
-rw-r--r--libXaw/spec/Scrollbar386
1 files changed, 0 insertions, 386 deletions
diff --git a/libXaw/spec/Scrollbar b/libXaw/spec/Scrollbar
deleted file mode 100644
index faf693a3b..000000000
--- a/libXaw/spec/Scrollbar
+++ /dev/null
@@ -1,386 +0,0 @@
-.\" $Xorg: Scrollbar,v 1.3 2000/08/17 19:42:27 cpqbld Exp $
-.NH 2
-Scrollbar Widget
-.LP
-.XS
- Scrollbar Widget
-.XE
-.IN "Scrollbar widget" "" "@DEF@"
-.Ds 0
-.TA 2.0i
-.ta 2.0i
-.sp
-Application header file <X11/Xaw/Scrollbar.h>
-.IN "Scrollbar.h" ""
-Class header file <X11/Xaw/ScrollbarP.h>
-.IN "ScrollbarP.h" ""
-Class scrollbarWidgetClass
-.IN "scrollbarWidgetClass" ""
-Class Name Scrollbar
-.IN "Scrollbar widget" "class name"
-Superclass Simple
-.sp
-.De
-.LP
-A Scrollbar widget is a rectangle, called the ``canvas,'' on
-which another rectangle, the ``thumb,'' moves in one
-dimension, either vertically or horizontally. A Scrollbar
-can be used alone, as a value generator, or it can be used
-within a composite widget (for example, a Viewport). When a
-Scrollbar is used to move, or ``scroll,'' the contents of
-another widget, the size and the position of the thumb usually give
-feedback as to what portion of the other widget's contents
-are visible.
-.LP
-Each pointer button invokes a specific action. Pointer
-buttons 1 and 3 do not move the thumb automatically.
-Instead, they return the pixel position of the cursor on the
-scroll region. When pointer button 2 is clicked, the thumb
-moves to the current pointer position. When pointer button
-2 is held down and the pointer is moved, the thumb follows
-the pointer.
-.LP
-The pointer cursor in the scroll region changes depending on the current
-action. When no pointer button is pressed, the cursor appears as a
-double-headed arrow that points in the direction that scrolling can
-occur. When pointer button 1 or 3 is pressed, the cursor appears as a
-single-headed arrow that points in the logical direction that the thumb
-will move. When pointer button 2 is pressed, the cursor
-appears as an arrow that points to the top or the left of the thumb.
-.LP
-When the user scrolls, the application receives notification
-through callback procedures. For both discrete scrolling actions, the
-callback returns the Scrollbar widget, the client_data, and the pixel
-position of the pointer when the button was released. For continuous
-scrolling, the callback routine returns the scroll bar widget, the
-client data, and the current relative position of the thumb. When the
-thumb is moved using pointer button 2, the callback procedure is invoked
-continuously. When either button 1 or 3 is pressed, the callback
-procedure is invoked only when the button is released and the client
-callback procedure is responsible for moving the thumb.
-.NH 3
-Resources
-.LP
-When creating a Scrollbar widget instance, the following resources are
-retrieved from the argument list or from the resource database:
-.LP
-.IN "Scrollbar widget" "resources"
-.TS H
-expand;
-lw(1i) lw(1i) lw(1i) lw(.5i) lw(2i).
-_
-.sp 3p
-.TB
-Name Class Type Notes Default Value
-.sp 3p
-_
-.TH
-.R
-.sp 3p
-accelerators Accelerators AcceleratorTable NULL
-ancestorSensitive AncestorSensitive Boolean D True
-background Background Pixel XtDefaultBackground
-backgroundPixmap Pixmap Pixmap XtUnspecifiedPixmap
-borderColor BorderColor Pixel XtDefaultForeground
-borderPixmap Pixmap Pixmap XtUnspecifiedPixmap
-borderWidth BorderWidth Dimension 1
-colormap Colormap Colormap parent's Colormap
-cursor Cursor Cursor None
-cursorName Cursor String NULL
-depth Depth int C parent's Depth
-destroyCallback Callback XtCallbackList NULL
-foreground Foreground Pixel XtDefaultForeground
-height Height Dimension A depends on orientation
-insensitiveBorder Insensitive Pixmap GreyPixmap
-international International Boolean C False
-jumpProc Callback XtCallbackList NULL
-length Length Dimension 1
-mappedWhenManaged MappedWhenManaged Boolean True
-minimumThumb MinimumThumb Dimension 7
-orientation Orientation Orientation XtorientVertical (vertical)
-pointerColor Foreground Pixel XtDefaultForeground
-pointerColorBackground Background Pixel XtDefaultBackground
-screen Screen Screen R parent's Screen
-scrollDCursor Cursor Cursor XC_sb_down_arrow
-scrollHCursor Cursor Cursor XC_sb_h_double_arrow
-scrollLCursor Cursor Cursor XC_sb_left_arrow
-scrollProc Callback XtCallbackList NULL
-scrollRCursor Cursor Cursor XC_sb_right_arrow
-scrollUCursor Cursor Cursor XC_sb_up_arrow
-scrollVCursor Cursor Cursor XC_sb_v_arrow
-sensitive Sensitive Boolean True
-shown Shown Float 0.0
-thickness Thickness Dimension 14
-thumb Thumb Bitmap GreyPixmap
-thumbProc Callback XtCallbackList NULL
-topOfThumb TopOfThumb Float 0.0
-translations Translations TranslationTable See below
-width Width Dimension A depends on orientation
-x Position Position 0
-y Position Position 0
-.sp 3p
-_
-.TE
-.Ac
-.As
-.Bg
-.Gp
-.Bc
-.Bp
-.Bw
-.Cm
-.Cu
-.Cn
-.Dp
-.Dc
-.IP \fBforeground\fP 1.5i
-A pixel value which indexes the widget's colormap to derive the color
-used to draw the thumb.
-.Hw
-.Ib
-.Ix
-.IP \fBjumpProc\fP 1.5i
-All functions on this callback list are called when the
-\fBNotifyThumb\fP action is invoked. See the \fBScrollbar
-Actions\fP section for details.
-.IP \fBlength\fP 1.5i
-The height of a vertical scrollbar or the width of a horizontal scrollbar.
-.Mm
-.IP \fBminimumThumb\fP 1.5i
-The smallest size, in pixels, to which the thumb can shrink.
-.IP \fBorientation\fP 1.5i
-The orientation is the direction that the thumb will be allowed to move.
-This value can be either \fBXtorientVertical\fP or
-\fBXtorientHorizontal\fP.
-.IN "XtorientVertical" ""
-.IN "XtorientHorizontal" ""
-.IN "conversions" "Orientation"
-.Rs "vertical \fPand\fB horizontal"
-.Pf
-.Pb
-.Sc
-.IP \fBscrollDCursor\fP 1.5i
-This cursor is used when scrolling backward in a vertical scrollbar.
-.IP \fBscrollHCursor\fP 1.5i
-This cursor is used when a horizontal scrollbar is inactive.
-.IP \fBscrollLCursor\fP 1.5i
-This cursor is used when scrolling forward in a horizontal scrollbar.
-.IP \fBscrollProc\fP 1.5i
-All functions on this callback list may be called when the
-\fBNotifyScroll\fP action is invoked. See the \fBScrollbar
-Actions\fP section for details.
-.IP \fBscrollRCursor\fP 1.5i
-This cursor is used when scrolling backward in a horizontal scrollbar,
-or when thumbing a vertical scrollbar.
-.IP \fBscrollUCursor\fP 1.5i
-This cursor is used when scrolling forward in a vertical scrollbar, or when
-thumbing a horizontal scrollbar.
-.IP \fBscrollVCursor\fP 1.5i
-This cursor is used when a vertical scrollbar is inactive.
-.Se
-.IP \fBshown\fP 1.5i
-This is the size of the thumb, expressed as a percentage (0.0 - 1.0)
-of the length of the scrollbar.
-.IP \fBthickness\fP 1.5i
-The width of a vertical scrollbar or the height of a horizontal scrollbar.
-.IP \fBthumb\fP 1.5i
-This pixmap is used to tile (or stipple) the thumb of the scrollbar. If
-no tiling is desired, then set this resource to \fBNone\fP. This
-resource will accept either a bitmap or a pixmap that is the same depth
-as the window. The resource converter for this resource constructs
-bitmaps from the contents of files. (See \fBConverting Bitmaps\fP for
-details.)
-.IP \fBtopOfThumb\fP 1.5i
-The location of the top of the thumb, as a percentage (0.0 - 1.0)
-of the length of the scrollbar. This resource was called \fBtop\fP in
-previous versions of the Athena widget set. The name collided with the
-a Form widget constraint resource, and had to be changed.
-.Tr
-.Xy
-.NH 3
-Scrollbar Actions
-.IN "Scrollbar widget" "actions"
-.LP
-The actions supported by the Scrollbar widget are:
-.IP \fBStartScroll\fP(\fIvalue\fP) 1.5i
-The possible \fIvalues\fP are Forward, Backward, or Continuous.
-This must be the first action to begin a new movement.
-.IP \fBNotifyScroll\fP(\fIvalue\fP) 1.5i
-The possible \fIvalues\fP are Proportional or FullLength. If the
-argument to StartScroll was Forward or Backward, NotifyScroll executes
-the \fBscrollProc\fP callbacks and passes either; the position of the
-pointer, if \fIvalue\fP is Proportional, or the full length of the
-scroll bar, if \fIvalue\fP is FullLength. If the argument to
-StartScroll was Continuous, NotifyScroll returns without executing any
-callbacks.
-.IP \fBEndScroll\fP(\^) 1.5i
-This must be the last action after a movement is complete.
-.IP \fBMoveThumb\fP(\^) 1.5i
-Repositions the Scrollbar's thumb to the current pointer location.
-.IP \fBNotifyThumb\fP(\^)\ \ \ 1.5i
-Calls the
-.PN jumpProc
-callbacks and passes the relative position of the
-pointer as a percentage of the scroll bar length.
-.LP
-.sp
-The default bindings for Scrollbar are:
-.IN "Scrollbar widget" "default translation table"
-.LP
-.Ds 0
-.TA .5i 1.75i
-.ta .5i 1.75i
- <Btn1Down>: StartScroll(Forward)
- <Btn2Down>: StartScroll(Continuous) MoveThumb(\|) NotifyThumb(\|)
- <Btn3Down>: StartScroll(Backward)
- <Btn2Motion>: MoveThumb(\|) NotifyThumb(\|)
- <BtnUp>: NotifyScroll(Proportional) EndScroll(\|)
-.De
-.LP
-.sp
-Examples of additional bindings a user might wish to specify in a
-resource file are:
-.LP
-.Ds 0
-.TA .5i 2.25i
-.ta .5i 2.25i
-*Scrollbar.Translations: \\
- ~Meta<Key>space: StartScroll(Forward) NotifyScroll(FullLength) \\n\\
- Meta<Key>space: StartScroll(Backward) NotifyScroll(FullLength) \\n\\
- EndScroll(\|)
-.De
-.NH 3
-Scrollbar Callbacks
-.IN "Scrollbar widget" "callbacks"
-.LP
-There are two callback lists provided by the Scrollbar widget.
-The procedural interface for these functions is described here.
-.LP
-The calling interface to the \fBscrollProc\fP callback procedure is:
-.IN "ScrollProc" "" "@DEF@"
-.FD 0
-void ScrollProc(\fIscrollbar\fP, \fIclient_data\fP, \fIposition\fP)
-.br
- Widget \fIscrollbar\fP;
-.br
- XtPointer \fIclient_data\fP;
-.br
- XtPointer \fIposition\fP; /* int */
-.FN
-.IP \fIscrollbar\fP 1i
-Specifies the Scrollbar widget.
-.IP \fIclient_data\fP 1i
-Specifies the client data.
-.IP \fIposition\fP 1i
-Specifies a pixel position in integer form.
-.LP
-The \fBscrollProc\fP callback is used for incremental scrolling
-and is called by the \fBNotifyScroll\fP action.
-The position argument is a signed quantity and should be cast to an int
-when used. Using the default button bindings, button 1 returns a
-positive value, and button 3 returns a negative value. In both cases,
-the magnitude of the value is the distance of the pointer in
-pixels from the top (or left) of the Scrollbar. The value will never
-be greater than the length of the Scrollbar.
-.LP
-.sp
-The calling interface to the \fBjumpProc\fP callback procedure is:
-.IN "jumpProc" "" "@DEF@"
-.FD 0
-void JumpProc(\fIscrollbar\fP, \fIclient_data\fP, \fIpercent\fP)
-.br
- Widget \fIscrollbar\fP;
-.br
- XtPointer \fIclient_data\fP;
-.br
- XtPointer \fIpercent_ptr\fP; /* float* */
-.FN
-.IP \fIscrollbar\fP 1i
-Specifies the ID of the scroll bar widget.
-.IP \fIclient_data\fP 1i
-Specifies the client data.
-.IP \fIpercent_ptr\fP 1i
-Specifies the floating point position of the thumb (0.0 \- 1.0).
-.LP
-The \fBjumpProc\fP callback is used to implement smooth scrolling and
-is called by the \fBNotifyThumb\fP action. Percent_ptr must be cast
-to a pointer to float before use; i.e.
-.LP
-.Ds 0
-.TA .5i
-.ta .5i
- float percent = *(float*)percent_ptr;
-.De
-.LP
-With the default button bindings, button 2 moves the thumb interactively,
-and the \fBjumpProc\fP is called on each new position of the pointer,
-while the pointer button remains down. The value specified by
-\fIpercent_ptr\fP is the current location of the thumb (from the top or
-left of the Scrollbar) expressed as a percentage of the length of the
-Scrollbar.
-.NH 3
-Convenience Routines
-.LP
-.IN "Scrollbar widget" "setting thumb values"
-To set the position and length of a Scrollbar thumb, use
-.PN XawScrollbarSetThumb .
-.IN "XawScrollbarSetThumb" "" "@DEF@"
-.FD 0
-void XawScrollbarSetThumb(\fIw\fP, \fItop\fP, \fIshown\fP)
-.br
- Widget \fIw\fP;
-.br
- float \fItop\fP;
-.br
- float \fIshown\fP;
-.FN
-.IP \fIw\fP 1i
-Specifies the Scrollbar widget.
-.IP \fItop\fP 1i
-Specifies the position of the top of the thumb as a fraction of the
-length of the Scrollbar.
-.IP \fIshown\fP 1i
-Specifies the length of the thumb as a fraction of the total length
-of the Scrollbar.
-.LP
-.PN XawScrollbarThumb
-moves the visible thumb to a new position (0.0 \- 1.0) and length (0.0 \- 1.0).
-Either the top or shown arguments can be specified as \-1.0,
-in which case the current value is left unchanged.
-Values greater than 1.0 are truncated to 1.0.
-.LP
-If called from \fBjumpProc\fP, \fBXawScrollbarSetThumb\fP has no effect.
-.NH 3
-Setting Float Resources
-.IN "float resources" "setting"
-.LP
-The \fBshown\fP and \fBtopOfThumb\fP resources are of type
-\fIfloat\fP. These resources can be difficult to get into an
-argument list. The reason is that C performs an automatic cast of
-the float value to an integer value, usually truncating the important
-information. The following code fragment is one portable method of
-getting a float into an argument list.
-.sp
-.Ds 0
-.SM
-.TA 1i 2i
-.ta 1i 2i
- top = 0.5;
- if (sizeof(float) > sizeof(XtArgVal)) {
- /*
- \ * If a float is larger than an XtArgVal then pass this
- \ * resource value by reference.
- \ */
- XtSetArg(args[0], XtNshown, &top);
- }
- else {
- /*
- \ * Convince C not to perform an automatic conversion, which
- \ * would truncate 0.5 to 0.
- \ */
- XtArgVal * l_top = (XtArgVal *) &top;
- XtSetArg(args[0], XtNshown, *l_top);
- }
-.NL
-.De
-.sp