.. wxPython Phoenix documentation

   This file was generated by Phoenix's sphinx generator and associated
   tools, do not edit by hand.

   Copyright: (c) 2011-2025 by Total Control Software
   License:   wxWindows License

.. include:: headings.inc

.. currentmodule:: wx.lib.buttons

.. highlight:: python



.. _wx.lib.buttons.__ToggleMixin:

==========================================================================================================================================
|phoenix_title|  **wx.lib.buttons.__ToggleMixin**
==========================================================================================================================================

A mixin that allows to transform :class:`GenButton` in the corresponding
toggle button.



|

|class_hierarchy| Class Hierarchy
=================================

.. raw:: html

   <div class="collabsible-wrapper">
      <input id="collapsible-inheritance" class="collapsible-checkbox" type="checkbox">
      <label for="collapsible-inheritance" tabindex="0" title="Show inheritance diagram" class="collapsible-label">Inheritance diagram for class <strong>__ToggleMixin</strong>:</label>
      <div class="collapsible-content">
         <p class="graphviz">
            <center><img src="_static/images/inheritance/wx.lib.buttons.__ToggleMixin_inheritance.svg" alt="Inheritance diagram of __ToggleMixin" usemap="#dummy" class="inheritance invert-in-dark-mode"/></center>
            <map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.lib.buttons.__ToggleMixin.html" title="A mixin that allows to transform GenButton in the corresponding" alt="" coords="5,5,239,34"/> </map> 
         </p>
      </div>
   </div>
   <script type="text/javascript" src="_static/inheritancetoggle.js"></script>



|


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

:class:`wx.lib.buttons.GenBitmapTextToggleButton`, :class:`wx.lib.buttons.GenBitmapToggleButton`, :class:`wx.lib.buttons.GenToggleButton`

|


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

================================================================================ ================================================================================
:meth:`~wx.lib.buttons.__ToggleMixin.GetToggle`                                  Returns the toggled state of a button.
:meth:`~wx.lib.buttons.__ToggleMixin.OnKeyDown`                                  Handles the ``wx.EVT_KEY_DOWN`` event for :class:`GenButton` when used as toggle button.
:meth:`~wx.lib.buttons.__ToggleMixin.OnKeyUp`                                    Handles the ``wx.EVT_KEY_UP`` event for :class:`GenButton` when used as toggle button.
:meth:`~wx.lib.buttons.__ToggleMixin.OnLeftDown`                                 Handles the ``wx.EVT_LEFT_DOWN`` event for :class:`GenButton` when used as toggle button.
:meth:`~wx.lib.buttons.__ToggleMixin.OnLeftUp`                                   Handles the ``wx.EVT_LEFT_UP`` event for :class:`GenButton` when used as toggle button.
:meth:`~wx.lib.buttons.__ToggleMixin.OnMotion`                                   Handles the ``wx.EVT_MOTION`` event for :class:`GenButton` when used as toggle button.
:meth:`~wx.lib.buttons.__ToggleMixin.SetToggle`                                  Sets the button as toggled/not toggled.
================================================================================ ================================================================================


|


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


.. class:: __ToggleMixin(object)

   A mixin that allows to transform :class:`GenButton` in the corresponding
   toggle button.

   .. method:: GetToggle(self)

      Returns the toggled state of a button.
      
      :return: ``True`` is the button is toggled, ``False`` if it is not toggled.


   .. method:: OnKeyDown(self, event)

      Handles the ``wx.EVT_KEY_DOWN`` event for :class:`GenButton` when used as toggle button.
      
      :param `event`: a :class:`wx.KeyEvent` event to be processed.


   .. method:: OnKeyUp(self, event)

      Handles the ``wx.EVT_KEY_UP`` event for :class:`GenButton` when used as toggle button.
      
      :param `event`: a :class:`wx.KeyEvent` event to be processed.


   .. method:: OnLeftDown(self, event)

      Handles the ``wx.EVT_LEFT_DOWN`` event for :class:`GenButton` when used as toggle button.
      
      :param `event`: a :class:`wx.MouseEvent` event to be processed.


   .. method:: OnLeftUp(self, event)

      Handles the ``wx.EVT_LEFT_UP`` event for :class:`GenButton` when used as toggle button.
      
      :param `event`: a :class:`wx.MouseEvent` event to be processed.


   .. method:: OnMotion(self, event)

      Handles the ``wx.EVT_MOTION`` event for :class:`GenButton` when used as toggle button.
      
      :param `event`: a :class:`wx.MouseEvent` event to be processed.


   .. method:: SetToggle(self, flag)

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


