XmDragIcon(X3mot)


XmDragIcon -- the DragIcon widget class

Synopsis

#include <Xm/DragDrop.h>

Description

A DragIcon is a component of the visual used to represent the source data in a drag and drop transaction. During a drag operation, a real or simulated X cursor provides drag-over visuals consisting of a static portion that represents the object being dragged, and dynamic cues that provide visual feedback during the drag operation. The visual is attained by blending together various XmDragIcons specified in the XmDragContext associated with the drag operation.

The static portion of the drag-over visual is the graphic representation that identifies the drag source. For example, when a user drags several items within a list, a DragIcon depicting a list might be supplied as the visual. The XmDragContext resources, XmNsourceCursorIcon or XmNsourcePixmapIcon, specify a DragIcon to use for the static portion of the visual.

A drag-over visual incorporates dynamic cues in order to provide visual feedback in response to the user's actions. For instance, the drag-over visual might use different indicators to identify the type of operation (copy, link, or move) being performed. Dynamic cues could also alert the user that a drop site is valid or invalid as the pointer traverses the drop site. The XmNoperationCursorIcon and XmNstateCursorIcon resources of XmDragContext specify DragIcons for dynamic cues.

A drag-over visual typically consists of a source, operation and state DragIcon. The XmNblendModel resource of XmDragContext offers several options that determine which icons are blended to produce the drag-over visual. DragIcon resources control the relative position of the operation and state icons (if used). If a particular DragIcon is not specified, the toolkit uses the XmScreen default DragIcons.

An application initializes a DragIcon with the function XmCreateDragIcon or through entries in the resource database. If a pixmap and its mask (optional) are specified in the resource database, the toolkit converts the values in the X11 Bitmap file format and assigns values to the corresponding resources.

Classes

DragIcon inherits behavior and a resource from Object.

The class pointer is xmDragIconObjectClass.

The class name is XmDragIcon.

New resources

The following table defines a set of widget resources used by the programmer to specify data. The programmer can also set the resource values for the inherited classes to set attributes for this widget. To reference a resource by name or by class in a .Xdefaults file, remove the ``XmN'' or ``XmC'' prefix and use the remaining letters. To specify one of the defined values for a resource in a .Xdefaults file, remove the ``Xm'' prefix and use the remaining letters (in either lowercase or uppercase, but include any underscores between words). The codes in the access column indicate if the given resource can be set at creation time (C), set by using XtSetValues (S), retrieved by using XtGetValues (G), or is not applicable (N/A).

XmDragIcon resource set

Name Class Type Default Access
XmNattachment XmCAttachment unsigned char XmATTACH_NORTH_WEST
CSG        
XmNdepth XmCDepth int 1 CSG
XmNheight XmCHeight Dimension 0 CSG
XmNhotX XmCHot Position 0 CSG
XmNhotY XmCHot Position 0 CSG
XmNmask XmCPixmap Pixmap XmUNSPECIFIED_PIXMAP CSG
XmNoffsetX XmCOffset Position 0 CSG
XmNoffsetY XmCOffset Position 0 CSG
XmNpixmap XmCPixmap Pixmap XmUNSPECIFIED_PIXMAP CSG
XmNwidth XmCWidth Dimension 0 CSG

 +--------------+---------------+-----------+----------------------+---------------------+
 |Name          | Class         | Type      | Default              | Access              |
 +--------------+---------------+-----------+----------------------+---------------------+
 |XmNattachment | XmCAttachment | unsigned  | char                 | XmATTACH_NORTH_WEST |
 +--------------+---------------+-----------+----------------------+---------------------+
 |XmNdepth      | XmCDepth      | int       | 1                    | CSG                 |
 +--------------+---------------+-----------+----------------------+---------------------+
 |XmNheight     | XmCHeight     | Dimension | 0                    | CSG                 |
 +--------------+---------------+-----------+----------------------+---------------------+
 |XmNhotX       | XmCHot        | Position  | 0                    | CSG                 |
 +--------------+---------------+-----------+----------------------+---------------------+
 |XmNhotY       | XmCHot        | Position  | 0                    | CSG                 |
 +--------------+---------------+-----------+----------------------+---------------------+
 |XmNmask       | XmCPixmap     | Pixmap    | XmUNSPECIFIED_PIXMAP | CSG                 |
 +--------------+---------------+-----------+----------------------+---------------------+
 |XmNoffsetX    | XmCOffset     | Position  | 0                    | CSG                 |
 +--------------+---------------+-----------+----------------------+---------------------+
 |XmNoffsetY    | XmCOffset     | Position  | 0                    | CSG                 |
 +--------------+---------------+-----------+----------------------+---------------------+
 |XmNpixmap     | XmCPixmap     | Pixmap    | XmUNSPECIFIED_PIXMAP | CSG                 |
 +--------------+---------------+-----------+----------------------+---------------------+
 |XmNwidth      | XmCWidth      | Dimension | 0                    | CSG                 |
 +--------------+---------------+-----------+----------------------+---------------------+

XmNattachment
Specifies a relative location on the source icon for the attachment of the state or operation icon. The origin of the state and operation icons is aligned with the specified compass point on the source icon. The XmNoffsetX and XmNoffsetY resources can be used to further refine the icon positions. The possible values are

XmNdepth
Specifies the depth of the pixmap.

XmNheight
Specifies the height of the pixmap.

XmNhotX
Specifies the x-coordinate of the hotspot of a cursor DragIcon in relation to the origin of the pixmap bounding box.

XmNhotY
Specifies the y-coordinate of the hotspot of a cursor DragIcon in relation to the origin of the pixmap bounding box.

XmNmask
Specifies a pixmap of depth one to use as the DragIcon mask pixmap.

XmNoffsetX
Specifies a horizontal offset (in pixels) of the origin of the state or operation icon relative to the attachment point on the source icon. A positive offset value moves the origin to the right; a negative value moves the origin to the left.

XmNoffsetY
Specifies a vertical offset (in pixels) of the origin of the state or operation icon relative to the attachment point on the source icon. A positive offset value moves the origin down; a negative value moves the origin up.

XmNpixmap
Specifies a pixmap to use as the DragIcon pixmap.

XmNwidth
Specifies the width of the pixmap.

Inherited resources

DragIcon inherits behavior and a resource from Object. For a complete description of this resource, refer to the Object(X3mot) man page.

Object resource set

Name Class Type Default Access
XmNdestroyCallback XmCCallback XtCallbackList NULL C

 +-------------------+-------------+----------------+---------+--------+
 |Name               | Class       | Type           | Default | Access |
 +-------------------+-------------+----------------+---------+--------+
 |XmNdestroyCallback | XmCCallback | XtCallbackList | NULL    | C      |
 +-------------------+-------------+----------------+---------+--------+

References

Object(X3mot), XmCreateDragIcon(X3mot), XmDisplay(X3mot), XmDragContext(X3mot), XmDropSite(X3mot), XmDropTransfer(X3mot) and XmScreen(X3mot).
25 April 2004
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004