javax.swing.text.html
Class HTMLWriter

java.lang.Object
  extended by javax.swing.text.AbstractWriter
      extended by javax.swing.text.html.HTMLWriter

public class HTMLWriter
extends AbstractWriter

HTMLWriter, A Writer for HTMLDocuments.


Field Summary
 
Fields inherited from class javax.swing.text.AbstractWriter
NEWLINE
 
Constructor Summary
HTMLWriter(Writer writer, HTMLDocument doc)
          Constructs a HTMLWriter.
HTMLWriter(Writer writer, HTMLDocument doc, int pos, int len)
          Constructs a HTMLWriter which outputs a Html Fragment.
 
Method Summary
protected  void closeOutUnwantedEmbeddedTags(AttributeSet attrSet)
          Closes out an unwanted embedded tag.
protected  void comment(Element paramElem)
          Writes out the comment.
protected  void emptyTag(Element paramElem)
          Writes out an empty tag. i.e. a tag without any child elements.
protected  void endTag(Element paramElem)
          Writes out an end tag.
protected  boolean isBlockTag(AttributeSet attrSet)
          Determines if it is a block tag or not.
protected  boolean matchNameAttribute(AttributeSet attrSet, HTML.Tag tag)
          Determines if javax.swing.text.StyleConstants.NameAttribute matches tag or not.
protected  void output(char[] chars, int off, int len)
          Write to the writer.
protected  void selectContent(AttributeSet attrSet)
          Writes out the contents of a select element.
protected  void startTag(Element paramElem)
          Writes out a start tag.
protected  boolean synthesizedElement(Element element)
          Determines if element is a synthesized javax.swing.text.Element or not.
protected  void text(Element paramElem)
          Writes out text, within the appropriate range if it is specified.
protected  void textAreaContent(AttributeSet attrSet)
          Writes out the contents of a textarea.
 void write()
          Call this method to start outputing HTML.
protected  void writeAttributes(AttributeSet attrSet)
          Writes all the attributes in the attrSet, except for attrbutes with keys of javax.swing.text.html.HTML.Tag, javax.swing.text.StyleConstants or javax.swing.text.html.HTML.Attribute.ENDTAG.
protected  void writeEmbeddedTags(AttributeSet attrSet)
          Writes out an embedded tag.
protected  void writeLineSeparator()
          Writes out a line separator.
protected  void writeOption(Option option)
          Writes out the contents of an option element.
 
Methods inherited from class javax.swing.text.AbstractWriter
decrIndent, getCanWrapLines, getCurrentLineLength, getDocument, getElementIterator, getEndOffset, getIndentLevel, getIndentSpace, getLineLength, getLineSeparator, getStartOffset, getText, getWriter, incrIndent, indent, inRange, isLineEmpty, setCanWrapLines, setCurrentLineLength, setIndentSpace, setLineLength, setLineSeparator, write, write, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HTMLWriter

public HTMLWriter(Writer writer,
                  HTMLDocument doc)
Constructs a HTMLWriter.

Parameters:
writer - writer to write output to
doc - the HTMLDocument to output

HTMLWriter

public HTMLWriter(Writer writer,
                  HTMLDocument doc,
                  int pos,
                  int len)
Constructs a HTMLWriter which outputs a Html Fragment.

Parameters:
writer - Writer to write output to
doc - the javax.swing.text.html.HTMLDocument to output
pos - position to start outputing the document
len - amount to output the document
Method Detail

write

public void write()
           throws IOException,
                  BadLocationException
Call this method to start outputing HTML.

Specified by:
write in class AbstractWriter
Throws:
IOException - on any I/O exceptions
BadLocationException - if a pos is not a valid position in the html doc element

writeAttributes

protected void writeAttributes(AttributeSet attrSet)
                        throws IOException
Writes all the attributes in the attrSet, except for attrbutes with keys of javax.swing.text.html.HTML.Tag, javax.swing.text.StyleConstants or javax.swing.text.html.HTML.Attribute.ENDTAG.

Overrides:
writeAttributes in class AbstractWriter
Parameters:
attrSet - attrSet to write out
Throws:
IOException - on any I/O exceptions

emptyTag

