Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > media > main-release > by-pkgid > 9411cff4bc6d4e61b29ae81cd24665af > files > 473

gtkmm2.4-doc-2.12.7-1mdv2008.1.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>gtkmm 2.4: Gtk::ListStore Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#ffffff">
<table border="0" width="100%">
<tr>
    <td width="10%" height="40"><img src="../../images/gtkmm_logo.gif" alt="logo" border="0" width="100%" height="100%"/></td>
    <td width="90%" height="40"><img src="../../images/top.gif" alt="top" width="100%" height="40"/></td>
</tr>
</table>
<center>
  <a class="qindex" href="../../index.html">Main Page</a> &nbsp;
  <a href="group__Widgets.html">Widgets</a> &nbsp;
  <a class="qindex" href="namespaces.html"> Namespaces</a> &nbsp;
  <a href="../../tutorial/html/index.html"> Book</a> &nbsp;
</center>
<hr width="100%"/>
<!-- begin main content -->
<div id="content">
<!-- Generated by Doxygen 1.5.1 -->
<div class="nav">
<a class="el" href="namespaceGtk.html">Gtk</a>::<a class="el" href="classGtk_1_1ListStore.html">ListStore</a></div>
<h1>Gtk::ListStore Class Reference<br>
<small>
[<a class="el" href="group__TreeView.html">TreeView Classes</a>]</small>
</h1><!-- doxytag: class="Gtk::ListStore" --><!-- doxytag: inherits="Glib::Object,Gtk::TreeModel,Gtk::TreeSortable,Gtk::TreeDragSource,Gtk::TreeDragDest" -->Inheritance diagram for Gtk::ListStore:<p><center><img src="classGtk_1_1ListStore__inherit__graph.png" border="0" usemap="#Gtk_1_1ListStore__inherit__map" alt="Inheritance graph"></center>
<map name="Gtk_1_1ListStore__inherit__map">
<area doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classGlib_1_1Object.html" shape="rect" coords="5,161,99,188" alt="">
<area doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classGlib_1_1ObjectBase.html" shape="rect" coords="109,84,235,110" alt="">
<area doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classGlib_1_1Interface.html" shape="rect" coords="181,161,291,188" alt="">
<area doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classsigc_1_1trackable.html" shape="rect" coords="116,6,228,33" alt="">
<area href="classGtk_1_1TreeModel.html" shape="rect" coords="32,238,147,265" alt="">
<area href="classGtk_1_1TreeSortable.html" shape="rect" coords="171,238,301,265" alt="">
<area href="classGtk_1_1TreeDragSource.html" shape="rect" coords="325,238,480,265" alt="">
<area href="classGtk_1_1TreeDragDest.html" shape="rect" coords="504,238,643,265" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classGtk_1_1ListStore-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
Thist is a list model for use with a <a class="el" href="classGtk_1_1TreeView.html">Gtk::TreeView</a> widget. 
<p>
It implements the <a class="el" href="classGtk_1_1TreeModel.html">Gtk::TreeModel</a> interface, and also implements the <a class="el" href="classGtk_1_1TreeSortable.html">Gtk::TreeSortable</a> interface so you can sort the list using the view. Finally, it also implements the tree drag and drop interfaces. 
<p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#f47307c865cc5de0856fe3f8571fc681">append</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new row at the end.  <a href="#f47307c865cc5de0856fe3f8571fc681"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#770bf1cc24ab0e02bdd96531107da603">clear</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes all rows from the list store.  <a href="#770bf1cc24ab0e02bdd96531107da603"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#bf6e5cbe94951adc5b62120d9df1b562">erase</a> (const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp; iter)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes the given row from the list store.  <a href="#bf6e5cbe94951adc5b62120d9df1b562"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const GtkListStore*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#08c19507bc7e2e7d10df7e3966aab148">gobj</a> () const</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Provides access to the underlying C GObject.  <a href="#08c19507bc7e2e7d10df7e3966aab148"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">GtkListStore*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#5086758716b9f34a5219b1387aebe59c">gobj</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Provides access to the underlying C GObject.  <a href="#5086758716b9f34a5219b1387aebe59c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">GtkListStore*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#abc577b9267750688417879a066d49b8">gobj_copy</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</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="#abc577b9267750688417879a066d49b8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#b71d860741465ea79bc352c4575e47ec">insert</a> (const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp; iter)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new row before the position.  <a href="#b71d860741465ea79bc352c4575e47ec"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#b9032c9d9f620e10f32428e2358f44df">insert_after</a> (const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp; iter)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new row after the position.  <a href="#b9032c9d9f620e10f32428e2358f44df"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#e307acf882557f319dc309963c07705a">iter_is_valid</a> (const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp; iter) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">&lt;warning&gt;This function is slow.  <a href="#e307acf882557f319dc309963c07705a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#2f3617442cd5b52db485f4dc31f91da9">iter_swap</a> (const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp; a, const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp; b)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Swaps <em>a</em> and <em>b</em> in <em>store</em> .  <a href="#2f3617442cd5b52db485f4dc31f91da9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#cc5515fbabf7826d6d3a0e15ca81d2b9">move</a> (const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp; source, const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp; destination)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Moves <em>source</em> to the position at <em>destination</em>.  <a href="#cc5515fbabf7826d6d3a0e15ca81d2b9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#1fd8146c61bae1a95b050e9126ea1928">prepend</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new row at the start.  <a href="#1fd8146c61bae1a95b050e9126ea1928"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#9f90bf171dda629135f4573ef9eaeef0">reorder</a> (const <a class="elRef" doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classGlib_1_1ArrayHandle.html">Glib::ArrayHandle</a>&lt;int&gt;&amp; new_order)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reorders the list store to follow the order indicated by <em>new_order</em>.  <a href="#9f90bf171dda629135f4573ef9eaeef0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#6abba5fb66c20f1bfcea79adff7aa321">set_column_types</a> (const <a class="el" href="classGtk_1_1TreeModelColumnRecord.html">TreeModelColumnRecord</a>&amp; columns)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#8c5efcf41ba5958337c69ec539f678df">~ListStore</a> ()</td></tr>

