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

.. currentmodule:: wx.lib.agw

.. highlight:: python



.. _wx.lib.agw:

==========================================================================================================================================
|phoenix_title|  **wx.lib.agw**
==========================================================================================================================================

This is the Advanced Generic Widgets package (AGW). It provides many
custom-drawn wxPython controls: some of them can be used as a replacement
of the platform native controls, others are simply an addition to the
already rich wxPython widgets set.


Description:

AGW contains many different modules, listed below. Items labelled with
an asterisk were already present in :mod:`lib` before:

- AdvancedSplash: reproduces the behaviour of :class:`~adv.SplashScreen`, with more
  advanced features like custom shapes and text animations;
- AquaButton: this is another custom-drawn button class which
  *approximately* mimics the behaviour of Aqua buttons on the Mac;
- AUI: a pure-Python implementation of :mod:`~wx.lib.agw.aui`, with many bug fixes and
  new features like HUD docking and :class:`~wx.lib.agw.aui.auibook.AuiNotebook` tab arts;
- BalloonTip: allows you to display tooltips in a balloon style window
  (actually a frame), similarly to the Windows XP balloon help;
- ButtonPanel (*): a panel with gradient background shading with the
  possibility to add buttons and controls still respecting the gradient
  background;
- CubeColourDialog: an alternative implementation of :class:`wx.ColourDialog`, it
  offers different functionalities like colour wheel and RGB cube;
- CustomTreeCtrl (*): mimics the behaviour of :class:`TreeCtrl`, with almost the
  same base functionalities plus a bunch of enhancements and goodies;
- FlatMenu: as the name implies, it is a generic menu implementation,
  offering the same :class:`wx.MenuBar` / :class:`wx.Menu` / :class:`ToolBar` capabilities and much more;
- FlatNotebook (*): a full implementation of the :class:`Notebook`, and designed
  to be a drop-in replacement for :class:`Notebook` with enhanced capabilities;
- FloatSpin: this class implements a floating point spinctrl, cabable (in
  theory) of handling infinite-precision floating point numbers;
- FoldPanelBar (*): a control that contains multiple panels that can be
  expanded or collapsed a la Windows Explorer/Outlook command bars;
- FourWaySplitter: this is a layout manager which manages four children like
  four panes in a window, similar to many CAD software interfaces;
- GenericMessageDialog: it is a possible replacement for the standard
  :class:`MessageDialog`, with a fancier look and extended functionalities;
- GradientButton: another custom-drawn button class which mimics Windows CE
  mobile gradient buttons, using a tri-vertex blended gradient background;
- HyperLinkCtrl (*): this widget acts line an hyper link in a typical browser;
- HyperTreeList: a class that mimics the behaviour of :class:`wx.adv.TreeListCtrl`,
  with almost the same base functionalities plus some more enhancements;
- InfoBar: a transient window shown at top or bottom of its parent window to display
  non-critical information to the user;
- KnobCtrl: a widget which lets the user select a numerical value by
  rotating it, like a slider with a wheel shape;
- LabelBook and FlatImageBook: these are a quasi-full implementations of
  :class:`Listbook`, with additional features;
- MultiDirDialog: it represents a possible replacement for :class:`DirDialog`,
  with the additional ability of selecting multiple folders at once and a
  fancier look;
- PeakMeter: this widget mimics the behaviour of LED equalizers that are
  usually found in stereos and MP3 players;
- PersistentControls: widgets which automatically save their state
  when they are destroyed and restore it when they are recreated, even during
  another program invocation;
- PieCtrl and ProgressPie: these are simple classes that reproduce the
  behavior of a pie chart, in a static or progress-gauge-like way;
- PyBusyInfo: constructs a busy info window and displays a message in it:
  it is similar to :class:`BusyInfo`;
- PyCollapsiblePane: a pure Python implementation of the original wxWidgets
  C++ code of :class:`CollapsiblePane`, with customizable buttons;
