# Context Menu Example

An example of using the `Menu` widget as a context menu.

Tip

To see this example in action, download it from `context_menu` and run:

    $ enaml-run context_menu.enaml

## Screenshot

## Example Enaml Code

    #------------------------------------------------------------------------------
    # Copyright (c) 2013-2025, Nucleic Development Team.
    #
    # Distributed under the terms of the Modified BSD License.
    #
    # The full license is in the file LICENSE, distributed with this software.
    #------------------------------------------------------------------------------
    """ An example of using the `Menu` widget as a context menu.

    << autodoc-me >>
    """
    from __future__ import print_function
    from enaml.widgets.api import Window, Container, Field, Menu, Action

    enamldef SampleAction(Action):
        text = '%s action %d' % (parent.title, parent.children.index(self))
        triggered :: print(text)

    enamldef SampleMenu(Menu):
        SampleAction: pass
        SampleAction: pass
        SampleAction: pass

    enamldef Main(Window):
        Container:
            Field:
                text = 'foo'
            Field:
                text = 'bar'
                SampleMenu:
                    title = 'bar'
                    context_menu = True
            Field:
                text = 'baz'
                SampleMenu:
                    title = 'baz'
                    context_menu = True