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

==========================================================================================================================================
|phoenix_title|  **wx.PowerEvent**
==========================================================================================================================================

The power events are generated when the system power state changes, e.g. 
         

the system is suspended, hibernated, plugged into or unplugged from the wall socket and so on. PowerEvents are emitted by Windows. 

Notice that currently these events are generated only under MSW, Linux and MacOS (cocoa). Under Linux and MacOS you `must`  use :meth:`wx.PowerResource.Acquire`   to receive them, e.g. typically an application interested in these events should initialize :ref:`wx.PowerResourceBlocker`  for ``POWER_RESOURCE_SYSTEM``  resource using ``POWER_DELAY``  block kind when initializing either the application itself or its main window. E.g. for an application that wants to handle suspend to gracefully close the open network connections and then reopen them on resume you could do 



To avoid the need to change the code using this event later when these events are implemented on the other platforms please use the test  ``ifdef wxHAS_POWER_EVENTS``   instead of directly testing for the platform in your code: this symbol will be defined for all platforms supporting the power events. 







.. _PowerEvent-events:

|events| Events Emitted by this Class
=====================================

Handlers bound for the following event types will receive a :ref:`wx.PowerEvent` parameter.

 

- EVT_POWER_SUSPENDING: 

  .. warning:: This event and the possibility to veto suspend was removed from MSW systems starting from Windows Vista. :ref:`wx.PowerResourceBlocker`  can be used to prevent the system from suspending under both XP and later systems, use it instead of handling this event.  


- EVT_POWER_SUSPENDED: System is about to suspend: normally the application should quickly (i.e. without user intervention) close all the open files and network connections here, possibly remembering them to reopen them later when the system is resumed.  
- EVT_POWER_SUSPEND_CANCEL: 

  .. warning:: This event is currently never generated.  


- EVT_POWER_RESUME: System resumed from suspend: normally the application should restore the state in which it had been before the suspension.  









         



.. seealso:: `wx.GetPowerType`     , `wx.GetBatteryState`         







|

|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>PowerEvent</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.PowerEvent_inheritance.svg" alt="Inheritance diagram of PowerEvent" 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.PowerEvent.html" title="The power events are generated when the system power state changes, e.g." alt="" coords="5,159,145,188"/> <area shape="rect" id="node2" href="wx.Event.html" title="An event is a structure holding information about an event passed to a callback or member function." alt="" coords="28,82,122,111"/> <area shape="rect" id="node3" href="wx.Object.html" title="This is the root class of many of the wxWidgets classes." alt="" coords="26,5,125,34"/> </map> 
   </p>
   </div>

|


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

================================================================================ ================================================================================
:meth:`~wx.PowerEvent.__init__`                                                  
:meth:`~wx.PowerEvent.IsVetoed`                                                  Returns whether Veto has been called.
:meth:`~wx.PowerEvent.Veto`                                                      Call this to prevent suspend from taking place in  ``wxEVT_POWER_SUSPENDING``   handler (it is ignored for all the others).
================================================================================ ================================================================================


|


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


.. class:: wx.PowerEvent(Event)

   **Possible constructors**::

       PowerEvent() -> None
       
       PowerEvent(evtType) -> None
       
   
   The power events are generated when the system power state changes,
   e.g.



   .. method:: __init__(self, *args, **kw)



      |overload| **Overloaded Implementations:**

      :html:`<hr class="overloadsep" /><br />`

      
      **__init__** `(self)`
      
      
      
      :rtype: `None`     
      
      
      
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`

      
      **__init__** `(self, evtType)`
      
      
      
      
      :param `evtType`: 
      :type `evtType`: wx.EventType
      
      
      
      
      :rtype: `None`     
      
      
      
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`






   .. method:: IsVetoed(self)

      Returns whether Veto has been called. 
                 

      :rtype: `bool`








   .. method:: Veto(self)

      Call this to prevent suspend from taking place in  ``wxEVT_POWER_SUSPENDING``   handler (it is ignored for all the others).  
                 

      :rtype: `None`     







