home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 144 / DPCS0200.iso / Internet / Supanet / system / swing.jar / javax / swing / JComponent$ReadObjectCallback.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-11-05  |  1.9 KB  |  68 lines

  1. package javax.swing;
  2.  
  3. import java.awt.Component;
  4. import java.awt.Container;
  5. import java.io.InvalidObjectException;
  6. import java.io.ObjectInputStream;
  7. import java.io.ObjectInputValidation;
  8. import java.util.Vector;
  9.  
  10. class JComponent$ReadObjectCallback implements ObjectInputValidation {
  11.    // $FF: synthetic field
  12.    private final JComponent this$0;
  13.    private final Vector roots;
  14.    private final ObjectInputStream inputStream;
  15.  
  16.    JComponent$ReadObjectCallback(JComponent var1, ObjectInputStream var2) throws Exception {
  17.       this.this$0 = var1;
  18.       this.roots = new Vector(1);
  19.       this.inputStream = var2;
  20.       var2.registerValidation(this, 0);
  21.    }
  22.  
  23.    // $FF: synthetic method
  24.    static void access$0(JComponent$ReadObjectCallback var0, JComponent var1) {
  25.       var0.registerComponent(var1);
  26.    }
  27.  
  28.    private void registerComponent(JComponent var1) {
  29.       for(int var2 = 0; var2 < this.roots.size(); ++var2) {
  30.          JComponent var3 = (JComponent)this.roots.elementAt(var2);
  31.  
  32.          for(Object var4 = var1; var4 != null; var4 = ((Component)var4).getParent()) {
  33.             if (var4 == var3) {
  34.                return;
  35.             }
  36.          }
  37.       }
  38.  
  39.       for(int var6 = 0; var6 < this.roots.size(); ++var6) {
  40.          JComponent var7 = (JComponent)this.roots.elementAt(var6);
  41.  
  42.          Container var8;
  43.          for(var8 = ((Component)var7).getParent(); var8 != null; var8 = ((Component)var8).getParent()) {
  44.             if (var8 == var1) {
  45.                this.roots.removeElementAt(var6--);
  46.                break;
  47.             }
  48.  
  49.             var8 = ((Component)var8).getParent();
  50.          }
  51.       }
  52.  
  53.       this.roots.addElement(var1);
  54.    }
  55.  
  56.    public void validateObject() throws InvalidObjectException {
  57.       try {
  58.          for(int var3 = 0; var3 < this.roots.size(); ++var3) {
  59.             JComponent var4 = (JComponent)this.roots.elementAt(var3);
  60.             SwingUtilities.updateComponentTreeUI(var4);
  61.          }
  62.       } finally {
  63.          JComponent.access$0().remove(this.inputStream);
  64.       }
  65.  
  66.    }
  67. }
  68.