.. wxPython Phoenix documentation

   This file was generated by Phoenix's sphinx generator and associated
   tools, do not edit by hand.

   Copyright: (c) 2011-2020 by Total Control Software
   License:   wxWindows License

.. include:: headings.inc

.. currentmodule:: wx.lib.combotreebox

.. highlight:: python



.. _wx.lib.combotreebox.IterableTreeCtrl:

==========================================================================================================================================
|phoenix_title|  **wx.lib.combotreebox.IterableTreeCtrl**
==========================================================================================================================================

TreeCtrl is the same as :class:`TreeCtrl`, with a few convenience methods
added for easier navigation of items. 



|

|class_hierarchy| Class Hierarchy
=================================

.. raw:: html

   <div id="toggleBlock" onclick="return toggleVisibility(this)" class="closed" style="cursor:pointer;">
   <img id="toggleBlock-trigger" src="_static/images/closed.png"/>
   Inheritance diagram for class <strong>IterableTreeCtrl</strong>:
   </div>
   <div id="toggleBlock-summary" style="display:block;"></div>
   <div id="toggleBlock-content" style="display:none;">
   <p class="graphviz">
   <center><img src="_static/images/inheritance/wx.lib.combotreebox.IterableTreeCtrl_inheritance.png" alt="Inheritance diagram of IterableTreeCtrl" usemap="#dummy" class="inheritance"/></center>
   <script type="text/javascript">toggleVisibilityOnLoad(document.getElementById('toggleBlock'))</script>
   <map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.lib.combotreebox.IterableTreeCtrl.html" title="wx.lib.combotreebox.IterableTreeCtrl" alt="" coords="43,469,305,499"/> <area shape="rect" id="node2" href="wx.TreeCtrl.html" title="wx.TreeCtrl" alt="" coords="127,392,221,421"/> <area shape="rect" id="node3" href="wx.Control.html" title="wx.Control" alt="" coords="63,315,155,344"/> <area shape="rect" id="node4" href="wx.WithImages.html" title="wx.WithImages" alt="" coords="179,315,302,344"/> <area shape="rect" id="node5" href="wx.Window.html" title="wx.Window" alt="" coords="60,237,157,267"/> <area shape="rect" id="node6" href="wx.WindowBase.html" title="wx.WindowBase" alt="" coords="44,160,173,189"/> <area shape="rect" id="node7" href="wx.EvtHandler.html" title="wx.EvtHandler" alt="" coords="50,83,167,112"/> <area shape="rect" id="node8" href="wx.Object.html" title="wx.Object" alt="" coords="5,5,92,35"/> <area shape="rect" id="node9" href="wx.Trackable.html" title="wx.Trackable" alt="" coords="117,5,223,35"/> </map> 
   </p>
   </div>

|


|super_classes| Known Superclasses
==================================

:class:`wx.TreeCtrl`

|


|method_summary| Methods Summary
================================

================================================================================ ================================================================================
:meth:`~wx.lib.combotreebox.IterableTreeCtrl.GetFirstItem`                       Returns the very first item in the tree. This is the root item
:meth:`~wx.lib.combotreebox.IterableTreeCtrl.GetLastChildRecursively`            Returns the last child of the last child ... of item. If item
:meth:`~wx.lib.combotreebox.IterableTreeCtrl.GetNextItem`                        Returns the item that is on the line immediately below item
:meth:`~wx.lib.combotreebox.IterableTreeCtrl.GetNextSiblingRecursively`          Returns the next sibling of item if it has one. If item has no
:meth:`~wx.lib.combotreebox.IterableTreeCtrl.GetPreviousItem`                    Returns the item that is on the line immediately above item
:meth:`~wx.lib.combotreebox.IterableTreeCtrl.GetSelection`                       Extend GetSelection to never return the root item if the
================================================================================ ================================================================================


|


|api| Class API
===============


.. class:: IterableTreeCtrl(wx.TreeCtrl)

   TreeCtrl is the same as :class:`TreeCtrl`, with a few convenience methods
   added for easier navigation of items. 

   .. method:: GetFirstItem(self)

      Returns the very first item in the tree. This is the root item
      unless the root item is hidden. In that case the first child of
      the root item is returned, if any. If the tree is empty, an
      invalid tree item is returned.
      
      :return: :class:`TreeItemId`
      :rtype: :class:`TreeItemId`


   .. method:: GetLastChildRecursively(self, item)

      Returns the last child of the last child ... of item. If item
      has no children, item itself is returned. So the returned item
      is always valid, assuming a valid item has been passed.
      
      :param TreeItemId `item`: a :class:`TreeItemId`
      :return: :class:`TreeItemId` of the last item or an invalid item
      :rtype: :class:`TreeItemId`


   .. method:: GetNextItem(self, item)

      Returns the item that is on the line immediately below item
      (as is displayed when the tree is fully expanded). The returned
      item is invalid if item is the last item in the tree.
      
      :param TreeItemId `item`: a :class:`TreeItemId`
      :return: :class:`TreeItemId` of the next item or an invalid item
      :rtype: :class:`TreeItemId`


   .. method:: GetNextSiblingRecursively(self, item)

      Returns the next sibling of item if it has one. If item has no
      next sibling the next sibling of the parent of item is returned.
      If the parent has no next sibling the next sibling of the parent
      of the parent is returned, etc. If none of the ancestors of item
      has a next sibling, an invalid item is returned.
      
      :param TreeItemId `item`: a :class:`TreeItemId`
      :return: :class:`TreeItemId` of the next item or an invalid item
      :rtype: :class:`TreeItemId`


   .. method:: GetPreviousItem(self, item)

      Returns the item that is on the line immediately above item
      (as is displayed when the tree is fully expanded). The returned
      item is invalid if item is the first item in the tree.
      
      :param TreeItemId `item`: a :class:`TreeItemId`
      :return: the :class:`TreeItemId` previous to the one passed in or an invalid item
      :rtype: :class:`TreeItemId`


   .. method:: GetSelection(self)

      Extend GetSelection to never return the root item if the
      root item is hidden.


