Function

GdkDragbegin

Declaration [src]

GdkDrag*
gdk_drag_begin (
  GdkSurface* surface,
  GdkDevice* device,
  GdkContentProvider* content,
  GdkDragAction actions,
  double dx,
  double dy
)

Description [src]

Starts a drag and creates a new drag context for it.

This function is called by the drag source. After this call, you probably want to set up the drag icon using the surface returned by gdk_drag_get_drag_surface().

This function returns a reference to the GdkDrag object, but GTK keeps its own reference as well, as long as the DND operation is going on.

Note: if actions include GDK_ACTION_MOVE, you need to listen for the GdkDrag::dnd-finished signal and delete the data at the source if gdk_drag_get_selected_action() returns GDK_ACTION_MOVE.

Parameters

surface

Type: GdkSurface

The source surface for this drag.

The data is owned by the caller of the function.
device

Type: GdkDevice

The device that controls this drag.

The data is owned by the caller of the function.
content

Type: GdkContentProvider

The offered content.

The data is owned by the caller of the function.
actions

Type: GdkDragAction

The actions supported by this drag.

dx

Type: double

The x offset to devices position where the drag nominally started.

dy

Type: double

The y offset to devices position where the drag nominally started.

Return value

Type: GdkDrag

A newly created GdkDrag.

The caller of the function takes ownership of the data, and is responsible for freeing it.
The return value can be NULL.