Java プラットフォーム 1.2

javax.swing.text
クラス DefaultStyledDocument

java.lang.Object
  |
  +--javax.swing.text.AbstractDocument
        |
        +--javax.swing.text.DefaultStyledDocument
直接の既知のサブクラス:
HTMLDocument

public class DefaultStyledDocument
extends AbstractDocument
implements StyledDocument

RTF (Rich Text Format) に類似した方式を使って、字体や段落書式をマークアップできるドキュメントです。このドキュメントの要素構造は、スタイルランのスタイルの組み合わせを表します。こうしたスタイルランは、段落要素の構造 (ほかの構造に格納されている場合もあり) に対応付けられます。論理書式が段落境界に指定されているので、スタイルランは段落境界で分割されます。

警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。今後の Swing リリースでは、長期間の持続性をサポートする予定です。

関連項目:
Document, AbstractDocument, 直列化された形式

内部クラスの概要
static class DefaultStyledDocument.AttributeUndoableEdit
          UndoableEdit は、Element の AttributeSet に加えられた変更を記憶するために使います。
 class DefaultStyledDocument.ElementBuffer
          要素階層への変更を管理するためのクラスです。
static class DefaultStyledDocument.ElementSpec
          要素を構築するための仕様です。
protected  class DefaultStyledDocument.SectionElement
          ドキュメントのデフォルトのルート要素です。
 
クラス javax.swing.text.AbstractDocument から継承した内部クラス
AbstractDocument.AbstractElement, AbstractDocument.AttributeContext, AbstractDocument.BranchElement, AbstractDocument.Content, AbstractDocument.DefaultDocumentEvent, AbstractDocument.ElementEdit, AbstractDocument.LeafElement
 
フィールドの概要
protected  DefaultStyledDocument.ElementBuffer buffer
           
static int BUFFER_SIZE_DEFAULT
          初期コンテンツバッファのデフォルトサイズです。
 
クラス javax.swing.text.AbstractDocument から継承したフィールド
BAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementName
 
コンストラクタの概要
DefaultStyledDocument()
          デフォルトの書式付きドキュメントを構築します。
DefaultStyledDocument(AbstractDocument.Content c, StyleContext styles)
          書式付きドキュメントを構築します。
DefaultStyledDocument(StyleContext styles)
          デフォルトのコンテンツ記憶域の実装と書式の共有セットを使って、書式付きドキュメントを構築します。
 
メソッドの概要
 void addDocumentListener(DocumentListener listener)
          ドキュメントリスナーを追加し、変更があったときに通知されるようにします。
 Style addStyle(String nm, Style parent)
          新しい書式を論理書式階層に追加します。
protected  void create(DefaultStyledDocument.ElementSpec[] data)
          ドキュメントを初期化して、指定された要素構造(getDefaultRootElement メソッドによって報告される構造)を反映します。
protected  AbstractDocument.AbstractElement createDefaultRoot()
          デフォルトのドキュメント構造を表すのに使うルート要素を作成します。
 Color getBackground(AttributeSet attr)
          属性セットからバックグラウンドカラーを取得します。
 Element getCharacterElement(int pos)
          位置に基づいて文字要素を取得します。
 Element getDefaultRootElement()
          デフォルトのルート要素を取得します。
 Font getFont(AttributeSet attr)
          属性セットからフォントを取得します。
 Color getForeground(AttributeSet attr)
          属性セットからフォアグラウンドカラーを取得します。
 Style getLogicalStyle(int p)
          指定された位置によって表された段落に割り当てられた論理書式を取得します。
 Element getParagraphElement(int pos)
          段落要素を取得します。
 Style getStyle(String nm)
          追加済みの名前付き書式を取得します。
 Enumeration getStyleNames()
          書式名のリストを取得します。
protected  void insert(int offset, DefaultStyledDocument.ElementSpec[] data)
          新しい要素を一括して挿入します。
protected  void insertUpdate(AbstractDocument.DefaultDocumentEvent chng, AttributeSet attr)
          テキスト挿入の結果としてドキュメント構造を更新します。
 void removeDocumentListener(DocumentListener listener)
          リスナーを削除します。
 void removeStyle(String nm)
          ドキュメントに追加済みの名前付き書式を削除します。
protected  void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)
          テキスト削除の結果としてドキュメント構造を更新します。
 void setCharacterAttributes(int offset, int length, AttributeSet s, boolean replace)
          ドキュメントの一部に属性を設定します。
 void setLogicalStyle(int pos, Style s)
          指定された位置の段落に使う論理書式を設定します。
 void setParagraphAttributes(int offset, int length, AttributeSet s, boolean replace)
          段落に属性を設定します。
protected  void styleChanged(Style style)
          ドキュメント全体に対する変更イベントを作成し、それをリスナーに伝達します。
 
