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 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
""" The default action controller for menus, menu bars and tool bars. """
# Enthought library imports.
from traits.api import HasTraits
class ActionController(HasTraits):
""" The default action controller for menus, menu bars and tool bars. """
###########################################################################
# 'ActionController' interface.
###########################################################################
def perform(self, action, event):
""" Control an action invocation.
Parameters
----------
action : Action instance
The action to perform.
event : ActionEvent instance
The event that triggered the action.
Returns
-------
result : any
The result of the action's perform method (usually None).
"""
return action.perform(event)
def can_add_to_menu(self, action):
""" Can add an action to a menu
Parameters
----------
action : Action instance
The action to consider.
Returns
-------
can_add : bool
``True` if the action can be added to a menu/menubar.
"""
return True
def add_to_menu(self, action):
""" Called when an action is added to the a menu/menubar.
Parameters
----------
action : Action instance
The action added to the menu.
"""
pass
def can_add_to_toolbar(self, action):
""" Returns True if the action can be added to a toolbar.
Parameters
----------
action : Action instance
The action to consider.
Returns
-------
can_add : bool
``True` if the action can be added to a toolbar.
"""
return True
def add_to_toolbar(self, action):
""" Called when an action is added to the a toolbar.
Parameters
----------
action : Action instance
The action added to the toolbar.
"""
pass
|