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



.. _wx.aui.AuiDeserializer:

==========================================================================================================================================
|phoenix_title|  **wx.aui.AuiDeserializer**
==========================================================================================================================================

:ref:`wx.aui.AuiDeserializer`  is used by :meth:`wx.aui.AuiManager.LoadLayout`   to restore layout information saved by :meth:`wx.aui.AuiManager.SaveLayout` . 
         

As :ref:`wx.aui.AuiSerializer`, this is an abstract base class, you need to inherit from it and override its pure virtual functions in your derived class. 

Derived class function also may throw and, if any of them other than :meth:`~wx.aui.AuiDeserializer.AfterLoad`  does, the existing layout is not changed, i.e. :meth:`wx.aui.AuiManager.LoadLayout`   is exception-safe. 








         



.. versionadded:: 4.3/wxWidgets-3.3.0  
     







|

|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>AuiDeserializer</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.aui.AuiDeserializer_inheritance.svg" alt="Inheritance diagram of AuiDeserializer" 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.aui.AuiDeserializer.html" title="wx.aui.AuiDeserializer  is used by wx.aui.AuiManager.LoadLayout   to restore layout information saved by wx.aui.AuiManager.SaveLayout ." alt="" coords="24,82,213,111"/> <area shape="rect" id="node2" href="wx.aui.AuiBookDeserializer.html" title="wx.aui.AuiBookDeserializer  is used for deserializing wx.aui.AuiNotebook  layout." alt="" coords="5,5,231,34"/> </map> 
   </p>
   </div>

|


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

================================================================================ ================================================================================
:meth:`~wx.aui.AuiDeserializer.__init__`                                         Constructor taking the manager for which we're restoring the layout.
:meth:`~wx.aui.AuiDeserializer.AfterLoad`                                        Called after restoring everything.
:meth:`~wx.aui.AuiDeserializer.BeforeLoad`                                       Called before doing anything else.
:meth:`~wx.aui.AuiDeserializer.CreatePaneWindow`                                 Create the window to be managed by the given pane if necessary.
================================================================================ ================================================================================


|


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


.. class:: wx.aui.AuiDeserializer(AuiBookDeserializer)

   **Possible constructors**::

       AuiDeserializer(manager) -> None
       
   
   AuiDeserializer is used by `AuiManager.LoadLayout()` to restore
   layout information saved by `AuiManager.SaveLayout().`



   .. method:: __init__(self, manager)

      Constructor taking the manager for which we're restoring the layout. 
                 

      The manager remains valid for the lifetime of this object. 
                 


      :param `manager`: 
      :type `manager`: wx.aui.AuiManager




      :rtype: `None`     








   .. method:: AfterLoad(self)

      Called after restoring everything. 
                 

      Default implementation calls :meth:`wx.aui.AuiManager.Update` . Override this function and do `not`  call the base class version if you want to prevent this from happening, e.g. if you need to make further changes to the restored layout before updating it. 
                 

      :rtype: `None`     








   .. method:: BeforeLoad(self)

      Called before doing anything else. 
                 

      Does nothing by default. 
                 

      :rtype: `None`     








   .. method:: CreatePaneWindow(self, pane)

      Create the window to be managed by the given pane if necessary. 
                 

      This function is called if any of the panes returned by :meth:`LoadPanes`   doesn't exist in the existing layout and allows to create windows on the fly. 

      If this function returns nullptr, as it does by default, the pane is not added to the manager. 

      If the function does create a new window, it should typically modify `pane`  parameter to fill in the fields such as  ``caption``   or   ``icon``   that wouldn't normally be serialized and so wouldn't be restored by  :meth:`LoadPanes` . 
                 


      :param `pane`: 
      :type `pane`: wx.aui.AuiPaneInfo




      :rtype: `Window`     







