.\" Motif
.\"
.\" Copyright (c) 1987-2012, The Open Group. All rights reserved.
.\"
.\" These libraries and programs are free software; you can
.\" redistribute them and/or modify them under the terms of the GNU
.\" Lesser General Public License as published by the Free Software
.\" Foundation; either version 2 of the License, or (at your option)
.\" any later version.
.\"
.\" These libraries and programs are distributed in the hope that
.\" they will be useful, but WITHOUT ANY WARRANTY; without even the
.\" implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
.\" PURPOSE. See the GNU Lesser General Public License for more
.\" details.
.\"
.\" You should have received a copy of the GNU Lesser General Public
.\" License along with these librararies and programs; if not, write
.\" to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
.\" Floor, Boston, MA 02110-1301 USA
...\" 
...\" 
...\" HISTORY
# $XConsortium: DragComponent.3X /main/4 1995/07/13 19:59:14 drk $
...\" **
...\" **
...\" **  (c) Copyright 1991, 1992 by Open Software Foundation, Inc.
...\" **      All Rights Reserved.
...\" **
...\" **
.TH DragComponent 3X
.SH NAME
\*LDragComponent \*O\(em Command to drag within a component of a widget.
.SH SYNOPSIS
\*LDragComponent\*O
\*VWidgetName Component Destination [ModifierList]* [Button]\*O
.SH DESCRIPTION
The
\*LDragComponent\*O
command will drag between two subcomponents of a widget. This command
will be used in a List widget to drag between List items, and also
will be used in a Text widget to drag between text characters (to make
primary and secondary selections). This command should follow a command to
\*LLocatePointer\*O to a subcomponent where the drag
will begin. The \*LDragComponent\*O command will then cause a drag 
action between the
two points, current and specified.  
The \*LDragComponent\*O command is composed of a call to 
\*LPressMB\*O, a call to \*LLocatePointer\*O to move to the destination, 
and then a call to \*LReleaseMB\*O. The mouse button used in the drag may
be specified with optional argument \*VButton\*O.
.IP "\*VWidgetName\*O" 13n
The XtName representing the widget you wish to take an action on.
.IP "\*VComponent\*O"
Particular component within the widget. See \*LComponentList(3X)\*O for
a full list of supported components.
.IP "\*VDestination\*O"
Number correponding to the index within the component. In the case where the
component is \*VRListItem\*O, \*VDestination\*O refers to the list item
number (0 is the first element in the list). If the component is 
\*VRTextChar\*O, \*VDestination\*O refers to the character position with the
Text widget (0 is the first character).
.IP "\*V[ModifierList]*\*O" 
List of Modifiers to modify the mouse button press. For a full list of
available Modifiers see \*LModifierList(3X)\*O. The default is no modifiers.
.IP "\*V[Button]\*O"
Button to be pressed. For a full list of available
Buttons see \*LButtonList\*O. The default is \*LButton1\*O.
.PP 
For more information about \*LDragComponent\*O, see
the \*EOSF/Motif Quality Assurance Test Suite User's Guide\*O.
.SH EXAMPLE
\*LLocatePointer Text1 RTextChar 25\*O
.br
\*LDragComponent Text1 RTextChar 30 <Shift> Btn2\*O
.PP
These two commands will drag between character 25 and 
character 30 with Button2 pressed, modified by Shift.
.PP
.SH "RELATED INFORMATION"
.na
\*LLocatePointer(3X)\*O, \*LPressMB(3X)\*O, \*LReleaseMB(3X)\*O, 
\*LDragXYRelative(3X)\*O, \*LDragSliderValue(3X)\*O,
\*LModifierList(3X)\*O, \*LComponentList(3X)\*O
.ad
