comparison agent/src/share/classes/com/sun/java/swing/ui/CommonMenuBar.java @ 258:54499b980c23

6710791: Remove files or build from source:maf-1_0.jar, jlfg-1_0.jar Summary: Removed maf-1_0.jar and jlfg-1_0.jar files. Reviewed-by: poonam, jjh
author swamyv
date Tue, 29 Jul 2008 13:54:27 -0700
parents
children c18cbe5936b8
comparison
equal deleted inserted replaced
235:9c2ecc2ffb12 258:54499b980c23
1 /*
2 * Copyright 2000-2008 Sun Microsystems, Inc. All Rights Reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation.
8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
20 * CA 95054 USA or visit www.sun.com if you need additional information or
21 * have any questions.
22 *
23 */
24
25
26 package com.sun.java.swing.ui;
27
28 import com.sun.java.swing.action.ActionManager;
29 import com.sun.java.swing.action.StateChangeAction;
30 import javax.swing.*;
31
32 // Referenced classes of package com.sun.java.swing.ui:
33 // ToggleActionPropertyChangeListener, StatusBar
34
35 public abstract class CommonMenuBar extends JMenuBar
36 {
37
38 protected CommonMenuBar(ActionManager manager)
39 {
40 this(manager, StatusBar.getInstance());
41 }
42
43 protected CommonMenuBar(ActionManager manager, StatusBar status)
44 {
45 this.manager = manager;
46 statusBar = status;
47 configureMenu();
48 }
49
50 protected abstract void configureMenu();
51
52 protected void configureToggleMenuItem(JMenuItem menuItem, Action action)
53 {
54 configureMenuItem(menuItem, action);
55 action.addPropertyChangeListener(new ToggleActionPropertyChangeListener(menuItem));
56 }
57
58 protected void configureMenuItem(JMenuItem menuItem, Action action)
59 {
60 menuItem.addMouseListener(statusBar);
61 }
62
63 protected JMenu createMenu(String name, char mnemonic)
64 {
65 JMenu menu = new JMenu(name);
66 menu.setMnemonic(mnemonic);
67 return menu;
68 }
69
70 protected void addMenuItem(JMenu menu, Action action)
71 {
72 JMenuItem menuItem = menu.add(action);
73 configureMenuItem(menuItem, action);
74 }
75
76 protected void addCheckBoxMenuItem(JMenu menu, StateChangeAction a)
77 {
78 addCheckBoxMenuItem(menu, a, false);
79 }
80
81 protected void addCheckBoxMenuItem(JMenu menu, StateChangeAction a, boolean selected)
82 {
83 JCheckBoxMenuItem mi = new JCheckBoxMenuItem(a);
84 mi.addItemListener(a);
85 mi.setSelected(selected);
86 menu.add(mi);
87 configureToggleMenuItem(mi, a);
88 }
89
90 protected void addRadioButtonMenuItem(JMenu menu, ButtonGroup group, StateChangeAction a)
91 {
92 addRadioButtonMenuItem(menu, group, a, false);
93 }
94
95 protected void addRadioButtonMenuItem(JMenu menu, ButtonGroup group, StateChangeAction a, boolean selected)
96 {
97 JRadioButtonMenuItem mi = new JRadioButtonMenuItem(a);
98 mi.addItemListener(a);
99 mi.setSelected(selected);
100 menu.add(mi);
101 if(group != null)
102 group.add(mi);
103 configureToggleMenuItem(mi, a);
104 }
105
106 protected ActionManager manager;
107 private StatusBar statusBar;
108 }