クラス javax.swing.text.AbstractDocument から継承したメソッド
addUndoableEditListener, createBranchElement, createLeafElement, createPosition, dump, fireChangedUpdate, fireInsertUpdate, fireRemoveUpdate, fireUndoableEditUpdate, getAsynchronousLoadPriority, getAttributeContext, getBidiRootElement, getContent, getCurrentWriter, getDocumentProperties, getEndPosition, getLength, getProperty, getRootElements, getStartPosition, getText, getText, insertString, postRemoveUpdate, putProperty, readLock, readUnlock, remove, removeUndoableEditListener, render, setAsynchronousLoadPriority, setDocumentProperties, writeLock, writeUnlock
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

BUFFER_SIZE_DEFAULT

public static final int BUFFER_SIZE_DEFAULT
初期コンテンツバッファのデフォルトサイズです。

buffer

protected DefaultStyledDocument.ElementBuffer buffer
コンストラクタの詳細

DefaultStyledDocument

public DefaultStyledDocument(AbstractDocument.Content c,
                             StyleContext styles)
書式付きドキュメントを構築します。
パラメータ:
c - コンテンツのコンテナ
styles - ドキュメント間で共有できるリソースと書式定義

DefaultStyledDocument

public DefaultStyledDocument(StyleContext styles)
デフォルトのコンテンツ記憶域の実装と書式の共有セットを使って、書式付きドキュメントを構築します。
パラメータ:
styles - 書式

DefaultStyledDocument

public DefaultStyledDocument()
デフォルトの書式付きドキュメントを構築します。これは入力コンテンツを BUFFER_SIZE_DEFAULT のサイズによってバッファ処理し、ドキュメントの寿命によってスコープされたスタイルコンテキストを持ち、ほかのドキュメントとは共有されません。
メソッドの詳細

getDefaultRootElement

public Element getDefaultRootElement()
デフォルトのルート要素を取得します。
戻り値:
ルート
オーバーライド:
クラス AbstractDocument 内の getDefaultRootElement
関連項目:
Document.getDefaultRootElement()

create

protected void create(DefaultStyledDocument.ElementSpec[] data)
ドキュメントを初期化して、指定された要素構造(getDefaultRootElement メソッドによって報告される構造)を反映します。ドキュメントがなんらかのデータを保持している場合、それがまず削除されます。

insert

protected void insert(int offset,
                      DefaultStyledDocument.ElementSpec[] data)
               throws BadLocationException
新しい要素を一括して挿入します。これは、ロック解除状態のドキュメントを解析して、要素構造の変更を準備するのに役立ちます。このメソッドは、要素構造を更新する方法を記述するトークンの配列を取得するので、書き込みロックに入る時間を非同期的な更新状況で大幅に減らすことができます。

このメソッドは、Swing のほとんどのメソッドとは異なり、スレッドに対して安全です。詳細は、「Threads and Swing」を参照してください。

パラメータ:
offset - 開始オフセット >= 0
data - 要素データ
例外:
BadLocationException - 開始オフセットが無効な場合

addStyle

public Style addStyle(String nm,
                      Style parent)
新しい書式を論理書式階層に追加します。書式属性は下から順に解釈処理するので、子で指定された属性は、親で指定された属性をオーバーライドします。
定義:
インタフェース StyledDocument 内の addStyle
パラメータ:
nm - 書式名。名前付き書式のコレクション内では、一意でなければならない。書式に名前が指定されていない場合には名前は null になるが、名前のない書式は name で取得できないので、呼び出し側は返された参照を管理しなければならない。名前のない書式は、スタイルランで見られる文字属性のオーバーライドなどで役立つ
parent - 親の書式。指定されていない属性をほかの書式で解釈処理する必要がない場合には null になる
戻り値:
書式

removeStyle

public void removeStyle(String nm)
ドキュメントに追加済みの名前付き書式を削除します。
定義:
インタフェース StyledDocument 内の removeStyle
パラメータ:
nm - 削除対象の書式名

getStyle

public Style getStyle(String nm)
追加済みの名前付き書式を取得します。
定義:
インタフェース StyledDocument 内の getStyle
パラメータ:
nm - 書式名
戻り値:
書式

getStyleNames

public Enumeration getStyleNames()
書式名のリストを取得します。
戻り値:
すべての書式名

setLogicalStyle

public void setLogicalStyle(int pos,
                            Style s)
指定された位置の段落に使う論理書式を設定します。文字と段落の属性が明示的に設定されていない場合、そうした属性は段落に割り当てられた論理書式を解釈処理します。そして次に論理書式が、ドキュメント内の要素階層から完全に独立した特定の階層を解釈処理します。

このメソッドは、Swing のほとんどのメソッドとは異なり、スレッドに対して安全です。詳細は、「Threads and Swing」 を参照してください。

定義:
インタフェース StyledDocument 内の setLogicalStyle
パラメータ:
pos - ドキュメントの先頭からのオフセット >= 0
s - 段落に割り当てられた論理書式。ない場合は null

