/packages/gtk2/src/gtk+/gtk/gtktreesortable.inc

https://github.com/slibre/freepascal · Pascal · 82 lines · 46 code · 20 blank · 16 comment · 0 complexity · c335dd16978fdfa60881c36a1de3d1e6 MD5 · raw file

  1. // included by gtk2.pas
  2. {$IFDEF read_forward_definitions}
  3. {$ENDIF read_forward_definitions}
  4. //------------------------------------------------------------------------------
  5. {$IFDEF read_interface_types}
  6. // internal type
  7. PGtkTreeSortable = pointer;
  8. TGtkTreeIterCompareFunc = function (model:PGtkTreeModel; a:PGtkTreeIter; b:PGtkTreeIter; user_data:gpointer):gint; cdecl;
  9. { signals }
  10. { virtual table }
  11. PGtkTreeSortableIface = ^TGtkTreeSortableIface;
  12. TGtkTreeSortableIface = record
  13. g_iface : TGTypeInterface;
  14. sort_column_changed : procedure (sortable:PGtkTreeSortable); cdecl;
  15. get_sort_column_id : function (sortable:PGtkTreeSortable; sort_column_id:Pgint; order:PGtkSortType):gboolean; cdecl;
  16. set_sort_column_id : procedure (sortable:PGtkTreeSortable; sort_column_id:gint; order:TGtkSortType); cdecl;
  17. set_sort_func : procedure (sortable:PGtkTreeSortable; sort_column_id:gint; func:TGtkTreeIterCompareFunc; data:gpointer; destroy:TGtkDestroyNotify); cdecl;
  18. set_default_sort_func : procedure (sortable:PGtkTreeSortable; func:TGtkTreeIterCompareFunc; data:gpointer; destroy:TGtkDestroyNotify); cdecl;
  19. has_default_sort_func : function (sortable:PGtkTreeSortable):gboolean; cdecl;
  20. end;
  21. {$ENDIF read_interface_types}
  22. //------------------------------------------------------------------------------
  23. {$IFDEF read_interface_rest}
  24. const
  25. GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID = -(1);
  26. function GTK_TYPE_TREE_SORTABLE : GType;
  27. function GTK_TREE_SORTABLE(obj: pointer) : PGtkTreeSortable;
  28. function GTK_TREE_SORTABLE_CLASS(obj: pointer) : PGtkTreeSortableIface;
  29. function GTK_IS_TREE_SORTABLE(obj: pointer) : boolean;
  30. function GTK_TREE_SORTABLE_GET_IFACE(obj: pointer) : PGtkTreeSortableIface;
  31. function gtk_tree_sortable_get_type:GType; cdecl; external gtklib;
  32. procedure gtk_tree_sortable_sort_column_changed(sortable:PGtkTreeSortable); cdecl; external gtklib;
  33. function gtk_tree_sortable_get_sort_column_id(sortable:PGtkTreeSortable; sort_column_id:Pgint; order:PGtkSortType):gboolean; cdecl; external gtklib;
  34. procedure gtk_tree_sortable_set_sort_column_id(sortable:PGtkTreeSortable; sort_column_id:gint; order:TGtkSortType); cdecl; external gtklib;
  35. procedure gtk_tree_sortable_set_sort_func(sortable:PGtkTreeSortable; sort_column_id:gint; sort_func:TGtkTreeIterCompareFunc; user_data:gpointer; destroy:TGtkDestroyNotify); cdecl; external gtklib;
  36. procedure gtk_tree_sortable_set_default_sort_func(sortable:PGtkTreeSortable; sort_func:TGtkTreeIterCompareFunc; user_data:gpointer; destroy:TGtkDestroyNotify); cdecl; external gtklib;
  37. function gtk_tree_sortable_has_default_sort_func(sortable:PGtkTreeSortable):gboolean; cdecl; external gtklib;
  38. {$ENDIF read_interface_rest}
  39. //------------------------------------------------------------------------------
  40. {$IFDEF read_implementation}
  41. function GTK_TYPE_TREE_SORTABLE : GType;
  42. begin
  43. GTK_TYPE_TREE_SORTABLE:=gtk_tree_sortable_get_type;
  44. end;
  45. function GTK_TREE_SORTABLE(obj: pointer) : PGtkTreeSortable;
  46. begin
  47. GTK_TREE_SORTABLE:=PGtkTreeSortable(G_TYPE_CHECK_INSTANCE_CAST(obj,GTK_TYPE_TREE_SORTABLE));
  48. end;
  49. function GTK_TREE_SORTABLE_CLASS(obj: pointer) : PGtkTreeSortableIface;
  50. begin
  51. GTK_TREE_SORTABLE_CLASS:=PGtkTreeSortableIface(G_TYPE_CHECK_CLASS_CAST(obj,GTK_TYPE_TREE_SORTABLE));
  52. end;
  53. function GTK_IS_TREE_SORTABLE(obj: pointer) : boolean;
  54. begin
  55. GTK_IS_TREE_SORTABLE:=G_TYPE_CHECK_INSTANCE_TYPE(obj,GTK_TYPE_TREE_SORTABLE);
  56. end;
  57. function GTK_TREE_SORTABLE_GET_IFACE(obj: pointer) : PGtkTreeSortableIface;
  58. begin
  59. GTK_TREE_SORTABLE_GET_IFACE:=PGtkTreeSortableIface(G_TYPE_INSTANCE_GET_INTERFACE(obj,GTK_TYPE_TREE_SORTABLE));
  60. end;
  61. {$ENDIF read_implementation}
  62. // included by gtk2.pas