'\"macro stdmacro
.if n .pH g3w.olTextSelect @(#)olTextSelect	40.2 of 1/8/90
.SO BP.HEADER
.nr X
.if \nX=0 .ds x} ""TEXT SELECTION" 3W "\&"
.if \nX=1 .ds x} ""TEXT SELECTION" 3W
.if \nX=2 .ds x} ""TEXT SELECTION" "" "\&"
.if \nX=3 .ds x} ""TEXT "" "" "\&"
.TH \*(x}
.SH "DESCRIPTION"
.P
The \f3Caption\f1, \f3StaticText\f1, \f3Text\f1, and 
\f3TextField\f1 widgets use the following 
operations to copy and move text. 
.sp
\fBSetting Insert Point\fP
.P
Clicking SELECT sets the insert point at the boundary between
two characters or spaces nearest the pointer.
This makes an inactive caret active and highlights the header
of the main window
(base window or pop-up window)
containing the specific text widget,
to show which window has the input focus.
Any active selection on the screen is deselected.
.sp
\fBWipe-through Selection\fP
.P
Pressing and dragging SELECT marks the bounds of a new selection
and highlights it,
and deselects any other active selection on the screen.
While SELECT is pressed,
the active or inactive caret that marks the insert point is
invisible,
but when SELECT is released,
the insert point is left at the position of the release.
This does not make the insert point (caret) active if it
isn't already active.
.P
The selection starts with the character where SELECT is pressed
and extends to the character where SELECT is released.
If the pointer moves outside the widget and the widget can
scroll in that direction
(i.e., there is a scrollbar for that direction),
the widget scrolls additional text into the widget and adds it to
the selection.
The rate at which text scrolls into the widget is the same
rate at which pressing SELECT on the arrows of the Scrollbar scrolls the
widget.
.P
Deletion of the new selection is pending:
new text entered from the keyboard or pasted from the clipboard
replaces the selection.
.sp
\fBAdjusted Selection\fP
.P
Clicking SELECT, moving the pointer, and clicking
ADJUST marks the bounds of a selection and highlights it.
A subsequent click of ADJUST changes the end bound of the
selection.
The ADJUST may also follow a wipe-through selection.
The selection starts with the character where SELECT was
clicked and extends to the character where ADJUST is clicked.
The insert point is moved to the position of the ADJUST.
As above,
deletion of the new selection is pending.
.sp
\fBMulti-click Selection\fP
.P
Double-clicking SELECT selects the word nearest the pointer.
In case of a tie,
the word to the left is selected.
Triple-clicking SELECT selects the entire line,
and quadruple-clicking selects the entire content.
The selection is highlighted and the insert point is left at
the position of the multi-click.
.sp
\fBCopying Text\fP
.P
Using COPY copies any selected text to the clipboard and
deselects it.
.bp
\fBCutting Text\fP
.P
Using CUT moves any selected text to the clipboard and
deletes it from the Input Field.
.sp
\fBPasting Text\fP
.P
After setting the insert point,
using PASTE copies text from the clipboard as though it were
typed in,
leaving the insert point at the end of the pasted text.
This will replace any text currently selected in the \*(bW widget.
Note that the data on the clipboard may have come from outside
the Input Field,
but it must be text.
If the clipboard is empty, the system beeps.
