home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2007 June / SAN CD 6-2007 CD-ROM 25.iso / pc / Software / AstroGrav_Win / Java / jre1.6.0 / lib / rt.jar / sun / awt / EmbeddedFrame.class (.txt) < prev    next >
Encoding:
Java Class File  |  2006-11-29  |  6.1 KB  |  278 lines

  1. package sun.awt;
  2.  
  3. import java.applet.Applet;
  4. import java.awt.AWTKeyStroke;
  5. import java.awt.Component;
  6. import java.awt.Container;
  7. import java.awt.Cursor;
  8. import java.awt.Dialog;
  9. import java.awt.Dimension;
  10. import java.awt.Frame;
  11. import java.awt.Image;
  12. import java.awt.KeyEventDispatcher;
  13. import java.awt.KeyboardFocusManager;
  14. import java.awt.MenuBar;
  15. import java.awt.MenuComponent;
  16. import java.awt.Point;
  17. import java.awt.Rectangle;
  18. import java.awt.event.KeyEvent;
  19. import java.awt.peer.ComponentPeer;
  20. import java.awt.peer.FramePeer;
  21. import java.beans.PropertyChangeEvent;
  22. import java.beans.PropertyChangeListener;
  23. import java.lang.reflect.Field;
  24. import java.security.AccessController;
  25. import java.util.List;
  26. import java.util.Set;
  27.  
  28. public abstract class EmbeddedFrame extends Frame implements KeyEventDispatcher, PropertyChangeListener {
  29.    private boolean isCursorAllowed;
  30.    private static Field fieldPeer;
  31.    private static Field currentCycleRoot;
  32.    private boolean supportsXEmbed;
  33.    private KeyboardFocusManager appletKFM;
  34.    private static final long serialVersionUID = 2967042741780317130L;
  35.    protected static final boolean FORWARD = true;
  36.    protected static final boolean BACKWARD = false;
  37.  
  38.    public boolean supportsXEmbed() {
  39.       return this.supportsXEmbed && SunToolkit.needsXEmbed();
  40.    }
  41.  
  42.    protected EmbeddedFrame(boolean var1) {
  43.       this(0L, var1);
  44.    }
  45.  
  46.    protected EmbeddedFrame() {
  47.       this(0L);
  48.    }
  49.  
  50.    /** @deprecated */
  51.    @Deprecated
  52.    protected EmbeddedFrame(int var1) {
  53.       this((long)var1);
  54.    }
  55.  
  56.    protected EmbeddedFrame(long var1) {
  57.       this(var1, false);
  58.    }
  59.  
  60.    protected EmbeddedFrame(long var1, boolean var3) {
  61.       this.isCursorAllowed = true;
  62.       this.supportsXEmbed = false;
  63.       this.supportsXEmbed = var3;
  64.    }
  65.  
  66.    public Container getParent() {
  67.       return null;
  68.    }
  69.  
  70.    public void propertyChange(PropertyChangeEvent var1) {
  71.       if (var1.getPropertyName().equals("managingFocus")) {
  72.          if (var1.getNewValue() != Boolean.TRUE) {
  73.             this.removeTraversingOutListeners((KeyboardFocusManager)var1.getSource());
  74.             this.appletKFM = KeyboardFocusManager.getCurrentKeyboardFocusManager();
  75.             if (this.isVisible()) {
  76.                this.addTraversingOutListeners(this.appletKFM);
  77.             }
  78.  
  79.          }
  80.       }
  81.    }
  82.  
  83.    private void addTraversingOutListeners(KeyboardFocusManager var1) {
  84.       var1.addKeyEventDispatcher(this);
  85.       var1.addPropertyChangeListener("managingFocus", this);
  86.    }
  87.  
  88.    private void removeTraversingOutListeners(KeyboardFocusManager var1) {
  89.       var1.removeKeyEventDispatcher(this);
  90.       var1.removePropertyChangeListener("managingFocus", this);
  91.    }
  92.  
  93.    public void registerListeners() {
  94.       if (this.appletKFM != null) {
  95.          this.removeTraversingOutListeners(this.appletKFM);
  96.       }
  97.  
  98.       this.appletKFM = KeyboardFocusManager.getCurrentKeyboardFocusManager();
  99.       if (this.isVisible()) {
  100.          this.addTraversingOutListeners(this.appletKFM);
  101.       }
  102.  
  103.    }
  104.  
  105.    public void show() {
  106.       if (this.appletKFM != null) {
  107.          this.addTraversingOutListeners(this.appletKFM);
  108.       }
  109.  
  110.       super.show();
  111.    }
  112.  
  113.    public void hide() {
  114.       if (this.appletKFM != null) {
  115.          this.removeTraversingOutListeners(this.appletKFM);
  116.       }
  117.  
  118.       super.hide();
  119.    }
  120.  
  121.    public boolean dispatchKeyEvent(KeyEvent var1) {
  122.       if (currentCycleRoot == null) {
  123.          currentCycleRoot = (Field)AccessController.doPrivileged(new 1(this));
  124.       }
  125.  
  126.       Container var2 = null;
  127.       if (currentCycleRoot != null) {
  128.          try {
  129.             var2 = (Container)currentCycleRoot.get((Object)null);
  130.          } catch (IllegalAccessException var8) {
  131.             assert false;
  132.          }
  133.       }
  134.  
  135.       if (this != var2) {
  136.          return false;
  137.       } else if (var1.getID() == 400) {
  138.          return false;
  139.       } else if (this.getFocusTraversalKeysEnabled() && !var1.isConsumed()) {
  140.          AWTKeyStroke var3 = AWTKeyStroke.getAWTKeyStrokeForEvent(var1);
  141.          Component var5 = var1.getComponent();
  142.          Component var6 = this.getFocusTraversalPolicy().getLastComponent(this);
  143.          Set var4 = this.getFocusTraversalKeys(0);
  144.          if (var4.contains(var3) && (var5 == var6 || var6 == null) && this.traverseOut(true)) {
  145.             var1.consume();
  146.             return true;
  147.          } else {
  148.             Component var7 = this.getFocusTraversalPolicy().getFirstComponent(this);
  149.             var4 = this.getFocusTraversalKeys(1);
  150.             if (var4.contains(var3) && (var5 == var7 || var7 == null) && this.traverseOut(false)) {
  151.                var1.consume();
  152.                return true;
  153.             } else {
  154.                return false;
  155.             }
  156.          }
  157.       } else {
  158.          return false;
  159.       }
  160.    }
  161.  
  162.    protected boolean traverseOut(boolean var1) {
  163.       return false;
  164.    }
  165.  
  166.    public void setTitle(String var1) {
  167.    }
  168.  
  169.    public void setIconImage(Image var1) {
  170.    }
  171.  
  172.    public void setIconImages(List<? extends Image> var1) {
  173.    }
  174.  
  175.    public void setMenuBar(MenuBar var1) {
  176.    }
  177.  
  178.    public void setResizable(boolean var1) {
  179.    }
  180.  
  181.    public void remove(MenuComponent var1) {
  182.    }
  183.  
  184.    public boolean isResizable() {
  185.       return true;
  186.    }
  187.  
  188.    public void addNotify() {
  189.       synchronized(this.getTreeLock()) {
  190.          if (this.getPeer() == null) {
  191.             this.setPeer(new NullEmbeddedFramePeer((1)null));
  192.          }
  193.  
  194.          super.addNotify();
  195.       }
  196.    }
  197.  
  198.    public void setCursorAllowed(boolean var1) {
  199.       this.isCursorAllowed = var1;
  200.       this.getPeer().updateCursorImmediately();
  201.    }
  202.  
  203.    public boolean isCursorAllowed() {
  204.       return this.isCursorAllowed;
  205.    }
  206.  
  207.    public Cursor getCursor() {
  208.       return this.isCursorAllowed ? super.getCursor() : Cursor.getPredefinedCursor(0);
  209.    }
  210.  
  211.    protected void setPeer(ComponentPeer var1) {
  212.       if (fieldPeer == null) {
  213.          fieldPeer = (Field)AccessController.doPrivileged(new 2(this));
  214.       }
  215.  
  216.       try {
  217.          if (fieldPeer != null) {
  218.             fieldPeer.set(this, var1);
  219.          }
  220.       } catch (IllegalAccessException var3) {
  221.          assert false;
  222.       }
  223.  
  224.    }
  225.  
  226.    public void synthesizeWindowActivation(boolean var1) {
  227.    }
  228.  
  229.    protected void setLocationPrivate(int var1, int var2) {
  230.       Dimension var3 = this.getSize();
  231.       this.setBoundsPrivate(var1, var2, var3.width, var3.height);
  232.    }
  233.  
  234.    protected Point getLocationPrivate() {
  235.       Rectangle var1 = this.getBoundsPrivate();
  236.       return new Point(var1.x, var1.y);
  237.    }
  238.  
  239.    protected void setBoundsPrivate(int var1, int var2, int var3, int var4) {
  240.       FramePeer var5 = (FramePeer)this.getPeer();
  241.       if (var5 != null) {
  242.          var5.setBoundsPrivate(var1, var2, var3, var4);
  243.       }
  244.  
  245.    }
  246.  
  247.    protected Rectangle getBoundsPrivate() {
  248.       FramePeer var1 = (FramePeer)this.getPeer();
  249.       return var1 != null ? var1.getBoundsPrivate() : this.getBounds();
  250.    }
  251.  
  252.    public void toFront() {
  253.    }
  254.  
  255.    public void toBack() {
  256.    }
  257.  
  258.    public abstract void registerAccelerator(AWTKeyStroke var1);
  259.  
  260.    public abstract void unregisterAccelerator(AWTKeyStroke var1);
  261.  
  262.    public static Applet getAppletIfAncestorOf(Component var0) {
  263.       Container var1 = var0.getParent();
  264.  
  265.       Applet var2;
  266.       for(var2 = null; var1 != null && !(var1 instanceof EmbeddedFrame); var1 = var1.getParent()) {
  267.          if (var1 instanceof Applet) {
  268.             var2 = (Applet)var1;
  269.          }
  270.       }
  271.  
  272.       return var1 == null ? null : var2;
  273.    }
  274.  
  275.    public void notifyModalBlocked(Dialog var1, boolean var2) {
  276.    }
  277. }
  278.