home *** CD-ROM | disk | FTP | other *** search
/ Symantec Visual Cafe for Java 2.5 / symantec-visual-cafe-2.5-database-dev-edition.iso / VPage / Java.bin / CLASSES.ZIP / java / awt / Component$NativeInLightFixer.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-07-08  |  2.5 KB  |  120 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.    }
  31.  
  32.    public void componentResized(ComponentEvent var1) {
  33.    }
  34.  
  35.    public void componentMoved(ComponentEvent var1) {
  36.       Object var2 = Component.LOCK;
  37.       synchronized(var2){}
  38.  
  39.       try {
  40.          int var4 = this.this$0.x;
  41.          int var5 = this.this$0.y;
  42.  
  43.          for(Container var6 = this.this$0.parent; var6 != null && var6.peer instanceof LightweightPeer; var6 = var6.parent) {
  44.             var4 += var6.x;
  45.             var5 += var6.y;
  46.          }
  47.  
  48.          this.this$0.peer.setBounds(var4, var5, this.this$0.width, this.this$0.height);
  49.       } catch (Throwable var8) {
  50.          throw var8;
  51.       }
  52.  
  53.    }
  54.  
  55.    public void componentShown(ComponentEvent var1) {
  56.       if (this.this$0.isShowing()) {
  57.          Object var2 = Component.LOCK;
  58.          synchronized(var2){}
  59.  
  60.          try {
  61.             if (this.this$0.peer != null) {
  62.                this.this$0.peer.show();
  63.             }
  64.          } catch (Throwable var4) {
  65.             throw var4;
  66.          }
  67.  
  68.       }
  69.    }
  70.  
  71.    public void componentHidden(ComponentEvent var1) {
  72.       if (this.this$0.visible) {
  73.          Object var2 = Component.LOCK;
  74.          synchronized(var2){}
  75.  
  76.          try {
  77.             if (this.this$0.peer != null) {
  78.                this.this$0.peer.hide();
  79.             }
  80.          } catch (Throwable var4) {
  81.             throw var4;
  82.          }
  83.  
  84.       }
  85.    }
  86.  
  87.    public void componentAdded(ContainerEvent var1) {
  88.    }
  89.  
  90.    public void componentRemoved(ContainerEvent var1) {
  91.       Component var2 = var1.getChild();
  92.       if (var2 == this.this$0) {
  93.          this.removeReferences();
  94.       } else {
  95.          int var3 = this.lightParents.size();
  96.  
  97.          for(int var4 = 0; var4 < var3; ++var4) {
  98.             Container var5 = (Container)this.lightParents.elementAt(var4);
  99.             if (var5 == var2) {
  100.                this.removeReferences();
  101.                return;
  102.             }
  103.          }
  104.  
  105.       }
  106.    }
  107.  
  108.    void removeReferences() {
  109.       int var1 = this.lightParents.size();
  110.  
  111.       for(int var2 = 0; var2 < var1; ++var2) {
  112.          Container var3 = (Container)this.lightParents.elementAt(var2);
  113.          ((Component)var3).removeComponentListener(this);
  114.          var3.removeContainerListener(this);
  115.       }
  116.  
  117.       this.nativeHost.removeContainerListener(this);
  118.    }
  119. }
  120.