home *** CD-ROM | disk | FTP | other *** search
- package java.awt;
-
- import java.awt.event.InputEvent;
- import java.awt.event.KeyEvent;
- import java.awt.peer.MenuBarPeer;
- import java.io.IOException;
- import java.io.ObjectInputStream;
- import java.io.ObjectOutputStream;
- import java.util.Enumeration;
- import java.util.Vector;
-
- public class MenuBar extends MenuComponent implements MenuContainer {
- Vector menus = new Vector();
- Menu helpMenu;
- private static final String base = "menubar";
- private static int nameCounter;
- private static final long serialVersionUID = -4930327919388951260L;
- private int menuBarSerializedDataVersion = 1;
-
- public MenuBar() {
- super.name = "menubar" + nameCounter++;
- }
-
- public void addNotify() {
- Object var1 = ((MenuComponent)this).getTreeLock();
- synchronized(var1){}
-
- try {
- if (super.peer == null) {
- super.peer = Toolkit.getDefaultToolkit().createMenuBar(this);
- }
-
- int var3 = this.getMenuCount();
-
- for(int var4 = 0; var4 < var3; ++var4) {
- this.getMenu(var4).addNotify();
- }
- } catch (Throwable var6) {
- throw var6;
- }
-
- }
-
- public void removeNotify() {
- Object var1 = ((MenuComponent)this).getTreeLock();
- synchronized(var1){}
-
- try {
- int var3 = this.getMenuCount();
-
- for(int var4 = 0; var4 < var3; ++var4) {
- this.getMenu(var4).removeNotify();
- }
-
- super.removeNotify();
- } catch (Throwable var6) {
- throw var6;
- }
-
- }
-
- public Menu getHelpMenu() {
- return this.helpMenu;
- }
-
- public void setHelpMenu(Menu var1) {
- Object var2 = ((MenuComponent)this).getTreeLock();
- synchronized(var2){}
-
- try {
- if (this.helpMenu != var1) {
- if (this.helpMenu != null) {
- this.helpMenu.removeNotify();
- this.helpMenu.parent = null;
- }
-
- if (var1.parent != this) {
- this.add(var1);
- }
-
- this.helpMenu = var1;
- if (var1 == null) {
- return;
- }
-
- var1.isHelpMenu = true;
- var1.parent = this;
- MenuBarPeer var4 = (MenuBarPeer)super.peer;
- if (var4 != null) {
- if (var1.peer == null) {
- var1.addNotify();
- }
-
- var4.addHelpMenu(var1);
- }
-
- return;
- }
- } catch (Throwable var6) {
- throw var6;
- }
-
- }
-
- public Menu add(Menu var1) {
- Object var3 = ((MenuComponent)this).getTreeLock();
- synchronized(var3){}
-
- Menu var2;
- try {
- if (var1.parent != null) {
- var1.parent.remove(var1);
- }
-
- this.menus.addElement(var1);
- var1.parent = this;
- MenuBarPeer var5 = (MenuBarPeer)super.peer;
- if (var5 != null) {
- if (var1.peer == null) {
- var1.addNotify();
- }
-
- var5.addMenu(var1);
- }
-
- var2 = var1;
- } catch (Throwable var7) {
- throw var7;
- }
-
- return var2;
- }
-
- public void remove(int var1) {
- Object var2 = ((MenuComponent)this).getTreeLock();
- synchronized(var2){}
-
- try {
- MenuBarPeer var4 = (MenuBarPeer)super.peer;
- if (var4 != null) {
- Menu var5 = this.getMenu(var1);
- var5.removeNotify();
- var5.parent = null;
- var4.delMenu(var1);
- }
-
- this.menus.removeElementAt(var1);
- } catch (Throwable var7) {
- throw var7;
- }
-
- }
-
- public void remove(MenuComponent var1) {
- Object var2 = ((MenuComponent)this).getTreeLock();
- synchronized(var2){}
-
- try {
- int var4 = this.menus.indexOf(var1);
- if (var4 >= 0) {
- this.remove(var4);
- }
- } catch (Throwable var6) {
- throw var6;
- }
-
- }
-
- public int getMenuCount() {
- return this.countMenus();
- }
-
- /** @deprecated */
- public int countMenus() {
- return this.menus.size();
- }
-
- public Menu getMenu(int var1) {
- return (Menu)this.menus.elementAt(var1);
- }
-
- public synchronized Enumeration shortcuts() {
- Vector var1 = new Vector();
- int var2 = this.getMenuCount();
-
- for(int var3 = 0; var3 < var2; ++var3) {
- Enumeration var4 = this.getMenu(var3).shortcuts();
-
- while(var4.hasMoreElements()) {
- var1.addElement(var4.nextElement());
- }
- }
-
- return var1.elements();
- }
-
- public MenuItem getShortcutMenuItem(MenuShortcut var1) {
- int var2 = this.getMenuCount();
-
- for(int var3 = 0; var3 < var2; ++var3) {
- MenuItem var4 = this.getMenu(var3).getShortcutMenuItem(var1);
- if (var4 != null) {
- return var4;
- }
- }
-
- return null;
- }
-
- boolean handleShortcut(KeyEvent var1) {
- int var2 = ((AWTEvent)var1).getID();
- if (var2 != 401 && var2 != 402) {
- return false;
- } else {
- int var3 = Toolkit.getDefaultToolkit().getMenuShortcutKeyMask();
- if ((((InputEvent)var1).getModifiers() & var3) == 0) {
- return false;
- } else {
- int var4 = this.getMenuCount();
-
- for(int var5 = 0; var5 < var4; ++var5) {
- Menu var6 = this.getMenu(var5);
- if (var6.handleShortcut(var1)) {
- return true;
- }
- }
-
- return false;
- }
- }
- }
-
- public void deleteShortcut(MenuShortcut var1) {
- int var2 = this.getMenuCount();
-
- for(int var3 = 0; var3 < var2; ++var3) {
- this.getMenu(var3).deleteShortcut(var1);
- }
-
- }
-
- private void writeObject(ObjectOutputStream var1) throws ClassNotFoundException, IOException {
- var1.defaultWriteObject();
- }
-
- private void readObject(ObjectInputStream var1) throws ClassNotFoundException, IOException {
- var1.defaultReadObject();
-
- for(int var2 = 0; var2 < this.menus.size(); ++var2) {
- Menu var3 = (Menu)this.menus.elementAt(var2);
- var3.parent = this;
- }
-
- }
- }
-