Programmer's Reference


Drag and drop adapters

The hierarchy of drag and drop adapter classes is the following:

Class hierarchy Responsibility
EwDragAndDropAdapter Defines common behavior for all adapters
 EwSourceAdapter Defines common behavior for all drag and drop sources
  EwBlockSourceAdapter Defines a drag and drop source that uses an application-defined block to determine the drag source items
  EwContainerListSourceAdapter Defines a source adapter for EW container- style widgets
   EwIconAreaSourceAdapter Defines a source adapter for EwIconArea widgets
  EwDrawnListSourceAdapter Defines a source adapter for EwDrawnList widgets
 EwTargetAdapter Defines common behavior for all drag and drop targets
  EwContainerListTargetAdapter Defines a target adapter for EW container-style widgets
   EwIconAreaTargetAdapter  Defines a target adapter for EwIconArea widgets 

The Drag and Drop subsystem provides two kinds of adapters for use in drag and drop: source adapters and target adapters. The adapters serve as a wrapper around widgets, providing drag and drop callbacks that the widgets themselves do not provide.

An application should create a source adapter for each widget that an application designates as a drag and drop source.

An application creates one source adapter for each source widget as follows:

aSourceAdapter := EwSourceAdapter on: aWidget.

The source adapter provides the following callbacks for drag and drop source operations:

dragStartCallback
A drag has been started from the source widget.

dragChangeCallback
The target or semantics of the drag have changed.

dragCompleteCallback
The drag and drop operation has completed.

dragCancelCallback
The drag and drop operation was canceled or did not complete.

The application also should create a target adapter for each widget that is to be a target for drag and drop. The target adapter is created as follows:

aTargetAdapter := EwTargetAdapter on: aWidget

The target adapter provides the following callbacks for drag and drop target operations:

dragOverCallback
The mouse pointer is moving over the drag target widget.

dragLeaveCallback
The mouse pointer has left the drag target widget.

dropCallback
The drop operation was indicated over the drag target widget.

dragCancelCallback
The drag and drop operation was canceled or did not complete.


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]