home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / javax / swing / text / html / CSS$BackgroundPosition.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  1.7 KB  |  111 lines

  1. package javax.swing.text.html;
  2.  
  3. class CSS$BackgroundPosition extends CSS.CssValue {
  4.    float horizontalPosition;
  5.    float verticalPosition;
  6.    short relative;
  7.  
  8.    Object parseCssValue(String var1) {
  9.       String[] var2 = CSS.parseStrings(var1);
  10.       int var3 = var2.length;
  11.       CSS$BackgroundPosition var4 = new CSS$BackgroundPosition();
  12.       var4.relative = 5;
  13.       var4.svalue = var1;
  14.       if (var3 > 0) {
  15.          short var5 = 0;
  16.          int var6 = 0;
  17.  
  18.          while(var6 < var3) {
  19.             String var7 = var2[var6++];
  20.             if (var7.equals("center")) {
  21.                var5 = (short)(var5 | 4);
  22.             } else {
  23.                if ((var5 & 1) == 0) {
  24.                   if (var7.equals("top")) {
  25.                      var5 = (short)(var5 | 1);
  26.                   } else if (var7.equals("bottom")) {
  27.                      var5 = (short)(var5 | 1);
  28.                      var4.verticalPosition = 1.0F;
  29.                      continue;
  30.                   }
  31.                }
  32.  
  33.                if ((var5 & 2) == 0) {
  34.                   if (var7.equals("left")) {
  35.                      var5 = (short)(var5 | 2);
  36.                      var4.horizontalPosition = 0.0F;
  37.                   } else if (var7.equals("right")) {
  38.                      var5 = (short)(var5 | 2);
  39.                      var4.horizontalPosition = 1.0F;
  40.                   }
  41.                }
  42.             }
  43.          }
  44.  
  45.          if (var5 != 0) {
  46.             if ((var5 & 1) == 1) {
  47.                if ((var5 & 2) == 0) {
  48.                   var4.horizontalPosition = 0.5F;
  49.                }
  50.             } else if ((var5 & 2) == 2) {
  51.                var4.verticalPosition = 0.5F;
  52.             } else {
  53.                var4.horizontalPosition = var4.verticalPosition = 0.5F;
  54.             }
  55.          } else {
  56.             CSS.LengthUnit var8 = new CSS.LengthUnit(var2[0], (short)0, 0.0F);
  57.             if (var8.type == 0) {
  58.                var4.horizontalPosition = var8.value;
  59.                var4.relative = (short)(1 ^ var4.relative);
  60.             } else if (var8.type == 1) {
  61.                var4.horizontalPosition = var8.value;
  62.             } else if (var8.type == 3) {
  63.                var4.horizontalPosition = var8.value;
  64.                var4.relative = (short)(1 ^ var4.relative | 2);
  65.             }
  66.  
  67.             if (var3 > 1) {
  68.                var8 = new CSS.LengthUnit(var2[1], (short)0, 0.0F);
  69.                if (var8.type == 0) {
  70.                   var4.verticalPosition = var8.value;
  71.                   var4.relative = (short)(4 ^ var4.relative);
  72.                } else if (var8.type == 1) {
  73.                   var4.verticalPosition = var8.value;
  74.                } else if (var8.type == 3) {
  75.                   var4.verticalPosition = var8.value;
  76.                   var4.relative = (short)(4 ^ var4.relative | 8);
  77.                }
  78.             } else {
  79.                var4.verticalPosition = 0.5F;
  80.             }
  81.          }
  82.       }
  83.  
  84.       return var4;
  85.    }
  86.  
  87.    boolean isHorizontalPositionRelativeToSize() {
  88.       return (this.relative & 1) == 1;
  89.    }
  90.  
  91.    boolean isHorizontalPositionRelativeToFontSize() {
  92.       return (this.relative & 2) == 2;
  93.    }
  94.  
  95.    float getHorizontalPosition() {
  96.       return this.horizontalPosition;
  97.    }
  98.  
  99.    boolean isVerticalPositionRelativeToSize() {
  100.       return (this.relative & 4) == 4;
  101.    }
  102.  
  103.    boolean isVerticalPositionRelativeToFontSize() {
  104.       return (this.relative & 8) == 8;
  105.    }
  106.  
  107.    float getVerticalPosition() {
  108.       return this.verticalPosition;
  109.    }
  110. }
  111.