<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="elRef" doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classGtk_1_1ListStore.html">ListStore</a>&gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#aa6c530560f66872482a0650739276c5">create</a> (const <a class="el" href="classGtk_1_1TreeModelColumnRecord.html">TreeModelColumnRecord</a>&amp; columns)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Instantiate a new <a class="el" href="classGtk_1_1ListStore.html">ListStore</a>.  <a href="#aa6c530560f66872482a0650739276c5"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#6fdbba7946ad83842d61574697dddbc6">ListStore</a> (const <a class="el" href="classGtk_1_1TreeModelColumnRecord.html">TreeModelColumnRecord</a>&amp; columns)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#ab8cae9bc8193ce13e7b983092405d25">ListStore</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">When using this constructor, you must use <a class="el" href="classGtk_1_1ListStore.html#6abba5fb66c20f1bfcea79adff7aa321">set_column_types()</a> immediately afterwards.  <a href="#ab8cae9bc8193ce13e7b983092405d25"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#dd757d2d02d35b5ea782c86eef04bae7">set_value_impl</a> (const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp; row, int column, const <a class="elRef" doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classGlib_1_1ValueBase.html">Glib::ValueBase</a>&amp; value)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Override and implement this in a derived <a class="el" href="classGtk_1_1TreeModel.html">TreeModel</a> class, so that Row::operator() and Row::set_value() work.  <a href="#dd757d2d02d35b5ea782c86eef04bae7"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Related Functions</h2></td></tr>
<tr><td colspan="2">(Note that these are not member functions.) <br><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="elRef" doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classGtk_1_1ListStore.html">Gtk::ListStore</a>&gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGtk_1_1ListStore.html#c9a0a0d9b34c33a9775ec4d89da2f0df">wrap</a> (GtkListStore* object, bool take_copy=false)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A <a class="elRef" doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/namespaceGlib.html#671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object.  <a href="#c9a0a0d9b34c33a9775ec4d89da2f0df"></a><br></td></tr>
</table>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="8c5efcf41ba5958337c69ec539f678df"></a><!-- doxytag: member="Gtk::ListStore::~ListStore" ref="8c5efcf41ba5958337c69ec539f678df" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual Gtk::ListStore::~ListStore           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="ab8cae9bc8193ce13e7b983092405d25"></a><!-- doxytag: member="Gtk::ListStore::ListStore" ref="ab8cae9bc8193ce13e7b983092405d25" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Gtk::ListStore::ListStore           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
When using this constructor, you must use <a class="el" href="classGtk_1_1ListStore.html#6abba5fb66c20f1bfcea79adff7aa321">set_column_types()</a> immediately afterwards. 
<p>
This can be useful when deriving from this class, with a fixed <a class="el" href="classGtk_1_1TreeModelColumnRecord.html">TreeModelColumnRecord</a> that is a member of the class. There is no <a class="el" href="classGtk_1_1ListStore.html#aa6c530560f66872482a0650739276c5">create()</a> method that corresponds to this constructor, because this constructor should only be used by derived classes. 
</div>
</div><p>
<a class="anchor" name="6fdbba7946ad83842d61574697dddbc6"></a><!-- doxytag: member="Gtk::ListStore::ListStore" ref="6fdbba7946ad83842d61574697dddbc6" args="(const TreeModelColumnRecord &amp;columns)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Gtk::ListStore::ListStore           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeModelColumnRecord.html">TreeModelColumnRecord</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>columns</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [explicit, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="f47307c865cc5de0856fe3f8571fc681"></a><!-- doxytag: member="Gtk::ListStore::append" ref="f47307c865cc5de0856fe3f8571fc681" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGtk_1_1TreeIter.html">iterator</a> Gtk::ListStore::append           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a new row at the end. 
<p>
The row will be empty - to fill in values, you need to dereference the returned iterator and use Row::operator[] or Row::set_value(). See also <a class="el" href="classGtk_1_1ListStore.html#b71d860741465ea79bc352c4575e47ec">insert()</a> and <a class="el" href="classGtk_1_1ListStore.html#1fd8146c61bae1a95b050e9126ea1928">prepend()</a>.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>An iterator to the new row. </dd></dl>

</div>
</div><p>
<a class="anchor" name="770bf1cc24ab0e02bdd96531107da603"></a><!-- doxytag: member="Gtk::ListStore::clear" ref="770bf1cc24ab0e02bdd96531107da603" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gtk::ListStore::clear           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Removes all rows from the list store. 
<p>

</div>
</div><p>
<a class="anchor" name="aa6c530560f66872482a0650739276c5"></a><!-- doxytag: member="Gtk::ListStore::create" ref="aa6c530560f66872482a0650739276c5" args="(const TreeModelColumnRecord &amp;columns)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="elRef" doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classGtk_1_1ListStore.html">ListStore</a>&gt; Gtk::ListStore::create           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeModelColumnRecord.html">TreeModelColumnRecord</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>columns</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Instantiate a new <a class="el" href="classGtk_1_1ListStore.html">ListStore</a>. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>columns</em>&nbsp;</td><td>The column types for this tree model. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The new <a class="el" href="classGtk_1_1ListStore.html">ListStore</a>. </dd></dl>

</div>
</div><p>
<a class="anchor" name="bf6e5cbe94951adc5b62120d9df1b562"></a><!-- doxytag: member="Gtk::ListStore::erase" ref="bf6e5cbe94951adc5b62120d9df1b562" args="(const iterator &amp;iter)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGtk_1_1TreeIter.html">iterator</a> Gtk::ListStore::erase           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>iter</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Removes the given row from the list store. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>iter</em>&nbsp;</td><td>The iterator to the row to be removed. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>An iterator to the next row, or end() if there is none. </dd></dl>

</div>
</div><p>
<a class="anchor" name="08c19507bc7e2e7d10df7e3966aab148"></a><!-- doxytag: member="Gtk::ListStore::gobj" ref="08c19507bc7e2e7d10df7e3966aab148" args="() const" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const GtkListStore* Gtk::ListStore::gobj           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

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

<p>
Reimplemented from <a class="el" href="classGtk_1_1TreeDragDest.html#85e055266b044e97512086c26712578b">Gtk::TreeDragDest</a>.
</div>
</div><p>
<a class="anchor" name="5086758716b9f34a5219b1387aebe59c"></a><!-- doxytag: member="Gtk::ListStore::gobj" ref="5086758716b9f34a5219b1387aebe59c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GtkListStore* Gtk::ListStore::gobj           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

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

<p>
Reimplemented from <a class="el" href="classGtk_1_1TreeDragDest.html#32d7775ca642898c25273907634a28b9">Gtk::TreeDragDest</a>.
</div>
</div><p>
<a class="anchor" name="abc577b9267750688417879a066d49b8"></a><!-- doxytag: member="Gtk::ListStore::gobj_copy" ref="abc577b9267750688417879a066d49b8" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GtkListStore* Gtk::ListStore::gobj_copy           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></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><p>
<a class="anchor" name="b71d860741465ea79bc352c4575e47ec"></a><!-- doxytag: member="Gtk::ListStore::insert" ref="b71d860741465ea79bc352c4575e47ec" args="(const iterator &amp;iter)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGtk_1_1TreeIter.html">iterator</a> Gtk::ListStore::insert           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>iter</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a new row before the position. 
<p>
If iter is end() then a new row will be appended to the list. The row will be empty - to fill in values, you need to dereference the returned iterator and use Row::operator[] or Row::set_value(). See also <a class="el" href="classGtk_1_1ListStore.html#1fd8146c61bae1a95b050e9126ea1928">prepend()</a> and <a class="el" href="classGtk_1_1ListStore.html#f47307c865cc5de0856fe3f8571fc681">append()</a>.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>iter</em>&nbsp;</td><td>An iterator to the row before which the new row will be inserted. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>An iterator to the new row. </dd></dl>

</div>
</div><p>
<a class="anchor" name="b9032c9d9f620e10f32428e2358f44df"></a><!-- doxytag: member="Gtk::ListStore::insert_after" ref="b9032c9d9f620e10f32428e2358f44df" args="(const iterator &amp;iter)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGtk_1_1TreeIter.html">iterator</a> Gtk::ListStore::insert_after           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>iter</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a new row after the position. 
<p>
If iter is end() then a new row will be prepended to the list. The row will be empty - to fill in values, you need to dereference the returned iterator and use Row::operator[] or Row::set_value(). See also <a class="el" href="classGtk_1_1ListStore.html#b71d860741465ea79bc352c4575e47ec">insert()</a>, <a class="el" href="classGtk_1_1ListStore.html#1fd8146c61bae1a95b050e9126ea1928">prepend()</a> and <a class="el" href="classGtk_1_1ListStore.html#f47307c865cc5de0856fe3f8571fc681">append()</a>.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>iter</em>&nbsp;</td><td>An iterator to the row after which the new row will be inserted. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>An iterator to the new row. </dd></dl>

</div>
</div><p>
<a class="anchor" name="e307acf882557f319dc309963c07705a"></a><!-- doxytag: member="Gtk::ListStore::iter_is_valid" ref="e307acf882557f319dc309963c07705a" args="(const iterator &amp;iter) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Gtk::ListStore::iter_is_valid           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>iter</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
&lt;warning&gt;This function is slow. 
<p>
Only use it for debugging and/or testing purposes.&lt;/warning&gt;<p>
Checks if the given iter is a valid iter for this <a class="el" href="classGtk_1_1ListStore.html">Gtk::ListStore</a>. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>iter</em>&nbsp;</td><td>A <a class="el" href="classGtk_1_1TreeIter.html">Gtk::TreeIter</a>. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd><code>true</code> if the iter is valid, <code>false</code> if the iter is invalid.</dd></dl>
<dl compact><dt><b><a class="el" href="newin2p2s.html#_newin2p2s000099">Since gtkmm 2.2:</a></b></dt><dd></dd></dl>

<p>
Reimplemented from <a class="el" href="classGtk_1_1TreeModel.html#a5c6526633d0fa8a78fd3d14d1fbd6cf">Gtk::TreeModel</a>.
</div>
</div><p>
<a class="anchor" name="2f3617442cd5b52db485f4dc31f91da9"></a><!-- doxytag: member="Gtk::ListStore::iter_swap" ref="2f3617442cd5b52db485f4dc31f91da9" args="(const iterator &amp;a, const iterator &amp;b)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gtk::ListStore::iter_swap           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>b</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Swaps <em>a</em> and <em>b</em> in <em>store</em> . 
<p>
Note that this function only works with unsorted stores.<p>
<dl compact><dt><b><a class="el" href="newin2p2s.html#_newin2p2s000098">Since gtkmm 2.2:</a></b></dt><dd></dd></dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>a</em>&nbsp;</td><td>A <a class="el" href="classGtk_1_1TreeIter.html">Gtk::TreeIter</a>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>b</em>&nbsp;</td><td>Another <a class="el" href="classGtk_1_1TreeIter.html">Gtk::TreeIter</a>. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="cc5515fbabf7826d6d3a0e15ca81d2b9"></a><!-- doxytag: member="Gtk::ListStore::move" ref="cc5515fbabf7826d6d3a0e15ca81d2b9" args="(const iterator &amp;source, const iterator &amp;destination)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gtk::ListStore::move           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>destination</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Moves <em>source</em> to the position at <em>destination</em>. 
<p>
Note that this function only works with unsorted stores. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>source</em>&nbsp;</td><td>The row that should be moved. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>destination</em>&nbsp;</td><td>The position to move to. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="1fd8146c61bae1a95b050e9126ea1928"></a><!-- doxytag: member="Gtk::ListStore::prepend" ref="1fd8146c61bae1a95b050e9126ea1928" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classGtk_1_1TreeIter.html">iterator</a> Gtk::ListStore::prepend           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a new row at the start. 
<p>
The row will be empty - to fill in values, you need to dereference the returned iterator and use Row::operator[] or Row::set_value(). See also <a class="el" href="classGtk_1_1ListStore.html#b71d860741465ea79bc352c4575e47ec">insert()</a> and <a class="el" href="classGtk_1_1ListStore.html#f47307c865cc5de0856fe3f8571fc681">append()</a>.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>An iterator to the new row. </dd></dl>

</div>
</div><p>
<a class="anchor" name="9f90bf171dda629135f4573ef9eaeef0"></a><!-- doxytag: member="Gtk::ListStore::reorder" ref="9f90bf171dda629135f4573ef9eaeef0" args="(const Glib::ArrayHandle&lt; int &gt; &amp;new_order)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gtk::ListStore::reorder           </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classGlib_1_1ArrayHandle.html">Glib::ArrayHandle</a>&lt; int &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>new_order</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Reorders the list store to follow the order indicated by <em>new_order</em>. 
<p>
Note that this function only works with unsorted stores. 
</div>
</div><p>
<a class="anchor" name="6abba5fb66c20f1bfcea79adff7aa321"></a><!-- doxytag: member="Gtk::ListStore::set_column_types" ref="6abba5fb66c20f1bfcea79adff7aa321" args="(const TreeModelColumnRecord &amp;columns)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Gtk::ListStore::set_column_types           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeModelColumnRecord.html">TreeModelColumnRecord</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>columns</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="dd757d2d02d35b5ea782c86eef04bae7"></a><!-- doxytag: member="Gtk::ListStore::set_value_impl" ref="dd757d2d02d35b5ea782c86eef04bae7" args="(const iterator &amp;row, int column, const Glib::ValueBase &amp;value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Gtk::ListStore::set_value_impl           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classGtk_1_1TreeIter.html">iterator</a>&amp;&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>column</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classGlib_1_1ValueBase.html">Glib::ValueBase</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>value</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Override and implement this in a derived <a class="el" href="classGtk_1_1TreeModel.html">TreeModel</a> class, so that Row::operator() and Row::set_value() work. 
<p>
You can probably just implement this by calling set_value_vfunc(). Your implementation of <a class="el" href="classGtk_1_1ListStore.html#dd757d2d02d35b5ea782c86eef04bae7">set_value_impl()</a> should also call set_row_changed() after changing the value. 
<p>
Reimplemented from <a class="el" href="classGtk_1_1TreeModel.html#26cf070eadb8e242bcf2b57f7e6d7d9e">Gtk::TreeModel</a>.
</div>
</div><p>
<hr><h2>Friends And Related Function Documentation</h2>
<a class="anchor" name="c9a0a0d9b34c33a9775ec4d89da2f0df"></a><!-- doxytag: member="Gtk::ListStore::wrap" ref="c9a0a0d9b34c33a9775ec4d89da2f0df" args="(GtkListStore *object, bool take_copy=false)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classGtk_1_1ListStore.html">Gtk::ListStore</a>&gt; wrap           </td>
          <td>(</td>
          <td class="paramtype">GtkListStore *&nbsp;</td>
          <td class="paramname"> <em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>take_copy</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A <a class="elRef" doxygen="glibmm_doxygen_tags:../../../../glibmm-2.4/docs/reference/html/" href="../../../../glibmm-2.4/docs/reference/html/namespaceGlib.html#671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>object</em>&nbsp;</td><td>The C instance. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>take_copy</em>&nbsp;</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>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A C++ instance that wraps this C instance. </dd></dl>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="liststore_8h.html">liststore.h</a></ul>
</div>
<!-- end main content -->

<hr><address><small>
Generated for gtkmm 2.4 by <a href="http://www.doxygen.org/index.html">
Doxygen</a> 1.5.1 &copy;&nbsp;1997-2001</small></address>
</body>
</html>