Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Accelerator Groups: GTK+ 2 Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
<link rel="home" href="index.html" title="GTK+ 2 Reference Manual">
<link rel="up" href="gtkbase.html" title="Part II. GTK+ Core Reference">
<link rel="prev" href="gtk2-General.html" title="General">
<link rel="next" href="gtk2-Accelerator-Maps.html" title="Accelerator Maps">
<meta name="generator" content="GTK-Doc V1.26.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="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#gtk2-Keyboard-Accelerators.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                  <a href="#gtk2-Keyboard-Accelerators.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                  <a href="#gtk2-Keyboard-Accelerators.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                  <a href="#gtk2-Keyboard-Accelerators.signals" class="shortcut">Signals</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="gtkbase.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="gtk2-General.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="gtk2-Accelerator-Maps.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="gtk2-Keyboard-Accelerators"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="gtk2-Keyboard-Accelerators.top_of_page"></a>Accelerator Groups</span></h2>
<p>Accelerator Groups — Groups of global keyboard accelerators for an entire GtkWindow</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_return">
<col class="functions_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="returnvalue">GtkAccelGroup</span></a> *
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-new" title="gtk_accel_group_new ()">gtk_accel_group_new</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-connect" title="gtk_accel_group_connect ()">gtk_accel_group_connect</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-connect-by-path" title="gtk_accel_group_connect_by_path ()">gtk_accel_group_connect_by_path</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroupActivate" title="GtkAccelGroupActivate ()">*GtkAccelGroupActivate</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroupFindFunc" title="GtkAccelGroupFindFunc ()">*GtkAccelGroupFindFunc</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-disconnect" title="gtk_accel_group_disconnect ()">gtk_accel_group_disconnect</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-disconnect-key" title="gtk_accel_group_disconnect_key ()">gtk_accel_group_disconnect_key</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GtkAccelGroupEntry</span> *
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-query" title="gtk_accel_group_query ()">gtk_accel_group_query</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-activate" title="gtk_accel_group_activate ()">gtk_accel_group_activate</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-lock" title="gtk_accel_group_lock ()">gtk_accel_group_lock</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-unlock" title="gtk_accel_group_unlock ()">gtk_accel_group_unlock</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-get-is-locked" title="gtk_accel_group_get_is_locked ()">gtk_accel_group_get_is_locked</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="returnvalue">GtkAccelGroup</span></a> *
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-from-accel-closure" title="gtk_accel_group_from_accel_closure ()">gtk_accel_group_from_accel_closure</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../html/gdk2-Windows.html#GdkModifierType"><span class="returnvalue">GdkModifierType</span></a>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-get-modifier-mask" title="gtk_accel_group_get_modifier_mask ()">gtk_accel_group_get_modifier_mask</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-groups-activate" title="gtk_accel_groups_activate ()">gtk_accel_groups_activate</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-groups-from-object" title="gtk_accel_groups_from_object ()">gtk_accel_groups_from_object</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelKey" title="struct GtkAccelKey"><span class="returnvalue">GtkAccelKey</span></a> *
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-find" title="gtk_accel_group_find ()">gtk_accel_group_find</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accelerator-valid" title="gtk_accelerator_valid ()">gtk_accelerator_valid</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accelerator-parse" title="gtk_accelerator_parse ()">gtk_accelerator_parse</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accelerator-name" title="gtk_accelerator_name ()">gtk_accelerator_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accelerator-get-label" title="gtk_accelerator_get_label ()">gtk_accelerator_get_label</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accelerator-set-default-mod-mask" title="gtk_accelerator_set_default_mod_mask ()">gtk_accelerator_set_default_mod_mask</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="../glib/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
</td>
<td class="function_name">
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accelerator-get-default-mod-mask" title="gtk_accelerator_get_default_mod_mask ()">gtk_accelerator_get_default_mod_mask</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.properties"></a><h2>Properties</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="properties_type">
<col width="300px" class="properties_name">
<col width="200px" class="properties_flags">
</colgroup>
<tbody>
<tr>
<td class="property_type"><a href="../glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
<td class="property_name"><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup--is-locked" title="The “is-locked” property">is-locked</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type"><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a></td>
<td class="property_name"><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup--modifier-mask" title="The “modifier-mask” property">modifier-mask</a></td>
<td class="property_flags">Read</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.signals"></a><h2>Signals</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="signals_return">
<col width="300px" class="signals_name">
<col width="200px" class="signals_flags">
</colgroup>
<tbody>
<tr>
<td class="signal_type"><a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a></td>
<td class="signal_name"><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup-accel-activate" title="The “accel-activate” signal">accel-activate</a></td>
<td class="signal_flags"><a href="../gobject/gobject-Signals.html#G-SIGNAL-DETAILED:CAPS">Has Details</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup-accel-changed" title="The “accel-changed” signal">accel-changed</a></td>
<td class="signal_flags"><a href="../gobject/gobject-Signals.html#G-SIGNAL-DETAILED:CAPS">Has Details</a></td>
</tr>
</tbody>
</table></div>
</div>
<a name="GtkAccelGroup"></a><div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup-struct" title="struct GtkAccelGroup">GtkAccelGroup</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-ref" title="gtk_accel_group_ref">gtk_accel_group_ref</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-unref" title="gtk_accel_group_unref">gtk_accel_group_unref</a></td>
</tr>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelKey" title="struct GtkAccelKey">GtkAccelKey</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="screen">    <a href="../gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a>
    <span class="lineart">╰──</span> GtkAccelGroup
