|
Java プラットフォーム 1.2 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--javax.swing.text.html.HTMLEditorKit.ParserCallback | +--javax.swing.text.html.HTMLDocument.HTMLReader
HTML ドキュメントを HTML 要素構造とともにロードするための HTML リーダです。このクラスは、パーサからのコールバックのセットであり、属性のタグが付いた要素のセットを作成するために実装されます。解析は必要な要素サブツリーを記述するトークン群 (ElementSpec) を組み立て、これを書き込みロックのもとでドキュメントの外部クラスの挿入メソッドを使ってドキュメントに注入します。
リーダを構成設定するには、アクションを処理する方法を記述した HTMLDocument.HTMLReader.TagAction
型のアクションを登録します。提供されているアクションの基本になっている考え方は、要素構造が結局のところなんらかの書式を持つ文字の並びから成る段落であれば、もっとも自然なテキストの編集オペレーションを提供できる、というものです。構造的に指定した方が自然な場合もあるので、段落上での任意の構造が許可されるようにすべきであり、その場合でも、構造的なアクションを使って編集する必要があります。つまり、解析中のストリームで指定されている HTML 要素の一部は、属性に折り畳まれ、場合によっては段落が合成されます。HTML 要素が属性に変換される場合、情報が失われないように属性キーは HTML.Tag 型になり、値は AttributeSet 型になります。これによって、既存のアクションの多くが機能するようになり、ユーザは入力をキーボードから入力したり、リターンキー、BackSpace キー、Delete キーなどを押して、それにふさわしい結果を得ることができます。選択を作成したり、属性を適用したり削除することもできます。以上のことを考慮した上で、リーダが行う作業は次のようなタスクに分類できます。
現時点では、<APPLET>、<PARAM>、<MAP>、<AREA>、<LINK>、<SCRIPT>、および <STYLE> はサポートされていません。
HTML.Tag
で定義されているタグに対して割り当てられているアクション記述を次に示します。
HTML.Tag.A | CharacterAction |
HTML.Tag.ADDRESS | CharacterAction |
HTML.Tag.APPLET | HiddenAction |
HTML.Tag.AREA | HiddenAction |
HTML.Tag.B | CharacterAction |
HTML.Tag.BASE | BaseAction |
HTML.Tag.BASEFONT | CharacterAction |
HTML.Tag.BIG | CharacterAction |
HTML.Tag.BLOCKQUOTE | BlockAction |
HTML.Tag.BODY | BlockAction |
HTML.Tag.BR | SpecialAction |
HTML.Tag.CAPTION | BlockAction |
HTML.Tag.CENTER | BlockAction |
HTML.Tag.CITE | CharacterAction |
HTML.Tag.CODE | CharacterAction |
HTML.Tag.DD | BlockAction |
HTML.Tag.DFN | CharacterAction |
HTML.Tag.DIR | BlockAction |
HTML.Tag.DIV | BlockAction |
HTML.Tag.DL | BlockAction |
HTML.Tag.DT | ParagraphAction |
HTML.Tag.EM | CharacterAction |
HTML.Tag.FONT | CharacterAction |
HTML.Tag.FORM | CharacterAction |
HTML.Tag.FRAME | SpecialAction |
HTML.Tag.FRAMESET | BlockAction |
HTML.Tag.H1 | ParagraphAction |
HTML.Tag.H2 | ParagraphAction |
HTML.Tag.H3 | ParagraphAction |
HTML.Tag.H4 | ParagraphAction |
HTML.Tag.H5 | ParagraphAction |
HTML.Tag.H6 | ParagraphAction |
HTML.Tag.HEAD | HiddenAction |
HTML.Tag.HR | SpecialAction |
HTML.Tag.HTML | BlockAction |
HTML.Tag.I | CharacterAction |
HTML.Tag.IMG | SpecialAction |
HTML.Tag.INPUT | FormAction |
HTML.Tag.ISINDEX | IsndexAction |
HTML.Tag.KBD | CharacterAction |
HTML.Tag.LI | BlockAction |
HTML.Tag.LINK | HiddenAction |
HTML.Tag.MAP | HiddenAction |
HTML.Tag.MENU | BlockAction |
HTML.Tag.META | HiddenAction |
HTML.Tag.NOFRAMES | BlockAction |
HTML.Tag.OBJECT | SpecialAction |
HTML.Tag.OL | BlockAction |
HTML.Tag.OPTION | FormAction |
HTML.Tag.P | ParagraphAction |
HTML.Tag.PARAM | HiddenAction |
HTML.Tag.PRE | PreAction |
HTML.Tag.SAMP | CharacterAction |
HTML.Tag.SCRIPT | HiddenAction |
HTML.Tag.SELECT | FormAction |
HTML.Tag.SMALL | CharacterAction |
HTML.Tag.STRIKE | CharacterAction |
HTML.Tag.S | CharacterAction |
HTML.Tag.STRONG | CharacterAction |
HTML.Tag.STYLE | HiddenAction |
HTML.Tag.SUB | CharacterAction |
HTML.Tag.SUP | CharacterAction |
HTML.Tag.TABLE | BlockAction |
HTML.Tag.TD | BlockAction |
HTML.Tag.TEXTAREA | FormAction |
HTML.Tag.TH | BlockAction |
HTML.Tag.TITLE | TitleAction |
HTML.Tag.TR | BlockAction |
HTML.Tag.TT | CharacterAction |
HTML.Tag.U | CharacterAction |
HTML.Tag.UL | BlockAction |
HTML.Tag.VAR | CharacterAction |
内部クラスの概要 | |
class |
HTMLDocument.HTMLReader.BlockAction
|
class |
HTMLDocument.HTMLReader.CharacterAction
|
class |
HTMLDocument.HTMLReader.FormAction
フォームの各コントロールを表すための要素をすべて作成して、フォームをサポートするためのアクションです。 |
class |
HTMLDocument.HTMLReader.HiddenAction
|
class |
HTMLDocument.HTMLReader.IsindexAction
|
class |
HTMLDocument.HTMLReader.ParagraphAction
|
class |
HTMLDocument.HTMLReader.PreAction
|
class |
HTMLDocument.HTMLReader.SpecialAction
|
class |
HTMLDocument.HTMLReader.TagAction
タグの構文解析に応じて実行されるアクションです。 |
フィールドの概要 | |
protected MutableAttributeSet |
charAttr
|
protected Vector |
parseBuffer
|
コンストラクタの概要 | |
HTMLDocument.HTMLReader(int offset)
|
|
HTMLDocument.HTMLReader(int offset,
int popDepth,
int pushDepth,
HTML.Tag insertTag)
|
メソッドの概要 | |
protected void |
addContent(char[] data,
int offs,
int length)
現在の文字属性を持つテキストを追加します。 |
protected void |
addContent(char[] data,
int offs,
int length,
boolean generateImpliedPIfNecessary)
現在の文字属性を持つテキストを追加します。 |
protected void |
addSpecialElement(HTML.Tag t,
MutableAttributeSet a)
基本的に属性セット全体で指定されているコンテンツを追加します。 |
protected void |
blockClose(HTML.Tag t)
構文解析バッファに命令を追加して、与えられたタイプのブロック要素を閉じます。 |
protected void |
blockOpen(HTML.Tag t,
MutableAttributeSet attr)
構文解析バッファに命令を追加して、与えられた属性を持つブロック要素を作成します。 |
void |
flush()
HTML リーダで呼び出される最後のメソッドです。 |
void |
handleComment(char[] data,
int pos)
|
void |
handleEndTag(HTML.Tag t,
int pos)
パーサからのコールバックです。 |
void |
handleSimpleTag(HTML.Tag t,
MutableAttributeSet a,
int pos)
パーサからのコールバックです。 |
void |
handleStartTag(HTML.Tag t,
MutableAttributeSet a,
int pos)
パーサからのコールバックです。 |
void |
handleText(char[] data,
int pos)
テキストブロックが見つかったことを示すために、パーサによって呼び出されます。 |
protected void |
popCharacterStyle()
以前にプッシュした文字スタイルをスタックからポップして、以前の文字スタイルに戻します。 |
protected void |
preContent(char[] data)
PRE 要素で見つかった、与えられたコンテンツを追加します。 |
protected void |
pushCharacterStyle()
新しい入れ子の文字スタイルを作成する準備として、現在の文字スタイルをスタックにプッシュします。 |
protected void |
registerTag(HTML.Tag t,
HTMLDocument.HTMLReader.TagAction a)
与えられたタグのハンドラを登録します。 |
protected void |
textAreaContent(char[] data)
テキスト領域ドキュメントに指定されたコンテンツを追加します。 |
クラス javax.swing.text.html.HTMLEditorKit.ParserCallback から継承したメソッド |
handleError |
クラス java.lang.Object から継承したメソッド |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
フィールドの詳細 |
protected Vector parseBuffer
protected MutableAttributeSet charAttr
コンストラクタの詳細 |
public HTMLDocument.HTMLReader(int offset)
public HTMLDocument.HTMLReader(int offset, int popDepth, int pushDepth, HTML.Tag insertTag)
メソッドの詳細 |
public void flush() throws BadLocationException
public void handleText(char[] data, int pos)
public void handleStartTag(HTML.Tag t, MutableAttributeSet a, int pos)
public void handleComment(char[] data, int pos)
public void handleEndTag(HTML.Tag t, int pos)
public void handleSimpleTag(HTML.Tag t, MutableAttributeSet a, int pos)
protected void registerTag(HTML.Tag t, HTMLDocument.HTMLReader.TagAction a)
protected void pushCharacterStyle()
protected void popCharacterStyle()
protected void textAreaContent(char[] data)
protected void preContent(char[] data)
protected void blockOpen(HTML.Tag t, MutableAttributeSet attr)
protected void blockClose(HTML.Tag t)
protected void addContent(char[] data, int offs, int length)
embedded
- 埋め込みオブジェクトの属性protected void addContent(char[] data, int offs, int length, boolean generateImpliedPIfNecessary)
embedded
- 埋め込みオブジェクトの属性protected void addSpecialElement(HTML.Tag t, MutableAttributeSet a)
|
Java プラットフォーム 1.2 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |