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 / Component$NativeInLightFixer.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  2.2 KB  |  110 lines

  1. package java.awt;
  2.  
  3. import java.awt.event.ComponentEvent;
  4. import java.awt.event.ComponentListener;
  5. import java.awt.event.ContainerEvent;
  6. import java.awt.event.ContainerListener;
  7. import java.awt.peer.LightweightPeer;
  8. import java.util.Vector;
  9.  
  10. final class Component$NativeInLightFixer implements ComponentListener, ContainerListener {
  11.    Vector lightParents;
  12.    Container nativeHost;
  13.    // $FF: synthetic field
  14.    private final Component this$0;
  15.  
  16.    Component$NativeInLightFixer(Component var1) {
  17.       this.this$0 = var1;
  18.       this.lightParents = new Vector();
  19.  
  20.       Container var2;
  21.       for(var2 = var1.parent; var2.peer instanceof LightweightPeer; var2 = var2.parent) {
  22.          ((Component)var2).addComponentListener(this);
  23.          var2.addContainerListener(this);
  24.          this.lightParents.addElement(var2);
  25.       }
  26.  
  27.       this.nativeHost = var2;
  28.       var2.addContainerListener(this);
  29.       this.componentMoved((ComponentEvent)null);
  30.    }
  31.  
  32.    public void componentResized(ComponentEvent var1) {
  33.    }
  34.  
  35.    public void componentMoved(ComponentEvent var1) {
  36.       Object var2 = this.this$0.getTreeLock();
  37.       synchronized(var2) {
  38.          int var3 = this.this$0.x;
  39.          int var4 = this.this$0.y;
  40.  
  41.          for(Container var5 = this.this$0.parent; var5 != null && var5.peer instanceof LightweightPeer; var5 = var5.parent) {
  42.             var3 += var5.x;
  43.             var4 += var5.y;
  44.          }
  45.  
  46.          if (this.this$0.peer != null) {
  47.             this.this$0.peer.setBounds(var3, var4, this.this$0.width, this.this$0.height);
  48.          }
  49.  
  50.       }
  51.    }
  52.  
  53.    public void componentShown(ComponentEvent var1) {
  54.       if (this.this$0.isShowing()) {
  55.          Object var2 = this.this$0.getTreeLock();
  56.          synchronized(var2) {
  57.             if (this.this$0.peer != null) {
  58.                this.this$0.peer.show();
  59.             }
  60.          }
  61.       }
  62.  
  63.    }
  64.  
  65.    public void componentHidden(ComponentEvent var1) {
  66.       if (this.this$0.visible) {
  67.          Object var2 = this.this$0.getTreeLock();
  68.          synchronized(var2) {
  69.             if (this.this$0.peer != null) {
  70.                this.this$0.peer.hide();
  71.             }
  72.          }
  73.       }
  74.  
  75.    }
  76.  
  77.    public void componentAdded(ContainerEvent var1) {
  78.    }
  79.  
  80.    public void componentRemoved(ContainerEvent var1) {
  81.       Component var2 = var1.getChild();
  82.       if (var2 == this.this$0) {
  83.          this.removeReferences();
  84.       } else {
  85.          int var3 = this.lightParents.size();
  86.  
  87.          for(int var4 = 0; var4 < var3; ++var4) {
  88.             Container var5 = (Container)this.lightParents.elementAt(var4);
  89.             if (var5 == var2) {
  90.                this.removeReferences();
  91.                break;
  92.             }
  93.          }
  94.       }
  95.  
  96.    }
  97.  
  98.    void removeReferences() {
  99.       int var1 = this.lightParents.size();
  100.  
  101.       for(int var2 = 0; var2 < var1; ++var2) {
  102.          Container var3 = (Container)this.lightParents.elementAt(var2);
  103.          ((Component)var3).removeComponentListener(this);
  104.          var3.removeContainerListener(this);
  105.       }
  106.  
  107.       this.nativeHost.removeContainerListener(this);
  108.    }
  109. }
  110.