protected void emptyTag(Element paramElem)
                 throws IOException,
                        BadLocationException
Writes out an empty tag. i.e. a tag without any child elements.

Parameters:
paramElem - the element to output as an empty tag
Throws:
IOException - on any I/O exceptions
BadLocationException - if a pos is not a valid position in the html doc element

isBlockTag

protected boolean isBlockTag(AttributeSet attrSet)
Determines if it is a block tag or not.

Parameters:
attrSet - the attrSet of the element
Returns:
true if it is a block tag false if it is a not block tag

startTag

protected void startTag(Element paramElem)
                 throws IOException,
                        BadLocationException
Writes out a start tag. Synthesized elements are skipped.

Parameters:
paramElem - the element to output as a start tag
Throws:
IOException - on any I/O exceptions
BadLocationException - if a pos is not a valid position in the html doc element

textAreaContent

protected void textAreaContent(AttributeSet attrSet)
                        throws IOException,
                               BadLocationException
Writes out the contents of a textarea.

Parameters:
attrSet - the attrSet of the element to output as a text area
Throws:
IOException - on any I/O exceptions
BadLocationException - if a pos is not a valid position in the html doc element

text

protected void text(Element paramElem)
             throws IOException,
                    BadLocationException
Writes out text, within the appropriate range if it is specified.

Overrides:
text in class AbstractWriter
Parameters:
paramElem - the element to output as a text
Throws:
IOException - on any I/O exceptions
BadLocationException - if a pos is not a valid position in the html doc element

selectContent

protected void selectContent(AttributeSet attrSet)
                      throws IOException
Writes out the contents of a select element.

Parameters:
attrSet - the attrSet of the element to output as a select box
Throws:
IOException - on any I/O exceptions

writeOption

protected void writeOption(Option option)
                    throws IOException
Writes out the contents of an option element.

Parameters:
option - the option object to output as a select option
Throws:
IOException - on any I/O exceptions

endTag

protected void endTag(Element paramElem)
               throws IOException
Writes out an end tag.

Parameters:
paramElem - the element to output as an end tag
Throws:
IOException - on any I/O exceptions

comment

protected void comment(Element paramElem)
                throws IOException,
                       BadLocationException
Writes out the comment.

Parameters:
paramElem - the element to output as a comment
Throws:
IOException
BadLocationException

synthesizedElement

protected boolean synthesizedElement(Element element)
Determines if element is a synthesized javax.swing.text.Element or not.

Parameters:
element - the element to test
Returns:
true if it is a synthesized element, false if it is a not synthesized element

matchNameAttribute

protected boolean matchNameAttribute(AttributeSet attrSet,
                                     HTML.Tag tag)
Determines if javax.swing.text.StyleConstants.NameAttribute matches tag or not.

Parameters:
attrSet - the javax.swing.text.AttributeSet of element to be matched
tag - the HTML.Tag to match
Returns:
true if it matches, false if it does not match

writeEmbeddedTags

protected void writeEmbeddedTags(AttributeSet attrSet)
                          throws IOException
Writes out an embedded tag. The tags not already in openEmbededTagHashSet will written out.

Parameters:
attrSet - the javax.swing.text.AttributeSet of the element to write out
Throws:
IOException - on any I/O exceptions

closeOutUnwantedEmbeddedTags

protected void closeOutUnwantedEmbeddedTags(AttributeSet attrSet)
                                     throws IOException
Closes out an unwanted embedded tag. The tags from the openEmbededTagHashSet not found in attrSet will be written out.

Parameters:
attrSet - the AttributeSet of the element to write out
Throws:
IOException - on any I/O exceptions

writeLineSeparator

protected void writeLineSeparator()
                           throws IOException
Writes out a line separator. Overwrites the parent to write out a new line.

Overrides:
writeLineSeparator in class AbstractWriter
Throws:
IOException - on any I/O exceptions.

output

protected void output(char[] chars,
                      int off,
                      int len)
               throws IOException
Write to the writer. Character entites such as <, > are escaped appropriately.

Overrides:
output in class AbstractWriter
Parameters:
chars - char array to write out
off - offset
len - length
Throws:
IOException - on any I/O exceptions