home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / swingall.jar / javax / swing / text / rtf / RTFAttributes$NumericAttribute.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-07-15  |  2.4 KB  |  85 lines

  1. package javax.swing.text.rtf;
  2.  
  3. import java.io.IOException;
  4. import javax.swing.text.MutableAttributeSet;
  5.  
  6. class RTFAttributes$NumericAttribute extends RTFAttributes.GenericAttribute implements RTFAttribute {
  7.    int rtfDefault;
  8.    Number swingDefault;
  9.    float scale;
  10.  
  11.    protected RTFAttributes$NumericAttribute(int var1, Object var2, String var3) {
  12.       super(var1, var2, var3);
  13.       this.rtfDefault = 0;
  14.       this.swingDefault = null;
  15.       this.scale = 1.0F;
  16.    }
  17.  
  18.    public RTFAttributes$NumericAttribute(int var1, Object var2, String var3, int var4, int var5) {
  19.       this(var1, var2, var3, new Integer(var4), var5, 1.0F);
  20.    }
  21.  
  22.    public RTFAttributes$NumericAttribute(int var1, Object var2, String var3, Number var4, int var5, float var6) {
  23.       super(var1, var2, var3);
  24.       this.swingDefault = var4;
  25.       this.rtfDefault = var5;
  26.       this.scale = var6;
  27.    }
  28.  
  29.    public static RTFAttributes$NumericAttribute NewTwips(int var0, Object var1, String var2, float var3, int var4) {
  30.       return new RTFAttributes$NumericAttribute(var0, var1, var2, new Float(var3), var4, 20.0F);
  31.    }
  32.  
  33.    public static RTFAttributes$NumericAttribute NewTwips(int var0, Object var1, String var2, int var3) {
  34.       return new RTFAttributes$NumericAttribute(var0, var1, var2, (Number)null, var3, 20.0F);
  35.    }
  36.  
  37.    public boolean set(MutableAttributeSet var1) {
  38.       return false;
  39.    }
  40.  
  41.    public boolean set(MutableAttributeSet var1, int var2) {
  42.       Object var3;
  43.       if (this.scale == 1.0F) {
  44.          var3 = new Integer(var2);
  45.       } else {
  46.          var3 = new Float((float)var2 / this.scale);
  47.       }
  48.  
  49.       var1.addAttribute(super.swingName, var3);
  50.       return true;
  51.    }
  52.  
  53.    public boolean setDefault(MutableAttributeSet var1) {
  54.       Number var2 = (Number)var1.getAttribute(super.swingName);
  55.       if (var2 == null) {
  56.          var2 = this.swingDefault;
  57.       }
  58.  
  59.       if (var2 == null || (this.scale != 1.0F || var2.intValue() != this.rtfDefault) && Math.round(var2.floatValue() * this.scale) != this.rtfDefault) {
  60.          this.set(var1, this.rtfDefault);
  61.          return true;
  62.       } else {
  63.          return true;
  64.       }
  65.    }
  66.  
  67.    public boolean writeValue(Object var1, RTFGenerator var2, boolean var3) throws IOException {
  68.       Number var4 = (Number)var1;
  69.       if (var4 == null) {
  70.          var4 = this.swingDefault;
  71.       }
  72.  
  73.       if (var4 == null) {
  74.          return true;
  75.       } else {
  76.          int var5 = Math.round(var4.floatValue() * this.scale);
  77.          if (var3 || var5 != this.rtfDefault) {
  78.             var2.writeControlWord(super.rtfName, var5);
  79.          }
  80.  
  81.          return true;
  82.       }
  83.    }
  84. }
  85.