home *** CD-ROM | disk | FTP | other *** search
- package webeq3.schema;
-
- import java.awt.Graphics;
- import webeq3.app.Equation;
- import webeq3.constants.FontMapper;
- import webeq3.fonts.CharRender;
- import webeq3.fonts.ExtendedChar;
- import webeq3.util.OutputHandler;
-
- // $FF: renamed from: webeq3.schema.MS
- public class class_0 extends Box {
- ExtendedChar[] lchars = null;
- ExtendedChar[] rchars = null;
-
- public class_0(Box var1) {
- super(var1);
- super.type = 2;
- }
-
- public class_0() {
- super.type = 2;
- }
-
- public class_0(Equation var1) {
- super(var1);
- super.type = 2;
- }
-
- public void size() {
- this.lchars = null;
- this.rchars = null;
- ((Box)this).setData();
- String var1 = ((Box)this).getDeprecatedAttributePair(0, 81);
- if ("small".equals(var1)) {
- var1 = "" + (int)((double)super.my_view.standardPointsize(((Box)this).resolveDepth(super.depth)) * 0.8);
- } else if ("big".equals(var1)) {
- var1 = "" + (int)((double)super.my_view.standardPointsize(((Box)this).resolveDepth(super.depth)) * 1.35);
- } else {
- var1 = ((Box)this).processUnits(var1, 2, 0);
- }
-
- if (var1 != null && !"X".equals(var1)) {
- try {
- ((Box)this).setrawfont(Integer.parseInt(var1));
- } catch (NumberFormatException var6) {
- }
- } else {
- ((Box)this).setfont(super.depth);
- }
-
- super.fgcolor = ((Box)this).resolveColor(4);
- super.bgcolor = ((Box)this).resolveColor(17);
- String var2 = ((Box)this).getAttributeByIndex(18);
- String var3 = ((Box)this).getAttributeByIndex(19);
- this.lchars = new ExtendedChar[var2.length()];
- this.rchars = new ExtendedChar[var3.length()];
-
- for(int var4 = 0; var4 < var2.length(); ++var4) {
- this.lchars[var4] = FontMapper.get(var2.charAt(var4));
- }
-
- for(int var5 = 0; var5 < var3.length(); ++var5) {
- this.rchars[var5] = FontMapper.get(var3.charAt(var5));
- }
-
- this.size_helper(this.lchars);
- this.size_helper(super.data);
- this.size_helper(this.rchars);
- super.height = super.ascent + super.descent;
- }
-
- public void paint(Graphics var1, int var2, int var3) {
- int var5 = var2 + super.left + super.my_view.offsetx;
- int var6 = super.my_view.getDisplayWidth();
- int var7 = var5;
- int var8 = 0;
- ExtendedChar var9 = FontMapper.get('\\');
- var9.setFont(super.fn, super.my_view.getHandler().getComponent());
- ((Box)this).paintBackground(var1, var2, var3);
- int var10 = 0;
- int var11 = 0;
- if (super.my_view.linebreak) {
- for(int var12 = 0; var12 < this.lchars.length; ++var12) {
- ExtendedChar var4 = this.lchars[var12];
- var10 += var4.getAdvance();
- }
-
- for(int var13 = 0; var13 < this.rchars.length; ++var13) {
- ExtendedChar var15 = this.rchars[var13];
- var11 += var15.getAdvance();
- }
-
- if (super.my_view.linebreak && super.data.length > 10 && var5 + var10 + super.data[0].getAdvance() > var6) {
- super.my_view.breaks.addElement(new Integer(var5 - super.my_view.offsetx));
- var8 += var5 - var5;
- super.my_view.offsetx = super.my_view.indent - var8 - var2 - super.left;
- Equation var10000 = super.my_view;
- var10000.offsety += 5 + super.my_view.root.getHeight();
- var5 = super.my_view.indent;
- var7 = var5;
- ((Box)this).rvPaint(var1, var2 + super.left + super.my_view.offsetx + var8, var3 + super.top + super.my_view.offsety, super.width - var8, super.height);
- }
- }
-
- for(int var19 = 0; var19 < this.lchars.length; ++var19) {
- ExtendedChar var16 = this.lchars[var19];
- if (super.reverse_video) {
- CharRender.paint(var1, var16, var5, var3 + super.top + super.my_view.offsety + super.ascent, super.bgcolor, super.fgcolor, super.my_view.getHandler().getComponent());
- } else {
- CharRender.paint(var1, var16, var5, var3 + super.top + super.my_view.offsety + super.ascent, super.fgcolor, super.bgcolor, super.my_view.getHandler().getComponent());
- }
-
- var5 += var16.getAdvance();
- }
-
- for(int var20 = 0; var20 < super.data.length; ++var20) {
- ExtendedChar var17 = super.data[var20];
- if (super.my_view.linebreak && super.data.length > 10 && (super.breakLookAhead > 0 && super.width - var8 - (var5 - var7) < super.breakLookAhead && var5 + var9.getWidth() + var17.getAdvance() + var11 + super.breakLookAhead > var6 || var5 + var9.getWidth() + var17.getAdvance() + var11 > var6) && (var5 + var11 + var17.getAdvance() + super.breakLookAhead > var6 || var20 != super.data.length - 1)) {
- if (super.reverse_video) {
- CharRender.paint(var1, var9, var5, var3 + super.top + super.my_view.offsety + super.ascent, super.bgcolor, super.fgcolor, super.my_view.getHandler().getComponent());
- } else {
- CharRender.paint(var1, var9, var5, var3 + super.top + super.my_view.offsety + super.ascent, super.fgcolor, super.bgcolor, super.my_view.getHandler().getComponent());
- }
-
- super.my_view.breaks.addElement(new Integer(var5 - super.my_view.offsetx));
- var8 += var5 - var7;
- super.my_view.offsetx = super.my_view.indent - var8 - var2 - super.left;
- Equation var21 = super.my_view;
- var21.offsety += 5 + super.my_view.root.getHeight();
- var5 = super.my_view.indent;
- var7 = var5;
- ((Box)this).rvPaint(var1, var2 + super.left + super.my_view.offsetx + var8, var3 + super.top + super.my_view.offsety, super.width - var8, super.height);
- }
-
- if (super.reverse_video) {
- CharRender.paint(var1, var17, var5, var3 + super.top + super.my_view.offsety + super.ascent, super.bgcolor, super.fgcolor, super.my_view.getHandler().getComponent());
- } else {
- CharRender.paint(var1, var17, var5, var3 + super.top + super.my_view.offsety + super.ascent, super.fgcolor, super.bgcolor, super.my_view.getHandler().getComponent());
- }
-
- var5 += var17.getAdvance();
- }
-
- for(int var14 = 0; var14 < this.rchars.length; ++var14) {
- ExtendedChar var18 = this.rchars[var14];
- if (super.reverse_video) {
- CharRender.paint(var1, var18, var5, var3 + super.top + super.my_view.offsety + super.ascent, super.bgcolor, super.fgcolor, super.my_view.getHandler().getComponent());
- } else {
- CharRender.paint(var1, var18, var5, var3 + super.top + super.my_view.offsety + super.ascent, super.fgcolor, super.bgcolor, super.my_view.getHandler().getComponent());
- }
-
- var5 += var18.getAdvance();
- }
-
- super.absleft = var2 + super.left;
- super.abstop = var3 + super.top;
- }
-
- private void size_helper(ExtendedChar[] var1) {
- for(int var5 = 0; var5 < var1.length; ++var5) {
- ExtendedChar var2 = var1[var5];
- var2.setFont(super.fn, super.my_view.getHandler().getComponent());
- int var3 = var2.getAscent();
- int var4 = var2.getDescent();
- if (var3 > super.ascent) {
- super.ascent = var3;
- }
-
- if (var4 > super.descent) {
- super.descent = var4;
- }
-
- super.width += var2.getAdvance();
- }
-
- }
-
- public void printSelected(String var1, OutputHandler var2, boolean var3, boolean var4, String var5, boolean var6, int var7) {
- if (!var3 || super.reverse_video) {
- if (var6 && super.cpeer != null) {
- super.cpeer.printSelected(var1, var2, var3, var4, var5, var6, var7);
- } else {
- var2.println(var1 + ((Box)this).make_head(false, var5) + ((Box)this).unicodeData(var7) + "</" + ((Box)this).make_tag(var5) + ">");
- }
- }
-
- }
- }
-