ad97972006-01-21Lance Dillon class GTK2.TreeDragSource; mixin_for G.Object;
1a05542005-07-28Martin Nilsson  int drag_data_delete(GTK2.TreePath path) //! Asks to delete the row at path, because it was moved somewhere else via //! drag-and-drop. Returns false if the deletion fails because path no longer //! exists, or for some model-specific reason. { pgtk_verify_inited(); { struct object *o1; int res; get_all_args("drag_data_delete",args,"%o",&o1); res=gtk_tree_drag_source_drag_data_delete( GTK_TREE_DRAG_SOURCE(THIS->obj), (GtkTreePath *)get_gobject(o1)); my_pop_n_elems(args); PGTK_PUSH_INT(res); } } GTK2.SelectionData drag_data_get(GTK2.TreePath path) //! Asks to return a representation of the row at path. { pgtk_verify_inited(); { GtkSelectionData *sel; struct object *o1; int res; get_all_args("drag_data_get",args,"%o",&o1); sel=(GtkSelectionData *)g_malloc(sizeof(GtkSelectionData)); if (sel==NULL) SIMPLE_OUT_OF_MEMORY_ERROR("drag_data_get",sizeof(GtkSelectionData)); res=gtk_tree_drag_source_drag_data_get(GTK_TREE_DRAG_SOURCE(THIS->obj), (GtkTreePath *)get_gobject(o1),sel); my_pop_n_elems(args); if (res) push_gobjectclass(sel,pgtk_selection_data_program); else push_int(0); } } int row_draggable(GTK2.TreePath path) //! Asks the source whether a particular row can be used as the source of a //! DND operation. If the source doesn't implement this interface, the row //! is assumed draggable. { pgtk_verify_inited(); { struct object *o1; int res; get_all_args("row_draggable",args,"%o",&o1); res=gtk_tree_drag_source_row_draggable( GTK_TREE_DRAG_SOURCE(THIS->obj), (GtkTreePath *)get_gobject(o1)); my_pop_n_elems(args); PGTK_PUSH_INT(res); } }