</pre>
</div>
<div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.includes"></a><h2>Includes</h2>
<pre class="synopsis">#include &lt;gtk/gtk.h&gt;
</pre>
</div>
<div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.description"></a><h2>Description</h2>
<p>A <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> represents a group of keyboard accelerators,
typically attached to a toplevel <a class="link" href="GtkWindow.html" title="GtkWindow"><span class="type">GtkWindow</span></a> (with
<a class="link" href="GtkWindow.html#gtk-window-add-accel-group" title="gtk_window_add_accel_group ()"><code class="function">gtk_window_add_accel_group()</code></a>). Usually you won't need to create a
<a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> directly; instead, when using <a class="link" href="GtkItemFactory.html" title="GtkItemFactory"><span class="type">GtkItemFactory</span></a>, GTK+
automatically sets up the accelerators for your menus in the item
factory's <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>.</p>
<p>Note that <em class="firstterm">accelerators</em> are different from
<em class="firstterm">mnemonics</em>. Accelerators are shortcuts for
activating a menu item; they appear alongside the menu item they're a
shortcut for. For example "Ctrl+Q" might appear alongside the "Quit"
menu item. Mnemonics are shortcuts for GUI elements such as text
entries or buttons; they appear as underlined characters. See
<a class="link" href="GtkLabel.html#gtk-label-new-with-mnemonic" title="gtk_label_new_with_mnemonic ()"><code class="function">gtk_label_new_with_mnemonic()</code></a>. Menu items can have both accelerators
and mnemonics, of course.</p>
</div>
<div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="gtk-accel-group-new"></a><h3>gtk_accel_group_new ()</h3>
<pre class="programlisting"><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="returnvalue">GtkAccelGroup</span></a> *
gtk_accel_group_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Creates a new <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>.</p>
<div class="refsect3">
<a name="gtk-accel-group-new.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>returns</p></td>
<td class="parameter_description"><p>a new <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> object</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-connect"></a><h3>gtk_accel_group_connect ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_accel_group_connect (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                         <em class="parameter"><code><a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                         <em class="parameter"><code><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>,
                         <em class="parameter"><code><a class="link" href="gtk2-Standard-Enumerations.html#GtkAccelFlags" title="enum GtkAccelFlags"><span class="type">GtkAccelFlags</span></a> accel_flags</code></em>,
                         <em class="parameter"><code><a href="../gobject/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);</pre>
<p>Installs an accelerator in this group. When <em class="parameter"><code>accel_group</code></em>
 is being activated
in response to a call to <a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-groups-activate" title="gtk_accel_groups_activate ()"><code class="function">gtk_accel_groups_activate()</code></a>, <em class="parameter"><code>closure</code></em>
 will be
invoked if the <em class="parameter"><code>accel_key</code></em>
 and <em class="parameter"><code>accel_mods</code></em>
 from <a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-groups-activate" title="gtk_accel_groups_activate ()"><code class="function">gtk_accel_groups_activate()</code></a>
match those of this connection.</p>
<p>The signature used for the <em class="parameter"><code>closure</code></em>
 is that of <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroupActivate" title="GtkAccelGroupActivate ()"><span class="type">GtkAccelGroupActivate</span></a>.</p>
