1// included by gtk2.pas 2 3{$IFDEF read_forward_definitions} 4{$ENDIF read_forward_definitions} 5 6//------------------------------------------------------------------------------ 7 8{$IFDEF read_interface_types} 9 // internal type 10 PGtkTreeDragSource = pointer; 11 // internal type 12 PGtkTreeDragDest = pointer; 13 14{ VTable - not signals } 15 PGtkTreeDragSourceIface = ^TGtkTreeDragSourceIface; 16 TGtkTreeDragSourceIface = record 17 g_iface : TGTypeInterface; 18 row_draggable : function (drag_source:PGtkTreeDragSource; path:PGtkTreePath):gboolean; cdecl; 19 drag_data_get : function (drag_source:PGtkTreeDragSource; path:PGtkTreePath; selection_data:PGtkSelectionData):gboolean; cdecl; 20 drag_data_delete : function (drag_source:PGtkTreeDragSource; path:PGtkTreePath):gboolean; cdecl; 21 end; 22 23 24{ VTable - not signals } 25 PGtkTreeDragDestIface = ^TGtkTreeDragDestIface; 26 TGtkTreeDragDestIface = record 27 g_iface : TGTypeInterface; 28 drag_data_received : function (drag_dest:PGtkTreeDragDest; dest:PGtkTreePath; selection_data:PGtkSelectionData):gboolean; cdecl; 29 row_drop_possible : function (drag_dest:PGtkTreeDragDest; dest_path:PGtkTreePath; selection_data:PGtkSelectionData):gboolean; cdecl; 30 end; 31 32{$ENDIF read_interface_types} 33 34//------------------------------------------------------------------------------ 35 36{$IFDEF read_interface_rest} 37function GTK_TYPE_TREE_DRAG_SOURCE : GType; 38function GTK_TREE_DRAG_SOURCE(obj: pointer) : PGtkTreeDragSource; 39function GTK_IS_TREE_DRAG_SOURCE(obj: pointer) : boolean; 40function GTK_TREE_DRAG_SOURCE_GET_IFACE(obj: pointer) : PGtkTreeDragSourceIface; 41 42 43function gtk_tree_drag_source_get_type:GType; cdecl; external gtklib; 44{ Returns whether the given row can be dragged } 45function gtk_tree_drag_source_row_draggable(drag_source:PGtkTreeDragSource; path:PGtkTreePath):gboolean; cdecl; external gtklib; 46{ Deletes the given row, or returns FALSE if it can't } 47function gtk_tree_drag_source_drag_data_delete(drag_source:PGtkTreeDragSource; path:PGtkTreePath):gboolean; cdecl; external gtklib; 48{ Fills in selection_data with type selection_data->target based on 49 the row denoted by path, returns TRUE if it does anything 50 } 51function gtk_tree_drag_source_drag_data_get(drag_source:PGtkTreeDragSource; path:PGtkTreePath; selection_data:PGtkSelectionData):gboolean; cdecl; external gtklib; 52function GTK_TYPE_TREE_DRAG_DEST : GType; 53function GTK_TREE_DRAG_DEST(obj: pointer) : PGtkTreeDragDest; 54function GTK_IS_TREE_DRAG_DEST(obj: pointer) : boolean; 55function GTK_TREE_DRAG_DEST_GET_IFACE(obj: pointer) : PGtkTreeDragDestIface; 56 57 58function gtk_tree_drag_dest_get_type:GType; cdecl; external gtklib; 59{ Inserts a row before dest which contains data in selection_data, 60 or returns FALSE if it can't 61 } 62function gtk_tree_drag_dest_drag_data_received(drag_dest:PGtkTreeDragDest; dest:PGtkTreePath; selection_data:PGtkSelectionData):gboolean; cdecl; external gtklib; 63{ Returns TRUE if we can drop before path; path may not exist. } 64function gtk_tree_drag_dest_row_drop_possible(drag_dest:PGtkTreeDragDest; dest_path:PGtkTreePath; selection_data:PGtkSelectionData):gboolean; cdecl; external gtklib; 65{ The selection data would normally have target type GTK_TREE_MODEL_ROW in this 66 case. If the target is wrong these functions return FALSE. 67 } 68function gtk_tree_set_row_drag_data(selection_data:PGtkSelectionData; tree_model:PGtkTreeModel; path:PGtkTreePath):gboolean; cdecl; external gtklib; 69function gtk_tree_get_row_drag_data(selection_data:PGtkSelectionData; var tree_model:PGtkTreeModel; var path:PGtkTreePath):gboolean; cdecl; external gtklib; 70{$ENDIF read_interface_rest} 71 72//------------------------------------------------------------------------------ 73 74{$IFDEF read_implementation} 75function GTK_TYPE_TREE_DRAG_SOURCE : GType; 76begin 77 GTK_TYPE_TREE_DRAG_SOURCE:=gtk_tree_drag_source_get_type; 78end; 79 80function GTK_TREE_DRAG_SOURCE(obj: pointer) : PGtkTreeDragSource; 81begin 82 GTK_TREE_DRAG_SOURCE:=PGtkTreeDragSource(G_TYPE_CHECK_INSTANCE_CAST(obj,GTK_TYPE_TREE_DRAG_SOURCE)); 83end; 84 85function GTK_IS_TREE_DRAG_SOURCE(obj: pointer) : boolean; 86begin 87 GTK_IS_TREE_DRAG_SOURCE:=G_TYPE_CHECK_INSTANCE_TYPE(obj,GTK_TYPE_TREE_DRAG_SOURCE); 88end; 89 90function GTK_TREE_DRAG_SOURCE_GET_IFACE(obj: pointer) : PGtkTreeDragSourceIface; 91begin 92 GTK_TREE_DRAG_SOURCE_GET_IFACE:=PGtkTreeDragSourceIface(G_TYPE_INSTANCE_GET_INTERFACE(obj,GTK_TYPE_TREE_DRAG_SOURCE)); 93end; 94 95function GTK_TYPE_TREE_DRAG_DEST : GType; 96begin 97 GTK_TYPE_TREE_DRAG_DEST:=gtk_tree_drag_dest_get_type; 98end; 99 100function GTK_TREE_DRAG_DEST(obj: pointer) : PGtkTreeDragDest; 101begin 102 GTK_TREE_DRAG_DEST:=PGtkTreeDragDest(G_TYPE_CHECK_INSTANCE_CAST(obj,GTK_TYPE_TREE_DRAG_DEST)); 103end; 104 105function GTK_IS_TREE_DRAG_DEST(obj: pointer) : boolean; 106begin 107 GTK_IS_TREE_DRAG_DEST:=G_TYPE_CHECK_INSTANCE_TYPE(obj,GTK_TYPE_TREE_DRAG_DEST); 108end; 109 110function GTK_TREE_DRAG_DEST_GET_IFACE(obj: pointer) : PGtkTreeDragDestIface; 111begin 112 GTK_TREE_DRAG_DEST_GET_IFACE:=PGtkTreeDragDestIface(G_TYPE_INSTANCE_GET_INTERFACE(obj,GTK_TYPE_TREE_DRAG_DEST)); 113end; 114 115{$ENDIF read_implementation} 116// included by gtk2.pas 117 118