Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Defines the drag-and-drop interaction states for the viewport.
Syntax
typedef enum DIRECTMANIPULATION_DRAG_DROP_STATUS {
DIRECTMANIPULATION_DRAG_DROP_READY = 0,
DIRECTMANIPULATION_DRAG_DROP_PRESELECT = 1,
DIRECTMANIPULATION_DRAG_DROP_SELECTING = 2,
DIRECTMANIPULATION_DRAG_DROP_DRAGGING = 3,
DIRECTMANIPULATION_DRAG_DROP_CANCELLED = 4,
DIRECTMANIPULATION_DRAG_DROP_COMMITTED = 5
} ;
Constants
DIRECTMANIPULATION_DRAG_DROP_READYValue: 0 The viewport is at rest and ready for input. |
DIRECTMANIPULATION_DRAG_DROP_PRESELECTValue: 1 The viewport is updating its content and the content is not selected. |
DIRECTMANIPULATION_DRAG_DROP_SELECTINGValue: 2 The viewport is updating its content and the content is selected. |
DIRECTMANIPULATION_DRAG_DROP_DRAGGINGValue: 3 The viewport is updating its content and the content is being dragged. |
DIRECTMANIPULATION_DRAG_DROP_CANCELLEDValue: 4 The viewport has concluded the interaction and requests a revert. |
DIRECTMANIPULATION_DRAG_DROP_COMMITTEDValue: 5 The viewport has concluded the interaction and requests a commit. |
Remarks
For each interaction, the status always starts at DIRECTMANIPULATION_DRAG_DROP_READY and ends at either DIRECTMANIPULATION_DRAG_DROP_CANCELLED or DIRECTMANIPULATION_DRAG_DROP_COMMITTED. There are no explicit callbacks for the transition from CANCELLED/COMMITTED to READY.
The meaning of the CANCELLED and COMMITTED values depend on the previous status.
- For DIRECTMANIPULATION_DRAG_DROP_PRESELECT, they mean the same thing: the content goes back to the original location and no other actions should be taken.
- FOR DIRECTMANIPULATION_DRAG_DROP_SELECTING, COMMITTED means apply the selection change; CANCELLED means avoid the selection change.
- For DIRECTMANIPULATION_DRAG_DROP_DRAGGING, COMMITTED means perform the drop action; CANCELLED means cancel the drop action.
Requirements
| Requirement | Value |
|---|---|
| Minimum supported client | Windows 8.1 [desktop apps only] |
| Minimum supported server | Windows Server 2012 R2 [desktop apps only] |
| Header | directmanipulation.h |