home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / java / awt / PopupMenu.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  2.5 KB  |  85 lines

  1. package java.awt;
  2.  
  3. import java.awt.peer.PopupMenuPeer;
  4. import javax.accessibility.AccessibleContext;
  5.  
  6. public class PopupMenu extends Menu {
  7.    private static final String base = "popup";
  8.    static int nameCounter = 0;
  9.    private static final long serialVersionUID = -4620452533522760060L;
  10.  
  11.    public PopupMenu() {
  12.       this("");
  13.    }
  14.  
  15.    public PopupMenu(String var1) {
  16.       super(var1);
  17.    }
  18.  
  19.    String constructComponentName() {
  20.       Class var1 = this.getClass();
  21.       synchronized(var1) {
  22.          String var2 = "popup" + nameCounter++;
  23.          return var2;
  24.       }
  25.    }
  26.  
  27.    public void addNotify() {
  28.       Object var1 = ((MenuComponent)this).getTreeLock();
  29.       synchronized(var1) {
  30.          if (super.parent != null && !(super.parent instanceof Component)) {
  31.             super.addNotify();
  32.          } else {
  33.             if (super.peer == null) {
  34.                super.peer = Toolkit.getDefaultToolkit().createPopupMenu(this);
  35.             }
  36.  
  37.             int var2 = ((Menu)this).getItemCount();
  38.  
  39.             for(int var3 = 0; var3 < var2; ++var3) {
  40.                MenuItem var4 = ((Menu)this).getItem(var3);
  41.                var4.parent = this;
  42.                var4.addNotify();
  43.             }
  44.          }
  45.  
  46.       }
  47.    }
  48.  
  49.    public void show(Component var1, int var2, int var3) {
  50.       MenuContainer var4 = super.parent;
  51.       if (var4 == null) {
  52.          throw new NullPointerException("parent is null");
  53.       } else if (!(var4 instanceof Component)) {
  54.          throw new IllegalArgumentException("PopupMenus with non-Component parents cannot be shown");
  55.       } else {
  56.          Component var5 = (Component)var4;
  57.          if (var5 != var1 && var5 instanceof Container && !((Container)var5).isAncestorOf(var1)) {
  58.             throw new IllegalArgumentException("origin not in parent's hierarchy");
  59.          } else if (var5.getPeer() != null && var5.isShowing()) {
  60.             if (super.peer == null) {
  61.                this.addNotify();
  62.             }
  63.  
  64.             Object var6 = ((MenuComponent)this).getTreeLock();
  65.             synchronized(var6) {
  66.                if (super.peer != null) {
  67.                   ((PopupMenuPeer)super.peer).show(new Event(var1, 0L, 501, var2, var3, 0, 0));
  68.                }
  69.  
  70.             }
  71.          } else {
  72.             throw new RuntimeException("parent not showing on screen");
  73.          }
  74.       }
  75.    }
  76.  
  77.    public AccessibleContext getAccessibleContext() {
  78.       if (super.accessibleContext == null) {
  79.          super.accessibleContext = new AccessibleAWTPopupMenu(this);
  80.       }
  81.  
  82.       return super.accessibleContext;
  83.    }
  84. }
  85.