gtkmenushell.inc 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. // included by gtk2.pas
  2. {$IFDEF read_forward_definitions}
  3. {$ENDIF read_forward_definitions}
  4. //------------------------------------------------------------------------------
  5. {$IFDEF read_interface_types}
  6. PGtkMenuShell = ^TGtkMenuShell;
  7. TGtkMenuShell = record
  8. container : TGtkContainer;
  9. children : PGList;
  10. active_menu_item : PGtkWidget;
  11. parent_menu_shell : PGtkWidget;
  12. button : guint;
  13. activate_time : guint32;
  14. flag0 : word;
  15. end;
  16. { Padding for future expansion }
  17. PGtkMenuShellClass = ^TGtkMenuShellClass;
  18. TGtkMenuShellClass = record
  19. parent_class : TGtkContainerClass;
  20. flag0 : word;
  21. deactivate : procedure (menu_shell:PGtkMenuShell); cdecl;
  22. selection_done : procedure (menu_shell:PGtkMenuShell); cdecl;
  23. move_current : procedure (menu_shell:PGtkMenuShell; direction:TGtkMenuDirectionType); cdecl;
  24. activate_current : procedure (menu_shell:PGtkMenuShell; force_hide:gboolean); cdecl;
  25. cancel : procedure (menu_shell:PGtkMenuShell); cdecl;
  26. select_item : procedure (menu_shell:PGtkMenuShell; menu_item:PGtkWidget); cdecl;
  27. insert : procedure (menu_shell:PGtkMenuShell; child:PGtkWidget; position:gint); cdecl;
  28. _gtk_reserved1 : procedure ; cdecl;
  29. _gtk_reserved2 : procedure ; cdecl;
  30. _gtk_reserved3 : procedure ; cdecl;
  31. _gtk_reserved4 : procedure ; cdecl;
  32. end;
  33. {$ENDIF read_interface_types}
  34. //------------------------------------------------------------------------------
  35. {$IFDEF read_interface_rest}
  36. const
  37. bm_TGtkMenuShell_active = $1;
  38. bp_TGtkMenuShell_active = 0;
  39. bm_TGtkMenuShell_have_grab = $2;
  40. bp_TGtkMenuShell_have_grab = 1;
  41. bm_TGtkMenuShell_have_xgrab = $4;
  42. bp_TGtkMenuShell_have_xgrab = 2;
  43. bm_TGtkMenuShell_ignore_leave = $8;
  44. bp_TGtkMenuShell_ignore_leave = 3;
  45. bm_TGtkMenuShell_menu_flag = $10;
  46. bp_TGtkMenuShell_menu_flag = 4;
  47. bm_TGtkMenuShell_ignore_enter = $20;
  48. bp_TGtkMenuShell_ignore_enter = 5;
  49. bm_TGtkMenuShellClass_submenu_placement = $1;
  50. bp_TGtkMenuShellClass_submenu_placement = 0;
  51. function GTK_TYPE_MENU_SHELL : GType;
  52. function GTK_MENU_SHELL(obj: pointer) : PGtkMenuShell;
  53. function GTK_MENU_SHELL_CLASS(klass: pointer) : PGtkMenuShellClass;
  54. function GTK_IS_MENU_SHELL(obj: pointer) : boolean;
  55. function GTK_IS_MENU_SHELL_CLASS(klass: pointer) : boolean;
  56. function GTK_MENU_SHELL_GET_CLASS(obj: pointer) : PGtkMenuShellClass;
  57. function active(var a : TGtkMenuShell) : guint; overload;
  58. procedure set_active(var a : TGtkMenuShell; __active : guint); overload;
  59. function have_grab(var a : TGtkMenuShell) : guint; overload;
  60. procedure set_have_grab(var a : TGtkMenuShell; __have_grab : guint); overload;
  61. function have_xgrab(var a : TGtkMenuShell) : guint;
  62. procedure set_have_xgrab(var a : TGtkMenuShell; __have_xgrab : guint);
  63. function ignore_leave(var a : TGtkMenuShell) : guint;
  64. procedure set_ignore_leave(var a : TGtkMenuShell; __ignore_leave : guint);
  65. function menu_flag(var a : TGtkMenuShell) : guint;
  66. procedure set_menu_flag(var a : TGtkMenuShell; __menu_flag : guint);
  67. function ignore_enter(var a : TGtkMenuShell) : guint;
  68. procedure set_ignore_enter(var a : TGtkMenuShell; __ignore_enter : guint);
  69. function submenu_placement(var a : TGtkMenuShellClass) : guint; overload;
  70. procedure set_submenu_placement(var a : TGtkMenuShellClass; __submenu_placement : guint); overload;
  71. function gtk_menu_shell_get_type:TGtkType; cdecl; external gtklib;
  72. procedure gtk_menu_shell_append(menu_shell:PGtkMenuShell; child:PGtkWidget); cdecl; external gtklib;
  73. procedure gtk_menu_shell_prepend(menu_shell:PGtkMenuShell; child:PGtkWidget); cdecl; external gtklib;
  74. procedure gtk_menu_shell_insert(menu_shell:PGtkMenuShell; child:PGtkWidget; position:gint); cdecl; external gtklib;
  75. procedure gtk_menu_shell_deactivate(menu_shell:PGtkMenuShell); cdecl; external gtklib;
  76. procedure gtk_menu_shell_select_item(menu_shell:PGtkMenuShell; menu_item:PGtkWidget); cdecl; external gtklib;
  77. procedure gtk_menu_shell_deselect(menu_shell:PGtkMenuShell); cdecl; external gtklib;
  78. procedure gtk_menu_shell_activate_item(menu_shell:PGtkMenuShell; menu_item:PGtkWidget; force_deactivate:gboolean); cdecl; external gtklib;
  79. procedure _gtk_menu_shell_select_first(menu_shell:PGtkMenuShell); cdecl; external gtklib;
  80. procedure _gtk_menu_shell_activate(menu_shell:PGtkMenuShell); cdecl; external gtklib;
  81. {$IFDEF HasGTK2_4}
  82. procedure gtk_menu_shell_select_first(menu_shell: PGtkMenuShell; search_sensitive: gboolean); cdecl; external gtklib;
  83. procedure gtk_menu_shell_cancel(menu_shell: PGtkMenuShell); cdecl; external gtklib;
  84. {$ENDIF HasGTK2_4}
  85. {$ENDIF read_interface_rest}
  86. //------------------------------------------------------------------------------
  87. {$IFDEF read_implementation}
  88. function GTK_TYPE_MENU_SHELL : GType;
  89. begin
  90. GTK_TYPE_MENU_SHELL:=gtk_menu_shell_get_type;
  91. end;
  92. function GTK_MENU_SHELL(obj: pointer) : PGtkMenuShell;
  93. begin
  94. GTK_MENU_SHELL:=PGtkMenuShell(GTK_CHECK_CAST(obj,GTK_TYPE_MENU_SHELL));
  95. end;
  96. function GTK_MENU_SHELL_CLASS(klass: pointer) : PGtkMenuShellClass;
  97. begin
  98. GTK_MENU_SHELL_CLASS:=PGtkMenuShellClass(GTK_CHECK_CLASS_CAST(klass,GTK_TYPE_MENU_SHELL));
  99. end;
  100. function GTK_IS_MENU_SHELL(obj: pointer) : boolean;
  101. begin
  102. GTK_IS_MENU_SHELL:=GTK_CHECK_TYPE(obj,GTK_TYPE_MENU_SHELL);
  103. end;
  104. function GTK_IS_MENU_SHELL_CLASS(klass: pointer) : boolean;
  105. begin
  106. GTK_IS_MENU_SHELL_CLASS:=GTK_CHECK_CLASS_TYPE(klass,GTK_TYPE_MENU_SHELL);
  107. end;
  108. function GTK_MENU_SHELL_GET_CLASS(obj: pointer) : PGtkMenuShellClass;
  109. begin
  110. GTK_MENU_SHELL_GET_CLASS:=PGtkMenuShellClass(GTK_CHECK_GET_CLASS(obj,GTK_TYPE_MENU_SHELL));
  111. end;
  112. function active(var a : TGtkMenuShell) : guint;
  113. begin
  114. active:=(a.flag0 and bm_TGtkMenuShell_active) shr bp_TGtkMenuShell_active;
  115. end;
  116. procedure set_active(var a : TGtkMenuShell; __active : guint);
  117. begin
  118. a.flag0:=a.flag0 or ((__active shl bp_TGtkMenuShell_active) and bm_TGtkMenuShell_active);
  119. end;
  120. function have_grab(var a : TGtkMenuShell) : guint;
  121. begin
  122. have_grab:=(a.flag0 and bm_TGtkMenuShell_have_grab) shr bp_TGtkMenuShell_have_grab;
  123. end;
  124. procedure set_have_grab(var a : TGtkMenuShell; __have_grab : guint);
  125. begin
  126. a.flag0:=a.flag0 or ((__have_grab shl bp_TGtkMenuShell_have_grab) and bm_TGtkMenuShell_have_grab);
  127. end;
  128. function have_xgrab(var a : TGtkMenuShell) : guint;
  129. begin
  130. have_xgrab:=(a.flag0 and bm_TGtkMenuShell_have_xgrab) shr bp_TGtkMenuShell_have_xgrab;
  131. end;
  132. procedure set_have_xgrab(var a : TGtkMenuShell; __have_xgrab : guint);
  133. begin
  134. a.flag0:=a.flag0 or ((__have_xgrab shl bp_TGtkMenuShell_have_xgrab) and bm_TGtkMenuShell_have_xgrab);
  135. end;
  136. function ignore_leave(var a : TGtkMenuShell) : guint;
  137. begin
  138. ignore_leave:=(a.flag0 and bm_TGtkMenuShell_ignore_leave) shr bp_TGtkMenuShell_ignore_leave;
  139. end;
  140. procedure set_ignore_leave(var a : TGtkMenuShell; __ignore_leave : guint);
  141. begin
  142. a.flag0:=a.flag0 or ((__ignore_leave shl bp_TGtkMenuShell_ignore_leave) and bm_TGtkMenuShell_ignore_leave);
  143. end;
  144. function menu_flag(var a : TGtkMenuShell) : guint;
  145. begin
  146. menu_flag:=(a.flag0 and bm_TGtkMenuShell_menu_flag) shr bp_TGtkMenuShell_menu_flag;
  147. end;
  148. procedure set_menu_flag(var a : TGtkMenuShell; __menu_flag : guint);
  149. begin
  150. a.flag0:=a.flag0 or ((__menu_flag shl bp_TGtkMenuShell_menu_flag) and bm_TGtkMenuShell_menu_flag);
  151. end;
  152. function ignore_enter(var a : TGtkMenuShell) : guint;
  153. begin
  154. ignore_enter:=(a.flag0 and bm_TGtkMenuShell_ignore_enter) shr bp_TGtkMenuShell_ignore_enter;
  155. end;
  156. procedure set_ignore_enter(var a : TGtkMenuShell; __ignore_enter : guint);
  157. begin
  158. a.flag0:=a.flag0 or ((__ignore_enter shl bp_TGtkMenuShell_ignore_enter) and bm_TGtkMenuShell_ignore_enter);
  159. end;
  160. function submenu_placement(var a : TGtkMenuShellClass) : guint;
  161. begin
  162. submenu_placement:=(a.flag0 and bm_TGtkMenuShellClass_submenu_placement) shr bp_TGtkMenuShellClass_submenu_placement;
  163. end;
  164. procedure set_submenu_placement(var a : TGtkMenuShellClass; __submenu_placement : guint);
  165. begin
  166. a.flag0:=a.flag0 or ((__submenu_placement shl bp_TGtkMenuShellClass_submenu_placement) and bm_TGtkMenuShellClass_submenu_placement);
  167. end;
  168. {$ENDIF read_implementation}
  169. // included by gtk2.pas