1 package org.columba.core.gui.menu; 19 20 import java.awt.event.ActionEvent ; 21 22 import javax.swing.JCheckBoxMenuItem ; 23 import javax.swing.JFrame ; 24 import javax.swing.JMenuItem ; 25 import javax.swing.JRadioButtonMenuItem ; 26 27 import org.columba.core.gui.action.AbstractColumbaAction; 28 29 public class MenuTest { 30 private static final String MENUID1 = "menu1"; 31 32 private static final String MENUID2 = "menu2"; 33 34 private static final String PLACEHOLDER1 = "placeholder1"; 35 36 private static final String PLACEHOLDER2 = "placeholder2"; 37 38 private ExtendableMenu createMenu() { 39 40 ExtendableMenu menu = new ExtendableMenu(MENUID1, "menu2"); 41 42 menu.add(new JMenuItem ("test1")); 43 menu.add(new JCheckBoxMenuItem ("test2")); 44 menu.addPlaceholder(PLACEHOLDER1); 45 menu.add(new JRadioButtonMenuItem ("test4")); 46 47 menu.insert(createAction("sub-test1"), PLACEHOLDER1); 48 49 ExtendableMenu submenu = new ExtendableMenu(MENUID2, "sublabel1"); 50 51 submenu.add(createAction("test5")); 52 submenu.addPlaceholder(PLACEHOLDER2); 53 menu.add(submenu); 54 55 submenu.insert(createAction("sub-test2"), PLACEHOLDER2); 56 57 menu.add(createAction("test7")); 58 59 return menu; 60 } 61 62 65 public static void main(String [] args) { 66 MenuTest test = new MenuTest(); 67 68 ExtendableMenu menu = test.createMenu(); 69 70 JFrame frame = new JFrame (); 71 frame.setSize(640, 480); 72 ExtendableMenuBar mb = new ExtendableMenuBar(); 73 mb.add(menu); 74 75 mb.insertMenuItem(MENUID1, PLACEHOLDER1, new JMenuItem ("dynamic item")); 76 mb.insertMenuItem(MENUID2, PLACEHOLDER2, new JMenuItem ( 77 "dynamic subitem 2")); 78 79 frame.setJMenuBar(mb); 80 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 81 frame.setLocationRelativeTo(null); 82 frame.setVisible(true); 83 } 84 85 private TestAction createAction(String str) { 86 return new TestAction(str); 87 } 88 89 class TestAction extends AbstractColumbaAction { 90 public TestAction(String str) { 91 super(null, str); 92 } 93 94 public void actionPerformed(ActionEvent e) { 95 } 97 } 98 } 99 | Popular Tags |