/** * Sets the specified menu to be this menu bar's help menu. * If this menu bar has an existing help menu, the old help menu is * removed from the menu bar, and replaced with the specified menu. * @param m the menu to be set as the help menu */ public void setHelpMenu(Menu m) { synchronized (getTreeLock()) { if (helpMenu == m) { return; } if (helpMenu != null) { remove(helpMenu); } if (m.parent != this) { add(m); } helpMenu = m; if (m != null) { m.isHelpMenu = true; m.parent = this; MenuBarPeer peer = (MenuBarPeer)this.peer; if (peer != null) { if (m.peer == null) { m.addNotify(); } peer.addHelpMenu(m); } } } }
/** * Adds the specified menu to the menu bar. * If the menu has been part of another menu bar, * removes it from that menu bar. * * @param m the menu to be added * @return the menu added * @see java.awt.MenuBar#remove(int) * @see java.awt.MenuBar#remove(java.awt.MenuComponent) */ public Menu add(Menu m) { synchronized (getTreeLock()) { if (m.parent != null) { m.parent.remove(m); } menus.addElement(m); m.parent = this; MenuBarPeer peer = (MenuBarPeer)this.peer; if (peer != null) { if (m.peer == null) { m.addNotify(); } peer.addMenu(m); } return m; } }
/** * Sets the specified menu to be this menu bar's help menu. * If this menu bar has an existing help menu, the old help menu is * removed from the menu bar, and replaced with the specified menu. * @param m the menu to be set as the help menu */ public void setHelpMenu(final Menu m) { synchronized (getTreeLock()) { if (helpMenu == m) { return; } if (helpMenu != null) { remove(helpMenu); } helpMenu = m; if (m != null) { if (m.parent != this) { add(m); } m.isHelpMenu = true; m.parent = this; MenuBarPeer peer = (MenuBarPeer)this.peer; if (peer != null) { if (m.peer == null) { m.addNotify(); } peer.addHelpMenu(m); } } } }
/** * Removes the menu located at the specified * index from this menu bar. * @param index the position of the menu to be removed. * @see java.awt.MenuBar#add(java.awt.Menu) */ public void remove(final int index) { synchronized (getTreeLock()) { Menu m = getMenu(index); menus.removeElementAt(index); MenuBarPeer peer = (MenuBarPeer)this.peer; if (peer != null) { m.removeNotify(); m.parent = null; peer.delMenu(index); } if (helpMenu == m) { helpMenu = null; m.isHelpMenu = false; } } }
/** * Adds the specified menu to the menu bar. * If the menu has been part of another menu bar, * removes it from that menu bar. * * @param m the menu to be added * @return the menu added * @see java.awt.MenuBar#remove(int) * @see java.awt.MenuBar#remove(java.awt.MenuComponent) */ public Menu add(Menu m) { synchronized (getTreeLock()) { if (m.parent != null) { m.parent.remove(m); } m.parent = this; MenuBarPeer peer = (MenuBarPeer)this.peer; if (peer != null) { if (m.peer == null) { m.addNotify(); } menus.addElement(m); peer.addMenu(m); } else { menus.addElement(m); } return m; } }
/** * Removes the menu located at the specified * index from this menu bar. * @param index the position of the menu to be removed. * @see java.awt.MenuBar#add(java.awt.Menu) */ public void remove(final int index) { synchronized (getTreeLock()) { Menu m = getMenu(index); menus.removeElementAt(index); MenuBarPeer peer = (MenuBarPeer)this.peer; if (peer != null) { peer.delMenu(index); m.removeNotify(); } m.parent = null; if (helpMenu == m) { helpMenu = null; m.isHelpMenu = false; } } }
/** * Removes the menu located at the specified * index from this menu bar. * @param index the position of the menu to be removed. * @see java.awt.MenuBar#add(java.awt.Menu) */ public void remove(final int index) { synchronized (getTreeLock()) { Menu m = getMenu(index); menus.removeElementAt(index); MenuBarPeer peer = (MenuBarPeer)this.peer; if (peer != null) { peer.delMenu(index); m.removeNotify(); m.parent = null; } if (helpMenu == m) { helpMenu = null; m.isHelpMenu = false; } } }
/** * Sets the help menu for this menu bar. * * @param menu the new help menu for this menu bar */ public synchronized void setHelpMenu(Menu menu) { MenuBarPeer myPeer = (MenuBarPeer) getPeer (); if (helpMenu != null) { if (myPeer != null) helpMenu.removeNotify(); helpMenu.setParent(null); } helpMenu = menu; MenuContainer parent = menu.getParent(); if (parent != null) parent.remove(menu); menu.setParent(this); if (myPeer != null) { menu.addNotify(); myPeer.addHelpMenu(menu); } }
/** * Add a menu to this MenuBar. If the menu has already has a * parent, it is first removed from its old parent before being * added. * * @param menu the menu to add * * @return the menu that was added */ public synchronized Menu add(Menu menu) { MenuBarPeer myPeer = (MenuBarPeer) getPeer (); MenuContainer parent = menu.getParent(); if (parent != null) parent.remove(menu); menus.addElement(menu); menu.setParent(this); if (myPeer != null) { menu.addNotify(); myPeer.addMenu(menu); } return menu; }
/** * Creates this object's native peer. */ public void addNotify() { MenuBarPeer peer = (MenuBarPeer) getPeer(); if (peer == null) { peer = getToolkit().createMenuBar(this); setPeer(peer); } Enumeration e = menus.elements(); while (e.hasMoreElements()) { Menu mi = (Menu)e.nextElement(); mi.addNotify(); peer.addMenu(mi); } if (helpMenu != null) { helpMenu.addNotify(); peer.addHelpMenu(helpMenu); } }