gtkmenuitem.inc 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. // included by gtk2.pas
  2. {$IFDEF read_forward_definitions}
  3. {$ENDIF read_forward_definitions}
  4. //------------------------------------------------------------------------------
  5. {$IFDEF read_interface_types}
  6. PGtkMenuItem = ^TGtkMenuItem;
  7. TGtkMenuItem = record
  8. item : TGtkItem;
  9. submenu : PGtkWidget;
  10. event_window : PGdkWindow;
  11. toggle_size : guint16;
  12. accelerator_width : guint16;
  13. accel_path : Pgchar;
  14. flag0 : word;
  15. timer : guint;
  16. end;
  17. { Padding for future expansion }
  18. PGtkMenuItemClass = ^TGtkMenuItemClass;
  19. TGtkMenuItemClass = record
  20. parent_class : TGtkItemClass;
  21. flag0 : word;
  22. activate : procedure (menu_item:PGtkMenuItem); cdecl;
  23. activate_item : procedure (menu_item:PGtkMenuItem); cdecl;
  24. toggle_size_request : procedure (menu_item:PGtkMenuItem; requisition:Pgint); cdecl;
  25. toggle_size_allocate : procedure (menu_item:PGtkMenuItem; allocation:gint); cdecl;
  26. _gtk_reserved1 : procedure ; cdecl;
  27. _gtk_reserved2 : procedure ; cdecl;
  28. _gtk_reserved3 : procedure ; cdecl;
  29. _gtk_reserved4 : procedure ; cdecl;
  30. end;
  31. {$ENDIF read_interface_types}
  32. //------------------------------------------------------------------------------
  33. {$IFDEF read_interface_rest}
  34. const
  35. bm_TGtkMenuItem_show_submenu_indicator = $1;
  36. bp_TGtkMenuItem_show_submenu_indicator = 0;
  37. bm_TGtkMenuItem_submenu_placement = $2;
  38. bp_TGtkMenuItem_submenu_placement = 1;
  39. bm_TGtkMenuItem_submenu_direction = $4;
  40. bp_TGtkMenuItem_submenu_direction = 2;
  41. bm_TGtkMenuItem_right_justify = $8;
  42. bp_TGtkMenuItem_right_justify = 3;
  43. bm_TGtkMenuItem_timer_from_keypress = $10;
  44. bp_TGtkMenuItem_timer_from_keypress = 4;
  45. bm_TGtkMenuItemClass_hide_on_activate = $1;
  46. bp_TGtkMenuItemClass_hide_on_activate = 0;
  47. function GTK_TYPE_MENU_ITEM : GType;
  48. function GTK_MENU_ITEM(obj: pointer) : PGtkMenuItem;
  49. function GTK_MENU_ITEM_CLASS(klass: pointer) : PGtkMenuItemClass;
  50. function GTK_IS_MENU_ITEM(obj: pointer) : boolean;
  51. function GTK_IS_MENU_ITEM_CLASS(klass: pointer) : boolean;
  52. function GTK_MENU_ITEM_GET_CLASS(obj: pointer) : PGtkMenuItemClass;
  53. function show_submenu_indicator(var a : TGtkMenuItem) : guint;
  54. procedure set_show_submenu_indicator(var a : TGtkMenuItem; __show_submenu_indicator : guint);
  55. function submenu_placement(var a : TGtkMenuItem) : guint; overload;
  56. procedure set_submenu_placement(var a : TGtkMenuItem; __submenu_placement : guint); overload;
  57. function submenu_direction(var a : TGtkMenuItem) : guint;
  58. procedure set_submenu_direction(var a : TGtkMenuItem; __submenu_direction : guint);
  59. function right_justify(var a : TGtkMenuItem) : guint;
  60. procedure set_right_justify(var a : TGtkMenuItem; __right_justify : guint);
  61. function timer_from_keypress(var a : TGtkMenuItem) : guint;
  62. procedure set_timer_from_keypress(var a : TGtkMenuItem; __timer_from_keypress : guint);
  63. { If the following flag is true, then we should always hide
  64. the menu when the MenuItem is activated. Otherwise, the
  65. it is up to the caller. For instance, when navigating
  66. a menu with the keyboard, <Space> doesn't hide, but
  67. <Return> does.
  68. }
  69. function hide_on_activate(var a : TGtkMenuItemClass) : guint;
  70. procedure set_hide_on_activate(var a : TGtkMenuItemClass; __hide_on_activate : guint);
  71. function gtk_menu_item_get_type:TGtkType; cdecl; external gtklib;
  72. function gtk_menu_item_new:PGtkWidget; cdecl; external gtklib;
  73. function gtk_menu_item_new_with_label(_label:Pgchar):PGtkWidget; cdecl; external gtklib;
  74. function gtk_menu_item_new_with_mnemonic(_label:Pgchar):PGtkWidget; cdecl; external gtklib;
  75. procedure gtk_menu_item_set_submenu(menu_item:PGtkMenuItem; submenu:PGtkWidget); cdecl; external gtklib;
  76. function gtk_menu_item_get_submenu(menu_item:PGtkMenuItem):PGtkWidget; cdecl; external gtklib;
  77. procedure gtk_menu_item_remove_submenu(menu_item:PGtkMenuItem); cdecl; external gtklib;
  78. procedure gtk_menu_item_select(menu_item:PGtkMenuItem); cdecl; external gtklib;
  79. procedure gtk_menu_item_deselect(menu_item:PGtkMenuItem); cdecl; external gtklib;
  80. procedure gtk_menu_item_activate(menu_item:PGtkMenuItem); cdecl; external gtklib;
  81. procedure gtk_menu_item_toggle_size_request(menu_item:PGtkMenuItem; requisition:Pgint); cdecl; external gtklib;
  82. procedure gtk_menu_item_toggle_size_allocate(menu_item:PGtkMenuItem; allocation:gint); cdecl; external gtklib;
  83. procedure gtk_menu_item_set_right_justified(menu_item:PGtkMenuItem; right_justified:gboolean); cdecl; external gtklib;
  84. function gtk_menu_item_get_right_justified(menu_item:PGtkMenuItem):gboolean; cdecl; external gtklib;
  85. procedure gtk_menu_item_set_accel_path(menu_item:PGtkMenuItem; accel_path:Pgchar); cdecl; external gtklib;
  86. { private }
  87. procedure _gtk_menu_item_refresh_accel_path(menu_item:PGtkMenuItem; prefix:Pgchar; accel_group:PGtkAccelGroup; group_changed:gboolean); cdecl; external gtklib;
  88. function _gtk_menu_item_is_selectable(menu_item:PGtkWidget):gboolean; cdecl; external gtklib;
  89. {$ifndef GTK_DISABLE_DEPRECATED}
  90. procedure gtk_menu_item_right_justify(menu_item : PGtkMenuItem);
  91. {$endif}
  92. { GTK_DISABLE_DEPRECATED }
  93. {$ENDIF read_interface_rest}
  94. //------------------------------------------------------------------------------
  95. {$IFDEF read_implementation}
  96. function GTK_TYPE_MENU_ITEM : GType;
  97. begin
  98. GTK_TYPE_MENU_ITEM:=gtk_menu_item_get_type;
  99. end;
  100. function GTK_MENU_ITEM(obj: pointer) : PGtkMenuItem;
  101. begin
  102. GTK_MENU_ITEM:=PGtkMenuItem(GTK_CHECK_CAST(obj,GTK_TYPE_MENU_ITEM));
  103. end;
  104. function GTK_MENU_ITEM_CLASS(klass: pointer) : PGtkMenuItemClass;
  105. begin
  106. GTK_MENU_ITEM_CLASS:=PGtkMenuItemClass(GTK_CHECK_CLASS_CAST(klass,GTK_TYPE_MENU_ITEM));
  107. end;
  108. function GTK_IS_MENU_ITEM(obj: pointer) : boolean;
  109. begin
  110. GTK_IS_MENU_ITEM:=GTK_CHECK_TYPE(obj,GTK_TYPE_MENU_ITEM);
  111. end;
  112. function GTK_IS_MENU_ITEM_CLASS(klass: pointer) : boolean;
  113. begin
  114. GTK_IS_MENU_ITEM_CLASS:=GTK_CHECK_CLASS_TYPE(klass,GTK_TYPE_MENU_ITEM);
  115. end;
  116. function GTK_MENU_ITEM_GET_CLASS(obj: pointer) : PGtkMenuItemClass;
  117. begin
  118. GTK_MENU_ITEM_GET_CLASS:=PGtkMenuItemClass(GTK_CHECK_GET_CLASS(obj,GTK_TYPE_MENU_ITEM));
  119. end;
  120. function show_submenu_indicator(var a : TGtkMenuItem) : guint;
  121. begin
  122. show_submenu_indicator:=(a.flag0 and bm_TGtkMenuItem_show_submenu_indicator) shr bp_TGtkMenuItem_show_submenu_indicator;
  123. end;
  124. procedure set_show_submenu_indicator(var a : TGtkMenuItem; __show_submenu_indicator : guint);
  125. begin
  126. a.flag0:=a.flag0 or ((__show_submenu_indicator shl bp_TGtkMenuItem_show_submenu_indicator) and bm_TGtkMenuItem_show_submenu_indicator);
  127. end;
  128. function submenu_placement(var a : TGtkMenuItem) : guint;
  129. begin
  130. submenu_placement:=(a.flag0 and bm_TGtkMenuItem_submenu_placement) shr bp_TGtkMenuItem_submenu_placement;
  131. end;
  132. procedure set_submenu_placement(var a : TGtkMenuItem; __submenu_placement : guint);
  133. begin
  134. a.flag0:=a.flag0 or ((__submenu_placement shl bp_TGtkMenuItem_submenu_placement) and bm_TGtkMenuItem_submenu_placement);
  135. end;
  136. function submenu_direction(var a : TGtkMenuItem) : guint;
  137. begin
  138. submenu_direction:=(a.flag0 and bm_TGtkMenuItem_submenu_direction) shr bp_TGtkMenuItem_submenu_direction;
  139. end;
  140. procedure set_submenu_direction(var a : TGtkMenuItem; __submenu_direction : guint);
  141. begin
  142. a.flag0:=a.flag0 or ((__submenu_direction shl bp_TGtkMenuItem_submenu_direction) and bm_TGtkMenuItem_submenu_direction);
  143. end;
  144. function right_justify(var a : TGtkMenuItem) : guint;
  145. begin
  146. right_justify:=(a.flag0 and bm_TGtkMenuItem_right_justify) shr bp_TGtkMenuItem_right_justify;
  147. end;
  148. procedure set_right_justify(var a : TGtkMenuItem; __right_justify : guint);
  149. begin
  150. a.flag0:=a.flag0 or ((__right_justify shl bp_TGtkMenuItem_right_justify) and bm_TGtkMenuItem_right_justify);
  151. end;
  152. function timer_from_keypress(var a : TGtkMenuItem) : guint;
  153. begin
  154. timer_from_keypress:=(a.flag0 and bm_TGtkMenuItem_timer_from_keypress) shr bp_TGtkMenuItem_timer_from_keypress;
  155. end;
  156. procedure set_timer_from_keypress(var a : TGtkMenuItem; __timer_from_keypress : guint);
  157. begin
  158. a.flag0:=a.flag0 or ((__timer_from_keypress shl bp_TGtkMenuItem_timer_from_keypress) and bm_TGtkMenuItem_timer_from_keypress);
  159. end;
  160. function hide_on_activate(var a : TGtkMenuItemClass) : guint;
  161. begin
  162. hide_on_activate:=(a.flag0 and bm_TGtkMenuItemClass_hide_on_activate) shr bp_TGtkMenuItemClass_hide_on_activate;
  163. end;
  164. procedure set_hide_on_activate(var a : TGtkMenuItemClass; __hide_on_activate : guint);
  165. begin
  166. a.flag0:=a.flag0 or ((__hide_on_activate shl bp_TGtkMenuItemClass_hide_on_activate) and bm_TGtkMenuItemClass_hide_on_activate);
  167. end;
  168. procedure gtk_menu_item_right_justify(menu_item : PGtkMenuItem);
  169. begin
  170. gtk_menu_item_set_right_justified(menu_item,true);
  171. end;
  172. {$ENDIF read_implementation}
  173. // included by gtk2.pas