1 package siouxsie.mvc;
2
3 import java.beans.PropertyChangeListener;
4 import java.util.Map;
5
6 /**
7 * Facility interface for launching action in {@link IScreen}
8 * The {@link IActionTrigger} implementation is usually injected using the XW DI system.
9 * @author Arnaud Cogoluegnes
10 * @version $Id$
11 */
12 public interface IActionTrigger {
13
14 public static final String PROPERTY_ACTION_TRIGGER_DESCRIPTION = "actionTriggerDescription";
15
16 /**
17 * Add a listener.
18 * @param listener
19 */
20 public void addPropertyChangeListener(PropertyChangeListener listener);
21
22 /**
23 * Add a listener.
24 * @param listener
25 */
26 public void removePropertyChangeListener(PropertyChangeListener listener);
27
28 /**
29 * Launch an action.
30 * @param actionName
31 * @param nameSpace
32 * @param parameters
33 */
34 public void triggerActionLaunch(String actionName,String nameSpace,Map<?,?> parameters);
35
36 /**
37 *
38 * @todo really necessary?
39 * @return
40 */
41 public ActionTriggerDescription getActionTriggerDescription();
42
43 }