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

==========================================================================================================================================
|phoenix_title|  **wx.EventBlocker**
==========================================================================================================================================

This class is a special event handler which allows discarding any event (or a set of event types) directed to a specific window. 
         

Example: 

::

        def DoSomething(self):
            # block all events directed to this window while
            # we do the 1000 FunctionWhichSendsEvents() calls
            with wx.EventBlocker(self) as blocker:

                for i in xrange(1000):
                    FunctionWhichSendsEvents(i)

            # wx.EventBlocker destructor called on exit from the context
            # manager, old event handlers are restored.

            # the event generated by this call will be processed:
            FunctionWhichSendsEvents(0)










         



.. seealso:: :ref:`How Events are Processed <how events are processed>`, :ref:`wx.EvtHandler`    







|

|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>EventBlocker</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.EventBlocker_inheritance.svg" alt="Inheritance diagram of EventBlocker" 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.EventBlocker.html" title="This class is a special event handler which allows discarding any event (or a set of event types) directed to a specific window." alt="" coords="48,159,195,188"/> <area shape="rect" id="node2" href="wx.EvtHandler.html" title="A class that can handle events from the windowing system." alt="" coords="55,82,188,111"/> <area shape="rect" id="node3" href="wx.Object.html" title="This is the root class of many of the wxWidgets classes." alt="" coords="5,5,104,34"/> <area shape="rect" id="node4" href="wx.Trackable.html" title="Add-on base class for a trackable object." alt="" coords="128,5,251,34"/> </map> 
   </p>
   </div>

|


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

================================================================================ ================================================================================
:meth:`~wx.EventBlocker.__init__`                                                Constructs the blocker for the given window and for the given event type.
:meth:`~wx.EventBlocker.Block`                                                   Adds to the list of event types which should be blocked the given `eventType`.
:meth:`~wx.EventBlocker.__enter__`                                               
:meth:`~wx.EventBlocker.__exit__`                                                
================================================================================ ================================================================================


|


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


.. class:: wx.EventBlocker(EvtHandler)

   **Possible constructors**::

       EventBlocker(win : Window, type: EventType=-1) -> None
       
   
   This class is a special event handler which allows discarding any
   event (or a set of event types) directed to a specific window.



   .. method:: __init__(self, win : Window, type: EventType=-1)

      Constructs the blocker for the given window and for the given event type. 
                 

      If `type`  is  ``wxEVT_ANY`` , then all events for that window are blocked. You can call  :meth:`Block`   after creation to add other event types to the list of events to block. 

      Note that the `win`  window **must**  remain alive until the :ref:`wx.EventBlocker`  object destruction. 
                 


      :param `win`: 
      :type `win`: wx.Window
      :param `type`: 
      :type `type`: wx.EventType




      :rtype: `None`     








   .. method:: Block(self, eventType : EventType)

      Adds to the list of event types which should be blocked the given `eventType`. 
                 


      :param `eventType`: 
      :type `eventType`: wx.EventType




      :rtype: `None`     








   .. method:: __enter__(self)




   .. method:: __exit__(self, exc_type, exc_val, exc_tb)