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$SmallAttributeSet.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-02-26  |  3.5 KB  |  148 lines

  1. package com.sun.java.swing.text;
  2.  
  3. import java.util.Enumeration;
  4.  
  5. class StyleContext$SmallAttributeSet implements AttributeSet {
  6.    // $FF: synthetic field
  7.    private final StyleContext this$0;
  8.    Object[] attributes;
  9.    int nrefs;
  10.  
  11.    StyleContext$SmallAttributeSet(StyleContext var1, Object[] var2) {
  12.       this.this$0 = var1;
  13.       this.this$0 = var1;
  14.       this.attributes = var2;
  15.    }
  16.  
  17.    StyleContext$SmallAttributeSet(StyleContext var1, AttributeSet var2) {
  18.       this.this$0 = var1;
  19.       this.this$0 = var1;
  20.       int var3 = var2.getAttributeCount();
  21.       Object[] var4 = new Object[2 * var3];
  22.       Enumeration var5 = var2.getAttributeNames();
  23.  
  24.       for(int var6 = 0; var5.hasMoreElements(); var6 += 2) {
  25.          var4[var6] = var5.nextElement();
  26.          var4[var6 + 1] = var2.getAttribute(var4[var6]);
  27.       }
  28.  
  29.       this.attributes = var4;
  30.    }
  31.  
  32.    Object getLocalAttribute(Object var1) {
  33.       Object[] var2 = this.attributes;
  34.  
  35.       for(int var3 = 0; var3 < var2.length; var3 += 2) {
  36.          if (var1.equals(var2[var3])) {
  37.             return var2[var3 + 1];
  38.          }
  39.       }
  40.  
  41.       return null;
  42.    }
  43.  
  44.    public String toString() {
  45.       String var1 = "{";
  46.       Object[] var2 = this.attributes;
  47.  
  48.       for(int var3 = 0; var3 < var2.length; var3 += 2) {
  49.          if (var2[var3 + 1] instanceof AttributeSet) {
  50.             var1 = var1 + var2[var3] + "=" + "AttributeSet" + ",";
  51.          } else {
  52.             var1 = var1 + var2[var3] + "=" + var2[var3 + 1] + ",";
  53.          }
  54.       }
  55.  
  56.       var1 = var1 + "nrefs=" + this.nrefs + "}";
  57.       return var1;
  58.    }
  59.  
  60.    public int hashCode() {
  61.       int var1 = 0;
  62.       Object[] var2 = this.attributes;
  63.  
  64.       for(int var3 = 1; var3 < var2.length; var3 += 2) {
  65.          var1 ^= var2[var3].hashCode();
  66.       }
  67.  
  68.       return var1;
  69.    }
  70.  
  71.    public boolean equals(Object var1) {
  72.       if (var1 instanceof AttributeSet) {
  73.          AttributeSet var2 = (AttributeSet)var1;
  74.          return this.getAttributeCount() == var2.getAttributeCount() && this.containsAttributes(var2);
  75.       } else {
  76.          return false;
  77.       }
  78.    }
  79.  
  80.    public int getAttributeCount() {
  81.       return this.attributes.length / 2;
  82.    }
  83.  
  84.    public boolean isDefined(Object var1) {
  85.       Object[] var2 = this.attributes;
  86.       int var3 = var2.length;
  87.  
  88.       for(int var4 = 0; var4 < var3; var4 += 2) {
  89.          if (var1.equals(var2[var4])) {
  90.             return true;
  91.          }
  92.       }
  93.  
  94.       return false;
  95.    }
  96.  
  97.    public boolean isEqual(AttributeSet var1) {
  98.       if (var1 instanceof StyleContext$SmallAttributeSet) {
  99.          return var1 == this;
  100.       } else {
  101.          return this.getAttributeCount() == var1.getAttributeCount() && this.containsAttributes(var1);
  102.       }
  103.    }
  104.  
  105.    public AttributeSet copyAttributes() {
  106.       return this;
  107.    }
  108.  
  109.    public Object getAttribute(Object var1) {
  110.       Object var2 = this.getLocalAttribute(var1);
  111.       if (var2 == null) {
  112.          AttributeSet var3 = this.getResolveParent();
  113.          if (var3 != null) {
  114.             var2 = var3.getAttribute(var1);
  115.          }
  116.       }
  117.  
  118.       return var2;
  119.    }
  120.  
  121.    public Enumeration getAttributeNames() {
  122.       return new StyleContext.KeyEnumeration(this.this$0, this.attributes);
  123.    }
  124.  
  125.    public boolean containsAttribute(Object var1, Object var2) {
  126.       return var2.equals(this.getAttribute(var1));
  127.    }
  128.  
  129.    public boolean containsAttributes(AttributeSet var1) {
  130.       boolean var2 = true;
  131.  
  132.       Object var4;
  133.       for(Enumeration var3 = var1.getAttributeNames(); var2 && var3.hasMoreElements(); var2 = var1.getAttribute(var4).equals(this.getAttribute(var4))) {
  134.          var4 = var3.nextElement();
  135.       }
  136.  
  137.       return var2;
  138.    }
  139.  
  140.    public AttributeSet getResolveParent() {
  141.       return (AttributeSet)this.getLocalAttribute(StyleConstants.ResolveAttribute);
  142.    }
  143.  
  144.    public Object clone() {
  145.       return this;
  146.    }
  147. }
  148.