Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>glibmm: Gio::MenuModel Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-extra.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">glibmm
   &#160;<span id="projectnumber">2.56.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceGio.html">Gio</a></li><li class="navelem"><a class="el" href="classGio_1_1MenuModel.html">MenuModel</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#related">Related Functions</a> &#124;
<a href="classGio_1_1MenuModel-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Gio::MenuModel Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> - An abstract class representing the contents of a menu.  
 <a href="classGio_1_1MenuModel.html#details">More...</a></p>

<p><code>#include &lt;giomm/menumodel.h&gt;</code></p>
<div class="dynheader">
Inheritance diagram for Gio::MenuModel:</div>
<div class="dyncontent">
<div class="center"><img src="classGio_1_1MenuModel__inherit__graph.png" border="0" usemap="#Gio_1_1MenuModel_inherit__map" alt="Inheritance graph"/></div>
<map name="Gio_1_1MenuModel_inherit__map" id="Gio_1_1MenuModel_inherit__map">
<area shape="rect" id="node5" href="classGio_1_1DBus_1_1MenuModel.html" title="MenuModel &#45; A D&#45;Bus Gio::MenuModel implementation. " alt="" coords="5,304,173,331"/>
<area shape="rect" id="node6" href="classGio_1_1Menu.html" title="A simple implementation of MenuModel. " alt="" coords="198,304,285,331"/>
<area shape="rect" id="node2" href="classGlib_1_1Object.html" title="Glib::Object" alt="" coords="116,155,215,181"/>
<area shape="rect" id="node3" href="classGlib_1_1ObjectBase.html" title="Glib::ObjectBase is a common base class for Objects and Interfaces. " alt="" coords="100,80,231,107"/>
<area shape="rect" id="node4" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html" title="sigc::trackable" alt="" coords="107,5,224,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad53d2993582d792506a69cdabb403bde"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#ad53d2993582d792506a69cdabb403bde">MenuModel</a> (<a class="el" href="classGio_1_1MenuModel.html">MenuModel</a>&amp;&amp; src) noexcept</td></tr>
<tr class="separator:ad53d2993582d792506a69cdabb403bde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada5dcccf71fac8c4708d841aeb235767"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGio_1_1MenuModel.html">MenuModel</a>&amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#ada5dcccf71fac8c4708d841aeb235767">operator=</a> (<a class="el" href="classGio_1_1MenuModel.html">MenuModel</a>&amp;&amp; src) noexcept</td></tr>
<tr class="separator:ada5dcccf71fac8c4708d841aeb235767"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a388351235b31a9b48b4141310dd83c79"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a388351235b31a9b48b4141310dd83c79">~MenuModel</a> () noexcept override</td></tr>
<tr class="separator:a388351235b31a9b48b4141310dd83c79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa09ec8d56a76f646e7133b6dd2271ced"><td class="memItemLeft" align="right" valign="top">GMenuModel*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#aa09ec8d56a76f646e7133b6dd2271ced">gobj</a> ()</td></tr>
<tr class="memdesc:aa09ec8d56a76f646e7133b6dd2271ced"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject.  <a href="#aa09ec8d56a76f646e7133b6dd2271ced">More...</a><br /></td></tr>
<tr class="separator:aa09ec8d56a76f646e7133b6dd2271ced"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace595685d7ab39c5f9905d3a07ade0b2"><td class="memItemLeft" align="right" valign="top">const GMenuModel*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#ace595685d7ab39c5f9905d3a07ade0b2">gobj</a> () const</td></tr>
<tr class="memdesc:ace595685d7ab39c5f9905d3a07ade0b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject.  <a href="#ace595685d7ab39c5f9905d3a07ade0b2">More...</a><br /></td></tr>
<tr class="separator:ace595685d7ab39c5f9905d3a07ade0b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac75e5986055f0ec9cb56077cf533e44c"><td class="memItemLeft" align="right" valign="top">GMenuModel*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#ac75e5986055f0ec9cb56077cf533e44c">gobj_copy</a> ()</td></tr>
<tr class="memdesc:ac75e5986055f0ec9cb56077cf533e44c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.  <a href="#ac75e5986055f0ec9cb56077cf533e44c">More...</a><br /></td></tr>
<tr class="separator:ac75e5986055f0ec9cb56077cf533e44c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99090d7f9e7406e5bdc950f86b82f019"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1VariantBase.html">Glib::VariantBase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a99090d7f9e7406e5bdc950f86b82f019">get_item_attribute</a> (int item_index, <a class="el" href="namespaceGio.html#a7df84578d37eccbf86072c8fc85b217a">MenuAttribute</a> attribute, const <a class="el" href="classGlib_1_1VariantType.html">Glib::VariantType</a>&amp; expected_type)</td></tr>
<tr class="memdesc:a99090d7f9e7406e5bdc950f86b82f019"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queries the item at position <em>item_index</em> in <em>model</em> for the attribute specified by <em>attribute</em>.  <a href="#a99090d7f9e7406e5bdc950f86b82f019">More...</a><br /></td></tr>
<tr class="separator:a99090d7f9e7406e5bdc950f86b82f019"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b8a742384b2771ee7e8514176c46d46"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classGlib_1_1VariantBase.html">Glib::VariantBase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a2b8a742384b2771ee7e8514176c46d46">get_item_attribute</a> (int item_index, <a class="el" href="namespaceGio.html#a7df84578d37eccbf86072c8fc85b217a">MenuAttribute</a> attribute, const <a class="el" href="classGlib_1_1VariantType.html">Glib::VariantType</a>&amp; expected_type) const</td></tr>
<tr class="memdesc:a2b8a742384b2771ee7e8514176c46d46"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queries the item at position <em>item_index</em> in <em>model</em> for the attribute specified by <em>attribute</em>.  <a href="#a2b8a742384b2771ee7e8514176c46d46">More...</a><br /></td></tr>
<tr class="separator:a2b8a742384b2771ee7e8514176c46d46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca233273e44374beeb579113560621b5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1MenuModel.html">MenuModel</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#aca233273e44374beeb579113560621b5">get_item_link</a> (int item_index, <a class="el" href="namespaceGio.html#a4febebe134c8e141020c6c253711e0d2">MenuLink</a> link)</td></tr>
<tr class="memdesc:aca233273e44374beeb579113560621b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queries the item at position <em>item_index</em> in <em>model</em> for the link specified by <em>link</em>.  <a href="#aca233273e44374beeb579113560621b5">More...</a><br /></td></tr>
<tr class="separator:aca233273e44374beeb579113560621b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a837382c21a69f6124f793b7ab371aa2e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; const <a class="el" href="classGio_1_1MenuModel.html">MenuModel</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a837382c21a69f6124f793b7ab371aa2e">get_item_link</a> (int item_index, <a class="el" href="namespaceGio.html#a4febebe134c8e141020c6c253711e0d2">MenuLink</a> link) const</td></tr>
<tr class="memdesc:a837382c21a69f6124f793b7ab371aa2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queries the item at position <em>item_index</em> in <em>model</em> for the link specified by <em>link</em>.  <a href="#a837382c21a69f6124f793b7ab371aa2e">More...</a><br /></td></tr>
<tr class="separator:a837382c21a69f6124f793b7ab371aa2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9532fa428f3983440a22f3c78508514d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a9532fa428f3983440a22f3c78508514d">is_mutable</a> () const</td></tr>
<tr class="memdesc:a9532fa428f3983440a22f3c78508514d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queries if <em>model</em> is mutable.  <a href="#a9532fa428f3983440a22f3c78508514d">More...</a><br /></td></tr>
<tr class="separator:a9532fa428f3983440a22f3c78508514d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02b9ede9c62bd49d3317db051427f1d1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a02b9ede9c62bd49d3317db051427f1d1">get_n_items</a> () const</td></tr>
<tr class="memdesc:a02b9ede9c62bd49d3317db051427f1d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Query the number of items in <em>model</em>.  <a href="#a02b9ede9c62bd49d3317db051427f1d1">More...</a><br /></td></tr>
<tr class="separator:a02b9ede9c62bd49d3317db051427f1d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a074bfb4ed7c3b2a94000b62fdce6dfc0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1MenuAttributeIter.html">MenuAttributeIter</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a074bfb4ed7c3b2a94000b62fdce6dfc0">iterate_item_attributes</a> (int item_index)</td></tr>
<tr class="memdesc:a074bfb4ed7c3b2a94000b62fdce6dfc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a <a class="el" href="classGio_1_1MenuAttributeIter.html" title="MenuAttributeIter - A menu attribute iterator. ">MenuAttributeIter</a> to iterate over the attributes of the item at position <em>item_index</em> in <em>model</em>.  <a href="#a074bfb4ed7c3b2a94000b62fdce6dfc0">More...</a><br /></td></tr>
<tr class="separator:a074bfb4ed7c3b2a94000b62fdce6dfc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39da4e9178820d4456e5c8b6c006bd77"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; const <a class="el" href="classGio_1_1MenuAttributeIter.html">MenuAttributeIter</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a39da4e9178820d4456e5c8b6c006bd77">iterate_item_attributes</a> (int item_index) const</td></tr>
<tr class="memdesc:a39da4e9178820d4456e5c8b6c006bd77"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a <a class="el" href="classGio_1_1MenuAttributeIter.html" title="MenuAttributeIter - A menu attribute iterator. ">MenuAttributeIter</a> to iterate over the attributes of the item at position <em>item_index</em> in <em>model</em>.  <a href="#a39da4e9178820d4456e5c8b6c006bd77">More...</a><br /></td></tr>
<tr class="separator:a39da4e9178820d4456e5c8b6c006bd77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5abda335e54302c4e8285c41bf201e51"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1MenuLinkIter.html">MenuLinkIter</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a5abda335e54302c4e8285c41bf201e51">iterate_item_links</a> (int item_index)</td></tr>
<tr class="memdesc:a5abda335e54302c4e8285c41bf201e51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a <a class="el" href="classGio_1_1MenuLinkIter.html" title="MenuLinkIter - A menu link iterator. ">MenuLinkIter</a> to iterate over the links of the item at position <em>item_index</em> in <em>model</em>.  <a href="#a5abda335e54302c4e8285c41bf201e51">More...</a><br /></td></tr>
<tr class="separator:a5abda335e54302c4e8285c41bf201e51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fe79130282155eeecac9b9c5668c9d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; const <a class="el" href="classGio_1_1MenuLinkIter.html">MenuLinkIter</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a6fe79130282155eeecac9b9c5668c9d3">iterate_item_links</a> (int item_index) const</td></tr>
<tr class="memdesc:a6fe79130282155eeecac9b9c5668c9d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a <a class="el" href="classGio_1_1MenuLinkIter.html" title="MenuLinkIter - A menu link iterator. ">MenuLinkIter</a> to iterate over the links of the item at position <em>item_index</em> in <em>model</em>.  <a href="#a6fe79130282155eeecac9b9c5668c9d3">More...</a><br /></td></tr>
<tr class="separator:a6fe79130282155eeecac9b9c5668c9d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b0c42bcd34312965430750a2f56071a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a0b0c42bcd34312965430750a2f56071a">items_changed</a> (int position, int removed, int added)</td></tr>
<tr class="memdesc:a0b0c42bcd34312965430750a2f56071a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Requests emission of the <a class="el" href="classGio_1_1MenuModel.html#a931b0cf46d4a9036e8e70f21430f86ac">MenuModel::signal_items_changed()</a> signal on <em>model</em>.  <a href="#a0b0c42bcd34312965430750a2f56071a">More...</a><br /></td></tr>
<tr class="separator:a0b0c42bcd34312965430750a2f56071a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a931b0cf46d4a9036e8e70f21430f86ac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1SignalProxy.html">Glib::SignalProxy</a>&lt; void, int, int, int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a931b0cf46d4a9036e8e70f21430f86ac">signal_items_changed</a> ()</td></tr>
<tr class="separator:a931b0cf46d4a9036e8e70f21430f86ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classGlib_1_1Object"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classGlib_1_1Object')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classGlib_1_1Object.html">Glib::Object</a></td></tr>
<tr class="memitem:a0127f43140e01d6a6731d42f9419be27 inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a0127f43140e01d6a6731d42f9419be27">Object</a> (const <a class="el" href="classGlib_1_1Object.html">Object</a>&amp;)=delete</td></tr>
<tr class="separator:a0127f43140e01d6a6731d42f9419be27 inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7081561a5684709718fdf8c1875c56c0 inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1Object.html">Object</a>&amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a7081561a5684709718fdf8c1875c56c0">operator=</a> (const <a class="el" href="classGlib_1_1Object.html">Object</a>&amp;)=delete</td></tr>
<tr class="separator:a7081561a5684709718fdf8c1875c56c0 inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a473ee068b40d5c949cee2c721d720c9a inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a473ee068b40d5c949cee2c721d720c9a">Object</a> (<a class="el" href="classGlib_1_1Object.html">Object</a>&amp;&amp; src) noexcept</td></tr>
<tr class="separator:a473ee068b40d5c949cee2c721d720c9a inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2855131d475e54294dc34573f12ca9a0 inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1Object.html">Object</a>&amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a2855131d475e54294dc34573f12ca9a0">operator=</a> (<a class="el" href="classGlib_1_1Object.html">Object</a>&amp;&amp; src) noexcept</td></tr>
<tr class="separator:a2855131d475e54294dc34573f12ca9a0 inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e6581bcbcc6197cca07df24bb91c492 inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">void*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a0e6581bcbcc6197cca07df24bb91c492">get_data</a> (const <a class="el" href="classGlib_1_1QueryQuark.html">QueryQuark</a>&amp; key)</td></tr>
<tr class="separator:a0e6581bcbcc6197cca07df24bb91c492 inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afff7a375a862f3f899daaa99710122fa inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#afff7a375a862f3f899daaa99710122fa">set_data</a> (const <a class="el" href="classGlib_1_1Quark.html">Quark</a>&amp; key, void* data)</td></tr>
<tr class="separator:afff7a375a862f3f899daaa99710122fa inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1febe3bae2dd71756e98e523cd33c1b4 inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a1febe3bae2dd71756e98e523cd33c1b4">set_data</a> (const <a class="el" href="classGlib_1_1Quark.html">Quark</a>&amp; key, void* data, <a class="el" href="classGlib_1_1Object.html#a969836f7bf4fec78eb50a1d790304d82">DestroyNotify</a> notify)</td></tr>
<tr class="separator:a1febe3bae2dd71756e98e523cd33c1b4 inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aada5b50844bda7ee02bed0ae2a715c00 inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#aada5b50844bda7ee02bed0ae2a715c00">remove_data</a> (const <a class="el" href="classGlib_1_1QueryQuark.html">QueryQuark</a>&amp; quark)</td></tr>
<tr class="separator:aada5b50844bda7ee02bed0ae2a715c00 inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab454f71bd74403b0cc46d3cbbedd6b0e inherit pub_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">void*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#ab454f71bd74403b0cc46d3cbbedd6b0e">steal_data</a> (const <a class="el" href="classGlib_1_1QueryQuark.html">QueryQuark</a>&amp; quark)</td></tr>
<tr class="separator:ab454f71bd74403b0cc46d3cbbedd6b0e inherit pub_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classGlib_1_1ObjectBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classGlib_1_1ObjectBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classGlib_1_1ObjectBase.html">Glib::ObjectBase</a></td></tr>
<tr class="memitem:aaf0e140e7192dcecddd9f57c46825434 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#aaf0e140e7192dcecddd9f57c46825434">ObjectBase</a> (const <a class="el" href="classGlib_1_1ObjectBase.html">ObjectBase</a>&amp;)=delete</td></tr>
<tr class="separator:aaf0e140e7192dcecddd9f57c46825434 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15f8834a320eac98dc1c1b8a9a2fd4c1 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1ObjectBase.html">ObjectBase</a>&amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a15f8834a320eac98dc1c1b8a9a2fd4c1">operator=</a> (const <a class="el" href="classGlib_1_1ObjectBase.html">ObjectBase</a>&amp;)=delete</td></tr>
<tr class="separator:a15f8834a320eac98dc1c1b8a9a2fd4c1 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab599d3eec4b4a9ddc95ccdc6100053d inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#aab599d3eec4b4a9ddc95ccdc6100053d">set_property_value</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, const <a class="el" href="classGlib_1_1ValueBase.html">Glib::ValueBase</a>&amp; value)</td></tr>
<tr class="memdesc:aab599d3eec4b4a9ddc95ccdc6100053d inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You probably want to use a specific property_*() accessor method instead.  <a href="classGlib_1_1ObjectBase.html#aab599d3eec4b4a9ddc95ccdc6100053d">More...</a><br /></td></tr>
<tr class="separator:aab599d3eec4b4a9ddc95ccdc6100053d inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a068db9877f35d20af339d40be339dafe inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a068db9877f35d20af339d40be339dafe">get_property_value</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, <a class="el" href="classGlib_1_1ValueBase.html">Glib::ValueBase</a>&amp; value) const</td></tr>
<tr class="memdesc:a068db9877f35d20af339d40be339dafe inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You probably want to use a specific property_*() accessor method instead.  <a href="classGlib_1_1ObjectBase.html#a068db9877f35d20af339d40be339dafe">More...</a><br /></td></tr>
<tr class="separator:a068db9877f35d20af339d40be339dafe inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad37844f7ea2c0091a22d011e04c48820 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memTemplParams" colspan="2">template&lt;class PropertyType &gt; </td></tr>
<tr class="memitem:ad37844f7ea2c0091a22d011e04c48820 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#ad37844f7ea2c0091a22d011e04c48820">set_property</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, const PropertyType&amp; value)</td></tr>
<tr class="memdesc:ad37844f7ea2c0091a22d011e04c48820 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You probably want to use a specific property_*() accessor method instead.  <a href="classGlib_1_1ObjectBase.html#ad37844f7ea2c0091a22d011e04c48820">More...</a><br /></td></tr>
<tr class="separator:ad37844f7ea2c0091a22d011e04c48820 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9748be779dfaa04b45d6f2659dc05316 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memTemplParams" colspan="2">template&lt;class PropertyType &gt; </td></tr>
<tr class="memitem:a9748be779dfaa04b45d6f2659dc05316 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a9748be779dfaa04b45d6f2659dc05316">get_property</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, PropertyType&amp; value) const</td></tr>
<tr class="memdesc:a9748be779dfaa04b45d6f2659dc05316 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You probably want to use a specific property_*() accessor method instead.  <a href="classGlib_1_1ObjectBase.html#a9748be779dfaa04b45d6f2659dc05316">More...</a><br /></td></tr>
<tr class="separator:a9748be779dfaa04b45d6f2659dc05316 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc6c1e8f094275114d6e2c3ef3a33f98 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#adc6c1e8f094275114d6e2c3ef3a33f98">connect_property_changed</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, const <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt; void &gt;&amp; slot)</td></tr>
<tr class="memdesc:adc6c1e8f094275114d6e2c3ef3a33f98 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You can use the signal_changed() signal of the property proxy instead.  <a href="classGlib_1_1ObjectBase.html#adc6c1e8f094275114d6e2c3ef3a33f98">More...</a><br /></td></tr>
<tr class="separator:adc6c1e8f094275114d6e2c3ef3a33f98 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fff4abb6ecc939866a6ff5d32808221 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a9fff4abb6ecc939866a6ff5d32808221">connect_property_changed</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt; void &gt;&amp;&amp; slot)</td></tr>
<tr class="memdesc:a9fff4abb6ecc939866a6ff5d32808221 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You can use the signal_changed() signal of the property proxy instead.  <a href="classGlib_1_1ObjectBase.html#a9fff4abb6ecc939866a6ff5d32808221">More...</a><br /></td></tr>
<tr class="separator:a9fff4abb6ecc939866a6ff5d32808221 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a896d7773c00bd2dcd310c861282ee8d1 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1connection.html">sigc::connection</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a896d7773c00bd2dcd310c861282ee8d1">connect_property_changed_with_return</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, const <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt; void &gt;&amp; slot)</td></tr>
<tr class="memdesc:a896d7773c00bd2dcd310c861282ee8d1 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You can use the signal_changed() signal of the property proxy instead.  <a href="classGlib_1_1ObjectBase.html#a896d7773c00bd2dcd310c861282ee8d1">More...</a><br /></td></tr>
<tr class="separator:a896d7773c00bd2dcd310c861282ee8d1 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00f0e2119fbb42efe42d66b8188a0daf inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1connection.html">sigc::connection</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a00f0e2119fbb42efe42d66b8188a0daf">connect_property_changed_with_return</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>&amp; property_name, <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/classsigc_1_1slot.html">sigc::slot</a>&lt; void &gt;&amp;&amp; slot)</td></tr>
<tr class="memdesc:a00f0e2119fbb42efe42d66b8188a0daf inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">You can use the signal_changed() signal of the property proxy instead.  <a href="classGlib_1_1ObjectBase.html#a00f0e2119fbb42efe42d66b8188a0daf">More...</a><br /></td></tr>
<tr class="separator:a00f0e2119fbb42efe42d66b8188a0daf inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e9e13b75f116c20212d318204ce8ea3 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a6e9e13b75f116c20212d318204ce8ea3">freeze_notify</a> ()</td></tr>
<tr class="memdesc:a6e9e13b75f116c20212d318204ce8ea3 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increases the freeze count on object.  <a href="classGlib_1_1ObjectBase.html#a6e9e13b75f116c20212d318204ce8ea3">More...</a><br /></td></tr>
<tr class="separator:a6e9e13b75f116c20212d318204ce8ea3 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1bd8ea7bd8c4084ade6b3c27dddf06a4 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a1bd8ea7bd8c4084ade6b3c27dddf06a4">thaw_notify</a> ()</td></tr>
<tr class="memdesc:a1bd8ea7bd8c4084ade6b3c27dddf06a4 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reverts the effect of a previous call to <a class="el" href="classGlib_1_1ObjectBase.html#a6e9e13b75f116c20212d318204ce8ea3" title="Increases the freeze count on object. ">freeze_notify()</a>.  <a href="classGlib_1_1ObjectBase.html#a1bd8ea7bd8c4084ade6b3c27dddf06a4">More...</a><br /></td></tr>
<tr class="separator:a1bd8ea7bd8c4084ade6b3c27dddf06a4 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada6a3c2a9b050d3285bac59287b3559f inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#ada6a3c2a9b050d3285bac59287b3559f">reference</a> () const</td></tr>
<tr class="memdesc:ada6a3c2a9b050d3285bac59287b3559f inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increment the reference count for this object.  <a href="classGlib_1_1ObjectBase.html#ada6a3c2a9b050d3285bac59287b3559f">More...</a><br /></td></tr>
<tr class="separator:ada6a3c2a9b050d3285bac59287b3559f inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7948b31b97a978062557a765534790c inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#ad7948b31b97a978062557a765534790c">unreference</a> () const</td></tr>
<tr class="memdesc:ad7948b31b97a978062557a765534790c inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrement the reference count for this object.  <a href="classGlib_1_1ObjectBase.html#ad7948b31b97a978062557a765534790c">More...</a><br /></td></tr>
<tr class="separator:ad7948b31b97a978062557a765534790c inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c6efc18be8cb9c56e58fc0bd20fafbe inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">GObject*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a4c6efc18be8cb9c56e58fc0bd20fafbe">gobj</a> ()</td></tr>
<tr class="memdesc:a4c6efc18be8cb9c56e58fc0bd20fafbe inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject.  <a href="classGlib_1_1ObjectBase.html#a4c6efc18be8cb9c56e58fc0bd20fafbe">More...</a><br /></td></tr>
<tr class="separator:a4c6efc18be8cb9c56e58fc0bd20fafbe inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b7010748d60e770e9e0b3d65c100cf2 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">const GObject*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a2b7010748d60e770e9e0b3d65c100cf2">gobj</a> () const</td></tr>
<tr class="memdesc:a2b7010748d60e770e9e0b3d65c100cf2 inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C GObject.  <a href="classGlib_1_1ObjectBase.html#a2b7010748d60e770e9e0b3d65c100cf2">More...</a><br /></td></tr>
<tr class="separator:a2b7010748d60e770e9e0b3d65c100cf2 inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f9a2b4640a4a4c0c21cdecd98f84b1b inherit pub_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">GObject*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a4f9a2b4640a4a4c0c21cdecd98f84b1b">gobj_copy</a> () const</td></tr>
<tr class="memdesc:a4f9a2b4640a4a4c0c21cdecd98f84b1b inherit pub_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Give a ref-ed copy to someone. Use for direct struct access.  <a href="classGlib_1_1ObjectBase.html#a4f9a2b4640a4a4c0c21cdecd98f84b1b">More...</a><br /></td></tr>
<tr class="separator:a4f9a2b4640a4a4c0c21cdecd98f84b1b inherit pub_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_structsigc_1_1trackable"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_structsigc_1_1trackable')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html">sigc::trackable</a></td></tr>
<tr class="memitem:a7e1348841e762fb41b41c6f2ce9fa073 inherit pub_methods_structsigc_1_1trackable"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html#a7e1348841e762fb41b41c6f2ce9fa073">trackable</a> () noexcept</td></tr>
<tr class="separator:a7e1348841e762fb41b41c6f2ce9fa073 inherit pub_methods_structsigc_1_1trackable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8431d9452c9698a012597e6560c72fa inherit pub_methods_structsigc_1_1trackable"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html#ac8431d9452c9698a012597e6560c72fa">trackable</a> (const <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html">trackable</a> &amp;src) noexcept</td></tr>
<tr class="separator:ac8431d9452c9698a012597e6560c72fa inherit pub_methods_structsigc_1_1trackable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba42ed8afb6598106cf68c18a7387f18 inherit pub_methods_structsigc_1_1trackable"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html#aba42ed8afb6598106cf68c18a7387f18">trackable</a> (<a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html">trackable</a> &amp;&amp;src)</td></tr>
<tr class="separator:aba42ed8afb6598106cf68c18a7387f18 inherit pub_methods_structsigc_1_1trackable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75587da09e30031db7a2519843f1f4fb inherit pub_methods_structsigc_1_1trackable"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html#a75587da09e30031db7a2519843f1f4fb">~trackable</a> ()</td></tr>
<tr class="separator:a75587da09e30031db7a2519843f1f4fb inherit pub_methods_structsigc_1_1trackable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed95b40846f61b4f202348c71d5913ea inherit pub_methods_structsigc_1_1trackable"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html#aed95b40846f61b4f202348c71d5913ea">add_destroy_notify_callback</a> (void *data, <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html#a3338954d7565534bd945290b798e13ed">func_destroy_notify</a> func) const</td></tr>
<tr class="separator:aed95b40846f61b4f202348c71d5913ea inherit pub_methods_structsigc_1_1trackable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2e23cfe7adc1ca844a3350bbac557cb inherit pub_methods_structsigc_1_1trackable"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html#af2e23cfe7adc1ca844a3350bbac557cb">notify_callbacks</a> ()</td></tr>
<tr class="separator:af2e23cfe7adc1ca844a3350bbac557cb inherit pub_methods_structsigc_1_1trackable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7494fbad23a65932ff1457d00d4edaf5 inherit pub_methods_structsigc_1_1trackable"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html">trackable</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html#a7494fbad23a65932ff1457d00d4edaf5">operator=</a> (const <a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html">trackable</a> &amp;src)</td></tr>
<tr class="separator:a7494fbad23a65932ff1457d00d4edaf5 inherit pub_methods_structsigc_1_1trackable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3d61cdb452dc46fcdc8a8d42d9c079d inherit pub_methods_structsigc_1_1trackable"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html">trackable</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html#ac3d61cdb452dc46fcdc8a8d42d9c079d">operator=</a> (<a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html">trackable</a> &amp;&amp;src)</td></tr>
<tr class="separator:ac3d61cdb452dc46fcdc8a8d42d9c079d inherit pub_methods_structsigc_1_1trackable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1c1845ff5b356f13b32180077f83cff inherit pub_methods_structsigc_1_1trackable"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html#ad1c1845ff5b356f13b32180077f83cff">remove_destroy_notify_callback</a> (void *data) const</td></tr>
<tr class="separator:ad1c1845ff5b356f13b32180077f83cff inherit pub_methods_structsigc_1_1trackable"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:af19553f2244f8ad5a118751952b7a2b5"><td class="memItemLeft" align="right" valign="top">static GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#af19553f2244f8ad5a118751952b7a2b5">get_type</a> ()</td></tr>
<tr class="memdesc:af19553f2244f8ad5a118751952b7a2b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the GType for this class, for use with the underlying GObject type system.  <a href="#af19553f2244f8ad5a118751952b7a2b5">More...</a><br /></td></tr>
<tr class="separator:af19553f2244f8ad5a118751952b7a2b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a4a58a5d7ed0e2dd3fcab1f110f8cb6a3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#a4a58a5d7ed0e2dd3fcab1f110f8cb6a3">MenuModel</a> ()</td></tr>
<tr class="separator:a4a58a5d7ed0e2dd3fcab1f110f8cb6a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classGlib_1_1Object"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classGlib_1_1Object')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classGlib_1_1Object.html">Glib::Object</a></td></tr>
<tr class="memitem:ad43f7c5ad0336e1eb3af622392a112eb inherit pro_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#ad43f7c5ad0336e1eb3af622392a112eb">Object</a> ()</td></tr>
<tr class="separator:ad43f7c5ad0336e1eb3af622392a112eb inherit pro_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d72588496bd7ac03f72420021fb94a5 inherit pro_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a6d72588496bd7ac03f72420021fb94a5">Object</a> (const Glib::ConstructParams&amp; construct_params)</td></tr>
<tr class="separator:a6d72588496bd7ac03f72420021fb94a5 inherit pro_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f490eeaeb71db673c36799a0f729be5 inherit pro_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a6f490eeaeb71db673c36799a0f729be5">Object</a> (GObject* castitem)</td></tr>
<tr class="separator:a6f490eeaeb71db673c36799a0f729be5 inherit pro_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07e5bddabe8d60f751e157f0a41ce265 inherit pro_methods_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a07e5bddabe8d60f751e157f0a41ce265">~Object</a> () noexcept override</td></tr>
<tr class="separator:a07e5bddabe8d60f751e157f0a41ce265 inherit pro_methods_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classGlib_1_1ObjectBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classGlib_1_1ObjectBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classGlib_1_1ObjectBase.html">Glib::ObjectBase</a></td></tr>
<tr class="memitem:a27d3451d9ca28d6a2f00838d7c56d545 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a27d3451d9ca28d6a2f00838d7c56d545">ObjectBase</a> ()</td></tr>
<tr class="memdesc:a27d3451d9ca28d6a2f00838d7c56d545 inherit pro_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">This default constructor is called implicitly from the constructor of user-derived classes, even if, for instance, Gtk::Button calls a different <a class="el" href="classGlib_1_1ObjectBase.html" title="Glib::ObjectBase is a common base class for Objects and Interfaces. ">ObjectBase</a> constructor.  <a href="classGlib_1_1ObjectBase.html#a27d3451d9ca28d6a2f00838d7c56d545">More...</a><br /></td></tr>
<tr class="separator:a27d3451d9ca28d6a2f00838d7c56d545 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4ef18214894c6874579313ab21d1018 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#ad4ef18214894c6874579313ab21d1018">ObjectBase</a> (const char* custom_type_name)</td></tr>
<tr class="memdesc:ad4ef18214894c6874579313ab21d1018 inherit pro_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">A derived constructor always overrides this choice.  <a href="classGlib_1_1ObjectBase.html#ad4ef18214894c6874579313ab21d1018">More...</a><br /></td></tr>
<tr class="separator:ad4ef18214894c6874579313ab21d1018 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d59b4d85b0ee72a727e6b2e1b31a2ff inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a3d59b4d85b0ee72a727e6b2e1b31a2ff">ObjectBase</a> (const <a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a00947.html">std::type_info</a>&amp; custom_type_info)</td></tr>
<tr class="memdesc:a3d59b4d85b0ee72a727e6b2e1b31a2ff inherit pro_methods_classGlib_1_1ObjectBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">This constructor is a special feature to allow creation of derived types on the fly, without having to use g_object_new() manually.  <a href="classGlib_1_1ObjectBase.html#a3d59b4d85b0ee72a727e6b2e1b31a2ff">More...</a><br /></td></tr>
<tr class="separator:a3d59b4d85b0ee72a727e6b2e1b31a2ff inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e2e177061f6a6e09c4cf3da49c6dfd3 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a7e2e177061f6a6e09c4cf3da49c6dfd3">ObjectBase</a> (<a class="el" href="classGlib_1_1ObjectBase.html">ObjectBase</a>&amp;&amp; src) noexcept</td></tr>
<tr class="separator:a7e2e177061f6a6e09c4cf3da49c6dfd3 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e968f118314ba4d5debfd2850d18003 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1ObjectBase.html">ObjectBase</a>&amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a2e968f118314ba4d5debfd2850d18003">operator=</a> (<a class="el" href="classGlib_1_1ObjectBase.html">ObjectBase</a>&amp;&amp; src) noexcept</td></tr>
<tr class="separator:a2e968f118314ba4d5debfd2850d18003 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae56ec45e9ebeaacf24be4fb54ed2eea3 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#ae56ec45e9ebeaacf24be4fb54ed2eea3">~ObjectBase</a> () noexcept=0</td></tr>
<tr class="separator:ae56ec45e9ebeaacf24be4fb54ed2eea3 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3faafb14c4f0ca60fbf0f5f5c4d549d0 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a3faafb14c4f0ca60fbf0f5f5c4d549d0">initialize</a> (GObject* castitem)</td></tr>
<tr class="separator:a3faafb14c4f0ca60fbf0f5f5c4d549d0 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44ddc123cd98ed0083aa06364365c8d3 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ObjectBase.html#a44ddc123cd98ed0083aa06364365c8d3">initialize_move</a> (GObject* castitem, <a class="el" href="classGlib_1_1ObjectBase.html">Glib::ObjectBase</a>* previous_wrapper)</td></tr>
<tr class="separator:a44ddc123cd98ed0083aa06364365c8d3 inherit pro_methods_classGlib_1_1ObjectBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="related"></a>
Related Functions</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>(Note that these are not member functions.) </p>
</td></tr>
<tr class="memitem:aeaa4856722c5a84b7f287e8900b43fdd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1MenuModel.html">Gio::MenuModel</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGio_1_1MenuModel.html#aeaa4856722c5a84b7f287e8900b43fdd">wrap</a> (GMenuModel* object, bool take_copy=false)</td></tr>
<tr class="memdesc:aeaa4856722c5a84b7f287e8900b43fdd"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object.  <a href="#aeaa4856722c5a84b7f287e8900b43fdd">More...</a><br /></td></tr>
<tr class="separator:aeaa4856722c5a84b7f287e8900b43fdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header related_classGlib_1_1Object"><td colspan="2" onclick="javascript:toggleInherit('related_classGlib_1_1Object')"><img src="closed.png" alt="-"/>&#160;Related Functions inherited from <a class="el" href="classGlib_1_1Object.html">Glib::Object</a></td></tr>
<tr class="memitem:ae4dea9a8dc611d6e4400a5b6a3cb4e7f inherit related_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGlib_1_1Object.html">Glib::Object</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#ae4dea9a8dc611d6e4400a5b6a3cb4e7f">wrap</a> (GObject* object, bool take_copy=false)</td></tr>
<tr class="separator:ae4dea9a8dc611d6e4400a5b6a3cb4e7f inherit related_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_classGlib_1_1Object"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classGlib_1_1Object')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classGlib_1_1Object.html">Glib::Object</a></td></tr>
<tr class="memitem:a969836f7bf4fec78eb50a1d790304d82 inherit pub_types_classGlib_1_1Object"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1Object.html#a969836f7bf4fec78eb50a1d790304d82">DestroyNotify</a> = void(*)(gpointer data)</td></tr>
<tr class="separator:a969836f7bf4fec78eb50a1d790304d82 inherit pub_types_classGlib_1_1Object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_structsigc_1_1trackable"><td colspan="2" onclick="javascript:toggleInherit('pub_types_structsigc_1_1trackable')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html">sigc::trackable</a></td></tr>
<tr class="memitem:a3338954d7565534bd945290b798e13ed inherit pub_types_structsigc_1_1trackable"><td class="memItemLeft" align="right" valign="top">typedef internal::func_destroy_notify&#160;</td><td class="memItemRight" valign="bottom"><a class="elRef" doxygen="libsigc++-2.0.tag:http://library.gnome.org/devel/libsigc++/unstable/" href="http://library.gnome.org/devel/libsigc++/unstable/structsigc_1_1trackable.html#a3338954d7565534bd945290b798e13ed">func_destroy_notify</a></td></tr>
<tr class="separator:a3338954d7565534bd945290b798e13ed inherit pub_types_structsigc_1_1trackable"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> - An abstract class representing the contents of a menu. </p>
<p><a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> represents the contents of a menu &#8211; an ordered list of menu items. The items are associated with actions, which can be activated through them. Items can be grouped in sections, and may have submenus associated with them. Both items and sections usually have some representation data, such as labels or icons. The type of the associated action (ie whether it is stateful, and what kind of state it has) can influence the representation of the item.</p>
<p>The conceptual model of menus in <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> is hierarchical: sections and submenus are again represented by MenuModels. Menus themselves do not define their own roles. Rather, the role of a particular <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> is defined by the item that references it (or, in the case of the 'root' menu, is defined by the context in which it is used).</p>
<p>The motivation for this abstract model of application controls is that modern user interfaces tend to make these controls available outside the application. Examples include global menus, jumplists, dash boards, etc. To support such uses, it is necessary to 'export' information about actions and their representation in menus, which is exactly what <a class="el" href="classGio_1_1DBus_1_1Connection.html#a2e5b3f466471359b4595b5846508c1a2" title="Exports action_group on connection at object_path. ">Gio::DBus::Connection::export_action_group()</a> and the <a class="el" href="classGio_1_1DBus_1_1Connection.html#ad1595ae3e1d1f1c123245d488719923c" title="Exports menu on connection at object_path. ">Gio::DBus::Connection::export_menu_model()</a> do for <a class="el" href="classGio_1_1ActionGroup.html" title="ActionGroup - a group of actions. ">ActionGroup</a> and <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a>. The client-side counterparts to make use of the exported information are <a class="el" href="classGio_1_1DBus_1_1ActionGroup.html" title="ActionGroup - A D-Bus Gio::ActionGroup implementation. ">Gio::DBus::ActionGroup</a> and <a class="el" href="classGio_1_1DBus_1_1MenuModel.html" title="MenuModel - A D-Bus Gio::MenuModel implementation. ">Gio::DBus::MenuModel</a>.</p>
<p>The API of <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> is very generic, with iterators for the attributes and links of an item, see <a class="el" href="classGio_1_1MenuModel.html#a074bfb4ed7c3b2a94000b62fdce6dfc0" title="Creates a MenuAttributeIter to iterate over the attributes of the item at position item_index in mode...">iterate_item_attributes()</a> and <a class="el" href="classGio_1_1MenuModel.html#a5abda335e54302c4e8285c41bf201e51" title="Creates a MenuLinkIter to iterate over the links of the item at position item_index in model...">iterate_item_links()</a>. The 'standard' attributes and link types have predefined names: <a class="el" href="namespaceGio.html#a7df84578d37eccbf86072c8fc85b217aa4ae64afc7fe6c6660c51c6f486c040cf" title="The &quot;label&quot; menu attribute. ">Gio::MENU_ATTRIBUTE_LABEL</a>, <a class="el" href="namespaceGio.html#a7df84578d37eccbf86072c8fc85b217aa86f1a371d32e9fab99744d963e04f5bb" title="The &quot;action&quot; menu attribute. ">Gio::MENU_ATTRIBUTE_ACTION</a>, <a class="el" href="namespaceGio.html#a7df84578d37eccbf86072c8fc85b217aa58117bdf3a42e57648845407823a3219" title="The &quot;target&quot; menu attribute. ">Gio::MENU_ATTRIBUTE_TARGET</a>, <a class="el" href="namespaceGio.html#a4febebe134c8e141020c6c253711e0d2aa6356ca52c0aeb0abea871c903fa2b70" title="The &quot;section&quot; menu link. ">Gio::MENU_LINK_SECTION</a> and <a class="el" href="namespaceGio.html#a4febebe134c8e141020c6c253711e0d2a58cf137e0477ed185f5ff32ae84dcedc" title="The &quot;submenu&quot; menu link. ">Gio::MENU_LINK_SUBMENU</a>.</p>
<p>Items in a <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> represent active controls if they refer to an action that can get activated when the user interacts with the menu item. The reference to the action is encoded by the string id in the <a class="el" href="namespaceGio.html#a7df84578d37eccbf86072c8fc85b217aa86f1a371d32e9fab99744d963e04f5bb" title="The &quot;action&quot; menu attribute. ">Gio::MENU_ATTRIBUTE_ACTION</a> attribute. An action id uniquely identifies an action in an action group. Which action group(s) provide actions depends on the context in which the menu model is used. E.g. when the model is exported as the application menu of a Gtk::Application, actions can be application-wide or window-specific (and thus come from two different action groups). By convention, the application-wide actions have names that start with "app.", while the names of window-specific actions start with "win.".</p>
<p>While a wide variety of stateful actions is possible, the following is the minimum that is expected to be supported by all users of exported menu information:</p>
<ul>
<li>an action with no parameter type and no state</li>
<li>an action with no parameter type and boolean state</li>
<li>an action with string parameter type and string state</li>
</ul>
<p><b>Stateless.</b> A stateless action typically corresponds to an ordinary menu item. Selecting such a menu item will activate the action (with no parameter).</p>
<p><b>Boolean State.</b> An action with a boolean state will most typically be used with a "toggle" or "switch" menu item. The state can be set directly, but activating the action (with no parameter) results in the state being toggled. Selecting a toggle menu item will activate the action. The menu item should be rendered as "checked" when the state is true.</p>
<p><b>String Parameter and State.</b> Actions with string parameters and state will most typically be used to represent an enumerated choice over the items available for a group of radio menu items. Activating the action with a string parameter is equivalent to setting that parameter as the state. Radio menu items, in addition to being associated with the action, will have a target value. Selecting that menu item will result in activation of the action with the target value as the parameter. The menu item should be rendered as "selected" when the state of the action is equal to the target value of the menu item.</p>
<p>See the C API docs for a graphical example. </p><dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000080">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="ad53d2993582d792506a69cdabb403bde"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad53d2993582d792506a69cdabb403bde">&#9670;&#160;</a></span>MenuModel() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Gio::MenuModel::MenuModel </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classGio_1_1MenuModel.html">MenuModel</a>&amp;&amp;&#160;</td>
          <td class="paramname"><em>src</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="a388351235b31a9b48b4141310dd83c79"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a388351235b31a9b48b4141310dd83c79">&#9670;&#160;</a></span>~MenuModel()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Gio::MenuModel::~MenuModel </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">noexcept</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="a4a58a5d7ed0e2dd3fcab1f110f8cb6a3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4a58a5d7ed0e2dd3fcab1f110f8cb6a3">&#9670;&#160;</a></span>MenuModel() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Gio::MenuModel::MenuModel </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a99090d7f9e7406e5bdc950f86b82f019"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99090d7f9e7406e5bdc950f86b82f019">&#9670;&#160;</a></span>get_item_attribute() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1VariantBase.html">Glib::VariantBase</a> Gio::MenuModel::get_item_attribute </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>item_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceGio.html#a7df84578d37eccbf86072c8fc85b217a">MenuAttribute</a>&#160;</td>
          <td class="paramname"><em>attribute</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1VariantType.html">Glib::VariantType</a>&amp;&#160;</td>
          <td class="paramname"><em>expected_type</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Queries the item at position <em>item_index</em> in <em>model</em> for the attribute specified by <em>attribute</em>. </p>
<p>If <em>expected_type</em> is non-<code>nullptr</code> then it specifies the expected type of the attribute. If it is <code>nullptr</code> then any type will be accepted.</p>
<p>If the attribute exists and matches <em>expected_type</em> (or if the expected type is unspecified) then the value is returned.</p>
<p>If the attribute does not exist, or does not match the expected type then <code>nullptr</code> is returned.</p>
<dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000081">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">item_index</td><td>The index of the item. </td></tr>
    <tr><td class="paramname">attribute</td><td>The attribute to query. </td></tr>
    <tr><td class="paramname">expected_type</td><td>The expected type of the attribute, or <code>nullptr</code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The value of the attribute. </dd></dl>

</div>
</div>
<a id="a2b8a742384b2771ee7e8514176c46d46"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2b8a742384b2771ee7e8514176c46d46">&#9670;&#160;</a></span>get_item_attribute() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classGlib_1_1VariantBase.html">Glib::VariantBase</a> Gio::MenuModel::get_item_attribute </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>item_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceGio.html#a7df84578d37eccbf86072c8fc85b217a">MenuAttribute</a>&#160;</td>
          <td class="paramname"><em>attribute</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGlib_1_1VariantType.html">Glib::VariantType</a>&amp;&#160;</td>
          <td class="paramname"><em>expected_type</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Queries the item at position <em>item_index</em> in <em>model</em> for the attribute specified by <em>attribute</em>. </p>
<p>If <em>expected_type</em> is non-<code>nullptr</code> then it specifies the expected type of the attribute. If it is <code>nullptr</code> then any type will be accepted.</p>
<p>If the attribute exists and matches <em>expected_type</em> (or if the expected type is unspecified) then the value is returned.</p>
<p>If the attribute does not exist, or does not match the expected type then <code>nullptr</code> is returned.</p>
<dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000082">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">item_index</td><td>The index of the item. </td></tr>
    <tr><td class="paramname">attribute</td><td>The attribute to query. </td></tr>
    <tr><td class="paramname">expected_type</td><td>The expected type of the attribute, or <code>nullptr</code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The value of the attribute. </dd></dl>

</div>
</div>
<a id="aca233273e44374beeb579113560621b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca233273e44374beeb579113560621b5">&#9670;&#160;</a></span>get_item_link() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classGio_1_1MenuModel.html">MenuModel</a>&gt; Gio::MenuModel::get_item_link </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>item_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceGio.html#a4febebe134c8e141020c6c253711e0d2">MenuLink</a>&#160;</td>
          <td class="paramname"><em>link</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Queries the item at position <em>item_index</em> in <em>model</em> for the link specified by <em>link</em>. </p>
<p>If the link exists, the linked <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> is returned. If the link does not exist, <code>nullptr</code> is returned.</p>
<dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000083">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">item_index</td><td>The index of the item. </td></tr>
    <tr><td class="paramname">link</td><td>The link to query. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The linked <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a>, or <code>nullptr</code>. </dd></dl>

</div>
</div>
<a id="a837382c21a69f6124f793b7ab371aa2e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a837382c21a69f6124f793b7ab371aa2e">&#9670;&#160;</a></span>get_item_link() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;const <a class="el" href="classGio_1_1MenuModel.html">MenuModel</a>&gt; Gio::MenuModel::get_item_link </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>item_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceGio.html#a4febebe134c8e141020c6c253711e0d2">MenuLink</a>&#160;</td>
          <td class="paramname"><em>link</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Queries the item at position <em>item_index</em> in <em>model</em> for the link specified by <em>link</em>. </p>
<p>If the link exists, the linked <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> is returned. If the link does not exist, <code>nullptr</code> is returned.</p>
<dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000084">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">item_index</td><td>The index of the item. </td></tr>
    <tr><td class="paramname">link</td><td>The link to query. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The linked <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a>, or <code>nullptr</code>. </dd></dl>

</div>
</div>
<a id="a02b9ede9c62bd49d3317db051427f1d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a02b9ede9c62bd49d3317db051427f1d1">&#9670;&#160;</a></span>get_n_items()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Gio::MenuModel::get_n_items </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Query the number of items in <em>model</em>. </p>
<dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000086">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The number of items. </dd></dl>

</div>
</div>
<a id="af19553f2244f8ad5a118751952b7a2b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af19553f2244f8ad5a118751952b7a2b5">&#9670;&#160;</a></span>get_type()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static GType Gio::MenuModel::get_type </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the GType for this class, for use with the underlying GObject type system. </p>

</div>
</div>
<a id="aa09ec8d56a76f646e7133b6dd2271ced"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa09ec8d56a76f646e7133b6dd2271ced">&#9670;&#160;</a></span>gobj() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">GMenuModel* Gio::MenuModel::gobj </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Provides access to the underlying C GObject. </p>

</div>
</div>
<a id="ace595685d7ab39c5f9905d3a07ade0b2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ace595685d7ab39c5f9905d3a07ade0b2">&#9670;&#160;</a></span>gobj() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const GMenuModel* Gio::MenuModel::gobj </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Provides access to the underlying C GObject. </p>

</div>
</div>
<a id="ac75e5986055f0ec9cb56077cf533e44c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac75e5986055f0ec9cb56077cf533e44c">&#9670;&#160;</a></span>gobj_copy()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GMenuModel* Gio::MenuModel::gobj_copy </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. </p>

</div>
</div>
<a id="a9532fa428f3983440a22f3c78508514d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9532fa428f3983440a22f3c78508514d">&#9670;&#160;</a></span>is_mutable()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Gio::MenuModel::is_mutable </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Queries if <em>model</em> is mutable. </p>
<p>An immutable <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> will never emit the <a class="el" href="classGio_1_1MenuModel.html#a931b0cf46d4a9036e8e70f21430f86ac">MenuModel::signal_items_changed()</a> signal. Consumers of the model may make optimisations accordingly.</p>
<dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000085">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if the model is mutable (ie: "items-changed" may be emitted). </dd></dl>

</div>
</div>
<a id="a0b0c42bcd34312965430750a2f56071a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0b0c42bcd34312965430750a2f56071a">&#9670;&#160;</a></span>items_changed()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gio::MenuModel::items_changed </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>position</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>removed</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>added</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Requests emission of the <a class="el" href="classGio_1_1MenuModel.html#a931b0cf46d4a9036e8e70f21430f86ac">MenuModel::signal_items_changed()</a> signal on <em>model</em>. </p>
<p>This function should never be called except by <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> subclasses. Any other calls to this function will very likely lead to a violation of the interface of the model.</p>
<p>The implementation should update its internal representation of the menu before emitting the signal. The implementation should further expect to receive queries about the new state of the menu (and particularly added menu items) while signal handlers are running.</p>
<p>The implementation must dispatch this call directly from a mainloop entry and not in response to calls &#8211; particularly those from the <a class="el" href="classGio_1_1MenuModel.html" title="MenuModel - An abstract class representing the contents of a menu. ">MenuModel</a> API. Said another way: the menu must not change while user code is running without returning to the mainloop.</p>
<dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000091">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">position</td><td>The position of the change. </td></tr>
    <tr><td class="paramname">removed</td><td>The number of items removed. </td></tr>
    <tr><td class="paramname">added</td><td>The number of items added. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a074bfb4ed7c3b2a94000b62fdce6dfc0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a074bfb4ed7c3b2a94000b62fdce6dfc0">&#9670;&#160;</a></span>iterate_item_attributes() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classGio_1_1MenuAttributeIter.html">MenuAttributeIter</a>&gt; Gio::MenuModel::iterate_item_attributes </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>item_index</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Creates a <a class="el" href="classGio_1_1MenuAttributeIter.html" title="MenuAttributeIter - A menu attribute iterator. ">MenuAttributeIter</a> to iterate over the attributes of the item at position <em>item_index</em> in <em>model</em>. </p>
<p>You must free the iterator with Glib::object_unref() when you are done.</p>
<dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000087">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">item_index</td><td>The index of the item. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A new <a class="el" href="classGio_1_1MenuAttributeIter.html" title="MenuAttributeIter - A menu attribute iterator. ">MenuAttributeIter</a>. </dd></dl>

</div>
</div>
<a id="a39da4e9178820d4456e5c8b6c006bd77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a39da4e9178820d4456e5c8b6c006bd77">&#9670;&#160;</a></span>iterate_item_attributes() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;const <a class="el" href="classGio_1_1MenuAttributeIter.html">MenuAttributeIter</a>&gt; Gio::MenuModel::iterate_item_attributes </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>item_index</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Creates a <a class="el" href="classGio_1_1MenuAttributeIter.html" title="MenuAttributeIter - A menu attribute iterator. ">MenuAttributeIter</a> to iterate over the attributes of the item at position <em>item_index</em> in <em>model</em>. </p>
<p>You must free the iterator with Glib::object_unref() when you are done.</p>
<dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000088">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">item_index</td><td>The index of the item. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A new <a class="el" href="classGio_1_1MenuAttributeIter.html" title="MenuAttributeIter - A menu attribute iterator. ">MenuAttributeIter</a>. </dd></dl>

</div>
</div>
<a id="a5abda335e54302c4e8285c41bf201e51"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5abda335e54302c4e8285c41bf201e51">&#9670;&#160;</a></span>iterate_item_links() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classGio_1_1MenuLinkIter.html">MenuLinkIter</a>&gt; Gio::MenuModel::iterate_item_links </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>item_index</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Creates a <a class="el" href="classGio_1_1MenuLinkIter.html" title="MenuLinkIter - A menu link iterator. ">MenuLinkIter</a> to iterate over the links of the item at position <em>item_index</em> in <em>model</em>. </p>
<p>You must free the iterator with Glib::object_unref() when you are done.</p>
<dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000089">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">item_index</td><td>The index of the item. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A new <a class="el" href="classGio_1_1MenuLinkIter.html" title="MenuLinkIter - A menu link iterator. ">MenuLinkIter</a>. </dd></dl>

</div>
</div>
<a id="a6fe79130282155eeecac9b9c5668c9d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6fe79130282155eeecac9b9c5668c9d3">&#9670;&#160;</a></span>iterate_item_links() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;const <a class="el" href="classGio_1_1MenuLinkIter.html">MenuLinkIter</a>&gt; Gio::MenuModel::iterate_item_links </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>item_index</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Creates a <a class="el" href="classGio_1_1MenuLinkIter.html" title="MenuLinkIter - A menu link iterator. ">MenuLinkIter</a> to iterate over the links of the item at position <em>item_index</em> in <em>model</em>. </p>
<p>You must free the iterator with Glib::object_unref() when you are done.</p>
<dl class="since_2_32"><dt><b><a class="el" href="since_2_32.html#_since_2_32000090">Since glibmm 2.32:</a></b></dt><dd></dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">item_index</td><td>The index of the item. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A new <a class="el" href="classGio_1_1MenuLinkIter.html" title="MenuLinkIter - A menu link iterator. ">MenuLinkIter</a>. </dd></dl>

</div>
</div>
<a id="ada5dcccf71fac8c4708d841aeb235767"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada5dcccf71fac8c4708d841aeb235767">&#9670;&#160;</a></span>operator=()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGio_1_1MenuModel.html">MenuModel</a>&amp; Gio::MenuModel::operator= </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classGio_1_1MenuModel.html">MenuModel</a>&amp;&amp;&#160;</td>
          <td class="paramname"><em>src</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="a931b0cf46d4a9036e8e70f21430f86ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a931b0cf46d4a9036e8e70f21430f86ac">&#9670;&#160;</a></span>signal_items_changed()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1SignalProxy.html">Glib::SignalProxy</a>&lt; void,int,int,int &gt; Gio::MenuModel::signal_items_changed </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section user"><dt>Slot Prototype:</dt><dd><code>void on_my_items_changed(int position, int removed, int added)</code></dd></dl>
<p>Flags: Run Last</p>
<p>Emitted when a change has occured to the menu.</p>
<p>The only changes that can occur to a menu is that items are removed or added. Items may not change (except by being removed and added back in the same location). This signal is capable of describing both of those changes (at the same time).</p>
<p>The signal means that starting at the index <em>position</em>, <em>removed</em> items were removed and <em>added</em> items were added in their place. If <em>removed</em> is zero then only items were added. If <em>added</em> is zero then only items were removed.</p>
<p>As an example, if the menu contains items a, b, c, d (in that order) and the signal (2, 1, 3) occurs then the new composition of the menu will be a, b, _, _, _, d (with each _ representing some new item).</p>
<p>Signal handlers may query the model (particularly the added items) and expect to see the results of the modification that is being reported. The signal is emitted after the modification.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">position</td><td>The position of the change. </td></tr>
    <tr><td class="paramname">removed</td><td>The number of items removed. </td></tr>
    <tr><td class="paramname">added</td><td>The number of items added. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Friends And Related Function Documentation</h2>
<a id="aeaa4856722c5a84b7f287e8900b43fdd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeaa4856722c5a84b7f287e8900b43fdd">&#9670;&#160;</a></span>wrap()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classGio_1_1MenuModel.html">Gio::MenuModel</a> &gt; wrap </td>
          <td>(</td>
          <td class="paramtype">GMenuModel *&#160;</td>
          <td class="paramname"><em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>take_copy</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">related</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>A <a class="el" href="namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">object</td><td>The C instance. </td></tr>
    <tr><td class="paramname">take_copy</td><td>False if the result should take ownership of the C instance. True if it should take a new copy or ref. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A C++ instance that wraps this C instance. </dd></dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sat Mar 31 2018 09:12:07 for glibmm by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>