Packagemx.core
Classpublic class DragSource

The DragSource class contains the data being dragged. The data can be in multiple formats, depending on the type of control that initiated the drag.

Each format of data is identified with a string. The hasFormat() method is used to determine if the object has data in that format. The dataForFormat() method is used to retrieve the data in the specified format.

Data can be added directly using the addData() method, or indirectly using the addHandler() method. The addHandler() method registers a callback that will be called if the data is requested. This is useful for adding data in a non-native format that may require large computations or conversions. For example, if you have raw sound data you can add an MP3 format handler. The MP3 conversion will only be done if the MP3 data is requested.



Public Properties
 PropertyDefined by
  formats : Array
[read-only] Contains the formats of the drag data, as an Array of Strings.
DragSource
Public Methods
 MethodDefined by
  
Constructor.
DragSource
  
addData(data:Object, format:String):void
Adds data and a corresponding format String to the drag source.
DragSource
  
addHandler(handler:Function, format:String):void
Adds a handler that is called when data for the specified format is requested.
DragSource
  
dataForFormat(format:String):Object
Retrieves the data for the specified format.
DragSource
  
hasFormat(format:String):Boolean
Returns true if the data source contains the requested format; otherwise, it returns false.
DragSource
Property detail
formatsproperty
formats:Array  [read-only]

Contains the formats of the drag data, as an Array of Strings. Set this property using the addData() or addHandler() methods. The default value depends on data added to the DragSource object.

Implementation
    public function get formats():Array
Constructor detail
DragSource()constructor
public function DragSource()

Constructor.

Method detail
addData()method
public function addData(data:Object, format:String):void

Adds data and a corresponding format String to the drag source. This method does not return a value.

Parameters
data:Object — Object that specifies the drag data. This can be any object, such as a String, a DataProvider, and so on.
 
format:String — String that specifies a label that describes the format for this data.
addHandler()method 
public function addHandler(handler:Function, format:String):void

Adds a handler that is called when data for the specified format is requested. This is useful when dragging large amounts of data. The handler is only called if the data is requested. This method does not return a value.

Parameters
handler:Function — Function that specifies the handler called to request the data. This function must return the data in the specified format.
 
format:String — String that specifies the format for this data.
dataForFormat()method 
public function dataForFormat(format:String):Object

Retrieves the data for the specified format. If the data was added with the addData() method, it is returned directly. If the data was added with the addHandler() method, the handler function is called to return the data.

Parameters
format:String — String that specifies a label that describes the format for the data to return. This string can be a custom value if you are creating a custom drop target with the addData() method.

List-based controls have predefined values for the format parameter. If the control that initiated the drag operation is a Tree, then the format is "treeItems" and the items implement the ITreeDataProvider interface. For all other List-based controls that have built-in drag and drop support, the format is "items" and the items implement the IDataProvider interface.

Returns
Object — An Object containing the data in the requested format. If you drag multiple items, the returned value is an Array. For a List-based control, the returned value is always an Array, even if it contains a single item.
hasFormat()method 
public function hasFormat(format:String):Boolean

Returns true if the data source contains the requested format; otherwise, it returns false.

Parameters
format:String — String that specifies a label that describes the format for the data.

Returns
Booleantrue if the data source contains the requested format.