diff options
Diffstat (limited to 'javax/swing/JMenu.java')
-rw-r--r-- | javax/swing/JMenu.java | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/javax/swing/JMenu.java b/javax/swing/JMenu.java index 72ce22acc..7fbaba179 100644 --- a/javax/swing/JMenu.java +++ b/javax/swing/JMenu.java @@ -140,7 +140,8 @@ public class JMenu extends JMenuItem implements Accessible, MenuElement */ public JMenu(String text, boolean tearoff) { - throw new Error("not implemented"); + // FIXME: tearoff not implemented + this(text); } private void writeObject(ObjectOutputStream stream) throws IOException @@ -644,16 +645,28 @@ public class JMenu extends JMenuItem implements Accessible, MenuElement } /** + * Returns all registered <code>MenuListener</code> objects. + * + * @return an array of listeners + * + * @since 1.4 + */ + public MenuListener[] getMenuListeners() + { + return (MenuListener[]) listenerList.getListeners(MenuListener.class); + } + + /** * This method fires MenuEvents to all menu's MenuListeners. In this case * menuSelected() method of MenuListeners is called to indicated that the menu * was selected. */ protected void fireMenuSelected() { - EventListener[] ll = listenerList.getListeners(MenuListener.class); + MenuListener[] listeners = getMenuListeners(); - for (int i = 0; i < ll.length; i++) - ((MenuListener) ll[i]).menuSelected(menuEvent); + for (int index = 0; index < listeners.length; ++index) + listeners[index].menuSelected(menuEvent); } /** |