Module java.desktop

Class HTMLWriter


  • public class HTMLWriter
    extends AbstractWriter
    This is a writer for HTMLDocuments.
    • Constructor Detail

      • HTMLWriter

        public HTMLWriter​(Writer w,
                          HTMLDocument doc)
        Creates a new HTMLWriter.
        Parameters:
        w - a Writer
        doc - an HTMLDocument
      • HTMLWriter

        public HTMLWriter​(Writer w,
                          HTMLDocument doc,
                          int pos,
                          int len)
        Creates a new HTMLWriter.
        Parameters:
        w - a Writer
        doc - an HTMLDocument
        pos - the document location from which to fetch the content
        len - the amount to write out
    • Method Detail

      • writeAttributes

        protected void writeAttributes​(AttributeSet attr)
                                throws IOException
        Writes out the attribute set. Ignores all attributes with a key of type HTML.Tag, attributes with a key of type StyleConstants, and attributes with a key of type HTML.Attribute.ENDTAG.
        Overrides:
        writeAttributes in class AbstractWriter
        Parameters:
        attr - an AttributeSet
        Throws:
        IOException - on any I/O error
      • isBlockTag

        protected boolean isBlockTag​(AttributeSet attr)
        Determines if the HTML.Tag associated with the element is a block tag.
        Parameters:
        attr - an AttributeSet
        Returns:
        true if tag is block tag, false otherwise.
      • selectContent

        protected void selectContent​(AttributeSet attr)
                              throws IOException
        Writes out the content of the SELECT form element.
        Parameters:
        attr - the AttributeSet associated with the form element
        Throws:
        IOException - on any I/O error
      • writeOption

        protected void writeOption​(Option option)
                            throws IOException
        Writes out the content of the Option form element.
        Parameters:
        option - an Option
        Throws:
        IOException - on any I/O error
      • endTag

        protected void endTag​(Element elem)
                       throws IOException
        Writes out an end tag for the element.
        Parameters:
        elem - an Element
        Throws:
        IOException - on any I/O error
      • synthesizedElement

        protected boolean synthesizedElement​(Element elem)
        Returns true if the element is a synthesized element. Currently we are only testing for the p-implied tag.
        Parameters:
        elem - an element
        Returns:
        true if the element is a synthesized element.
      • matchNameAttribute

        protected boolean matchNameAttribute​(AttributeSet attr,
                                             HTML.Tag tag)
        Returns true if the StyleConstants.NameAttribute is equal to the tag that is passed in as a parameter.
        Parameters:
        attr - a set of attributes
        tag - an HTML tag
        Returns:
        true if the StyleConstants.NameAttribute is equal to the tag that is passed in as a parameter.
      • writeEmbeddedTags

        protected void writeEmbeddedTags​(AttributeSet attr)
                                  throws IOException
        Searches for embedded tags in the AttributeSet and writes them out. It also stores these tags in a vector so that when appropriate the corresponding end tags can be written out.
        Parameters:
        attr - a set of attributes
        Throws:
        IOException - on any I/O error
      • closeOutUnwantedEmbeddedTags

        protected void closeOutUnwantedEmbeddedTags​(AttributeSet attr)
                                             throws IOException
        Searches the attribute set and for each tag that is stored in the tag vector. If the tag is not found, then the tag is removed from the vector and a corresponding end tag is written out.
        Parameters:
        attr - a set of attributes
        Throws:
        IOException - on any I/O error
      • writeLineSeparator

        protected void writeLineSeparator()
                                   throws IOException
        Writes the line separator. This is overriden to make sure we don't replace the newline content in case it is outside normal ascii.
        Overrides:
        writeLineSeparator in class AbstractWriter
        Throws:
        IOException - on any I/O error
        Since:
        1.3
      • output

        protected void output​(char[] chars,
                              int start,
                              int length)
                       throws IOException
        This method is overriden to map any character entities, such as < to &lt;. super.output will be invoked to write the content.
        Overrides:
        output in class AbstractWriter
        Parameters:
        chars - characters to output
        start - starting index
        length - length of output
        Throws:
        IOException - on any I/O error
        Since:
        1.3