<!-- ##### SECTION Title ##### -->
GtkMenuItem

<!-- ##### SECTION Short_Description ##### -->
The widget used for item in menus

<!-- ##### SECTION Long_Description ##### -->
<para>
The #GtkMenuItem widget and the derived widgets are the only valid
childs for menus. Their function is to correctly handle highlighting,
alignment, events and submenus.
</para>
<para>
As it derives from #GtkBin it can hold any valid child widget, altough
only a few are really useful.
</para>
<refsect2 id="GtkMenuItem-BUILDER-UI">
<title>GtkMenuItem as GtkBuildable</title>
<para>
The GtkMenuItem implementation of the GtkBuildable interface
supports adding a submenu by specifying "submenu" as the "type" 
attribute of a &lt;child&gt; element.
</para>
<example>
<title>A UI definition fragment with submenus</title>
<programlisting><![CDATA[
<object class="GtkMenuItem">
  <child type="submenu">
    <object class="GtkMenu"/>
  </child>
</object>
]]></programlisting>
</example>
</refsect2>

<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term>#GtkBin</term>
<listitem><para>for how to handle the child.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkItem</term>
<listitem><para>is the abstract class for all sorts of items.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkMenuShell</term>
<listitem><para>is always the parent of #GtkMenuItem.</para></listitem>
</varlistentry>
</variablelist>
</para>

<!-- ##### SECTION Stability_Level ##### -->


<!-- ##### STRUCT GtkMenuItem ##### -->
<para>

</para>


<!-- ##### SIGNAL GtkMenuItem::activate ##### -->
<para>
Emitted when the item is activated.
</para>

@menuitem: the object which received the signal.

<!-- ##### SIGNAL GtkMenuItem::activate-item ##### -->
<para>
Emitted when the item is activated, but also if the menu item has a
submenu. For normal applications, the relevant signal is "activate".
</para>

@menuitem: the object which received the signal.

<!-- ##### SIGNAL GtkMenuItem::toggle-size-allocate ##### -->
<para>

</para>

@menuitem: the object which received the signal.
@arg1: 

<!-- ##### SIGNAL GtkMenuItem::toggle-size-request ##### -->
<para>

</para>

@menuitem: the object which received the signal.
@arg1: 

<!-- ##### ARG GtkMenuItem:accel-path ##### -->
<para>

</para>

<!-- ##### ARG GtkMenuItem:label ##### -->
<para>

</para>

<!-- ##### ARG GtkMenuItem:right-justified ##### -->
<para>

</para>

<!-- ##### ARG GtkMenuItem:submenu ##### -->
<para>

</para>

<!-- ##### ARG GtkMenuItem:use-underline ##### -->
<para>

</para>

<!-- ##### ARG GtkMenuItem:arrow-scaling ##### -->
<para>

</para>

<!-- ##### ARG GtkMenuItem:arrow-spacing ##### -->
<para>

</para>

<!-- ##### ARG GtkMenuItem:horizontal-padding ##### -->
<para>

</para>

<!-- ##### ARG GtkMenuItem:selected-shadow-type ##### -->
<para>

</para>

<!-- ##### ARG GtkMenuItem:toggle-spacing ##### -->
<para>

</para>

<!-- ##### ARG GtkMenuItem:width-chars ##### -->
<para>

</para>

<!-- ##### FUNCTION gtk_menu_item_new ##### -->
<para>
Creates a new #GtkMenuItem.
</para>

@Returns: the newly created #GtkMenuItem


<!-- ##### FUNCTION gtk_menu_item_new_with_label ##### -->
<para>
Creates a new #GtkMenuItem whose child is a #GtkLabel.
</para>

@label: the text for the label
@Returns: the newly created #GtkMenuItem


<!-- ##### FUNCTION gtk_menu_item_new_with_mnemonic ##### -->
<para>

</para>

@label: 
@Returns: 


<!-- ##### FUNCTION gtk_menu_item_set_right_justified ##### -->
<para>

</para>

@menu_item: 
@right_justified: 


<!-- ##### FUNCTION gtk_menu_item_get_right_justified ##### -->
<para>

</para>

@menu_item: 
@Returns: 


<!-- ##### FUNCTION gtk_menu_item_get_label ##### -->
<para>

</para>

@menu_item: 
@Returns: 


<!-- ##### FUNCTION gtk_menu_item_set_label ##### -->
<para>

</para>

@menu_item: 
@label: 


<!-- ##### FUNCTION gtk_menu_item_get_use_underline ##### -->
<para>

</para>

@menu_item: 
@Returns: 


<!-- ##### FUNCTION gtk_menu_item_set_use_underline ##### -->
<para>

</para>

@menu_item: 
@setting: 


<!-- ##### FUNCTION gtk_menu_item_set_submenu ##### -->
<para>

</para>

@menu_item: 
@submenu: 


<!-- ##### FUNCTION gtk_menu_item_get_submenu ##### -->
<para>

</para>

@menu_item: 
@Returns: 


<!-- ##### FUNCTION gtk_menu_item_remove_submenu ##### -->
<para>

</para>

@menu_item: 


<!-- ##### FUNCTION gtk_menu_item_set_accel_path ##### -->
<para>

</para>

@menu_item: 
@accel_path: 


<!-- ##### FUNCTION gtk_menu_item_get_accel_path ##### -->
<para>

</para>

@menu_item: 
@Returns: 


<!-- ##### FUNCTION gtk_menu_item_select ##### -->
<para>
Emits the "select" signal on the given item. Behaves exactly like
#gtk_item_select.
</para>

@menu_item: the menu item


<!-- ##### FUNCTION gtk_menu_item_deselect ##### -->
<para>
Emits the "deselect" signal on the given item. Behaves exactly like
#gtk_item_deselect.
</para>

@menu_item: the menu item


<!-- ##### FUNCTION gtk_menu_item_activate ##### -->
<para>
Emits the "activate" signal on the given item
</para>

@menu_item: the menu item


<!-- ##### FUNCTION gtk_menu_item_toggle_size_request ##### -->
<para>
Emits the "toggle_size_request" signal on the given item.
</para>

@menu_item: the menu item
@requisition: the requisition to use as signal data.


<!-- ##### FUNCTION gtk_menu_item_toggle_size_allocate ##### -->
<para>
Emits the "toggle_size_allocate" signal on the given item.
</para>

@menu_item: the menu item.
@allocation: the allocation to use as signal data.


<!-- ##### MACRO gtk_menu_item_right_justify ##### -->
<para>
Sets the menu item to be right-justified. Only useful for menu bars.
</para>

@menu_item: the menu item


