home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1997 November / PCO1197.ISO / FilesBBS / WIN95 / NET_COM / N32E403.EXE / nav40l.z / java40.jar / java / awt / MenuBar.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-09-04  |  1.7 KB  |  102 lines

  1. package java.awt;
  2.  
  3. import java.awt.peer.MenuBarPeer;
  4. import java.util.Vector;
  5.  
  6. public class MenuBar extends MenuComponent implements MenuContainer {
  7.    Vector menus = new Vector();
  8.    Menu helpMenu;
  9.  
  10.    public synchronized void addNotify() {
  11.       super.peer = Toolkit.getDefaultToolkit().createMenuBar(this);
  12.       int var1 = this.countMenus();
  13.  
  14.       for(int var2 = 0; var2 < var1; ++var2) {
  15.          this.getMenu(var2).addNotify();
  16.       }
  17.  
  18.    }
  19.  
  20.    public void removeNotify() {
  21.       int var1 = this.countMenus();
  22.  
  23.       for(int var2 = 0; var2 < var1; ++var2) {
  24.          this.getMenu(var2).removeNotify();
  25.       }
  26.  
  27.       super.removeNotify();
  28.    }
  29.  
  30.    public Menu getHelpMenu() {
  31.       return this.helpMenu;
  32.    }
  33.  
  34.    public synchronized void setHelpMenu(Menu var1) {
  35.       if (this.helpMenu != null) {
  36.          this.helpMenu.removeNotify();
  37.          this.helpMenu.parent = null;
  38.       }
  39.  
  40.       this.helpMenu = var1;
  41.       if (var1 != null) {
  42.          var1.isHelpMenu = true;
  43.          MenuBarPeer var2 = (MenuBarPeer)super.peer;
  44.          if (var2 != null) {
  45.             if (var1.peer == null) {
  46.                var1.addNotify();
  47.             }
  48.  
  49.             var2.addHelpMenu(var1);
  50.          }
  51.       }
  52.  
  53.    }
  54.  
  55.    public synchronized Menu add(Menu var1) {
  56.       if (var1.parent != null) {
  57.          var1.parent.remove(var1);
  58.       }
  59.  
  60.       this.menus.addElement(var1);
  61.       var1.parent = this;
  62.       MenuBarPeer var2 = (MenuBarPeer)super.peer;
  63.       if (var2 != null) {
  64.          if (var1.peer == null) {
  65.             var1.addNotify();
  66.          }
  67.  
  68.          var2.addMenu(var1);
  69.       }
  70.  
  71.       return var1;
  72.    }
  73.  
  74.    public synchronized void remove(int var1) {
  75.       MenuBarPeer var2 = (MenuBarPeer)super.peer;
  76.       if (var2 != null) {
  77.          Menu var3 = this.getMenu(var1);
  78.          var3.removeNotify();
  79.          var3.parent = null;
  80.          var2.delMenu(var1);
  81.       }
  82.  
  83.       this.menus.removeElementAt(var1);
  84.    }
  85.  
  86.    public synchronized void remove(MenuComponent var1) {
  87.       int var2 = this.menus.indexOf(var1);
  88.       if (var2 >= 0) {
  89.          this.remove(var2);
  90.       }
  91.  
  92.    }
  93.  
  94.    public int countMenus() {
  95.       return this.menus.size();
  96.    }
  97.  
  98.    public Menu getMenu(int var1) {
  99.       return (Menu)this.menus.elementAt(var1);
  100.    }
  101. }
  102.