home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 2001 December / dppcpro1201.iso / Extras / maple / Viewer / WebEQ / MMLViewerInstall.cab / MMLViewerApplet.cab / webeq3 / schema / MPadded.class (.txt) < prev    next >
Encoding:
Java Class File  |  2001-05-24  |  3.1 KB  |  183 lines

  1. package webeq3.schema;
  2.  
  3. import java.awt.Graphics;
  4. import webeq3.app.Equation;
  5.  
  6. public class MPadded extends Box {
  7.    int currentx = 0;
  8.    int currenty = 0;
  9.    // $FF: renamed from: em int
  10.    int field_0 = 0;
  11.    boolean phantom = false;
  12.    int lspace_width = 0;
  13.  
  14.    public MPadded(Box var1) {
  15.       super(var1);
  16.       super.type = 68;
  17.    }
  18.  
  19.    public MPadded() {
  20.       super.type = 68;
  21.    }
  22.  
  23.    public MPadded(Equation var1) {
  24.       super(var1);
  25.       super.type = 68;
  26.    }
  27.  
  28.    public void size() {
  29.       super.width = 0;
  30.       super.ascent = 0;
  31.       super.descent = 0;
  32.       ((Box)this).setfont(super.depth);
  33.       this.field_0 = super.fm.charWidth('M');
  34.       super.size();
  35.       int var1 = 0;
  36.       int var2 = 0;
  37.       int var3 = super.children.size();
  38.  
  39.       for(int var5 = 0; var5 < var3; ++var5) {
  40.          Box var4 = ((Box)this).getChild(var5);
  41.          if (var4.is_spacelike) {
  42.             ++var1;
  43.          }
  44.  
  45.          if (var4.embellished_op) {
  46.             ++var2;
  47.          }
  48.       }
  49.  
  50.       if (var1 == var3) {
  51.          super.is_spacelike = true;
  52.       }
  53.  
  54.       if (var1 == var3 - 1 && var2 == 1) {
  55.          super.embellished_op = true;
  56.       }
  57.  
  58.       int var6 = super.width;
  59.       int var7 = super.ascent;
  60.       int var8 = super.descent;
  61.       double var9 = (double)0.0F;
  62.       double var11 = (double)0.0F;
  63.       double var13 = (double)0.0F;
  64.       double var15 = (double)0.0F;
  65.       char var17 = '\u0000';
  66.       String var18 = ((Box)this).getAttributeByIndex(14);
  67.       String var19 = ((Box)this).getAttributeString(14);
  68.       if (var19 != null && var19.length() > 0) {
  69.          var17 = var19.charAt(0);
  70.       }
  71.  
  72.       if (!"".equals(var18)) {
  73.          try {
  74.             var9 = Double.valueOf(var18);
  75.             switch (var17) {
  76.                case '+':
  77.                case '-':
  78.                   var6 = super.width + (int)(var9 * (double)this.field_0);
  79.                   break;
  80.                default:
  81.                   var6 = (int)(var9 * (double)this.field_0);
  82.             }
  83.          } catch (NumberFormatException var24) {
  84.          }
  85.       }
  86.  
  87.       var18 = ((Box)this).getAttributeByIndex(15);
  88.       var19 = ((Box)this).getAttributeString(15);
  89.       if (var19 != null && var19.length() > 0) {
  90.          var17 = var19.charAt(0);
  91.       } else {
  92.          var17 = '\u0000';
  93.       }
  94.  
  95.       if (!"".equals(var18)) {
  96.          try {
  97.             var11 = Double.valueOf(var18);
  98.             switch (var17) {
  99.                case '+':
  100.                case '-':
  101.                   var7 = super.ascent + (int)(var11 * (double)super.xheight);
  102.                   break;
  103.                default:
  104.                   var7 = (int)(var11 * (double)super.xheight);
  105.             }
  106.          } catch (NumberFormatException var23) {
  107.          }
  108.       }
  109.  
  110.       var18 = ((Box)this).getAttributeByIndex(16);
  111.       var19 = ((Box)this).getAttributeString(16);
  112.       if (var19 != null && var19.length() > 0) {
  113.          var17 = var19.charAt(0);
  114.       } else {
  115.          var17 = '\u0000';
  116.       }
  117.  
  118.       if (!"".equals(var18)) {
  119.          try {
  120.             var13 = Double.valueOf(((Box)this).getAttributeByIndex(16));
  121.             switch (var17) {
  122.                case '+':
  123.                case '-':
  124.                   var8 = super.descent + (int)(var13 * (double)super.xheight);
  125.                   break;
  126.                default:
  127.                   var8 = (int)(var13 * (double)super.xheight);
  128.             }
  129.          } catch (NumberFormatException var22) {
  130.          }
  131.       }
  132.  
  133.       var18 = ((Box)this).getAttributeByIndex(5);
  134.       if (!"".equals(var18)) {
  135.          try {
  136.             var15 = Double.valueOf(((Box)this).getAttributeByIndex(5));
  137.             this.lspace_width = (int)(var15 * (double)this.field_0);
  138.             var6 += this.lspace_width;
  139.          } catch (NumberFormatException var21) {
  140.          }
  141.       }
  142.  
  143.       if (super.width > 0 && var6 < 0) {
  144.          var6 = 0;
  145.       }
  146.  
  147.       if (super.ascent > 0 && var7 < 0) {
  148.          var7 = 0;
  149.       }
  150.  
  151.       if (super.descent > 0 && var8 < 0) {
  152.          var8 = 0;
  153.       }
  154.  
  155.       super.width = var6;
  156.       super.ascent = var7;
  157.       super.descent = var8;
  158.       super.height = super.ascent + super.descent;
  159.    }
  160.  
  161.    public void position() {
  162.       int var2 = this.lspace_width;
  163.       boolean var3 = false;
  164.       int var4 = super.children.size();
  165.  
  166.       for(int var5 = 0; var5 < var4; ++var5) {
  167.          Box var1 = ((Box)this).getChild(var5);
  168.          var1.setLeft(var2);
  169.          var1.setTop(super.ascent - var1.getAscent());
  170.          var2 += var1.getWidth();
  171.       }
  172.  
  173.    }
  174.  
  175.    public void paint(Graphics var1, int var2, int var3) {
  176.       super.paint(var1, var2, var3);
  177.       super.my_view.root.absleft = var2 + super.left + super.my_view.offsetx;
  178.       super.my_view.root.abstop = var3 + super.top + super.my_view.offsety;
  179.       super.absleft = var2 + super.left;
  180.       super.abstop = var3 + super.top;
  181.    }
  182. }
  183.