<p>Note that, due to implementation details, a single closure can only be
connected to one accelerator group.</p>
<div class="refsect3">
<a name="gtk-accel-group-connect.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>the accelerator group to install an accelerator in</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_key</p></td>
<td class="parameter_description"><p>key value of the accelerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_mods</p></td>
<td class="parameter_description"><p>modifier combination of the accelerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_flags</p></td>
<td class="parameter_description"><p>a flag mask to configure this accelerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>closure</p></td>
<td class="parameter_description"><p>closure to be executed upon accelerator activation</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-connect-by-path"></a><h3>gtk_accel_group_connect_by_path ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_accel_group_connect_by_path (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                 <em class="parameter"><code>const <a href="../glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *accel_path</code></em>,
                                 <em class="parameter"><code><a href="../gobject/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);</pre>
<p>Installs an accelerator in this group, using an accelerator path to look
up the appropriate key and modifiers (see <a class="link" href="gtk2-Accelerator-Maps.html#gtk-accel-map-add-entry" title="gtk_accel_map_add_entry ()"><code class="function">gtk_accel_map_add_entry()</code></a>).
When <em class="parameter"><code>accel_group</code></em>
 is being activated in response to a call to
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-groups-activate" title="gtk_accel_groups_activate ()"><code class="function">gtk_accel_groups_activate()</code></a>, <em class="parameter"><code>closure</code></em>
 will be invoked if the <em class="parameter"><code>accel_key</code></em>
 and
<em class="parameter"><code>accel_mods</code></em>
 from <a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-groups-activate" title="gtk_accel_groups_activate ()"><code class="function">gtk_accel_groups_activate()</code></a> match the key and modifiers
for the path.</p>
<p>The signature used for the <em class="parameter"><code>closure</code></em>
 is that of <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroupActivate" title="GtkAccelGroupActivate ()"><span class="type">GtkAccelGroupActivate</span></a>.</p>
<p>Note that <em class="parameter"><code>accel_path</code></em>
 string will be stored in a <a href="../glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>. Therefore, if you