- PyGauge: a generic :class:`Gauge` implementation, it supports the determinate
  mode functions as :class:`Gauge`;
- PyProgress: it is similar to :class:`ProgressDialog` in indeterminated mode, but
  with a different gauge appearance and a different spinning behavior;
- RibbonBar: the RibbonBar library is a set of classes for writing a ribbon
  user interface, similar to the user interface present in recent versions
  of Microsoft Office;
- RulerCtrl: it implements a ruler window that can be placed on top, bottom,
  left or right to any wxPython widget. It is somewhat similar to the rulers
  you can find in text editors software;
- ShapedButton: this class tries to fill the lack of "custom shaped" controls
  in wxPython. It can be used to build round buttons or elliptic buttons;
- ShortcutEditor: a widget that allows the user to customize and change
  keyboard shortcuts via a dialog;
- SpeedMeter: this widget tries to reproduce the behavior of some car
  controls (but not only), by creating an "angular" control;
- SuperToolTip: a class that mimics the behaviour of :class:`TipWindow` and
  generic tooltips, with many features and highly customizable;
- ThumbnailCtrl: a widget that can be used to display a series of images
  in a "thumbnail" format; it mimics, for example, the Windows Explorer
  behavior when you select the "view thumbnails" option;
- ToasterBox: a cross-platform widget to make the creation of MSN-style
  "toaster" popups easier;
- UltimateListCtrl: mimics the behaviour of :class:`ListCtrl`, with almost the same
  base functionalities plus some more enhancements;
- XLSGrid: a class based on :class:`grid.Grid` that can be used to faithfully
  reproduce the appearance of a Microsoft Excel spreadsheets;
- ZoomBar: a class that *appoximatively* mimics the behaviour of the Mac Dock,
  inside a :class:`Panel`.


Bugs and Limitations: many, patches and fixes welcome :-D

See the demos for an example of what AGW can do, and on how to use it.

Copyright: Andrea Gavana

License: Same as the version of wxPython you are using it with.

SVN for latest code:
http://svn.wxwidgets.org/viewvc/wx/wxPython/3rdParty/AGW/

Mailing List:
wxpython-users@lists.wxwidgets.org

My personal web page:
http://xoomer.alice.it/infinity77

Please let me know if you are using AGW!

You can contact me at:

andrea.gavana@gmail.com
andrea.gavana@maerskoil.com

AGW version: 0.9.7

Last updated: 09 January 2014, 23.00 GMT


|package_summary| Packages Summary
==================================

================================================================================ ================================================================================
:mod:`~wx.lib.agw.aui`                                                           AUI is an Advanced User Interface library that aims to implement "cutting-edge"
:mod:`~wx.lib.agw.persist`                                                       Persistent objects are simply the objects which automatically save their state
:mod:`~wx.lib.agw.ribbon`                                                        The `RibbonBar` library is a set of classes for writing a ribbon user interface.
================================================================================ ================================================================================


|


|module_summary| Modules Summary
================================

