.. 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

.. module:: wx.lib.mixins.treemixin

.. currentmodule:: wx.lib.mixins.treemixin

.. highlight:: python



.. _wx.lib.mixins.treemixin:

==========================================================================================================================================
|phoenix_title|  **wx.lib.mixins.treemixin**
==========================================================================================================================================

treemixin.py

This module provides three mixin classes that can be used with tree
controls:

- VirtualTree is a class that, when mixed in with a tree control,
  makes the tree control virtual, similar to a ListCtrl in virtual mode.
  A virtual tree control builds the tree itself by means of callbacks,
  so the programmer is freed from the burden of building the tree herself.

- DragAndDrop is a mixin class that helps with dragging and dropping of
  items. The graphical part of dragging and dropping tree items is done by
  this mixin class. You only need to implement the OnDrop method that is
  called when the drop happens.

- ExpansionState is a mixin that can be queried for the expansion state of
  all items in the tree to restore it later.

All mixin classes work with wx.TreeCtrl, wx.gizmos.TreeListCtrl,
and wx.lib.customtreectrl.CustomTreeCtrl. They can be used together or
separately.

The VirtualTree and DragAndDrop mixins force the wx.TR_HIDE_ROOT style.

.. moduleauthor:: Frank Niessink <frank@niessink.com>

License: wxWidgets license
Version: 1.1
Date: 24 September 2007

ExpansionState is based on code and ideas from Karsten Hilbert.
Andrea Gavana provided help with the CustomTreeCtrl integration.


|class_summary| Classes Summary
===============================

================================================================================ ================================================================================
:ref:`~wx.lib.mixins.treemixin.DragAndDrop`                                      This is a mixin class that can be used to easily implement
:ref:`~wx.lib.mixins.treemixin.ExpansionState`                                   This is a mixin class that can be used to save and restore
:ref:`~wx.lib.mixins.treemixin.TreeAPIHarmonizer`                                This class attempts to hide the differences in API between the
:ref:`~wx.lib.mixins.treemixin.TreeHelper`                                       This class provides methods that are not part of the API of any
:ref:`~wx.lib.mixins.treemixin.VirtualTree`                                      This is a mixin class that can be used to allow for virtual tree
================================================================================ ================================================================================


|


.. toctree::
   :maxdepth: 1
   :hidden:

   wx.lib.mixins.treemixin.DragAndDrop
   wx.lib.mixins.treemixin.ExpansionState
   wx.lib.mixins.treemixin.TreeAPIHarmonizer
   wx.lib.mixins.treemixin.TreeHelper
   wx.lib.mixins.treemixin.VirtualTree



