1 /*
2 * $Header$
3 * $Revision: 1998 $
4 * $Date: 2008-03-06 13:18:03 +0100 (Thu, 06 Mar 2008) $
5 *
6 * Copyright Computer Science Innovations (CSI), 2004. All rights reserved.
7 */
8 package org.springframework.richclient.factory;
9
10 import javax.swing.JCheckBoxMenuItem;
11 import javax.swing.JMenu;
12 import javax.swing.JMenuBar;
13 import javax.swing.JMenuItem;
14 import javax.swing.JPopupMenu;
15 import javax.swing.JRadioButtonMenuItem;
16
17 /**
18 * Marker for menu factories.
19 *
20 * @author Keith Donald
21 */
22 public interface MenuFactory {
23
24 /**
25 * Create a menu.
26 */
27 public JMenu createMenu();
28
29 /**
30 * Create a menu item.
31 */
32 public JMenuItem createMenuItem();
33
34 /**
35 * Create a menu item with a checkbox LaF.
36 */
37 public JCheckBoxMenuItem createCheckBoxMenuItem();
38
39 /**
40 * Create a menu item with a radio button LaF.
41 */
42 public JRadioButtonMenuItem createRadioButtonMenuItem();
43
44 /**
45 * Create a popup menu most commonly used when with the mouse.
46 */
47 public JPopupMenu createPopupMenu();
48
49 /**
50 * Create a menu bar.
51 */
52 public JMenuBar createMenuBar();
53
54 }