getLogicalStyle

public Style getLogicalStyle(int p)
指定された位置によって表された段落に割り当てられた論理書式を取得します。
定義:
インタフェース StyledDocument 内の getLogicalStyle
パラメータ:
p - 段落に変換して、割り当てる論理書式を指定する位置 >= 0。これは、ドキュメントの先頭からのオフセット
戻り値:
書式。ない場合は null

setCharacterAttributes

public void setCharacterAttributes(int offset,
                                   int length,
                                   AttributeSet s,
                                   boolean replace)
ドキュメントの一部に属性を設定します。この処理は変更の実行中に書き込みロックを保持し、変更が適切に完了すると DocumentEvent がリスナーに送られます。

このメソッドは、Swing のほとんどのメソッドとは異なり、スレッドに対して安全です。詳細は、「Threads and Swing」 を参照してください。

定義:
インタフェース StyledDocument 内の setCharacterAttributes
パラメータ:
offset - ドキュメント内のオフセット >= 0
length - 長さ >= 0
s - 属性
replace - 新しい属性の設定前に従来の属性を置換する必要がある場合は true

setParagraphAttributes

public void setParagraphAttributes(int offset,
                                   int length,
                                   AttributeSet s,
                                   boolean replace)
段落に属性を設定します。

このメソッドは、Swing のほとんどのメソッドとは異なり、スレッドに対して安全です。詳細は、「Threads and Swing」 を参照してください。

定義:
インタフェース StyledDocument 内の setParagraphAttributes
パラメータ:
offset - 段落に対するオフセット >= 0
length - 対象の文字数 >= 0
s - 属性
replace - 既存の属性を置換するか、マージするか

getParagraphElement

public Element getParagraphElement(int pos)
段落要素を取得します。段落要素は、もっとも深い階層の葉の親です。
定義:
インタフェース StyledDocument 内の getParagraphElement
パラメータ:
pos - 開始オフセット >= 0
戻り値:
要素
オーバーライド:
クラス AbstractDocument 内の getParagraphElement

getCharacterElement

public Element getCharacterElement(int pos)
位置に基づいて文字要素を取得します。
定義:
インタフェース StyledDocument 内の getCharacterElement
パラメータ:
pos - ドキュメント内の位置 >= 0
戻り値:
要素

insertUpdate

protected void insertUpdate(AbstractDocument.DefaultDocumentEvent chng,
                            AttributeSet attr)
テキスト挿入の結果としてドキュメント構造を更新します。これは、書き込みロック内で発生します。この実装は挿入されたコンテンツを簡単に解析して改行を探し、要素バッファの命令セットを構築します。
パラメータ:
chng - ドキュメント変更の記述
attr - 属性
オーバーライド:
クラス AbstractDocument 内の insertUpdate

removeUpdate

protected void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)
テキスト削除の結果としてドキュメント構造を更新します。
パラメータ:
chng - ドキュメント変更の記述
オーバーライド:
クラス AbstractDocument 内の removeUpdate

createDefaultRoot

protected AbstractDocument.AbstractElement createDefaultRoot()
デフォルトのドキュメント構造を表すのに使うルート要素を作成します。
戻り値:
要素ベース

getForeground

public Color getForeground(AttributeSet attr)
属性セットからフォアグラウンドカラーを取得します。
定義:
インタフェース StyledDocument 内の getForeground
パラメータ:
attr - 属性セット
戻り値:
フォアグラウンドカラー

getBackground

public Color getBackground(AttributeSet attr)
属性セットからバックグラウンドカラーを取得します。
定義:
インタフェース StyledDocument 内の getBackground
パラメータ:
attr - 属性セット
戻り値:
バックグラウンドカラー

getFont

public Font getFont(AttributeSet attr)
属性セットからフォントを取得します。
定義:
インタフェース StyledDocument 内の getFont
パラメータ:
attr - 属性セット
戻り値:
フォント

styleChanged

protected void styleChanged(Style style)
ドキュメント全体に対する変更イベントを作成し、それをリスナーに伝達します。サブクラスでは、何がダメージを受けたかわかるようにする必要があることがあります。
パラメータ:
style - 変更された Style

addDocumentListener

public void addDocumentListener(DocumentListener listener)
ドキュメントリスナーを追加し、変更があったときに通知されるようにします。
パラメータ:
listener - リスナー
オーバーライド:
クラス AbstractDocument 内の addDocumentListener
関連項目:
Document.addDocumentListener(javax.swing.event.DocumentListener)

removeDocumentListener

public void removeDocumentListener(DocumentListener listener)
リスナーを削除します。
パラメータ:
listener - リスナー
オーバーライド:
クラス AbstractDocument 内の removeDocumentListener
関連項目:
Document.removeDocumentListener(javax.swing.event.DocumentListener)

Java プラットフォーム 1.2

バグや機能要求の報告
新しい javadoc の表示についてのコメントやご提案
Java は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.