home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 March / pcp161a.iso / handson / files / copyjava.exe / com / sun / java / swing / text / StyleContext$KeyBuilder.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-02-26  |  2.8 KB  |  137 lines

  1. package com.sun.java.swing.text;
  2.  
  3. import java.util.Enumeration;
  4. import java.util.Vector;
  5.  
  6. class StyleContext$KeyBuilder {
  7.    // $FF: synthetic field
  8.    private final StyleContext this$0;
  9.    private Vector keys;
  10.    private Vector data;
  11.  
  12.    public void initialize(AttributeSet var1) {
  13.       if (var1 instanceof StyleContext.SmallAttributeSet) {
  14.          this.initialize(((StyleContext.SmallAttributeSet)var1).attributes);
  15.       } else {
  16.          this.keys.removeAllElements();
  17.          this.data.removeAllElements();
  18.          Enumeration var2 = var1.getAttributeNames();
  19.  
  20.          while(var2.hasMoreElements()) {
  21.             Object var3 = var2.nextElement();
  22.             this.addAttribute(var3, var1.getAttribute(var3));
  23.          }
  24.  
  25.       }
  26.    }
  27.  
  28.    private void initialize(Object[] var1) {
  29.       this.keys.removeAllElements();
  30.       this.data.removeAllElements();
  31.       int var2 = var1.length;
  32.  
  33.       for(int var3 = 0; var3 < var2; var3 += 2) {
  34.          this.keys.addElement(var1[var3]);
  35.          this.data.addElement(var1[var3 + 1]);
  36.       }
  37.  
  38.    }
  39.  
  40.    public Object[] createTable() {
  41.       int var1 = this.keys.size();
  42.       Object[] var2 = new Object[2 * var1];
  43.  
  44.       for(int var3 = 0; var3 < var1; ++var3) {
  45.          int var4 = 2 * var3;
  46.          var2[var4] = this.keys.elementAt(var3);
  47.          var2[var4 + 1] = this.data.elementAt(var3);
  48.       }
  49.  
  50.       return var2;
  51.    }
  52.  
  53.    int getCount() {
  54.       return this.keys.size();
  55.    }
  56.  
  57.    public void addAttribute(Object var1, Object var2) {
  58.       this.keys.addElement(var1);
  59.       this.data.addElement(var2);
  60.    }
  61.  
  62.    public void addAttributes(AttributeSet var1) {
  63.       if (var1 instanceof StyleContext.SmallAttributeSet) {
  64.          Object[] var5 = ((StyleContext.SmallAttributeSet)var1).attributes;
  65.          int var6 = var5.length;
  66.  
  67.          for(int var4 = 0; var4 < var6; var4 += 2) {
  68.             this.addAttribute(var5[var4], var5[var4 + 1]);
  69.          }
  70.  
  71.       } else {
  72.          Enumeration var2 = var1.getAttributeNames();
  73.  
  74.          while(var2.hasMoreElements()) {
  75.             Object var3 = var2.nextElement();
  76.             this.addAttribute(var3, var1.getAttribute(var3));
  77.          }
  78.  
  79.       }
  80.    }
  81.  
  82.    public void removeAttribute(Object var1) {
  83.       int var2 = this.keys.size();
  84.  
  85.       for(int var3 = 0; var3 < var2; ++var3) {
  86.          if (this.keys.elementAt(var3).equals(var1)) {
  87.             this.keys.removeElementAt(var3);
  88.             this.data.removeElementAt(var3);
  89.             return;
  90.          }
  91.       }
  92.  
  93.    }
  94.  
  95.    public void removeAttributes(Enumeration var1) {
  96.       while(var1.hasMoreElements()) {
  97.          Object var2 = var1.nextElement();
  98.          this.removeAttribute(var2);
  99.       }
  100.  
  101.    }
  102.  
  103.    public void removeAttributes(AttributeSet var1) {
  104.       Enumeration var2 = var1.getAttributeNames();
  105.  
  106.       while(var2.hasMoreElements()) {
  107.          Object var3 = var2.nextElement();
  108.          Object var4 = var1.getAttribute(var3);
  109.          this.removeSearchAttribute(var3, var4);
  110.       }
  111.  
  112.    }
  113.  
  114.    private void removeSearchAttribute(Object var1, Object var2) {
  115.       int var3 = this.keys.size();
  116.  
  117.       for(int var4 = 0; var4 < var3; ++var4) {
  118.          if (this.keys.elementAt(var4).equals(var1)) {
  119.             if (this.data.elementAt(var4).equals(var2)) {
  120.                this.keys.removeElementAt(var4);
  121.                this.data.removeElementAt(var4);
  122.             }
  123.  
  124.             return;
  125.          }
  126.       }
  127.  
  128.    }
  129.  
  130.    StyleContext$KeyBuilder(StyleContext var1) {
  131.       this.this$0 = var1;
  132.       this.this$0 = var1;
  133.       this.keys = new Vector();
  134.       this.data = new Vector();
  135.    }
  136. }
  137.