Adobe® Flex® 4 Language Reference
Show Packages and Classes List |  Packages  |  Classes  |  Index  |  Appendixes
mx.core 
DragSource 
Packagemx.core
Classpublic class DragSource
InheritanceDragSource Inheritance Object

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

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
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
  formats : Array
[read-only] Contains the formats of the drag data, as an Array of Strings.
DragSource
 Inheritedprototype : Object
[static] A reference to the prototype object of a class or function object.
Object
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
  
Retrieves the data for the specified format.
DragSource
  
Returns true if the data source contains the requested format; otherwise, it returns false.
DragSource
 Inherited
Indicates whether an object has a specified property defined.
Object
 Inherited
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
 Inherited
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
 Inherited
Returns the string representation of the specified object.
Object
 Inherited
Returns the primitive value of the specified object.
Object
Property Detail

formats

property
formats:Array  [read-only]

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

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()

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

Constructor.

Method Detail

addData

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

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

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

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

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

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

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

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

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.