================================================================================ ================================================================================
:mod:`~wx.lib.agw.advancedsplash`                                                :class:`~wx.lib.agw.advancedsplash.AdvancedSplash` tries to reproduce the behavior of :class:`~adv.SplashScreen`, with
:mod:`~wx.lib.agw.aquabutton`                                                    :class:`~wx.lib.agw.aquabutton.AquaButton` is another custom-drawn button class which *approximately* mimics
:mod:`~wx.lib.agw.artmanager`                                                    This module contains drawing routines and customizations for the AGW widgets
:mod:`~wx.lib.agw.balloontip`                                                    :class:`~wx.lib.agw.balloontip.BalloonTip` is a class that allows you to display tooltips in a balloon style
:mod:`~wx.lib.agw.buttonpanel`                                                   A custom panel class with gradient background shading with the possibility to
:mod:`~wx.lib.agw.cubecolourdialog`                                              :class:`~wx.lib.agw.cubecolourdialog.CubeColourDialog` is an alternative implementation of :class:`wx.ColourDialog`.
:mod:`~wx.lib.agw.customtreectrl`                                                The ``customtreectrl`` module contains the :class:`~wx.lib.agw.customtreectrl.CustomTreeCtrl` class
:mod:`~wx.lib.agw.flatmenu`                                                      :class:`~wx.lib.agw.flatmenu.FlatMenu` is a generic menu implementation.
:mod:`~wx.lib.agw.flatnotebook`                                                  :class:`~wx.lib.agw.flatnotebook.FlatNotebook` is a full, generic and owner-drawn implementation of :class:`Notebook`.
:mod:`~wx.lib.agw.floatspin`                                                     :class:`~wx.lib.agw.floatspin.FloatSpin` implements a floating point :class:`SpinCtrl`.
:mod:`~wx.lib.agw.fmcustomizedlg`                                                This module contains a custom dialog class used to personalize the appearance of a
:mod:`~wx.lib.agw.fmresources`                                                   
:mod:`~wx.lib.agw.foldpanelbar`                                                  :class:`~wx.lib.agw.foldpanelbar.FoldPanelBar` is a control that contains multiple panels, which can be expanded
:mod:`~wx.lib.agw.fourwaysplitter`                                               :class:`~wx.lib.agw.fourwaysplitter.FourWaySplitter` is a layout manager which manages 4 children like 4 panes in a
:mod:`~wx.lib.agw.genericmessagedialog`                                          This class is a possible, fancy replacement for :class:`MessageDialog`.
:mod:`~wx.lib.agw.gradientbutton`                                                :class:`~wx.lib.agw.gradientbutton.GradientButton` is another custom-drawn button class which mimics Windows CE mobile
:mod:`~wx.lib.agw.hyperlink`                                                     :class:`~wx.lib.agw.hyperlink.HyperLinkCtrl` is a control for wxPython that acts like a hyper link
:mod:`~wx.lib.agw.hypertreelist`                                                 The ``hypertreelist`` module contains the :class:`~wx.lib.agw.hypertreelist.HyperTreeList` class
:mod:`~wx.lib.agw.infobar`                                                       An info bar is a transient window shown at top or bottom of its parent window to display
:mod:`~wx.lib.agw.knobctrl`                                                      :class:`~wx.lib.agw.knobctrl.KnobCtrl` lets the user select a numerical value by rotating it.
:mod:`~wx.lib.agw.labelbook`                                                     :class:`~wx.lib.agw.labelbook.LabelBook` and :class:`~wx.lib.agw.labelbook.FlatImageBook` are a quasi-full generic and owner-drawn
:mod:`~wx.lib.agw.multidirdialog`                                                This class represents a possible replacement for :class:`DirDialog`, with the additional
:mod:`~wx.lib.agw.peakmeter`                                                     :class:`~wx.lib.agw.peakmeter.PeakMeterCtrl` mimics the behaviour of equalizers that are usually found in stereos
:mod:`~wx.lib.agw.piectrl`                                                       :class:`~wx.lib.agw.piectrl.PieCtrl` and :class:`~wx.lib.agw.piectrl.ProgressPie` are simple classes that reproduce the behavior of a pie
:mod:`~wx.lib.agw.pybusyinfo`                                                    :class:`~wx.lib.agw.pybusyinfo.PyBusyInfo` constructs a busy info window and displays a message in it.
:mod:`~wx.lib.agw.pycollapsiblepane`                                             :class:`~wx.lib.agw.pycollapsiblepane.PyCollapsiblePane` is a container with an embedded button-like control which
:mod:`~wx.lib.agw.pygauge`                                                       :class:`~wx.lib.agw.pygauge.PyGauge` is a generic :class:`Gauge` implementation.
:mod:`~wx.lib.agw.pyprogress`                                                    :class:`~wx.lib.agw.pyprogress.PyProgress` is similar to :class:`ProgressDialog` in indeterminated mode, but with a
:mod:`~wx.lib.agw.rulerctrl`                                                     :class:`~wx.lib.agw.rulerctrl.RulerCtrl` implements a ruler window that can be placed on top, bottom, left or right
:mod:`~wx.lib.agw.scrolledthumbnail`                                             :class:`ScrolledThumbnail` is a widget that can be used to display a series of
:mod:`~wx.lib.agw.shapedbutton`                                                  :class:`~wx.lib.agw.shapedbutton.SButton` tries to fill the lack of "custom shaped" controls in wxPython
:mod:`~wx.lib.agw.shortcuteditor`                                                :class:`~wx.lib.agw.shortcuteditor.ShortcutEditor` is a widget that allows the user to customize and change keyboard
:mod:`~wx.lib.agw.speedmeter`                                                    :class:`~wx.lib.agw.speedmeter.SpeedMeter` tries to reproduce the behavior of some car controls (but not only),
:mod:`~wx.lib.agw.supertooltip`                                                  :class:`~wx.lib.agw.supertooltip.SuperToolTip` is a class that mimics the behaviour of :class:`TipWindow` and generic tooltip
:mod:`~wx.lib.agw.thumbnailctrl`                                                 :class:`~wx.lib.agw.thumbnailctrl.ThumbnailCtrl` is a widget that can be used to display a series of images in
:mod:`~wx.lib.agw.toasterbox`                                                    :class:`~wx.lib.agw.toasterbox.ToasterBox` is a cross-platform widget to make the creation of MSN style "toaster"
:mod:`~wx.lib.agw.ultimatelistctrl`                                              Description
:mod:`~wx.lib.agw.xlsgrid`                                                       :class:`~wx.lib.agw.xlsgrid.XLSGrid` is a class based on :class:`grid.Grid` that can be used to faithfully
:mod:`~wx.lib.agw.zoombar`                                                       :class:`~wx.lib.agw.zoombar.ZoomBar` is a class that *appoximatively* mimics the behaviour of the Mac Dock,
================================================================================ ================================================================================


