1 package siouxsie.mvc;
2
3 import java.util.Collection;
4
5 import javax.swing.JComponent;
6
7 /**
8 * Interface for screen.
9 * @author Arnaud Cogoluegnes
10 * @version $Id$
11 */
12 @SuppressWarnings("unchecked")
13 public interface IScreen {
14
15 /**
16 * GUI widget constructions.
17 */
18 public void buildGUI();
19
20 /**
21 * Init with parameters from the action.
22 */
23 public void initGUI();
24
25 /**
26 * The main panel.
27 * @return
28 */
29 public JComponent getComponent();
30
31 /**
32 * The action trigger which trigger a MVC action.
33 * @param trigger
34 * @todo remove this method from the interface, assigned by DI in the implementations.
35 */
36 public void setActionTrigger(IActionTrigger trigger);
37
38 /**
39 * Display some messages.
40 * @param messages
41 */
42 public void displayMessages(Collection<Message> messages);
43
44 }