nsIDOMDataTransfer

Methods

clearData(format)

Remove the data associated with a given format. If format is empty or not
specified, the data associated with all formats is removed. If data for
the specified format does not exist, or the data transfer contains no
data, this method will have no effect.

setData(format, data)

Set the data for a given format. If data for the format does not exist,
it is added at the end, such that the last item in the types list will be
the new format. If data for the format already exists, the existing data
is replaced in the same position. That is, the order of the types list is
not changed.

@throws NS_ERROR_NULL_POINTER if the data is null

getData(format)

Retrieves the data for a given format, or an empty string if data for
that format does not exist or the data transfer contains no data.

setDragImage(image, x, y)

Set the image to be used for dragging if a custom one is desired. Most of
the time, this would not be set, as a default image is created from the
node that was dragged.

If the node is an HTML img element, an HTML canvas element or a XUL image
element, the image data is used. Otherwise, image should be a visible
node and the drag image will be created from this. If image is null, any
custom drag image is cleared and the default is used instead.

The coordinates specify the offset into the image where the mouse cursor
should be. To center the image for instance, use values that are half the
width and height.

Parameters

image a node to use
x the horizontal offset
y the vertical offset @throws NO_MODIFICATION_ALLOWED_ERR if the item cannot be modified

addElement(element)

mozTypesAt(index)

Holds a list of the format types of the data that is stored for an item
at the specified index. If the index is not in the range from 0 to
itemCount - 1, an empty string list is returned.

mozClearDataAt(format, index)

Remove the data associated with the given format for an item at the
specified index. The index is in the range from zero to itemCount - 1.

If the last format for the item is removed, the entire item is removed,
reducing the itemCount by one.

If format is empty, then the data associated with all formats is removed.
If the format is not found, then this method has no effect.

Parameters

format the format to remove @throws NS_ERROR_DOM_INDEX_SIZE_ERR if index is greater or equal than itemCount @throws NO_MODIFICATION_ALLOWED_ERR if the item cannot be modified

mozSetDataAt(format, data, index)

mozGetDataAt(format, index)

Retrieve the data associated with the given format for an item at the
specified index, or null if it does not exist. The index should be in the
range from zero to itemCount - 1.

Parameters

format the format of the data to look up

Returns

the data of the given format, or null if it doesn't exist. @throws NS_ERROR_DOM_INDEX_SIZE_ERR if index is greater or equal than itemCount

Attributes

dropEffect

The actual effect that will be used, and should always be one of the
possible values of effectAllowed.

For dragstart, drag and dragleave events, the dropEffect is initialized
to none. Any value assigned to the dropEffect will be set, but the value
isn’t used for anything.

For the dragenter and dragover events, the dropEffect will be initialized
based on what action the user is requesting. How this is determined is
platform specific, but typically the user can press modifier keys to
adjust which action is desired. Within an event handler for the dragenter
and dragover events, the dropEffect should be modified if the action the
user is requesting is not the one that is desired.

For the drop and dragend events, the dropEffect will be initialized to
the action that was desired, which will be the value that the dropEffect
had after the last dragenter or dragover event.

Possible values:
copy - a copy of the source item is made at the new location
move - an item is moved to a new location
link - a link is established to the source at the new location
none - the item may not be dropped

Assigning any other value has no effect and retains the old value.

effectAllowed

files

Holds a list of all the local files available on this data transfer.
A dataTransfer containing no files will return an empty list, and an
invalid index access on the resulting file list will return null.

types

Holds a list of the format types of the data that is stored for the first
item, in the same order the data was added. An empty list will be
returned if no data was added.

mozItemCount

The number of items being dragged.

mozCursor

Sets the drag cursor state. Primarily used to control the cursor during
tab drags, but could be expanded to other uses. XXX Currently implemented
on Win32 only.

Possible values:
auto - use default system behavior.
default - set the cursor to an arrow during the drag operation.

Values other than ‘default’ are indentical to setting mozCursor to
‘auto’.

mozUserCancelled

Will be true when the user has cancelled the drag (typically by pressing
Escape) and when the drag has been cancelled unexpectedly. This will be
false otherwise, including when the drop has been rejected by its target.
This property is only relevant for the dragend event.

mozSourceNode

The node that the mouse was pressed over to begin the drag. For external
drags, or if the caller cannot access this node, this will be null.

dropEffectInt

effectAllowedInt