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

.. currentmodule:: wx.lib.agw.flatmenu

.. highlight:: python



.. _wx.lib.agw.flatmenu.FlatMenuBase:

==========================================================================================================================================
|phoenix_title|  **wx.lib.agw.flatmenu.FlatMenuBase**
==========================================================================================================================================

Base class for generic flat menu derived from :class:`PopupWindow`.



|

|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>FlatMenuBase</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.flatmenu.FlatMenuBase_inheritance.png" alt="Inheritance diagram of FlatMenuBase" 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.flatmenu.FlatMenuBase.html" title="wx.lib.agw.flatmenu.FlatMenuBase" alt="" coords="31,547,279,576"/> <area shape="rect" id="node2" href="wx.lib.agw.flatmenu.ShadowPopupWindow.html" title="wx.lib.agw.flatmenu.ShadowPopupWindow" alt="" coords="5,469,305,499"/> <area shape="rect" id="node3" href="wx.PopupWindow.html" title="wx.PopupWindow" alt="" coords="87,392,224,421"/> <area shape="rect" id="node4" href="wx.NonOwnedWindow.html" title="wx.NonOwnedWindow" alt="" coords="71,315,239,344"/> <area shape="rect" id="node5" href="wx.Window.html" title="wx.Window" alt="" coords="107,237,204,267"/> <area shape="rect" id="node6" href="wx.WindowBase.html" title="wx.WindowBase" alt="" coords="91,160,220,189"/> <area shape="rect" id="node7" href="wx.EvtHandler.html" title="wx.EvtHandler" alt="" coords="97,83,214,112"/> <area shape="rect" id="node8" href="wx.Object.html" title="wx.Object" alt="" coords="52,5,139,35"/> <area shape="rect" id="node9" href="wx.Trackable.html" title="wx.Trackable" alt="" coords="163,5,270,35"/> </map> 
   </p>
   </div>

|


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

:class:`wx.lib.agw.flatmenu.FlatMenu`

|


|super_classes| Known Superclasses
==================================

:class:`wx.lib.agw.flatmenu.ShadowPopupWindow`

|


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

================================================================================ ================================================================================
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.__init__`                               Default class constructor.
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.AdjustPosition`                         Adjusts position so the menu will be fully visible on screen.
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.Dismiss`                                Dismisses the popup window.
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.GetMenuOwner`                           Returns the menu logical owner, the owner does not necessarly mean the
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.GetRenderer`                            Returns the renderer for this class.
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.GetRootMenu`                            Returns the top level menu.
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.OnChildDismiss`                         Handles children dismiss.
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.OnDismiss`                              Fires an event ``EVT_FLAT_MENU_DISMISSED`` and handle menu dismiss.
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.Popup`                                  Popups menu at the specified point.
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.ScrollDown`                             Scroll one unit down.
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.ScrollUp`                               Scroll one unit up.
:meth:`~wx.lib.agw.flatmenu.FlatMenuBase.SetOwnerHeight`                         Sets the menu owner height, this will be used to position the menu below
================================================================================ ================================================================================


|


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


.. class:: FlatMenuBase(ShadowPopupWindow)

   Base class for generic flat menu derived from :class:`PopupWindow`.

   .. method:: __init__(self, parent=None)

      Default class constructor.
      
      :param `parent`: the :class:`ShadowPopupWindow` parent window.


   .. method:: AdjustPosition(self, pos)

      Adjusts position so the menu will be fully visible on screen.
      
      :param `pos`: an instance of :class:`wx.Point` specifying the menu position.


   .. method:: Dismiss(self, dismissParent, resetOwner)

      Dismisses the popup window.
      
      :param bool `dismissParent`: whether to dismiss the parent menu or not;
      :param bool `resetOwner`: ``True`` to delete the link between this menu and the
       owner menu, ``False`` otherwise.


   .. method:: GetMenuOwner(self)

      Returns the menu logical owner, the owner does not necessarly mean the
      menu parent, it can also be the window that popped up it.


   .. method:: GetRenderer(self)

      Returns the renderer for this class. 


   .. method:: GetRootMenu(self)

      Returns the top level menu. 


   .. method:: OnChildDismiss(self)

      Handles children dismiss. 


   .. method:: OnDismiss(self)

      Fires an event ``EVT_FLAT_MENU_DISMISSED`` and handle menu dismiss. 


   .. method:: Popup(self, pt, parent)

      Popups menu at the specified point.
      
      :param `pt`: an instance of :class:`wx.Point`, assumed to be in screen coordinates. However,
       if `parent` is not ``None``, `pt` is translated into the screen coordinates using
       `parent.ClientToScreen()`;
      :param `parent`: if not ``None``, an instance of :class:`wx.Window`.


   .. method:: ScrollDown(self)

      Scroll one unit down.
      By default this function is empty, let derived class do something.


   .. method:: ScrollUp(self)

      Scroll one unit up.
      By default this function is empty, let derived class do something.


   .. method:: SetOwnerHeight(self, height)

      Sets the menu owner height, this will be used to position the menu below
      or above the owner.
      
      :param integer `height`: an integer representing the menu owner height.


