home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 March / pcp161a.iso / handson / files / copyjava.exe / com / sun / java / swing / text / html / HTMLWriter.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-02-26  |  17.5 KB  |  663 lines

  1. package com.sun.java.swing.text.html;
  2.  
  3. import com.sun.java.swing.text.AbstractDocument;
  4. import com.sun.java.swing.text.AttributeSet;
  5. import com.sun.java.swing.text.BadLocationException;
  6. import com.sun.java.swing.text.Element;
  7. import com.sun.java.swing.text.Style;
  8. import com.sun.java.swing.text.StyleConstants;
  9. import com.sun.java.swing.text.StyledDocument;
  10. import java.awt.Color;
  11. import java.io.IOException;
  12. import java.io.OutputStream;
  13. import java.io.OutputStreamWriter;
  14. import java.io.Writer;
  15. import java.util.Hashtable;
  16. import java.util.Vector;
  17.  
  18. class HTMLWriter implements HTMLDefs {
  19.    private Hashtable branchTable;
  20.    private Hashtable leafTable;
  21.    private boolean lowercase = true;
  22.    private boolean indenting = false;
  23.    private boolean writePre = false;
  24.    private int nPrelines;
  25.    private int inFont;
  26.    private static final String GENERIC = "generic";
  27.    private static final String SPACE = " ";
  28.    private static final String EQUAL = "=";
  29.    private static final String QUOTE = "\"";
  30.    // $FF: renamed from: CR java.lang.String
  31.    private static final String field_0 = "\n";
  32.  
  33.    public HTMLWriter() {
  34.       this.initializeBranchTable();
  35.       this.initializeLeafTable();
  36.    }
  37.  
  38.    public void write(OutputStream var1, StyledDocument var2) throws Exception {
  39.       OutputStreamWriter var3 = new OutputStreamWriter(var1);
  40.       this.write((Writer)var3, (StyledDocument)var2);
  41.       var3.flush();
  42.    }
  43.  
  44.    public void write(Writer var1, StyledDocument var2) throws HTMLException, IOException {
  45.       AbstractDocument.BranchElement var3 = (AbstractDocument.BranchElement)var2.getDefaultRootElement();
  46.       this.writeStartTag(var1, "html");
  47.       this.writeHead(var1, var3);
  48.       this.writeBranch(var1, "", var3);
  49.       this.writeEndTag(var1, "html");
  50.       var1.flush();
  51.    }
  52.  
  53.    public void setBranchTranslator(String var1, BranchTranslator var2) {
  54.       this.branchTable.put(var1, var2);
  55.    }
  56.  
  57.    public BranchTranslator getBranchTranslator(String var1) {
  58.       BranchTranslator var2 = (BranchTranslator)this.branchTable.get(var1);
  59.       HTMLDebug.println("getBranchTranslator for " + var1);
  60.       if (var2 == null) {
  61.          var2 = this.getBranchTranslator("generic");
  62.          System.out.println("HTMLWriter.getBranchTranslator: Using genericBranchTranslator for " + var1);
  63.       }
  64.  
  65.       return var2;
  66.    }
  67.  
  68.    public void removeBranchTranslator(String var1) {
  69.       this.branchTable.remove(var1);
  70.    }
  71.  
  72.    public void setLeafTranslator(String var1, LeafTranslator var2) {
  73.       this.leafTable.put(var1, var2);
  74.    }
  75.  
  76.    public LeafTranslator getLeafTranslator(String var1) {
  77.       LeafTranslator var2 = (LeafTranslator)this.leafTable.get(var1);
  78.       HTMLDebug.println("getLeafTranslator for " + var1);
  79.       if (var2 == null) {
  80.          HTMLDebug.println("getLeafTranslator generic ");
  81.          var2 = this.getLeafTranslator("content");
  82.       }
  83.  
  84.       return var2;
  85.    }
  86.  
  87.    public void removeLeafTranslator(String var1) {
  88.       this.leafTable.remove(var1);
  89.    }
  90.  
  91.    private void initializeBranchTable() {
  92.       this.branchTable = new Hashtable();
  93.       this.setBranchTranslator("generic", new GenericBranchTranslator(this));
  94.       this.setBranchTranslator("blockquote", new BlockquoteTranslator(this));
  95.       this.setBranchTranslator("body", new BodyTranslator(this));
  96.       this.setBranchTranslator("dd", new DdTranslator(this));
  97.       this.setBranchTranslator("dl", new DlTranslator(this));
  98.       this.setBranchTranslator("dt", new DtTranslator(this));
  99.       this.setBranchTranslator("head", new HeadTranslator(this));
  100.       this.setBranchTranslator("h1", new HTranslator(this));
  101.       this.setBranchTranslator("h2", new HTranslator(this));
  102.       this.setBranchTranslator("h3", new HTranslator(this));
  103.       this.setBranchTranslator("h4", new HTranslator(this));
  104.       this.setBranchTranslator("h5", new HTranslator(this));
  105.       this.setBranchTranslator("h6", new HTranslator(this));
  106.       this.setBranchTranslator("li", new LiTranslator(this));
  107.       this.setBranchTranslator("menu", new MenuTranslator(this));
  108.       this.setBranchTranslator("ol", new OlTranslator(this));
  109.       this.setBranchTranslator("p", new PTranslator(this));
  110.       this.setBranchTranslator("pre", new PreTranslator(this));
  111.       this.setBranchTranslator("pre-line", new PreLineTranslator(this));
  112.       this.setBranchTranslator("ul", new UlTranslator(this));
  113.    }
  114.  
  115.    private void initializeLeafTable() {
  116.       this.leafTable = new Hashtable();
  117.       this.setLeafTranslator("generic", new GenericLeafTranslator(this));
  118.       this.setLeafTranslator("content", new ContentTranslator(this));
  119.       this.setLeafTranslator("icon", new ImgTranslator(this));
  120.       this.setLeafTranslator("img", new ImgTranslator(this));
  121.       this.setLeafTranslator("font", new FontTranslator(this));
  122.       this.setLeafTranslator("hr", new HrTranslator(this));
  123.       this.setLeafTranslator("basefont", new BaseFontTranslator(this));
  124.       this.setLeafTranslator("a", new ATranslator(this));
  125.       this.setLeafTranslator("big", new BigTranslator(this));
  126.       this.setLeafTranslator("small", new SmallTranslator(this));
  127.       this.setLeafTranslator("code", new CodeTranslator(this));
  128.       this.setLeafTranslator("cite", new CiteTranslator(this));
  129.       this.setLeafTranslator("strike", new StrikeTranslator(this));
  130.       this.setLeafTranslator("sub", new SubTranslator(this));
  131.       this.setLeafTranslator("sup", new SupTranslator(this));
  132.       this.setLeafTranslator("dfn", new DfnTranslator(this));
  133.       this.setLeafTranslator("kbd", new KbdTranslator(this));
  134.       this.setLeafTranslator("samp", new SampTranslator(this));
  135.       this.setLeafTranslator("strong", new StrongTranslator(this));
  136.       this.setLeafTranslator("_var", new VarTranslator(this));
  137.       this.setLeafTranslator("em", new EmTranslator(this));
  138.       this.setLeafTranslator("pre", new PreLeafTranslator(this));
  139.       this.setLeafTranslator("tt", new TtTranslator(this));
  140.    }
  141.  
  142.    public void writeLeaf(Writer var1, String var2, Element var3, Element var4) {
  143.       String var5 = var4.getName();
  144.       LeafTranslator var6 = null;
  145.       if (var5.equals("content")) {
  146.          AttributeSet var7 = var4.getAttributes();
  147.          String var8 = (String)var7.getAttribute("htmltag");
  148.          String var9 = (String)var7.getAttribute(AttributeSet.NameAttribute);
  149.          String var10 = (String)var7.getAttribute("$ename");
  150.          HTMLDebug.println("writeLeaf(): tagname = " + var8 + " styleName = " + var9 + " elementName " + var10);
  151.          if (var8 != null) {
  152.             var5 = var8;
  153.          } else if (var9 != null) {
  154.             var5 = var9;
  155.          } else if (var10 != null && var10.equals("pre-line") && var9 != null) {
  156.             var5 = var9;
  157.          } else if (var10 == null && var9 != null) {
  158.             var5 = var9;
  159.          }
  160.  
  161.          if (var8 != null || var9 != null || var10 != null) {
  162.             var6 = this.getLeafTranslator(var5);
  163.          }
  164.       } else {
  165.          var6 = this.getLeafTranslator(var5);
  166.       }
  167.  
  168.       if (var5.equals("hr") && this.indenting) {
  169.          this.write(var1, var2);
  170.       }
  171.  
  172.       if (var6 != null) {
  173.          var6.translate(var1, var3, var4);
  174.       }
  175.  
  176.    }
  177.  
  178.    public void setUpperCase() {
  179.       this.lowercase = false;
  180.    }
  181.  
  182.    public void setLowerCase() {
  183.       this.lowercase = true;
  184.    }
  185.  
  186.    public void setIndent() {
  187.       this.indenting = true;
  188.    }
  189.  
  190.    public void setNoIndent() {
  191.       this.indenting = false;
  192.    }
  193.  
  194.    public void writeBranch(Writer var1, String var2, Element var3) {
  195.       if (var3.isLeaf()) {
  196.          var3.getAttributes();
  197.          this.writeLeaf(var1, var2, var3.getParentElement(), var3);
  198.       } else {
  199.          String var5 = var3.getName();
  200.          String var4;
  201.          if (var5.equals("section")) {
  202.             var4 = "body";
  203.          } else if (var5.equals("paragraph")) {
  204.             AttributeSet var6 = var3.getAttributes();
  205.             AttributeSet var7 = var6.getResolveParent();
  206.             var4 = (String)var7.getAttribute(AttributeSet.NameAttribute);
  207.             if (var4.endsWith(" p")) {
  208.                var4 = "p";
  209.             }
  210.          } else {
  211.             var4 = var5;
  212.          }
  213.  
  214.          if (!var4.equals("default")) {
  215.             AttributeSet var12 = var3.getAttributes();
  216.             String var13 = (String)var12.getAttribute("impliedp");
  217.             boolean var8 = false;
  218.             if (var13 != null && var13.equals("impliedp")) {
  219.                var8 = true;
  220.             }
  221.  
  222.             if (this.indenting && !var4.equals("pre-line") && !var8) {
  223.                this.write(var1, var2);
  224.             }
  225.  
  226.             if (!var8) {
  227.                BranchTranslator var9 = this.getBranchTranslator(var4);
  228.                if (!this.indenting && !var4.equals("pre-line")) {
  229.                   this.write(var1, "\n");
  230.                }
  231.  
  232.                var9.translate(var1, var3);
  233.             }
  234.  
  235.             int var14 = var3.getElementCount();
  236.  
  237.             for(int var10 = 0; var10 < var14; ++var10) {
  238.                Element var11 = var3.getElement(var10);
  239.                if (this.indenting) {
  240.                   this.writeBranch(var1, var2 + "  ", var11);
  241.                } else {
  242.                   this.writeBranch(var1, "", var11);
  243.                }
  244.             }
  245.  
  246.             if (var13 != null && var13.equals("impliedp")) {
  247.                this.write(var1, "");
  248.             } else {
  249.                this.writeEndTag(var1, var4, var2);
  250.             }
  251.          }
  252.       }
  253.    }
  254.  
  255.    public void writeHead(Writer var1, Element var2) {
  256.       BranchTranslator var3 = this.getBranchTranslator("head");
  257.       var3.translate(var1, var2);
  258.    }
  259.  
  260.    public void writeStartTag(Writer var1, String var2) {
  261.       if (!this.lowercase) {
  262.          var2.toUpperCase();
  263.       }
  264.  
  265.       this.write(var1, "<" + var2 + ">\n");
  266.    }
  267.  
  268.    public void writeEndTag(Writer var1, String var2) {
  269.       if (!this.lowercase) {
  270.          var2.toUpperCase();
  271.       }
  272.  
  273.       this.write(var1, "</" + var2 + ">\n");
  274.    }
  275.  
  276.    public void writeEndTag(Writer var1, String var2, String var3) {
  277.       if (!this.lowercase) {
  278.          var2.toUpperCase();
  279.       }
  280.  
  281.       if (!var2.equals("pre") && !var2.equals("p") && !var2.equals("h1") && !var2.equals("h2") && !var2.equals("h3") && !var2.equals("h4") && !var2.equals("h5") && !var2.equals("h6")) {
  282.          if (!var2.equals("dt") && !var2.equals("li") && !var2.equals("dd")) {
  283.             if (!var2.equals("li") && !var2.equals("dd") && !var2.equals("dt") && !var2.equals("hr") && !var2.equals("pre-line")) {
  284.                if (this.indenting) {
  285.                   this.write(var1, var3 + "</" + var2 + ">\n");
  286.                   return;
  287.                }
  288.  
  289.                this.write(var1, "</" + var2 + ">\n");
  290.             }
  291.  
  292.          } else {
  293.             this.write(var1, "\n");
  294.          }
  295.       } else {
  296.          this.write(var1, "</" + var2 + ">\n");
  297.       }
  298.    }
  299.  
  300.    public void write(Writer var1, String var2) {
  301.       HTMLDebug.println("Output=>" + var2 + "<=");
  302.       int var3 = var2.length();
  303.  
  304.       for(int var4 = 0; var4 < var3; ++var4) {
  305.          try {
  306.             var1.write(var2.charAt(var4));
  307.          } catch (IOException var6) {
  308.             System.out.println("HTMLWriter.write: " + var2 + " " + var6);
  309.          }
  310.       }
  311.  
  312.    }
  313.  
  314.    private String convertCase(String var1) {
  315.       return this.lowercase ? var1.toLowerCase() : var1.toUpperCase();
  316.    }
  317.  
  318.    private String toAlignString(int var1) {
  319.       String var2 = "left";
  320.       switch (var1) {
  321.          case 0:
  322.             var2 = "left";
  323.             break;
  324.          case 1:
  325.             var2 = "center";
  326.             break;
  327.          case 2:
  328.             var2 = "right";
  329.       }
  330.  
  331.       return var2;
  332.    }
  333.  
  334.    private boolean writeColor(AttributeSet var1, Vector var2, AttributeSet var3) {
  335.       Color var4 = StyleConstants.getForeground(var3);
  336.       if (var2 != null) {
  337.          for(int var5 = 0; var5 < var2.size(); ++var5) {
  338.             Style var6 = (Style)var2.elementAt(var5);
  339.             if (var4 == StyleConstants.getForeground(var6)) {
  340.                return false;
  341.             }
  342.          }
  343.       }
  344.  
  345.       return var4 != StyleConstants.getForeground(var1);
  346.    }
  347.  
  348.    private boolean writeFamily(AttributeSet var1, Vector var2, AttributeSet var3) {
  349.       String var4 = StyleConstants.getFontFamily(var3);
  350.       if (var2 != null) {
  351.          for(int var5 = 0; var5 < var2.size(); ++var5) {
  352.             Style var6 = (Style)var2.elementAt(var5);
  353.             if (var4 == StyleConstants.getFontFamily(var6)) {
  354.                return false;
  355.             }
  356.          }
  357.       }
  358.  
  359.       return var4 != StyleConstants.getFontFamily(var1);
  360.    }
  361.  
  362.    private boolean writeSize(AttributeSet var1, Vector var2, AttributeSet var3) {
  363.       int var4 = StyleConstants.getFontSize(var3);
  364.       if (var2 != null) {
  365.          for(int var5 = 0; var5 < var2.size(); ++var5) {
  366.             Style var6 = (Style)var2.elementAt(var5);
  367.             if (var4 == StyleConstants.getFontSize(var6)) {
  368.                return false;
  369.             }
  370.          }
  371.       }
  372.  
  373.       return var4 != StyleConstants.getFontSize(var1);
  374.    }
  375.  
  376.    private boolean writeFontTag(AttributeSet var1, Vector var2, AttributeSet var3) {
  377.       if (this.writeColor(var1, var2, var3)) {
  378.          return true;
  379.       } else if (this.writeSize(var1, var2, var3)) {
  380.          return true;
  381.       } else {
  382.          return this.writeFamily(var1, var2, var3);
  383.       }
  384.    }
  385.  
  386.    private boolean writeBoldTag(AttributeSet var1, Vector var2, AttributeSet var3) {
  387.       if (!StyleConstants.isBold(var3)) {
  388.          return false;
  389.       } else {
  390.          if (var2 != null) {
  391.             for(int var4 = 0; var4 < var2.size(); ++var4) {
  392.                Style var5 = (Style)var2.elementAt(var4);
  393.                if (StyleConstants.isBold(var5)) {
  394.                   return false;
  395.                }
  396.             }
  397.          }
  398.  
  399.          return !StyleConstants.isBold(var1);
  400.       }
  401.    }
  402.  
  403.    private boolean writeItalicTag(AttributeSet var1, Vector var2, AttributeSet var3) {
  404.       if (!StyleConstants.isItalic(var3)) {
  405.          return false;
  406.       } else {
  407.          if (var2 != null) {
  408.             for(int var4 = 0; var4 < var2.size(); ++var4) {
  409.                Style var5 = (Style)var2.elementAt(var4);
  410.                if (StyleConstants.isItalic(var5)) {
  411.                   return false;
  412.                }
  413.             }
  414.          }
  415.  
  416.          return !StyleConstants.isItalic(var1);
  417.       }
  418.    }
  419.  
  420.    private boolean writeUnderlineTag(AttributeSet var1, Vector var2, AttributeSet var3) {
  421.       if (!StyleConstants.isUnderline(var3)) {
  422.          return false;
  423.       } else {
  424.          if (var2 != null) {
  425.             for(int var4 = 0; var4 < var2.size(); ++var4) {
  426.                Style var5 = (Style)var2.elementAt(var4);
  427.                if (StyleConstants.isUnderline(var5)) {
  428.                   return false;
  429.                }
  430.             }
  431.          }
  432.  
  433.          return !StyleConstants.isUnderline(var1);
  434.       }
  435.    }
  436.  
  437.    private void writeContent(Writer var1, Vector var2, Element var3, Element var4) {
  438.       AttributeSet var5 = var3.getAttributes();
  439.       AttributeSet var6 = var4.getAttributes();
  440.       AttributeSet var7 = var6.getResolveParent();
  441.       String var8 = "b";
  442.       String var9 = "i";
  443.       String var10 = "u";
  444.       boolean var11 = this.writeBoldTag(var7, var2, var5);
  445.       if (var11) {
  446.          this.write(var1, "<" + this.convertCase(var8) + ">");
  447.       }
  448.  
  449.       boolean var12 = this.writeItalicTag(var7, var2, var5);
  450.       if (var12) {
  451.          this.write(var1, "<" + this.convertCase(var9) + ">");
  452.       }
  453.  
  454.       boolean var13 = this.writeUnderlineTag(var7, var2, var5);
  455.       if (var13) {
  456.          this.write(var1, "<" + this.convertCase(var10) + ">");
  457.       }
  458.  
  459.       boolean var14 = this.writeFontTag(var7, var2, var5);
  460.       if (var14) {
  461.          ++this.inFont;
  462.          this.write(var1, "<" + this.convertCase("font"));
  463.       }
  464.  
  465.       boolean var15 = this.writeColor(var7, var2, var5);
  466.       if (var15) {
  467.          Color var16 = StyleConstants.getForeground(var5);
  468.  
  469.          try {
  470.             String var17 = HTMLUtils.colorToHex(var16);
  471.             this.write(var1, " " + this.convertCase("color") + "=" + this.convertCase(var17));
  472.          } catch (HTMLException var20) {
  473.             HTMLDebug.println("Unable to convert Color string:" + var16);
  474.          }
  475.       }
  476.  
  477.       boolean var21 = this.writeSize(var7, var2, var5);
  478.       if (var21) {
  479.          StyleSheet var22 = StyleReader.getStyleSheet();
  480.          int var18 = StyleConstants.getFontSize(var5);
  481.          int var19 = var22.getRelSize(var18);
  482.          if (var19 < 0) {
  483.             this.write(var1, " " + this.convertCase("size") + "=" + var19);
  484.          } else {
  485.             this.write(var1, " " + this.convertCase("size") + "=+" + var19);
  486.          }
  487.       }
  488.  
  489.       boolean var23 = this.writeFamily(var7, var2, var5);
  490.       if (var23) {
  491.          String var24 = StyleConstants.getFontFamily(var5);
  492.          this.write(var1, " " + this.convertCase("face") + "=\"" + var24 + "\"");
  493.       }
  494.  
  495.       if (var14) {
  496.          this.write(var1, ">");
  497.       }
  498.  
  499.       String var25 = (String)var5.getAttribute(AttributeSet.NameAttribute);
  500.       if (var25.equals("pre")) {
  501.          this.writePreText(var1, var3);
  502.       } else {
  503.          this.writeText(var1, var3);
  504.       }
  505.  
  506.       if (var14) {
  507.          this.write(var1, "</" + this.convertCase("font") + ">");
  508.          --this.inFont;
  509.       }
  510.  
  511.       if (var13) {
  512.          this.write(var1, "</" + this.convertCase(var10) + ">");
  513.       }
  514.  
  515.       if (var12) {
  516.          this.write(var1, "</" + this.convertCase(var9) + ">");
  517.       }
  518.  
  519.       if (var11) {
  520.          this.write(var1, "</" + this.convertCase(var8) + ">");
  521.       }
  522.  
  523.    }
  524.  
  525.    private void writeText(Writer var1, Element var2) {
  526.       try {
  527.          StyledDocument var3 = (StyledDocument)var2.getDocument();
  528.          String var4 = var3.getText(var2.getStartOffset(), var2.getEndOffset() - var2.getStartOffset());
  529.          if (var4.endsWith("\n")) {
  530.             this.writeText(var1, var3.getText(var2.getStartOffset(), var2.getEndOffset() - var2.getStartOffset() - 1));
  531.          } else {
  532.             this.writeText(var1, var3.getText(var2.getStartOffset(), var2.getEndOffset() - var2.getStartOffset()));
  533.          }
  534.       } catch (BadLocationException var5) {
  535.          HTMLDebug.println("HTMLWriter.writeText:" + var2);
  536.       }
  537.    }
  538.  
  539.    private void writePreText(Writer var1, Element var2) {
  540.       if (this.writePre && this.nPrelines >= 0) {
  541.          try {
  542.             StyledDocument var3 = (StyledDocument)var2.getDocument();
  543.             var3.getText(var2.getStartOffset(), var2.getEndOffset() - var2.getStartOffset());
  544.             if (var2.getStartOffset() == var2.getEndOffset() && this.nPrelines > 0) {
  545.                this.writeChar(var1, '\n');
  546.                this.writePre = false;
  547.             } else if (this.nPrelines == 0 && var2.getEndOffset() - 1 > var2.getStartOffset() && var3.getText(var2.getStartOffset(), var2.getEndOffset() - var2.getStartOffset()).endsWith("\n")) {
  548.                this.writeText(var1, var3.getText(var2.getStartOffset(), var2.getEndOffset() - var2.getStartOffset() - 1));
  549.                this.writePre = true;
  550.             } else {
  551.                this.writeText(var1, var3.getText(var2.getStartOffset(), var2.getEndOffset() - var2.getStartOffset()));
  552.                this.writePre = true;
  553.             }
  554.          } catch (BadLocationException var4) {
  555.             HTMLDebug.println("HTMLWriter.writeText:" + var2);
  556.          }
  557.       }
  558.    }
  559.  
  560.    public void writeChar(Writer var1, char var2) {
  561.       HTMLDebug.println("Output=>" + var2 + "<=");
  562.  
  563.       try {
  564.          switch (var2) {
  565.             case '"':
  566.                var1.write(""");
  567.                return;
  568.             case '&':
  569.                var1.write("&");
  570.                return;
  571.             case '<':
  572.                var1.write("<");
  573.                return;
  574.             case '>':
  575.                var1.write(">");
  576.                return;
  577.             default:
  578.                if (var2 != '\n' && var2 != '\t' && var2 != '\r') {
  579.                   if (var2 >= ' ' && var2 <= 127) {
  580.                      var1.write(var2);
  581.                   } else {
  582.                      var1.write("&#");
  583.                      var1.write(String.valueOf(var2));
  584.                   }
  585.                } else {
  586.                   var1.write(var2);
  587.                }
  588.          }
  589.       } catch (IOException var4) {
  590.          System.out.println("HTMLWriter.write: " + var2 + " " + var4);
  591.       }
  592.    }
  593.  
  594.    private void writeText(Writer var1, String var2) {
  595.       int var3 = var2.length();
  596.  
  597.       for(int var4 = 0; var4 < var3; ++var4) {
  598.          this.writeChar(var1, var2.charAt(var4));
  599.       }
  600.  
  601.    }
  602.  
  603.    // $FF: synthetic method
  604.    static String access$0(HTMLWriter var0, String var1) {
  605.       return var0.convertCase(var1);
  606.    }
  607.  
  608.    // $FF: synthetic method
  609.    static boolean access$1(HTMLWriter var0) {
  610.       return var0.indenting;
  611.    }
  612.  
  613.    // $FF: synthetic method
  614.    static String access$2() {
  615.       return " ";
  616.    }
  617.  
  618.    // $FF: synthetic method
  619.    static String access$3() {
  620.       return "=";
  621.    }
  622.  
  623.    // $FF: synthetic method
  624.    static int access$4(HTMLWriter var0) {
  625.       return var0.nPrelines;
  626.    }
  627.  
  628.    // $FF: synthetic method
  629.    static void access$5(HTMLWriter var0, int var1) {
  630.       var0.nPrelines = var1;
  631.    }
  632.  
  633.    // $FF: synthetic method
  634.    static boolean access$6(HTMLWriter var0) {
  635.       return var0.writePre;
  636.    }
  637.  
  638.    // $FF: synthetic method
  639.    static void access$7(HTMLWriter var0, boolean var1) {
  640.       var0.writePre = var1;
  641.    }
  642.  
  643.    // $FF: synthetic method
  644.    static String access$8() {
  645.       return "\"";
  646.    }
  647.  
  648.    // $FF: synthetic method
  649.    static void access$9(HTMLWriter var0, Writer var1, Vector var2, Element var3, Element var4) {
  650.       var0.writeContent(var1, var2, var3, var4);
  651.    }
  652.  
  653.    // $FF: synthetic method
  654.    static int access$10(HTMLWriter var0) {
  655.       return var0.inFont;
  656.    }
  657.  
  658.    // $FF: synthetic method
  659.    static void access$11(HTMLWriter var0, int var1) {
  660.       var0.inFont = var1;
  661.    }
  662. }
  663.