|


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

   wx.lib.agw.aui
   wx.lib.agw.persist
   wx.lib.agw.ribbon
   wx.lib.agw.advancedsplash
   wx.lib.agw.aquabutton
   wx.lib.agw.artmanager
   wx.lib.agw.balloontip
   wx.lib.agw.buttonpanel
   wx.lib.agw.cubecolourdialog
   wx.lib.agw.customtreectrl
   wx.lib.agw.flatmenu
   wx.lib.agw.flatnotebook
   wx.lib.agw.floatspin
   wx.lib.agw.fmcustomizedlg
   wx.lib.agw.fmresources
   wx.lib.agw.foldpanelbar
   wx.lib.agw.fourwaysplitter
   wx.lib.agw.genericmessagedialog
   wx.lib.agw.gradientbutton
   wx.lib.agw.hyperlink
   wx.lib.agw.hypertreelist
   wx.lib.agw.infobar
   wx.lib.agw.knobctrl
   wx.lib.agw.labelbook
   wx.lib.agw.multidirdialog
   wx.lib.agw.peakmeter
   wx.lib.agw.piectrl
   wx.lib.agw.pybusyinfo
   wx.lib.agw.pycollapsiblepane
   wx.lib.agw.pygauge
   wx.lib.agw.pyprogress
   wx.lib.agw.rulerctrl
   wx.lib.agw.scrolledthumbnail
   wx.lib.agw.shapedbutton
   wx.lib.agw.shortcuteditor
   wx.lib.agw.speedmeter
   wx.lib.agw.supertooltip
   wx.lib.agw.thumbnailctrl
   wx.lib.agw.toasterbox
   wx.lib.agw.ultimatelistctrl
   wx.lib.agw.xlsgrid
   wx.lib.agw.zoombar