pass a static string, you can save some memory by interning it first with 
<a href="../glib/glib-Quarks.html#g-intern-static-string"><code class="function">g_intern_static_string()</code></a>.</p>
<div class="refsect3">
<a name="gtk-accel-group-connect-by-path.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>the accelerator group to install an accelerator in</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_path</p></td>
<td class="parameter_description"><p>path used for determining key and modifiers.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>closure</p></td>
<td class="parameter_description"><p>closure to be executed upon accelerator activation</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GtkAccelGroupActivate"></a><h3>GtkAccelGroupActivate ()</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
<span class="c_punctuation">(</span>*GtkAccelGroupActivate<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                          <em class="parameter"><code><a href="../gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a> *acceleratable</code></em>,
                          <em class="parameter"><code><a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> keyval</code></em>,
                          <em class="parameter"><code><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifier</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="GtkAccelGroupFindFunc"></a><h3>GtkAccelGroupFindFunc ()</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
<span class="c_punctuation">(</span>*GtkAccelGroupFindFunc<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelKey" title="struct GtkAccelKey"><span class="type">GtkAccelKey</span></a> *key</code></em>,
                          <em class="parameter"><code><a href="../gobject/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>,
                          <em class="parameter"><code><a href="../glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-disconnect"></a><h3>gtk_accel_group_disconnect ()</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
gtk_accel_group_disconnect (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                            <em class="parameter"><code><a href="../gobject/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);</pre>
<p>Removes an accelerator previously installed through
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-connect" title="gtk_accel_group_connect ()"><code class="function">gtk_accel_group_connect()</code></a>.</p>
<p>Since 2.20 <em class="parameter"><code>closure</code></em>
 can be <a href="../glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
<div class="refsect3">
<a name="gtk-accel-group-disconnect.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>the accelerator group to remove an accelerator from</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>closure</p></td>
<td class="parameter_description"><p>the closure to remove from this accelerator group, or <a href="../glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
to remove all closures. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>returns</p></td>
<td class="parameter_description"><p><a href="../glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the closure was found and got disconnected</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-disconnect-key"></a><h3>gtk_accel_group_disconnect_key ()</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
gtk_accel_group_disconnect_key (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                                <em class="parameter"><code><a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                                <em class="parameter"><code><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>);</pre>
<p>Removes an accelerator previously installed through
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-connect" title="gtk_accel_group_connect ()"><code class="function">gtk_accel_group_connect()</code></a>.</p>
<div class="refsect3">
<a name="gtk-accel-group-disconnect-key.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>the accelerator group to install an accelerator in</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_key</p></td>
<td class="parameter_description"><p>key value of the accelerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_mods</p></td>
<td class="parameter_description"><p>modifier combination of the accelerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>returns</p></td>
<td class="parameter_description"><p><a href="../glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there was an accelerator which could be
removed, <a href="../glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-query"></a><h3>gtk_accel_group_query ()</h3>
<pre class="programlisting"><span class="returnvalue">GtkAccelGroupEntry</span> *
gtk_accel_group_query (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                       <em class="parameter"><code><a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                       <em class="parameter"><code><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>,
                       <em class="parameter"><code><a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_entries</code></em>);</pre>
<p>Queries an accelerator group for all entries matching <em class="parameter"><code>accel_key</code></em>
 and 
<em class="parameter"><code>accel_mods</code></em>
.</p>
<div class="refsect3">
<a name="gtk-accel-group-query.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>the accelerator group to query</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_key</p></td>
<td class="parameter_description"><p>key value of the accelerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_mods</p></td>
<td class="parameter_description"><p>modifier combination of the accelerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_entries</p></td>
<td class="parameter_description"><p>location to return the number of entries found, or <a href="../glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>returns</p></td>
<td class="parameter_description"><p>an array of <em class="parameter"><code>n_entries</code></em>
<span class="type">GtkAccelGroupEntry</span> elements, or <a href="../glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. The array is owned by GTK+ and must not be freed. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-activate"></a><h3>gtk_accel_group_activate ()</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
gtk_accel_group_activate (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                          <em class="parameter"><code><a href="../glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> accel_quark</code></em>,
                          <em class="parameter"><code><a href="../gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a> *acceleratable</code></em>,
                          <em class="parameter"><code><a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                          <em class="parameter"><code><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>);</pre>
<p>Finds the first accelerator in <em class="parameter"><code>accel_group</code></em>
 
that matches <em class="parameter"><code>accel_key</code></em>
 and <em class="parameter"><code>accel_mods</code></em>
, and
activates it.</p>
<div class="refsect3">
<a name="gtk-accel-group-activate.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>a <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_quark</p></td>
<td class="parameter_description"><p>the quark for the accelerator name</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>acceleratable</p></td>
<td class="parameter_description"><p>the <a href="../gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a>, usually a <a class="link" href="GtkWindow.html" title="GtkWindow"><span class="type">GtkWindow</span></a>, on which
to activate the accelerator.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_key</p></td>
<td class="parameter_description"><p>accelerator keyval from a key event</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_mods</p></td>
<td class="parameter_description"><p>keyboard state mask from a key event</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-accel-group-activate.returns"></a><h4>Returns</h4>
<p> <a href="../glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an accelerator was activated and handled this keypress</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-lock"></a><h3>gtk_accel_group_lock ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_accel_group_lock (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);</pre>
<p>Locks the given accelerator group.</p>
<p>Locking an acelerator group prevents the accelerators contained
within it to be changed during runtime. Refer to
<a class="link" href="gtk2-Accelerator-Maps.html#gtk-accel-map-change-entry" title="gtk_accel_map_change_entry ()"><code class="function">gtk_accel_map_change_entry()</code></a> about runtime accelerator changes.</p>
<p>If called more than once, <em class="parameter"><code>accel_group</code></em>
 remains locked until
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-unlock" title="gtk_accel_group_unlock ()"><code class="function">gtk_accel_group_unlock()</code></a> has been called an equivalent number
of times.</p>
<div class="refsect3">
<a name="gtk-accel-group-lock.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>a <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-unlock"></a><h3>gtk_accel_group_unlock ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_accel_group_unlock (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);</pre>
<p>Undoes the last call to <a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-lock" title="gtk_accel_group_lock ()"><code class="function">gtk_accel_group_lock()</code></a> on this <em class="parameter"><code>accel_group</code></em>
.</p>
<div class="refsect3">
<a name="gtk-accel-group-unlock.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>a <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-get-is-locked"></a><h3>gtk_accel_group_get_is_locked ()</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
gtk_accel_group_get_is_locked (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);</pre>
<p>Locks are added and removed using <a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-lock" title="gtk_accel_group_lock ()"><code class="function">gtk_accel_group_lock()</code></a> and
<a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-unlock" title="gtk_accel_group_unlock ()"><code class="function">gtk_accel_group_unlock()</code></a>.</p>
<div class="refsect3">
<a name="gtk-accel-group-get-is-locked.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>a <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-accel-group-get-is-locked.returns"></a><h4>Returns</h4>
<p> <a href="../glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there are 1 or more locks on the <em class="parameter"><code>accel_group</code></em>
,
<a href="../glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-14.html#api-index-2.14">2.14</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-from-accel-closure"></a><h3>gtk_accel_group_from_accel_closure ()</h3>
<pre class="programlisting"><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="returnvalue">GtkAccelGroup</span></a> *
gtk_accel_group_from_accel_closure (<em class="parameter"><code><a href="../gobject/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *closure</code></em>);</pre>
<p>Finds the <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> to which <em class="parameter"><code>closure</code></em>
 is connected; 
see <a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accel-group-connect" title="gtk_accel_group_connect ()"><code class="function">gtk_accel_group_connect()</code></a>.</p>
<div class="refsect3">
<a name="gtk-accel-group-from-accel-closure.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>closure</p></td>
<td class="parameter_description"><p>a <a href="../gobject/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>returns</p></td>
<td class="parameter_description"><p>the <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> to which <em class="parameter"><code>closure</code></em>
is connected, or <a href="../glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-get-modifier-mask"></a><h3>gtk_accel_group_get_modifier_mask ()</h3>
<pre class="programlisting"><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="returnvalue">GdkModifierType</span></a>
gtk_accel_group_get_modifier_mask (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>);</pre>
<p>Gets a <a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> representing the mask for this
<em class="parameter"><code>accel_group</code></em>
. For example, <a href="../html/gdk2-Windows.html#GDK-CONTROL-MASK:CAPS"><span class="type">GDK_CONTROL_MASK</span></a>, <a href="../html/gdk2-Windows.html#GDK-SHIFT-MASK:CAPS"><span class="type">GDK_SHIFT_MASK</span></a>, etc.</p>
<div class="refsect3">
<a name="gtk-accel-group-get-modifier-mask.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>a <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-accel-group-get-modifier-mask.returns"></a><h4>Returns</h4>
<p> the modifier mask for this accel group.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-14.html#api-index-2.14">2.14</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-groups-activate"></a><h3>gtk_accel_groups_activate ()</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
gtk_accel_groups_activate (<em class="parameter"><code><a href="../gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a> *object</code></em>,
                           <em class="parameter"><code><a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accel_key</code></em>,
                           <em class="parameter"><code><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods</code></em>);</pre>
<p>Finds the first accelerator in any <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> attached
to <em class="parameter"><code>object</code></em>
 that matches <em class="parameter"><code>accel_key</code></em>
 and <em class="parameter"><code>accel_mods</code></em>
, and
activates that accelerator.</p>
<div class="refsect3">
<a name="gtk-accel-groups-activate.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>object</p></td>
<td class="parameter_description"><p>the <a href="../gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a>, usually a <a class="link" href="GtkWindow.html" title="GtkWindow"><span class="type">GtkWindow</span></a>, on which
to activate the accelerator.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_key</p></td>
<td class="parameter_description"><p>accelerator keyval from a key event</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_mods</p></td>
<td class="parameter_description"><p>keyboard state mask from a key event</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-accel-groups-activate.returns"></a><h4>Returns</h4>
<p> <a href="../glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if an accelerator was activated and handled this keypress</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-groups-from-object"></a><h3>gtk_accel_groups_from_object ()</h3>
<pre class="programlisting"><a href="../glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *
gtk_accel_groups_from_object (<em class="parameter"><code><a href="../gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a> *object</code></em>);</pre>
<p>Gets a list of all accel groups which are attached to <em class="parameter"><code>object</code></em>
.</p>
<div class="refsect3">
<a name="gtk-accel-groups-from-object.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>object</p></td>
<td class="parameter_description"><p>a <a href="../gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a>, usually a <a class="link" href="GtkWindow.html" title="GtkWindow"><span class="type">GtkWindow</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-accel-groups-from-object.returns"></a><h4>Returns</h4>
<p>a list of all accel groups which are attached to <em class="parameter"><code>object</code></em>
. </p>
<p><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GtkAccelGroup][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-find"></a><h3>gtk_accel_group_find ()</h3>
<pre class="programlisting"><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelKey" title="struct GtkAccelKey"><span class="returnvalue">GtkAccelKey</span></a> *
gtk_accel_group_find (<em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> *accel_group</code></em>,
                      <em class="parameter"><code><a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroupFindFunc" title="GtkAccelGroupFindFunc ()"><span class="type">GtkAccelGroupFindFunc</span></a> find_func</code></em>,
                      <em class="parameter"><code><a href="../glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
<p>Finds the first entry in an accelerator group for which 
<em class="parameter"><code>find_func</code></em>
 returns <a href="../glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> and returns its <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelKey" title="struct GtkAccelKey"><span class="type">GtkAccelKey</span></a>.</p>
<div class="refsect3">
<a name="gtk-accel-group-find.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>a <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>find_func</p></td>
<td class="parameter_description"><p>a function to filter the entries of <em class="parameter"><code>accel_group</code></em>
with</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>data</p></td>
<td class="parameter_description"><p>data to pass to <em class="parameter"><code>find_func</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>returns</p></td>
<td class="parameter_description"><p>the key of the first entry passing
<em class="parameter"><code>find_func</code></em>
. The key is owned by GTK+ and must not be freed. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-valid"></a><h3>gtk_accelerator_valid ()</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
gtk_accelerator_valid (<em class="parameter"><code><a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> keyval</code></em>,
                       <em class="parameter"><code><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifiers</code></em>);</pre>
<p>Determines whether a given keyval and modifier mask constitute
a valid keyboard accelerator. For example, the <span class="type">GDK_a</span> keyval
plus <a href="../html/gdk2-Windows.html#GDK-CONTROL-MASK:CAPS"><span class="type">GDK_CONTROL_MASK</span></a> is valid - this is a "Ctrl+a" accelerator.
But, you can't, for instance, use the <span class="type">GDK_Control_L</span> keyval
as an accelerator.</p>
<div class="refsect3">
<a name="gtk-accelerator-valid.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>keyval</p></td>
<td class="parameter_description"><p>a GDK keyval</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>modifiers</p></td>
<td class="parameter_description"><p>modifier mask</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>returns</p></td>
<td class="parameter_description"><p><a href="../glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the accelerator is valid</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-parse"></a><h3>gtk_accelerator_parse ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_accelerator_parse (<em class="parameter"><code>const <a href="../glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *accelerator</code></em>,
                       <em class="parameter"><code><a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *accelerator_key</code></em>,
                       <em class="parameter"><code><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> *accelerator_mods</code></em>);</pre>
<p>Parses a string representing an accelerator. The
format looks like "&lt;Control&gt;a" or "&lt;Shift&gt;&lt;Alt&gt;F1" or
"&lt;Release&gt;z" (the last one is for key release).
The parser is fairly liberal and allows lower or upper case,
and also abbreviations such as "&lt;Ctl&gt;" and "&lt;Ctrl&gt;".
Key names are parsed using <a href="../html/gdk2-Keyboard-Handling.html#gdk-keyval-from-name"><code class="function">gdk_keyval_from_name()</code></a>. For character keys the
name is not the symbol, but the lowercase name, e.g. one would use
"&lt;Ctrl&gt;minus" instead of "&lt;Ctrl&gt;-".</p>
<p>If the parse fails, <em class="parameter"><code>accelerator_key</code></em>
 and <em class="parameter"><code>accelerator_mods</code></em>
 will
be set to 0 (zero).</p>
<div class="refsect3">
<a name="gtk-accelerator-parse.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accelerator</p></td>
<td class="parameter_description"><p>string representing an accelerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accelerator_key</p></td>
<td class="parameter_description"><p>return location for accelerator keyval. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>accelerator_mods</p></td>
<td class="parameter_description"><p>return location for accelerator modifier mask. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-name"></a><h3>gtk_accelerator_name ()</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
gtk_accelerator_name (<em class="parameter"><code><a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accelerator_key</code></em>,
                      <em class="parameter"><code><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accelerator_mods</code></em>);</pre>
<p>Converts an accelerator keyval and modifier mask
into a string parseable by <a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accelerator-parse" title="gtk_accelerator_parse ()"><code class="function">gtk_accelerator_parse()</code></a>.
For example, if you pass in <span class="type">GDK_q</span> and <a href="../html/gdk2-Windows.html#GDK-CONTROL-MASK:CAPS"><span class="type">GDK_CONTROL_MASK</span></a>,
this function returns "&lt;Control&gt;q". </p>
<p>If you need to display accelerators in the user interface,
see <a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accelerator-get-label" title="gtk_accelerator_get_label ()"><code class="function">gtk_accelerator_get_label()</code></a>.</p>
<div class="refsect3">
<a name="gtk-accelerator-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accelerator_key</p></td>
<td class="parameter_description"><p>accelerator keyval</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accelerator_mods</p></td>
<td class="parameter_description"><p>accelerator modifier mask</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-accelerator-name.returns"></a><h4>Returns</h4>
<p> a newly-allocated accelerator name</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-get-label"></a><h3>gtk_accelerator_get_label ()</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
gtk_accelerator_get_label (<em class="parameter"><code><a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> accelerator_key</code></em>,
                           <em class="parameter"><code><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accelerator_mods</code></em>);</pre>
<p>Converts an accelerator keyval and modifier mask into a string 
which can be used to represent the accelerator to the user.</p>
<div class="refsect3">
<a name="gtk-accelerator-get-label.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accelerator_key</p></td>
<td class="parameter_description"><p>accelerator keyval</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accelerator_mods</p></td>
<td class="parameter_description"><p>accelerator modifier mask</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-accelerator-get-label.returns"></a><h4>Returns</h4>
<p> a newly-allocated string representing the accelerator.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-6.html#api-index-2.6">2.6</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-set-default-mod-mask"></a><h3>gtk_accelerator_set_default_mod_mask ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_accelerator_set_default_mod_mask (<em class="parameter"><code><a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> default_mod_mask</code></em>);</pre>
<p>Sets the modifiers that will be considered significant for keyboard
accelerators. The default mod mask is <a href="../html/gdk2-Windows.html#GDK-CONTROL-MASK:CAPS"><span class="type">GDK_CONTROL_MASK</span></a> |
<a href="../html/gdk2-Windows.html#GDK-SHIFT-MASK:CAPS"><span class="type">GDK_SHIFT_MASK</span></a> | <a href="../html/gdk2-Windows.html#GDK-MOD1-MASK:CAPS"><span class="type">GDK_MOD1_MASK</span></a> | <a href="../html/gdk2-Windows.html#GDK-SUPER-MASK:CAPS"><span class="type">GDK_SUPER_MASK</span></a> | 
<a href="../html/gdk2-Windows.html#GDK-HYPER-MASK:CAPS"><span class="type">GDK_HYPER_MASK</span></a> | <a href="../html/gdk2-Windows.html#GDK-META-MASK:CAPS"><span class="type">GDK_META_MASK</span></a>, that is, Control, Shift, Alt, 
Super, Hyper and Meta. Other modifiers will by default be ignored 
by <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>.
You must include at least the three modifiers Control, Shift
and Alt in any value you pass to this function.</p>
<p>The default mod mask should be changed on application startup,
before using any accelerator groups.</p>
<div class="refsect3">
<a name="gtk-accelerator-set-default-mod-mask.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>default_mod_mask</p></td>
<td class="parameter_description"><p>accelerator modifier mask</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accelerator-get-default-mod-mask"></a><h3>gtk_accelerator_get_default_mod_mask ()</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>
gtk_accelerator_get_default_mod_mask (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Gets the value set by <a class="link" href="gtk2-Keyboard-Accelerators.html#gtk-accelerator-set-default-mod-mask" title="gtk_accelerator_set_default_mod_mask ()"><code class="function">gtk_accelerator_set_default_mod_mask()</code></a>.</p>
<div class="refsect3">
<a name="gtk-accelerator-get-default-mod-mask.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>returns</p></td>
<td class="parameter_description"><p>the default accelerator modifier mask</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
</div>
<div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="GtkAccelGroup-struct"></a><h3>struct GtkAccelGroup</h3>
<pre class="programlisting">struct GtkAccelGroup;</pre>
<p>An object representing and maintaining a group of accelerators.</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-ref"></a><h3>gtk_accel_group_ref</h3>
<pre class="programlisting">#define gtk_accel_group_ref g_object_ref
</pre>
<div class="warning"><p><code class="literal">gtk_accel_group_ref</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Deprecated equivalent of <a href="../gobject/gobject-The-Base-Object-Type.html#g-object-ref"><code class="function">g_object_ref()</code></a>.</p>
<div class="refsect3">
<a name="gtk-accel-group-ref.returns"></a><h4>Returns</h4>
<p> the accel group that was passed in</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-accel-group-unref"></a><h3>gtk_accel_group_unref</h3>
<pre class="programlisting">#define gtk_accel_group_unref g_object_unref
</pre>
<div class="warning"><p><code class="literal">gtk_accel_group_unref</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Deprecated equivalent of <a href="../gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkAccelKey"></a><h3>struct GtkAccelKey</h3>
<pre class="programlisting">struct GtkAccelKey {
  guint           accel_key;
  GdkModifierType accel_mods;
  guint           accel_flags : 16;
};
</pre>
</div>
</div>
<div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GtkAccelGroup--is-locked"></a><h3>The <code class="literal">“is-locked”</code> property</h3>
<pre class="programlisting">  “is-locked”                <a href="../glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
<p>Is the accel group locked.</p>
<p>Flags: Read</p>
<p>Default value: FALSE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkAccelGroup--modifier-mask"></a><h3>The <code class="literal">“modifier-mask”</code> property</h3>
<pre class="programlisting">  “modifier-mask”            <a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a></pre>
<p>Modifier Mask.</p>
<p>Flags: Read</p>
<p>Default value: GDK_SHIFT_MASK | GDK_CONTROL_MASK | GDK_MOD1_MASK | GDK_SUPER_MASK | GDK_HYPER_MASK | GDK_META_MASK</p>
</div>
</div>
<div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GtkAccelGroup-accel-activate"></a><h3>The <code class="literal">“accel-activate”</code> signal</h3>
<pre class="programlisting"><a href="../glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
user_function (<a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>  *accel_group,
               <a href="../gobject/gobject-The-Base-Object-Type.html#GObject-struct"><span class="type">GObject</span></a>        *acceleratable,
               <a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a>           keyval,
               <a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifier,
               <a href="../glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>        user_data)</pre>
<p>The accel-activate signal is an implementation detail of
<a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> and not meant to be used by applications.</p>
<div class="refsect3">
<a name="GtkAccelGroup-accel-activate.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>the <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> which received the signal</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>acceleratable</p></td>
<td class="parameter_description"><p>the object on which the accelerator was activated</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>keyval</p></td>
<td class="parameter_description"><p>the accelerator keyval</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>modifier</p></td>
<td class="parameter_description"><p>the modifier combination of the accelerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="GtkAccelGroup-accel-activate.returns"></a><h4>Returns</h4>
<p> <a href="../glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the accelerator was activated</p>
</div>
<p>Flags: <a href="../gobject/gobject-Signals.html#G-SIGNAL-DETAILED:CAPS">Has Details</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkAccelGroup-accel-changed"></a><h3>The <code class="literal">“accel-changed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a>  *accel_group,
               <a href="../glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a>           keyval,
               <a href="../html/gdk2-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> modifier,
               <a href="../gobject/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a>       *accel_closure,
               <a href="../glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>        user_data)</pre>
<p>The accel-changed signal is emitted when a <span class="type">GtkAccelGroupEntry</span>
is added to or removed from the accel group. </p>
<p>Widgets like <a class="link" href="GtkAccelLabel.html" title="GtkAccelLabel"><span class="type">GtkAccelLabel</span></a> which display an associated

accelerator should connect to this signal, and rebuild

their visual representation if the <em class="parameter"><code>accel_closure</code></em>
 is theirs.</p>
<div class="refsect3">
<a name="GtkAccelGroup-accel-changed.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>accel_group</p></td>
<td class="parameter_description"><p>the <a class="link" href="gtk2-Keyboard-Accelerators.html#GtkAccelGroup"><span class="type">GtkAccelGroup</span></a> which received the signal</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>keyval</p></td>
<td class="parameter_description"><p>the accelerator keyval</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>modifier</p></td>
<td class="parameter_description"><p>the modifier combination of the accelerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>accel_closure</p></td>
<td class="parameter_description"><p>the <a href="../gobject/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> of the accelerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="../gobject/gobject-Signals.html#G-SIGNAL-DETAILED:CAPS">Has Details</a></p>
</div>
</div>
<div class="refsect1">
<a name="gtk2-Keyboard-Accelerators.see-also"></a><h2>See Also</h2>
<p>gtk_window_add_accel_group(), <a class="link" href="gtk2-Accelerator-Maps.html#gtk-accel-map-change-entry" title="gtk_accel_map_change_entry ()"><code class="function">gtk_accel_map_change_entry()</code></a>,
<a class="link" href="GtkItemFactory.html#gtk-item-factory-new" title="gtk_item_factory_new ()"><code class="function">gtk_item_factory_new()</code></a>, <a class="link" href="GtkLabel.html#gtk-label-new-with-mnemonic" title="gtk_label_new_with_mnemonic ()"><code class="function">gtk_label_new_with_mnemonic()</code></a></p>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.26.1</div>
</body>
</html>