javax.swing.text.html

Class 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, inRange, incrIndent, indent, isLineEmpty, output, setCanWrapLines, setCurrentLineLength, setIndentSpace, setLineLength, setLineSeparator, text, write, write, write, write, writeAttributes, writeLineSeparator

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

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 Details

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

comment

protected void comment(Element paramElem)
            throws IOException,
                   BadLocationException
Writes out the comment.
Parameters:
paramElem - the element to output as a comment

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

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

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

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

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 interface AbstractWriter
Parameters:
chars - char array to write out
off - offset
len - length
Throws:
IOException - on any I/O exceptions

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

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

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

text

protected void text(Element paramElem)
            throws IOException,
                   BadLocationException
Writes out text, within the appropriate range if it is specified.
Overrides:
text in interface 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

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

write

public void write()
            throws IOException,
                   BadLocationException
Call this method to start outputing HTML.
Overrides:
write in interface 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 interface AbstractWriter
Parameters:
attrSet - attrSet to write out
Throws:
IOException - on any I/O exceptions

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

writeLineSeparator

protected void writeLineSeparator()
            throws IOException
Writes out a line separator. Overwrites the parent to write out a new line.
Overrides:
writeLineSeparator in interface AbstractWriter
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

HTMLWriter.java -- Copyright (C) 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.