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

.. highlight:: python



.. _wx.lib.masked.maskededit.MaskedEditAccessorsMixin:

==========================================================================================================================================
|phoenix_title|  **wx.lib.masked.maskededit.MaskedEditAccessorsMixin**
==========================================================================================================================================

To avoid a ton of boiler-plate, and to automate the getter/setter generation
for each valid control parameter so we never forget to add the functions when
adding parameters, this class programmatically adds the masked edit mixin
parameters to itself.
(This makes it easier for Designers like Boa to deal with masked controls.)

To further complicate matters, this is done with an extra level of inheritance,
so that "general" classes like masked.TextCtrl can have all possible attributes,
while derived classes, like masked.TimeCtrl and masked.NumCtrl can prevent
exposure of those optional attributes of their base class that do not make
sense for their derivation.

Therefore, we define:
    BaseMaskedTextCtrl(TextCtrl, MaskedEditMixin)
and
    masked.TextCtrl(BaseMaskedTextCtrl, MaskedEditAccessorsMixin).

This allows us to then derive:
    masked.NumCtrl( BaseMaskedTextCtrl )

and not have to expose all the same accessor functions for the
derived control when they don't all make sense for it.



|

|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>MaskedEditAccessorsMixin</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.masked.maskededit.MaskedEditAccessorsMixin_inheritance.png" alt="Inheritance diagram of MaskedEditAccessorsMixin" 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.masked.maskededit.MaskedEditAccessorsMixin.html" title="To avoid a ton of boiler-plate, and to automate the getter/setter generation" alt="" coords="5,5,388,35"/> </map> 
   </p>
   </div>

|


|sub_classes| Known Subclasses
==============================

:class:`wx.lib.masked.combobox.ComboBox`, :class:`wx.lib.masked.combobox.PreMaskedComboBox`, :class:`wx.lib.masked.textctrl.PreMaskedTextCtrl`, :class:`wx.lib.masked.textctrl.TextCtrl`

|


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


.. class:: MaskedEditAccessorsMixin

   To avoid a ton of boiler-plate, and to automate the getter/setter generation
   for each valid control parameter so we never forget to add the functions when
   adding parameters, this class programmatically adds the masked edit mixin
   parameters to itself.
   (This makes it easier for Designers like Boa to deal with masked controls.)
   
   To further complicate matters, this is done with an extra level of inheritance,
   so that "general" classes like masked.TextCtrl can have all possible attributes,
   while derived classes, like masked.TimeCtrl and masked.NumCtrl can prevent
   exposure of those optional attributes of their base class that do not make
   sense for their derivation.
   
   Therefore, we define:
       BaseMaskedTextCtrl(TextCtrl, MaskedEditMixin)
   and
       masked.TextCtrl(BaseMaskedTextCtrl, MaskedEditAccessorsMixin).
   
   This allows us to then derive:
       masked.NumCtrl( BaseMaskedTextCtrl )
   
   and not have to expose all the same accessor functions for the
   derived control when they don't all make sense for it.