home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 1999 April / DPPCPRO0499.ISO / April / Notes / 50b2wic.exe / DATA1.CAB / NotesProgramFilesJavaSupport / rt.jar / java / awt / Component$NativeInLightFixer.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-04-23  |  2.5 KB  |  121 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.    // $FF: synthetic field
  12.    private final Component this$0;
  13.    Vector lightParents;
  14.    Container nativeHost;
  15.  
  16.    Component$NativeInLightFixer(Component var1) {
  17.       this.this$0 = var1;
  18.       this.this$0 = var1;
  19.       this.lightParents = new Vector();
  20.  
  21.       Container var2;
  22.       for(var2 = var1.parent; var2.peer instanceof LightweightPeer; var2 = var2.parent) {
  23.          ((Component)var2).addComponentListener(this);
  24.          var2.addContainerListener(this);
  25.          this.lightParents.addElement(var2);
  26.       }
  27.  
  28.       this.nativeHost = var2;
  29.       var2.addContainerListener(this);
  30.       this.componentMoved((ComponentEvent)null);
  31.    }
  32.  
  33.    public void componentResized(ComponentEvent var1) {
  34.    }
  35.  
  36.    public void componentMoved(ComponentEvent var1) {
  37.       Object var2 = this.this$0.getTreeLock();
  38.       synchronized(var2){}
  39.  
  40.       try {
  41.          int var4 = this.this$0.x;
  42.          int var5 = this.this$0.y;
  43.  
  44.          for(Container var6 = this.this$0.parent; var6 != null && var6.peer instanceof LightweightPeer; var6 = var6.parent) {
  45.             var4 += var6.x;
  46.             var5 += var6.y;
  47.          }
  48.  
  49.          this.this$0.peer.setBounds(var4, var5, this.this$0.width, this.this$0.height);
  50.       } catch (Throwable var8) {
  51.          throw var8;
  52.       }
  53.  
  54.    }
  55.  
  56.    public void componentShown(ComponentEvent var1) {
  57.       if (this.this$0.isShowing()) {
  58.          Object var2 = this.this$0.getTreeLock();
  59.          synchronized(var2){}
  60.  
  61.          try {
  62.             if (this.this$0.peer != null) {
  63.                this.this$0.peer.show();
  64.             }
  65.          } catch (Throwable var4) {
  66.             throw var4;
  67.          }
  68.  
  69.       }
  70.    }
  71.  
  72.    public void componentHidden(ComponentEvent var1) {
  73.       if (this.this$0.visible) {
  74.          Object var2 = this.this$0.getTreeLock();
  75.          synchronized(var2){}
  76.  
  77.          try {
  78.             if (this.this$0.peer != null) {
  79.                this.this$0.peer.hide();
  80.             }
  81.          } catch (Throwable var4) {
  82.             throw var4;
  83.          }
  84.  
  85.       }
  86.    }
  87.  
  88.    public void componentAdded(ContainerEvent var1) {
  89.    }
  90.  
  91.    public void componentRemoved(ContainerEvent var1) {
  92.       Component var2 = var1.getChild();
  93.       if (var2 == this.this$0) {
  94.          this.removeReferences();
  95.       } else {
  96.          int var3 = this.lightParents.size();
  97.  
  98.          for(int var4 = 0; var4 < var3; ++var4) {
  99.             Container var5 = (Container)this.lightParents.elementAt(var4);
  100.             if (var5 == var2) {
  101.                this.removeReferences();
  102.                return;
  103.             }
  104.          }
  105.  
  106.       }
  107.    }
  108.  
  109.    void removeReferences() {
  110.       int var1 = this.lightParents.size();
  111.  
  112.       for(int var2 = 0; var2 < var1; ++var2) {
  113.          Container var3 = (Container)this.lightParents.elementAt(var2);
  114.          ((Component)var3).removeComponentListener(this);
  115.          var3.removeContainerListener(this);
  116.       }
  117.  
  118.       this.nativeHost.removeContainerListener(this);
  119.    }
  120. }
  121.