File: ex_menu_bar.rst

package info (click to toggle)
python-enaml 0.19.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 13,284 kB
  • sloc: python: 31,443; cpp: 4,499; makefile: 140; javascript: 68; lisp: 53; sh: 20
file content (41 lines) | stat: -rw-r--r-- 1,694 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
..
  NOTE: This RST file was generated by `make examples`.
  Do not edit it directly.
  See docs/source/examples/example_doc_generator.py

Menu Bar Example
===============================================================================

An example of the ``MenuBar`` widget.

This example demonstrates the use of the ``MenuBar`` widget. A ``MenuBar``
can have an arbitrary number of children, which must be ``Menu`` widgets.
A ``Menu`` can have an arbitrary number of children which must be ``Menu``
widgets or ``Action`` widgets. An ``Menu`` child becomes a submenu, and an
``Action`` is represented as a clickable menu item. A ``MenuBar`` must be
used as the child of a ``MainWindow``.

This example also demonstrates the ``ActionGroup`` widget. An ``ActionGroup``
is used logically group multiple ``Action`` widgets together. Changes to
the ``enabled`` or ``visible`` state of the ``ActionGroup`` apply to all of the
``Action`` widgets in that group. Additionally, the ``ActionGroup`` is the
primary means of making ``Action`` widgets exclusive. The default behavior
of the group is to make all child ``Action`` widgets mutually exclusive.
This can be disabled by setting `exclusive = False` on the ``ActionGroup``.

.. TIP:: To see this example in action, download it from
 :download:`menu_bar <../../../examples/widgets/menu_bar.enaml>`
 and run::

   $ enaml-run menu_bar.enaml


Screenshot
-------------------------------------------------------------------------------

.. image:: images/ex_menu_bar.png

Example Enaml Code
-------------------------------------------------------------------------------
.. literalinclude:: ../../../examples/widgets/menu_bar.enaml
    :language: enaml