======================
GuideBarMenu (hwx.gui)
======================

Clickable Menu that can be added to a GuideBar.

Inherits:
  - :ref:`Widget (hwx.gui)`

----------
Properties
----------

  +---------------+---------------+---------------+
  | anchorbutton_ | autohide_     | autoshow_     |
  +---------------+---------------+---------------+
  | icon_         | text_         |               |
  +---------------+---------------+---------------+

--------------
Public Methods
--------------

  +-----------------------------------------+
  | button_ (self, **kwds)                  |
  +-----------------------------------------+
  | checkBox_ (self, checked=False, **kwds) |
  +-----------------------------------------+
  | widget_ (self, widget, stretch=0)       |
  +-----------------------------------------+

----------------
Property Details
----------------

.. _anchorbutton:
.. property:: anchorbutton

The button in the guide bar associated with this menu.
    

.. _autohide:
.. property:: autohide

Determines whether the menu will close automatically if a menu item 
or item outside the menu is clicked or if a second menu is displayed.

.. _autoshow:
.. property:: autoshow

Determines whether to automatically show the menu when its anchor button is clicked.
    

.. _icon:
.. property:: icon

The name of icon file or predefined icon to assigned to the anchor button.
    

.. _text:
.. property:: text

The text to display on the anchor button.
    

--------------
Method Details
--------------

.. _button:
.. method:: button(self, **kwds)

Adds a button to the Guide bar menu layout.

:param kwds: Any other properties needed to be set for the Button.
:type kwds: dict

:returns: The added button.
:rtype: Button


.. _checkBox:
.. method:: checkBox(self, checked=False, **kwds)

Adds a checkbox to the Guide bar menu layout.

:param checked: Determines whether the button is checked or not.
:type checked: bool
:param kwds: Any other properties needed to be set for the check box.
:type kwds: dict

:returns: The check box.
:rtype: Button


.. _widget:
.. method:: widget(self, widget, stretch=0)

Adds a widget to self.

:param widget: The widget to add to the layout.
            It is expected to be a child of the wrapped widget.
:type widget: Widget
:param stretch: The stretch value of the widget that will be added.
:type stretch: int

:returns: The added widget.
:rtype: Widget