<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>GtkOptionMenu</title> <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"> <link rel="home" href="index.html" title="GTK+ 2 Reference Manual"> <link rel="up" href="DeprecatedObjects.html" title="Deprecated"> <link rel="prev" href="GtkOldEditable.html" title="GtkOldEditable"> <link rel="next" href="GtkPixmap.html" title="GtkPixmap"> <meta name="generator" content="GTK-Doc V1.18.1 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> </head> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> <tr valign="middle"> <td><a accesskey="p" href="GtkOldEditable.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> <td><a accesskey="u" href="DeprecatedObjects.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> <th width="100%" align="center">GTK+ 2 Reference Manual</th> <td><a accesskey="n" href="GtkPixmap.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> </tr> <tr><td colspan="5" class="shortcuts"> <a href="#GtkOptionMenu.synopsis" class="shortcut">Top</a> | <a href="#GtkOptionMenu.description" class="shortcut">Description</a> | <a href="#GtkOptionMenu.object-hierarchy" class="shortcut">Object Hierarchy</a> | <a href="#GtkOptionMenu.implemented-interfaces" class="shortcut">Implemented Interfaces</a> | <a href="#GtkOptionMenu.properties" class="shortcut">Properties</a> | <a href="#GtkOptionMenu.style-properties" class="shortcut">Style Properties</a> | <a href="#GtkOptionMenu.signals" class="shortcut">Signals</a> </td></tr> </table> <div class="refentry"> <a name="GtkOptionMenu"></a><div class="titlepage"></div> <div class="refnamediv"><table width="100%"><tr> <td valign="top"> <h2><span class="refentrytitle"><a name="GtkOptionMenu.top_of_page"></a>GtkOptionMenu</span></h2> <p>GtkOptionMenu — A widget used to choose from a list of valid choices</p> </td> <td valign="top" align="right"></td> </tr></table></div> <div class="refsynopsisdiv"> <a name="GtkOptionMenu.synopsis"></a><h2>Synopsis</h2> <pre class="synopsis"> #include <gtk/gtk.h> struct <a class="link" href="GtkOptionMenu.html#GtkOptionMenu-struct" title="struct GtkOptionMenu">GtkOptionMenu</a>; <a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> * <a class="link" href="GtkOptionMenu.html#gtk-option-menu-new" title="gtk_option_menu_new ()">gtk_option_menu_new</a> (<em class="parameter"><code><span class="type">void</span></code></em>); <a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> * <a class="link" href="GtkOptionMenu.html#gtk-option-menu-get-menu" title="gtk_option_menu_get_menu ()">gtk_option_menu_get_menu</a> (<em class="parameter"><code><a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> *option_menu</code></em>); <span class="returnvalue">void</span> <a class="link" href="GtkOptionMenu.html#gtk-option-menu-set-menu" title="gtk_option_menu_set_menu ()">gtk_option_menu_set_menu</a> (<em class="parameter"><code><a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> *option_menu</code></em>, <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *menu</code></em>); <span class="returnvalue">void</span> <a class="link" href="GtkOptionMenu.html#gtk-option-menu-remove-menu" title="gtk_option_menu_remove_menu ()">gtk_option_menu_remove_menu</a> (<em class="parameter"><code><a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> *option_menu</code></em>); <span class="returnvalue">void</span> <a class="link" href="GtkOptionMenu.html#gtk-option-menu-set-history" title="gtk_option_menu_set_history ()">gtk_option_menu_set_history</a> (<em class="parameter"><code><a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> *option_menu</code></em>, <em class="parameter"><code><a href="/home/mclasen/gnome/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index_</code></em>); <a href="/home/mclasen/gnome/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> <a class="link" href="GtkOptionMenu.html#gtk-option-menu-get-history" title="gtk_option_menu_get_history ()">gtk_option_menu_get_history</a> (<em class="parameter"><code><a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> *option_menu</code></em>); </pre> </div> <div class="refsect1"> <a name="GtkOptionMenu.object-hierarchy"></a><h2>Object Hierarchy</h2> <pre class="synopsis"> <a href="/home/mclasen/gnome/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject">GObject</a> +----<a href="/home/mclasen/gnome/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> +----<a class="link" href="GtkObject.html" title="GtkObject">GtkObject</a> +----<a class="link" href="GtkWidget.html" title="GtkWidget">GtkWidget</a> +----<a class="link" href="GtkContainer.html" title="GtkContainer">GtkContainer</a> +----<a class="link" href="GtkBin.html" title="GtkBin">GtkBin</a> +----<a class="link" href="GtkButton.html" title="GtkButton">GtkButton</a> +----GtkOptionMenu </pre> </div> <div class="refsect1"> <a name="GtkOptionMenu.implemented-interfaces"></a><h2>Implemented Interfaces</h2> <p> GtkOptionMenu implements AtkImplementorIface, <a class="link" href="GtkBuildable.html" title="GtkBuildable">GtkBuildable</a> and <a class="link" href="GtkActivatable.html" title="GtkActivatable">GtkActivatable</a>.</p> </div> <div class="refsect1"> <a name="GtkOptionMenu.properties"></a><h2>Properties</h2> <pre class="synopsis"> "<a class="link" href="GtkOptionMenu.html#GtkOptionMenu--menu" title='The "menu" property'>menu</a>" <a class="link" href="GtkMenu.html" title="GtkMenu"><span class="type">GtkMenu</span></a>* : Read / Write </pre> </div> <div class="refsect1"> <a name="GtkOptionMenu.style-properties"></a><h2>Style Properties</h2> <pre class="synopsis"> "<a class="link" href="GtkOptionMenu.html#GtkOptionMenu--s-indicator-size" title='The "indicator-size" style property'>indicator-size</a>" <a class="link" href="GtkWidget.html#GtkRequisition"><span class="type">GtkRequisition</span></a>* : Read "<a class="link" href="GtkOptionMenu.html#GtkOptionMenu--s-indicator-spacing" title='The "indicator-spacing" style property'>indicator-spacing</a>" <a class="link" href="GtkStyle.html#GtkBorder"><span class="type">GtkBorder</span></a>* : Read </pre> </div> <div class="refsect1"> <a name="GtkOptionMenu.signals"></a><h2>Signals</h2> <pre class="synopsis"> "<a class="link" href="GtkOptionMenu.html#GtkOptionMenu-changed" title='The "changed" signal'>changed</a>" : <a href="/home/mclasen/gnome/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a> </pre> </div> <div class="refsect1"> <a name="GtkOptionMenu.description"></a><h2>Description</h2> <p> A <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> is a widget that allows the user to choose from a list of valid choices. The <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> displays the selected choice. When activated the <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> displays a popup <a class="link" href="GtkMenu.html" title="GtkMenu"><span class="type">GtkMenu</span></a> which allows the user to make a new choice. </p> <p> Using a <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> is simple; build a <a class="link" href="GtkMenu.html" title="GtkMenu"><span class="type">GtkMenu</span></a>, by calling <a class="link" href="GtkMenu.html#gtk-menu-new" title="gtk_menu_new ()"><code class="function">gtk_menu_new()</code></a>, then appending menu items to it with <a class="link" href="GtkMenuShell.html#gtk-menu-shell-append" title="gtk_menu_shell_append ()"><code class="function">gtk_menu_shell_append()</code></a>. Set that menu on the option menu with <a class="link" href="GtkOptionMenu.html#gtk-option-menu-set-menu" title="gtk_option_menu_set_menu ()"><code class="function">gtk_option_menu_set_menu()</code></a>. Set the selected menu item with <a class="link" href="GtkOptionMenu.html#gtk-option-menu-set-history" title="gtk_option_menu_set_history ()"><code class="function">gtk_option_menu_set_history()</code></a>; connect to the "changed" signal on the option menu; in the "changed" signal, check the new selected menu item with <a class="link" href="GtkOptionMenu.html#gtk-option-menu-get-history" title="gtk_option_menu_get_history ()"><code class="function">gtk_option_menu_get_history()</code></a>. </p> <p> As of GTK+ 2.4, <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> has been deprecated in favor of <a class="link" href="GtkComboBox.html" title="GtkComboBox"><span class="type">GtkComboBox</span></a>. </p> </div> <div class="refsect1"> <a name="GtkOptionMenu.details"></a><h2>Details</h2> <div class="refsect2"> <a name="GtkOptionMenu-struct"></a><h3>struct GtkOptionMenu</h3> <pre class="programlisting">struct GtkOptionMenu;</pre> <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"> <h3 class="title">Warning</h3> <p><code class="literal">GtkOptionMenu</code> has been deprecated since version 2.4 and should not be used in newly-written code. Use <a class="link" href="GtkComboBox.html" title="GtkComboBox"><span class="type">GtkComboBox</span></a> instead.</p> </div> <p> The <a class="link" href="GtkOptionMenu.html#GtkOptionMenu-struct" title="struct GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> struct contains private data only, and should be accessed using the functions below. </p> </div> <hr> <div class="refsect2"> <a name="gtk-option-menu-new"></a><h3>gtk_option_menu_new ()</h3> <pre class="programlisting"><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> * gtk_option_menu_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"> <h3 class="title">Warning</h3> <p><code class="literal">gtk_option_menu_new</code> has been deprecated since version 2.4 and should not be used in newly-written code. Use <a class="link" href="GtkComboBox.html" title="GtkComboBox"><span class="type">GtkComboBox</span></a> instead.</p> </div> <p> Creates a new <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a>. </p> <div class="variablelist"><table border="0" class="variablelist"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody><tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td>a new <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a>.</td> </tr></tbody> </table></div> </div> <hr> <div class="refsect2"> <a name="gtk-option-menu-get-menu"></a><h3>gtk_option_menu_get_menu ()</h3> <pre class="programlisting"><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> * gtk_option_menu_get_menu (<em class="parameter"><code><a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> *option_menu</code></em>);</pre> <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"> <h3 class="title">Warning</h3> <p><code class="literal">gtk_option_menu_get_menu</code> has been deprecated since version 2.4 and should not be used in newly-written code. Use <a class="link" href="GtkComboBox.html" title="GtkComboBox"><span class="type">GtkComboBox</span></a> instead.</p> </div> <p> Returns the <a class="link" href="GtkMenu.html" title="GtkMenu"><span class="type">GtkMenu</span></a> associated with the <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a>. </p> <div class="variablelist"><table border="0" class="variablelist"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>option_menu</code></em> :</span></p></td> <td>a <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a>.</td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td>the <a class="link" href="GtkMenu.html" title="GtkMenu"><span class="type">GtkMenu</span></a> associated with the <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a>.</td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2"> <a name="gtk-option-menu-set-menu"></a><h3>gtk_option_menu_set_menu ()</h3> <pre class="programlisting"><span class="returnvalue">void</span> gtk_option_menu_set_menu (<em class="parameter"><code><a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> *option_menu</code></em>, <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *menu</code></em>);</pre> <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"> <h3 class="title">Warning</h3> <p><code class="literal">gtk_option_menu_set_menu</code> has been deprecated since version 2.4 and should not be used in newly-written code. Use <a class="link" href="GtkComboBox.html" title="GtkComboBox"><span class="type">GtkComboBox</span></a> instead.</p> </div> <p> Provides the <a class="link" href="GtkMenu.html" title="GtkMenu"><span class="type">GtkMenu</span></a> that is popped up to allow the user to choose a new value. You should provide a simple menu avoiding the use of tearoff menu items, submenus, and accelerators. </p> <div class="variablelist"><table border="0" class="variablelist"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>option_menu</code></em> :</span></p></td> <td>a <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a>.</td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>menu</code></em> :</span></p></td> <td>the <a class="link" href="GtkMenu.html" title="GtkMenu"><span class="type">GtkMenu</span></a> to associate with the <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a>.</td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2"> <a name="gtk-option-menu-remove-menu"></a><h3>gtk_option_menu_remove_menu ()</h3> <pre class="programlisting"><span class="returnvalue">void</span> gtk_option_menu_remove_menu (<em class="parameter"><code><a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> *option_menu</code></em>);</pre> <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"> <h3 class="title">Warning</h3> <p><code class="literal">gtk_option_menu_remove_menu</code> has been deprecated since version 2.4 and should not be used in newly-written code. Use <a class="link" href="GtkComboBox.html" title="GtkComboBox"><span class="type">GtkComboBox</span></a> instead.</p> </div> <p> Removes the menu from the option menu. </p> <div class="variablelist"><table border="0" class="variablelist"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody><tr> <td><p><span class="term"><em class="parameter"><code>option_menu</code></em> :</span></p></td> <td>a <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a>.</td> </tr></tbody> </table></div> </div> <hr> <div class="refsect2"> <a name="gtk-option-menu-set-history"></a><h3>gtk_option_menu_set_history ()</h3> <pre class="programlisting"><span class="returnvalue">void</span> gtk_option_menu_set_history (<em class="parameter"><code><a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> *option_menu</code></em>, <em class="parameter"><code><a href="/home/mclasen/gnome/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> index_</code></em>);</pre> <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"> <h3 class="title">Warning</h3> <p><code class="literal">gtk_option_menu_set_history</code> has been deprecated since version 2.4 and should not be used in newly-written code. Use <a class="link" href="GtkComboBox.html" title="GtkComboBox"><span class="type">GtkComboBox</span></a> instead.</p> </div> <p> Selects the menu item specified by <em class="parameter"><code>index_</code></em> making it the newly selected value for the option menu. </p> <div class="variablelist"><table border="0" class="variablelist"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>option_menu</code></em> :</span></p></td> <td>a <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a>.</td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>index_</code></em> :</span></p></td> <td>the index of the menu item to select. Index values are from 0 to n-1.</td> </tr> </tbody> </table></div> </div> <hr> <div class="refsect2"> <a name="gtk-option-menu-get-history"></a><h3>gtk_option_menu_get_history ()</h3> <pre class="programlisting"><a href="/home/mclasen/gnome/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> gtk_option_menu_get_history (<em class="parameter"><code><a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> *option_menu</code></em>);</pre> <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"> <h3 class="title">Warning</h3> <p><code class="literal">gtk_option_menu_get_history</code> has been deprecated since version 2.4 and should not be used in newly-written code. Use <a class="link" href="GtkComboBox.html" title="GtkComboBox"><span class="type">GtkComboBox</span></a> instead.</p> </div> <p> Retrieves the index of the currently selected menu item. The menu items are numbered from top to bottom, starting with 0. </p> <div class="variablelist"><table border="0" class="variablelist"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>option_menu</code></em> :</span></p></td> <td>a <a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> </td> </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td>index of the selected menu item, or -1 if there are no menu items</td> </tr> </tbody> </table></div> </div> </div> <div class="refsect1"> <a name="GtkOptionMenu.property-details"></a><h2>Property Details</h2> <div class="refsect2"> <a name="GtkOptionMenu--menu"></a><h3>The <code class="literal">"menu"</code> property</h3> <pre class="programlisting"> "menu" <a class="link" href="GtkMenu.html" title="GtkMenu"><span class="type">GtkMenu</span></a>* : Read / Write</pre> <p>The menu of options.</p> </div> </div> <div class="refsect1"> <a name="GtkOptionMenu.style-property-details"></a><h2>Style Property Details</h2> <div class="refsect2"> <a name="GtkOptionMenu--s-indicator-size"></a><h3>The <code class="literal">"indicator-size"</code> style property</h3> <pre class="programlisting"> "indicator-size" <a class="link" href="GtkWidget.html#GtkRequisition"><span class="type">GtkRequisition</span></a>* : Read</pre> <p>Size of dropdown indicator.</p> </div> <hr> <div class="refsect2"> <a name="GtkOptionMenu--s-indicator-spacing"></a><h3>The <code class="literal">"indicator-spacing"</code> style property</h3> <pre class="programlisting"> "indicator-spacing" <a class="link" href="GtkStyle.html#GtkBorder"><span class="type">GtkBorder</span></a>* : Read</pre> <p>Spacing around indicator.</p> </div> </div> <div class="refsect1"> <a name="GtkOptionMenu.signal-details"></a><h2>Signal Details</h2> <div class="refsect2"> <a name="GtkOptionMenu-changed"></a><h3>The <code class="literal">"changed"</code> signal</h3> <pre class="programlisting"><span class="returnvalue">void</span> user_function (<a class="link" href="GtkOptionMenu.html" title="GtkOptionMenu"><span class="type">GtkOptionMenu</span></a> *optionmenu, <a href="/home/mclasen/gnome/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data) : <a href="/home/mclasen/gnome/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre> <p> </p> <div class="variablelist"><table border="0" class="variablelist"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody> <tr> <td><p><span class="term"><em class="parameter"><code>optionmenu</code></em> :</span></p></td> <td>the object which received the signal.</td> </tr> <tr> <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td> <td>user data set when the signal handler was connected.</td> </tr> </tbody> </table></div> </div> </div> </div> <div class="footer"> <hr> Generated by GTK-Doc V1.18.1</div> </body> </html>