Apache Flex 4.16.0 API Reference | All Packages | All Classes | Index | Frames No Frames |
DragSource

Package | mx.core
Class | public class DragSource
Inheritance | DragSource 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

| Property | Defined By
--- | --- | ---
|  | formats : Array [read-only] Contains the formats of the drag data, as an Array of Strings. | DragSource

Public Methods

| Method | Defined By
--- | --- | ---
|  | DragSource() 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

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 "itemsByIndex" 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

| `Boolean` — `true` if the data source contains the requested format.

Sun Mar 5 2017, 03:42 PM +11:00