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

.. highlight:: python



.. _wx.lib.agw.shapedbutton.__SToggleMixin:

==========================================================================================================================================
|phoenix_title|  **wx.lib.agw.shapedbutton.__SToggleMixin**
==========================================================================================================================================

A mixin that allows to transform any of :class:`SButton`, :class:`SBitmapButton` and
:class:`SBitmapTextButton` in the corresponding toggle buttons.



|

|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>__SToggleMixin</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.shapedbutton.__SToggleMixin_inheritance.png" alt="Inheritance diagram of __SToggleMixin" 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.shapedbutton.__SToggleMixin.html" title="A mixin that allows to transform any of SButton, SBitmapButton and" alt="" coords="5,5,301,35"/> </map> 
   </p>
   </div>

|


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

:class:`wx.lib.agw.shapedbutton.SBitmapTextToggleButton`, :class:`wx.lib.agw.shapedbutton.SBitmapToggleButton`, :class:`wx.lib.agw.shapedbutton.SToggleButton`

|


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

================================================================================ ================================================================================
:meth:`~wx.lib.agw.shapedbutton.__SToggleMixin.GetToggle`                        Returns the toggled state of a button.
:meth:`~wx.lib.agw.shapedbutton.__SToggleMixin.OnKeyDown`                        Handles the ``wx.EVT_KEY_DOWN`` event for the button.
:meth:`~wx.lib.agw.shapedbutton.__SToggleMixin.OnKeyUp`                          Handles the ``wx.EVT_KEY_UP`` event for the button.
:meth:`~wx.lib.agw.shapedbutton.__SToggleMixin.OnLeftDown`                       Handles the ``wx.EVT_LEFT_DOWN`` event for the button.
:meth:`~wx.lib.agw.shapedbutton.__SToggleMixin.OnLeftUp`                         Handles the ``wx.EVT_LEFT_UP`` event for the button.
:meth:`~wx.lib.agw.shapedbutton.__SToggleMixin.OnMotion`                         Handles the ``wx.EVT_MOTION`` event for the button.
:meth:`~wx.lib.agw.shapedbutton.__SToggleMixin.SetToggle`                        Sets the button as toggled/not toggled.
================================================================================ ================================================================================


|


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


.. class:: __SToggleMixin(object)

   A mixin that allows to transform any of :class:`SButton`, :class:`SBitmapButton` and
   :class:`SBitmapTextButton` in the corresponding toggle buttons.

   .. method:: GetToggle(self)

      Returns the toggled state of a button. 


   .. method:: OnKeyDown(self, event)

      Handles the ``wx.EVT_KEY_DOWN`` event for the button.
      
      :param `event`: a :class:`KeyEvent` event to be processed.


   .. method:: OnKeyUp(self, event)

      Handles the ``wx.EVT_KEY_UP`` event for the button.
      
      :param `event`: a :class:`KeyEvent` event to be processed.


   .. method:: OnLeftDown(self, event)

      Handles the ``wx.EVT_LEFT_DOWN`` event for the button.
      
      :param `event`: a :class:`MouseEvent` event to be processed.


   .. method:: OnLeftUp(self, event)

      Handles the ``wx.EVT_LEFT_UP`` event for the button.
      
      :param `event`: a :class:`MouseEvent` event to be processed.


   .. method:: OnMotion(self, event)

      Handles the ``wx.EVT_MOTION`` event for the button.
      
      :param `event`: a :class:`MouseEvent` event to be processed.


   .. method:: SetToggle(self, flag)

      Sets the button as toggled/not toggled.
      
      :param `flag`: ``True`` to set the button as toggled, ``False`` otherwise.