函数

设置源构件

gtk_drag_source_set()函数指定一套在构件上拖动操作时的目标类型。

void gtk_drag_source_set( GtkWidget            *widget,
                          GdkModifierType       start_button_mask,
                          const GtkTargetEntry *targets,
                          gint                  n_targets,
                          GdkDragAction         actions );

这些参数的作用如下:

targets参数是一个由下面的结构组成的数组:

struct GtkTargetEntry {
   gchar *target;
   guint  flags;
   guint  info;
 };

这一结构指定一个代表拖动类型的字符串,可选的标记和应用程序指派的整数标识符。

如果一个构件不必再担当拖放操作的源,用gtk_drag_source_unset()函数可以删除一套拖放目标类型。

void gtk_drag_source_unset( GtkWidget *widget );

源构件上的信号

在一个拖放操作中源构件将被发送下面的这些信号。

设置目的构件

gtk_drag_dest_set()指定这个构件可以接收拖动并指定它能接收的拖动的类型。

gtk_drag_dest_unset()指定构件不再能接收拖动了。

void gtk_drag_dest_set( GtkWidget            *widget,
                        GtkDestDefaults       flags,
                        const GtkTargetEntry *targets,
                        gint                  n_targets,
                        GdkDragAction         actions );

void gtk_drag_dest_unset( GtkWidget *widget );

目的构件上的信号

在一个拖放操作中目的构件将被发送下面的这些信号。