.. wxPython Phoenix documentation

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

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

.. include:: headings.inc

.. currentmodule:: wx.lib.agw.aui.tabmdi

.. highlight:: python



.. _wx.lib.agw.aui.tabmdi.AuiMDIClientWindow:

==========================================================================================================================================
|phoenix_title|  **wx.lib.agw.aui.tabmdi.AuiMDIClientWindow**
==========================================================================================================================================

AuiNotebook is a notebook control which implements many features common in applications with dockable panes.
Specifically, AuiNotebook implements functionality which allows the user to rearrange tab
order via drag-and-drop, split the tab window into many different splitter configurations, and toggle
through different themes to customize the control's look and feel.

An effort has been made to try to maintain an API as similar to that of :class:`Notebook`.

The default theme that is used is :class:`~wx.lib.agw.aui.tabart.AuiDefaultTabArt`, which provides a modern, glossy
look and feel. The theme can be changed by calling :meth:`AuiNotebook.SetArtProvider`.



|

|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>AuiMDIClientWindow</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.agw.aui.tabmdi.AuiMDIClientWindow_inheritance.png" alt="Inheritance diagram of AuiMDIClientWindow" 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.agw.aui.tabmdi.AuiMDIClientWindow.html" title="AuiNotebook is a notebook control which implements many features common in applications with dockable panes." alt="" coords="5,469,316,499"/> <area shape="rect" id="node2" href="wx.lib.agw.aui.auibook.AuiNotebook.html" title="AuiNotebook is a notebook control which implements many features common in applications with dockable panes." alt="" coords="29,392,293,421"/> <area shape="rect" id="node3" href="wx.Panel.html" title="A panel is a window on which controls are placed." alt="" coords="120,315,201,344"/> <area shape="rect" id="node4" href="wx.Window.html" title="wx.Window  is the base class for all windows and represents any visible object on screen." alt="" coords="112,237,209,267"/> <area shape="rect" id="node5" href="wx.WindowBase.html" title="wx.WindowBase" alt="" coords="95,160,226,189"/> <area shape="rect" id="node6" href="wx.EvtHandler.html" title="A class that can handle events from the windowing system." alt="" coords="101,83,220,112"/> <area shape="rect" id="node7" href="wx.Object.html" title="This is the root class of many of the wxWidgets classes." alt="" coords="55,5,143,35"/> <area shape="rect" id="node8" href="wx.Trackable.html" title="Add-on base class for a trackable object." alt="" coords="168,5,279,35"/> </map> 
   </p>
   </div>

|


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

:class:`wx.lib.agw.aui.auibook.AuiNotebook`

|


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

================================================================================ ================================================================================
:meth:`~wx.lib.agw.aui.tabmdi.AuiMDIClientWindow.__init__`                       Default class constructor.
:meth:`~wx.lib.agw.aui.tabmdi.AuiMDIClientWindow.OnPageChanged`                  
:meth:`~wx.lib.agw.aui.tabmdi.AuiMDIClientWindow.OnPageClose`                    
:meth:`~wx.lib.agw.aui.tabmdi.AuiMDIClientWindow.OnSize`                         Handles the ``wx.EVT_SIZE`` event for :class:`AuiNotebook`.
:meth:`~wx.lib.agw.aui.tabmdi.AuiMDIClientWindow.PageChanged`                    
:meth:`~wx.lib.agw.aui.tabmdi.AuiMDIClientWindow.SetSelection`                   Sets the page selection. Calling this method will generate a page change event.
================================================================================ ================================================================================


|


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


