javax.swing.text.html

Class HTMLEditorKit.InsertHTMLTextAction

Enclosing Class:
HTMLEditorKit
Implemented Interfaces:
Action, ActionListener, Cloneable, EventListener, Serializable

public static class HTMLEditorKit.InsertHTMLTextAction
extends HTMLEditorKit.HTMLTextAction

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.

See Also:
Serialized Form

Field Summary

protected HTML.Tag
addTag
Tag in HTML to start adding tags from.
protected HTML.Tag
alternateAddTag
Alternate tag in HTML to start adding tags from if parentTag is not found and alternateParentTag is found.
protected HTML.Tag
alternateParentTag
Alternate Tag to check for in the document if parentTag is not found.
protected String
html
HTML to insert.
protected HTML.Tag
parentTag
Tag to check for in the document.

Fields inherited from class javax.swing.AbstractAction

changeSupport, enabled

Fields inherited from interface javax.swing.Action

ACCELERATOR_KEY, ACTION_COMMAND_KEY, DEFAULT, LONG_DESCRIPTION, MNEMONIC_KEY, NAME, SHORT_DESCRIPTION, SMALL_ICON

Constructor Summary

InsertHTMLTextAction(String name, String html, HTML.Tag parentTag, HTML.Tag addTag)
InsertHTMLTextAction(String name, String html, HTML.Tag parentTag, HTML.Tag addTag, HTML.Tag alternateParentTag, HTML.Tag alternateAddTag)

Method Summary

void
actionPerformed(ActionEvent ae)
Inserts the HTML into the document.
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.
protected void
insertHTML(JEditorPane editor, HTMLDocument doc, int offset, String html, int popDepth, int pushDepth, HTML.Tag addTag)
A cover for HTMLEditorKit.insertHTML.
protected @Deprecated
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

Methods inherited from class javax.swing.text.html.HTMLEditorKit.HTMLTextAction

elementCountToTag, findElementMatchingTag, getElementsAt, getHTMLDocument, getHTMLEditorKit

Methods inherited from class javax.swing.text.StyledEditorKit.StyledTextAction

getEditor, getStyledDocument, getStyledEditorKit, setCharacterAttributes, setParagraphAttributes

Methods inherited from class javax.swing.text.TextAction

augmentList, getFocusedComponent, getTextComponent

Methods inherited from class javax.swing.AbstractAction

addPropertyChangeListener, clone, firePropertyChange, getKeys, getPropertyChangeListeners, getValue, isEnabled, putValue, removePropertyChangeListener, setEnabled

Methods inherited from class java.lang.Object

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

Field Details

addTag

protected HTML.Tag addTag
Tag in HTML to start adding tags from.

alternateAddTag

protected HTML.Tag alternateAddTag
Alternate tag in HTML to start adding tags from if parentTag is not found and alternateParentTag is found.

alternateParentTag

protected HTML.Tag alternateParentTag
Alternate Tag to check for in the document if parentTag is not found.

html

protected String html
HTML to insert.

parentTag

protected HTML.Tag parentTag
Tag to check for in the document.

Constructor Details

InsertHTMLTextAction

public InsertHTMLTextAction(String name,
                            String html,
                            HTML.Tag parentTag,
                            HTML.Tag addTag)

InsertHTMLTextAction

public InsertHTMLTextAction(String name,
                            String html,
                            HTML.Tag parentTag,
                            HTML.Tag addTag,
                            HTML.Tag alternateParentTag,
                            HTML.Tag alternateAddTag)
Usages and Demos :

View More Examples of InsertHTMLTextAction(String name,String html,HTML.Tag parentTag,HTML.Tag addTag,HTML.Tag alternateParentTag,HTML.Tag alternateAddTag)
   1:                  jtpMain.setCaretPosition(whichCell.getStartOffset());
   2:                 new HTMLEditorKit.InsertHTMLTextAction("insertTableCell", sCell, HTML.Tag.TR, HTML.Tag.TD, HTML.Tag.TH, HTML.Tag.TD).actionPerformed(actionEvent);
   3:              }
   4:         ...
   5:         ActionEvent actionEvent = new ActionEvent(jtpMain, 0, "insertTableCell");
   6:         new HTMLEditorKit.InsertHTMLTextAction("insertTableCell", sCell, HTML.Tag.TR, HTML.Tag.TD, HTML.Tag.TH, HTML.Tag.TD).actionPerformed(actionEvent);
   7:         refreshOnUpdate();
   8:     }

View Full Code Here
   1:                  jtpMain.setCaretPosition(whichCell.getStartOffset());
   2:                 new HTMLEditorKit.InsertHTMLTextAction("insertTableCell", sCell, HTML.Tag.TR, HTML.Tag.TD, HTML.Tag.TH, HTML.Tag.TD).actionPerformed(actionEvent);
   3:              }
   4:         ...
   5:         ActionEvent actionEvent = new ActionEvent(jtpMain, 0, "insertTableCell");
   6:         new HTMLEditorKit.InsertHTMLTextAction("insertTableCell", sCell, HTML.Tag.TR, HTML.Tag.TD, HTML.Tag.TH, HTML.Tag.TD).actionPerformed(actionEvent);
   7:         refreshOnUpdate();
   8:     }

View Full Code Here

Method Details

actionPerformed

public void actionPerformed(ActionEvent ae)
Inserts the HTML into the document.
Specified by:
actionPerformed in interface ActionListener
Parameters:
ae - the event

insertAtBoundary

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.
Since:
1.3

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.

void insertAtBoundry

protected @Deprecated 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.