 |
» |
|
|
 |
- [ ]
Support dragging any object represented as an icon. - [ ]
Support dropping onto objects represented as icons. - [ ]
If a control supports any form of data transfer
with its contents used as a source, then those contents can be the
source of a drag-and-drop operation. - [ ]
If a control allows any form of data transfer to
the control, it can be used as a target for a drag-and-drop operation.
- [ ]
Make the source of a drag-and-drop transfer the
element or selection on which the drag was initiated. - [ ]
Make the target of a drag-and-drop transfer the
control on which the drop was performed; if the control holds a
selection scope, then it is the insertion point within that scope. - [ ]
The default operation for a drag-and-drop transfer
must be a move, except in the following cases: When the source is not editable, make
copy the default. When the destination is an external device (for
example, a printer, diskette, or mail out basket), make copy the
default. When the destination is an application that manipulates
the data (for example, a compiler), consider making copy the default.
- [ ]
The default operation for a drag-and-drop transfer
may be overridden by Ctrl and/or
Shift modifiers when the TRANSFER
button is released.
Separated TransferUse the following guidelines when TRANSFER is a separate mouse
button from SELECT. - [ ]
Initiate a drag when the user presses the TRANSFER
button and then moves the mouse on selections and elements that
can be dragged. - [ ]
If the user uses the TRANSFER button to drag an
element that has not been selected, drag only that element without
affecting any existing selection. - [ ]
Drag all selected elements in the scope when the
user presses the SELECT button and then moves the mouse on a selection. - [ ]
Initiate a drag when the user clicks Alt
TRANSFER on a selection or an element that can be dragged.
Integrated Selection and Transfer- [ ]
Whether the TRANSFER button is integrated with SELECT
on MB1 or not, when the user clicks SELECT, optionally augmented
with Shift and/or Ctrl,
the effect should be the same. - [ ]
When the user multi-clicks (or multi-presses) the
SELECT button, optionally augmented with Shift
Ctrl, the effect should be the
same whether the TRANSFER button is integrated with SELECT on MB1
or not.
Use the following guidelines when the TRANSFER button is the
same button as SELECT. - [ ]
When the user presses MB1 and moves the pointer
on a selection, drag all selected elements in the scope. - [ ]
When the user presses MB1 on an element that can
be activated or toggled (other than a tear-off choice), activate
or toggle the element; do not allow dragging. - [ ]
When the user presses MB1 and moves the pointer
on an element that cannot be selected (other than a tear-off choice),
do not allow dragging. - [ ]
If the MENU button is bound to a mouse button other
than MB1, when the user clicks Alt
MB1, optionally augmented with Shift
and/or Ctrl, on a selection or
an element that can be dragged, initiate a drag.
Integrated Selection and Transfer in the Background- [ ]
Whether the TRANSFER button is integrated with SELECT
on MB1 or not, support the same effect when the user presses SELECT
and moves the pointer, optionally augmented with Shift
and/or Ctrl, in the background
(or on unselected text) of a scope that supports area or range selection
techniques.
Integrated Selection and Transfer on Unselected Elements- [ ]
When the TRANSFER button is integrated with SELECT
on MB1, when the user presses MB1 and moves the pointer, optionally
augmented with Shift and/or Ctrl,
on an unselected element for dragging, the effect should be equivalent
to the user clicking the SELECT button (without modifiers) on the
element (using whatever selection model is in force) and then dragging
the selection. - [ ]
When the TRANSFER button is integrated with SELECT
on MB1 in a nontextual scope, treat pressing MB1 and moving on an
unselected element as a selection technique if the following is
true: Area or range selection techniques
are supported and the scope is densely populated (in other words,
there is not much background space available) Different selection techniques are used (for example,
touch versus area techniques) depending upon whether MB1 is pressed
on an element versus in the background
Otherwise, allow the user to press MB1 and move the pointer
on an unselected element for dragging.
Completing the Drag- [ ]
The application that contains the source elements
of a drag-and-drop operation may limit drops to windows that it
manages. It may also treat elements of its own or other applications
as invisible for the purpose of determining the target. - [ ]
When a drag is completed, a drop should be performed
at the pointer location as follows: Where the pointer is when the TRANSFER
button is released, if it was pressed while the drag was in progress Where the pointer is when the TRANSFER button is
clicked, if it was not pressed while the drag was in progress Where the user presses Return
or Enter
In any case, the state of the Ctrl
and Shift modifiers at the time
of the drops determines the operation to be performed. - [ ]
When a drag is in progress and the user presses
Cancel, cancel the drag.
Dropping an Element- [ ]
When the user attempts to drop an element on an
element that does not support the operation, cancel the drag or
display a message dialog similar to the one that would be used if
Help were pressed at that location. - [ ]
When a user drops a source element onto the same
position it currently occupies, the application should not perform
an action. - [ ]
If the source elements of a drag-and-drop move operation
are selected, select the elements transferred to the target scope
if the source and target scopes are the same. - [ ]
If the source elements of a drag-and-drop move operation
are selected, select the elements transferred to the target scope
if the target uses normal mode and allows the number of elements
transferred to be selected. - [ ]
Move focus to the target control in a drag-and-drop
operation.
|