.. class:: AuiMDIClientWindow(auibook.AuiNotebook)

   AuiNotebook is a notebook control which implements many features common in applications with dockable panes.
   Specifically, AuiNotebook implements functionality which allows the user to rearrange tab
   order via drag-and-drop, split the tab window into many different splitter configurations, and toggle
   through different themes to customize the control's look and feel.
   
   An effort has been made to try to maintain an API as similar to that of :class:`Notebook`.
   
   The default theme that is used is :class:`~wx.lib.agw.aui.tabart.AuiDefaultTabArt`, which provides a modern, glossy
   look and feel. The theme can be changed by calling :meth:`AuiNotebook.SetArtProvider`.

   .. method:: __init__(self, parent, agwStyle=0)

      Default class constructor.
      
      :param wx.Window `parent`: the :class:`AuiNotebook` parent;
      :param integer `id`: an identifier for the control: a value of -1 is taken to mean a default;
      :param wx.Point `pos`: the control position. A value of (-1, -1) indicates a default position,
       chosen by either the windowing system or wxPython, depending on platform;
      :param wx.Size `size`: the control size. A value of (-1, -1) indicates a default size,
       chosen by either the windowing system or wxPython, depending on platform;
      :param integer `style`: the underlying :class:`Panel` window style;
      :param integer `agwStyle`: the AGW-specific window style. This can be a combination of the following bits:
      
       ==================================== ==================================
       Flag name                            Description
       ==================================== ==================================
       ``AUI_NB_TOP``                       With this style, tabs are drawn along the top of the notebook
       ``AUI_NB_LEFT``                      With this style, tabs are drawn along the left of the notebook. Not implemented yet.
       ``AUI_NB_RIGHT``                     With this style, tabs are drawn along the right of the notebook. Not implemented yet.
       ``AUI_NB_BOTTOM``                    With this style, tabs are drawn along the bottom of the notebook
       ``AUI_NB_TAB_SPLIT``                 Allows the tab control to be split by dragging a tab
       ``AUI_NB_TAB_MOVE``                  Allows a tab to be moved horizontally by dragging
       ``AUI_NB_TAB_EXTERNAL_MOVE``         Allows a tab to be moved to another tab control
       ``AUI_NB_TAB_FIXED_WIDTH``           With this style, all tabs have the same width
       ``AUI_NB_SCROLL_BUTTONS``            With this style, left and right scroll buttons are displayed
       ``AUI_NB_WINDOWLIST_BUTTON``         With this style, a drop-down list of windows is available
       ``AUI_NB_CLOSE_BUTTON``              With this style, a close button is available on the tab bar
       ``AUI_NB_CLOSE_ON_ACTIVE_TAB``       With this style, a close button is available on the active tab
       ``AUI_NB_CLOSE_ON_ALL_TABS``         With this style, a close button is available on all tabs
       ``AUI_NB_MIDDLE_CLICK_CLOSE``        Allows to close :class:`AuiNotebook` tabs by mouse middle button click
       ``AUI_NB_SUB_NOTEBOOK``              This style is used by :class:`~wx.lib.agw.aui.framemanager.AuiManager` to create automatic AuiNotebooks
       ``AUI_NB_HIDE_ON_SINGLE_TAB``        Hides the tab window if only one tab is present
       ``AUI_NB_SMART_TABS``                Use Smart Tabbing, like ``Alt`` + ``Tab`` on Windows
       ``AUI_NB_USE_IMAGES_DROPDOWN``       Uses images on dropdown window list menu instead of check items
       ``AUI_NB_CLOSE_ON_TAB_LEFT``         Draws the tab close button on the left instead of on the right (a la Camino browser)
       ``AUI_NB_TAB_FLOAT``                 Allows the floating of single tabs. Known limitation: when the notebook is more or less full screen,
                                            tabs cannot be dragged far enough outside of the notebook to become floating pages
       ``AUI_NB_DRAW_DND_TAB``              Draws an image representation of a tab while dragging (on by default)
       ``AUI_NB_ORDER_BY_ACCESS``           Tab navigation order by last access time for the tabs
       ``AUI_NB_NO_TAB_FOCUS``              Don't draw tab focus rectangle
       ==================================== ==================================
      
       Default value for `agwStyle` is:
       ``AUI_NB_DEFAULT_STYLE`` = ``AUI_NB_TOP`` | ``AUI_NB_TAB_SPLIT`` | ``AUI_NB_TAB_MOVE`` | ``AUI_NB_SCROLL_BUTTONS`` | ``AUI_NB_CLOSE_ON_ACTIVE_TAB`` | ``AUI_NB_MIDDLE_CLICK_CLOSE`` | ``AUI_NB_DRAW_DND_TAB``
      
      :param string `name`: the window name.


   .. method:: OnPageChanged(self, event)


   .. method:: OnPageClose(self, event)


   .. method:: OnSize(self, event)

      Handles the ``wx.EVT_SIZE`` event for :class:`AuiNotebook`.
      
      :param `event`: a :class:`wx.SizeEvent` event to be processed.


   .. method:: PageChanged(self, old_selection, new_selection)


   .. method:: SetSelection(self, nPage)

      Sets the page selection. Calling this method will generate a page change event.
      
      :param integer `new_page`: the index of the new selection;
      :param bool `force`: whether to force the selection or not.