函数

GdkDragbegin

声明 [源]

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

描述 [源]

启动拖动并为其创建一个新的拖动上下文。

此函数由拖动源调用。在此调用后,您可能希望使用 gdk_drag_get_drag_surface() 返回的表面设置拖动图标。

此函数返回一个指向 GdkDrag 对象的引用,但 GTK 也会保留其自己的引用,只要 DND 操作在进行。

注意:如果 actions 包括 GDK_ACTION_MOVE,则需要监听 GdkDrag::dnd-finished 信号,并在 gdk_drag_get_selected_action() 返回 GDK_ACTION_MOVE 时删除源中的数据。

参数

surface

类型: GdkSurface

此拖动的源表面。

数据由函数的调用者拥有。
device

类型: GdkDevice

控制此拖动的设备。

数据由函数的调用者拥有。
content

类型: GdkContentProvider

提供的  内容。

数据由函数的调用者拥有。
actions

类型: GdkDragAction

此拖动支持的行动。

dx

类型: double

device 的位置开始的拖动原始起始位置的 x 偏移量。

dy

类型: double

device 的位置开始的拖动原始起始位置的 y 偏移量。

返回值

类型: GdkDrag

一个新创建的 GdkDrag

函数的调用者拥有数据,并负责释放它。
返回值可以是 NULL