Package com.lightdev.app.shtm
Class SHTMLEditorKit
- java.lang.Object
-
- javax.swing.text.EditorKit
-
- javax.swing.text.DefaultEditorKit
-
- javax.swing.text.StyledEditorKit
-
- javax.swing.text.html.HTMLEditorKit
-
- com.lightdev.app.shtm.SHTMLEditorKit
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,javax.accessibility.Accessible
public class SHTMLEditorKit extends javax.swing.text.html.HTMLEditorKit
Extensions toHTMLEditorKit
for application SimplyHTML.In stage 1 this only re-implements how style sheets are handled by default.
Stage 3 adds functionality for usage of the custom HTML document and HTML reader used with SimplyHTML from this stage on.
With stage 9 some additional views have been added to the view factory as a workaround for bug id 4765271 (see http://developer.java.sun.com/developer/bugParade/bugs/4765271.html).
OK, I give up: With release 2 of stage 9 above views are used no longer and bug fixing is not done anymore. The HTML support is almost taken as is in the hope that Sun will enhance it some day. To do compensation inside a single application is not possible with a reasonable effort.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SHTMLEditorKit.SHTMLFactory
-
Nested classes/interfaces inherited from class javax.swing.text.html.HTMLEditorKit
javax.swing.text.html.HTMLEditorKit.HTMLFactory, javax.swing.text.html.HTMLEditorKit.HTMLTextAction, javax.swing.text.html.HTMLEditorKit.InsertHTMLTextAction, javax.swing.text.html.HTMLEditorKit.LinkController, javax.swing.text.html.HTMLEditorKit.Parser, javax.swing.text.html.HTMLEditorKit.ParserCallback
-
Nested classes/interfaces inherited from class javax.swing.text.StyledEditorKit
javax.swing.text.StyledEditorKit.AlignmentAction, javax.swing.text.StyledEditorKit.BoldAction, javax.swing.text.StyledEditorKit.FontFamilyAction, javax.swing.text.StyledEditorKit.FontSizeAction, javax.swing.text.StyledEditorKit.ForegroundAction, javax.swing.text.StyledEditorKit.ItalicAction, javax.swing.text.StyledEditorKit.StyledTextAction, javax.swing.text.StyledEditorKit.UnderlineAction
-
Nested classes/interfaces inherited from class javax.swing.text.DefaultEditorKit
javax.swing.text.DefaultEditorKit.BeepAction, javax.swing.text.DefaultEditorKit.CopyAction, javax.swing.text.DefaultEditorKit.CutAction, javax.swing.text.DefaultEditorKit.DefaultKeyTypedAction, javax.swing.text.DefaultEditorKit.InsertBreakAction, javax.swing.text.DefaultEditorKit.InsertContentAction, javax.swing.text.DefaultEditorKit.InsertTabAction, javax.swing.text.DefaultEditorKit.PasteAction
-
-
Field Summary
-
Fields inherited from class javax.swing.text.html.HTMLEditorKit
BOLD_ACTION, COLOR_ACTION, DEFAULT_CSS, FONT_CHANGE_BIGGER, FONT_CHANGE_SMALLER, IMG_ALIGN_BOTTOM, IMG_ALIGN_MIDDLE, IMG_ALIGN_TOP, IMG_BORDER, ITALIC_ACTION, LOGICAL_STYLE_ACTION, PARA_INDENT_LEFT, PARA_INDENT_RIGHT
-
Fields inherited from class javax.swing.text.DefaultEditorKit
backwardAction, beepAction, beginAction, beginLineAction, beginParagraphAction, beginWordAction, copyAction, cutAction, defaultKeyTypedAction, deleteNextCharAction, deleteNextWordAction, deletePrevCharAction, deletePrevWordAction, downAction, endAction, endLineAction, EndOfLineStringProperty, endParagraphAction, endWordAction, forwardAction, insertBreakAction, insertContentAction, insertTabAction, nextWordAction, pageDownAction, pageUpAction, pasteAction, previousWordAction, readOnlyAction, selectAllAction, selectionBackwardAction, selectionBeginAction, selectionBeginLineAction, selectionBeginParagraphAction, selectionBeginWordAction, selectionDownAction, selectionEndAction, selectionEndLineAction, selectionEndParagraphAction, selectionEndWordAction, selectionForwardAction, selectionNextWordAction, selectionPreviousWordAction, selectionUpAction, selectLineAction, selectParagraphAction, selectWordAction, upAction, writableAction
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description javax.swing.text.Document
createDefaultDocument()
Create an uninitialized text storage model that is appropriate for this type of editor.javax.swing.text.ViewFactory
getViewFactory()
Fetch a factory that is suitable for producing views of any models that are produced by this kit.void
read(java.io.Reader in, javax.swing.text.Document doc, int pos)
Inserts content from the given stream.static void
removeCharacterAttributes(javax.swing.text.StyledDocument doc, java.lang.Object attributeName, int start, int length)
void
write(java.io.Writer out, javax.swing.text.Document doc, int pos, int len)
Write content from a document to the given stream in a format appropriate for this kind of content handler.-
Methods inherited from class javax.swing.text.html.HTMLEditorKit
clone, createInputAttributes, deinstall, getAccessibleContext, getActions, getContentType, getDefaultCursor, getInputAttributes, getLinkCursor, getParser, getStyleSheet, insertHTML, install, isAutoFormSubmission, setAutoFormSubmission, setDefaultCursor, setLinkCursor, setStyleSheet
-
-
-
-
Method Detail
-
createDefaultDocument
public javax.swing.text.Document createDefaultDocument()
Create an uninitialized text storage model that is appropriate for this type of editor.- Overrides:
createDefaultDocument
in classjavax.swing.text.html.HTMLEditorKit
- Returns:
- the model
-
read
public void read(java.io.Reader in, javax.swing.text.Document doc, int pos) throws java.io.IOException, javax.swing.text.BadLocationException
Inserts content from the given stream. Ifdoc
is an instance of HTMLDocument, this will read HTML 3.2 text. Inserting HTML into a non-empty document must be inside the body Element, if you do not insert into the body an exception will be thrown. When inserting into a non-empty document all tags outside of the body (head, title) will be dropped.- Overrides:
read
in classjavax.swing.text.html.HTMLEditorKit
- Parameters:
in
- the stream to read fromdoc
- the destination for the insertionpos
- the location in the document to place the content- Throws:
java.io.IOException
- on any I/O errorjavax.swing.text.BadLocationException
- if pos represents an invalid location within the documentjava.lang.RuntimeException
- (will eventually be a BadLocationException) if pos is invalid
-
write
public void write(java.io.Writer out, javax.swing.text.Document doc, int pos, int len) throws java.io.IOException, javax.swing.text.BadLocationException
Write content from a document to the given stream in a format appropriate for this kind of content handler.- Overrides:
write
in classjavax.swing.text.html.HTMLEditorKit
- Parameters:
out
- the stream to write todoc
- the source for the writepos
- the location in the document to fetch the contentlen
- the amount to write out- Throws:
java.io.IOException
- on any I/O errorjavax.swing.text.BadLocationException
- if pos represents an invalid location within the document
-
getViewFactory
public javax.swing.text.ViewFactory getViewFactory()
Fetch a factory that is suitable for producing views of any models that are produced by this kit.- Overrides:
getViewFactory
in classjavax.swing.text.html.HTMLEditorKit
- Returns:
- the factory
-
removeCharacterAttributes
public static void removeCharacterAttributes(javax.swing.text.StyledDocument doc, java.lang.Object attributeName, int start, int length)
-
-