Save This Page
Home » openjdk-7 » javax » swing » text » html » [javadoc | source]
javax.swing.text.html
public static class: HTMLEditorKit.InsertHTMLTextAction [javadoc | source]
java.lang.Object
   StyledTextAction
      javax.swing.text.html.HTMLEditorKit$HTMLTextAction
         javax.swing.text.html.HTMLEditorKit$InsertHTMLTextAction

Direct Known Subclasses:
    InsertHRAction

InsertHTMLTextAction can be used to insert an arbitrary string of HTML into an existing HTML document. At least two HTML.Tags need to be supplied. The first Tag, parentTag, identifies the parent in the document to add the elements to. The second tag, addTag, identifies the first tag that should be added to the document as seen in the HTML string. One important thing to remember, is that the parser is going to generate all the appropriate tags, even if they aren't in the HTML string passed in.

For example, lets say you wanted to create an action to insert a table into the body. The parentTag would be HTML.Tag.BODY, addTag would be HTML.Tag.TABLE, and the string could be something like <table><tr><td></td></tr></table>.

There is also an option to supply an alternate parentTag and addTag. These will be checked for if there is no parentTag at offset.
Field Summary
protected  String html    HTML to insert. 
protected  HTML.Tag parentTag    Tag to check for in the document. 
protected  HTML.Tag addTag    Tag in HTML to start adding tags from. 
protected  HTML.Tag alternateParentTag    Alternate Tag to check for in the document if parentTag is not found. 
protected  HTML.Tag alternateAddTag    Alternate tag in HTML to start adding tags from if parentTag is not found and alternateParentTag is found. 
 boolean adjustSelection    True indicates the selection should be adjusted after an insert. 
Constructor:
 public InsertHTMLTextAction(String name,
    String html,
    HTML.Tag parentTag,
    HTML.Tag addTag) 
 public InsertHTMLTextAction(String name,
    String html,
    HTML.Tag parentTag,
    HTML.Tag addTag,
    HTML.Tag alternateParentTag,
    HTML.Tag alternateAddTag) 
 InsertHTMLTextAction(String name,
    String html,
    HTML.Tag parentTag,
    HTML.Tag addTag,
    HTML.Tag alternateParentTag,
    HTML.Tag alternateAddTag,
    boolean adjustSelection) 
Method from javax.swing.text.html.HTMLEditorKit$InsertHTMLTextAction Summary:
actionPerformed,   adjustSelection,   insertAtBoundary,   insertAtBoundry,   insertHTML,   insertIntoTag
Methods from javax.swing.text.html.HTMLEditorKit$HTMLTextAction:
elementCountToTag,   findElementMatchingTag,   getElementsAt,   getHTMLDocument,   getHTMLEditorKit
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from javax.swing.text.html.HTMLEditorKit$InsertHTMLTextAction Detail:
 public  void actionPerformed(ActionEvent ae) 
    Inserts the HTML into the document.
  void adjustSelection(JEditorPane pane,
    HTMLDocument doc,
    int startOffset,
    int oldLength) 
    Called after an insertion to adjust the selection.
 protected  void insertAtBoundary(JEditorPane editor,
    HTMLDocument doc,
    int offset,
    Element insertElement,
    String html,
    HTML.Tag parentTag,
    HTML.Tag addTag) 
    This is invoked when inserting at a boundary. It determines the number of pops, and then the number of pushes that need to be performed, and then invokes insertHTML.
 protected  void insertAtBoundry(JEditorPane editor,
    HTMLDocument doc,
    int offset,
    Element insertElement,
    String html,
    HTML.Tag parentTag,
    HTML.Tag addTag) 
Deprecated! As - of Java 2 platform v1.3, use insertAtBoundary

    This is invoked when inserting at a boundary. It determines the number of pops, and then the number of pushes that need to be performed, and then invokes insertHTML.
 protected  void insertHTML(JEditorPane editor,
    HTMLDocument doc,
    int offset,
    String html,
    int popDepth,
    int pushDepth,
    HTML.Tag addTag) 
    A cover for HTMLEditorKit.insertHTML. If an exception it thrown it is wrapped in a RuntimeException and thrown.
 boolean insertIntoTag(JEditorPane editor,
    HTMLDocument doc,
    int offset,
    HTML.Tag tag,
    HTML.Tag addTag) 
    If there is an Element with name tag at offset, this will invoke either insertAtBoundary or insertHTML. This returns true if there is a match, and one of the inserts is invoked.