Drag and drop provides a quick and simple model for transferring data within and between applications. A drag and drop interaction is accomplished in four steps:
Pressing Transfer in a draggable element and moving the pointer must start a drag and drop interaction. If a drag is initiated in an unselected region and the pointer is over two possible draggable elements, the drag must occur on the highest draggable element in the stacking order. This also implies that in nested draggable elements the drag occurs from the smallest draggable element under the pointer.
When BSelect is used for dragging operations, its use must supersede the use of BSelect Motion in the selection models described in Selection Models.
Any successful drag and drop transfer from a read-only component
should by default result in a copy of the data, but it can result in a
link. Transfers from writable components can by default result in a
copy, a link, or a move. BTransfer
Release
must force a move operation if possible; otherwise, the operation must
fail.
BTransfer
Release
must force a copy operation if possible; otherwise, the operation must
fail.
BTransfer
Release
must force a link operation if possible; otherwise, the operation must
fail.
If a system provides drag and drop help, pressing during a drag and drop operation should allow
the posting of a DialogBox with the help information and the possible
choices for continuing the drag and drop operation. Pressing
during a drag operation must cancel the
current drag operation and return the system to the state prior to the
start of the drag operation.
Releasing BTransfer must end a drag and drop operation. When a user releases BTransfer, the drop operation must occur at the location of the hotspot of the drag icon pointer. The drop must occur into the highest drop site in the stacking order. This also implies that in a group of nested drop sites the drop occurs into the smallest drop site under the pointer.
See Transfer Models for more information on the drag and drop model, and for information on quick transfer and the selection models.