JavaTM 2 Platform
Standard Ed. 5.0

javax.swing.text
クラス PlainDocument

java.lang.Object
  上位を拡張 javax.swing.text.AbstractDocument
      上位を拡張 javax.swing.text.PlainDocument
すべての実装されたインタフェース:
Serializable, Document

public class PlainDocument
extends AbstractDocument

文字の属性をまったく保持しないプレーンなドキュメントです。デフォルトでは、このドキュメントの要素の構造は、テキスト内の行をマップしたものになります。getDefaultRootElement メソッドが返す Element は行のマップを表し、各子要素は単一の行を表します。このモデルは文字レベルの属性をまったく持ちませんが、それぞれの行には任意の属性セットによるタグを付けることができます。行からオフセット、およびオフセットから行への変換はデフォルトのルート要素を使って迅速に実行されます。編集によってトリガされる DocumentEvent の構造についての情報は、行の構造の変更を示します。

デフォルトのコンテンツ記憶域管理は、ギャップ付きバッファの実装 (GapContent) によって行われます。GapContent は、かなり大きなドキュメントの編集をサポートしており、隣接するまとまった領域に対する一般的な編集を効率よく処理できます。

警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。JDK バージョン 1.4 以降、すべての JavaBeans の長期間の運用サポートは、java.beans パッケージに追加されています。詳細は、XMLEncoder を参照してください。

関連項目:
Document, AbstractDocument

入れ子のクラスの概要
 
クラス javax.swing.text.AbstractDocument から継承された入れ子のクラス/インタフェース
AbstractDocument.AbstractElement, AbstractDocument.AttributeContext, AbstractDocument.BranchElement, AbstractDocument.Content, AbstractDocument.DefaultDocumentEvent, AbstractDocument.ElementEdit, AbstractDocument.LeafElement
 
フィールドの概要
static String lineLimitAttribute
          最大長がある場合、1 行の最大長を指定する属性の名前です。
static String tabSizeAttribute
          コンテンツ内のタブのサイズを指定する属性の名前です。
 
クラス javax.swing.text.AbstractDocument から継承されたフィールド
BAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementName
 
インタフェース javax.swing.text.Document から継承されたフィールド
StreamDescriptionProperty, TitleProperty
 
コンストラクタの概要
PlainDocument()
          プレーンテキストドキュメントを構築します。
PlainDocument(AbstractDocument.Content c)
          プレーンテキストドキュメントを構築します。
 
メソッドの概要
protected  AbstractDocument.AbstractElement createDefaultRoot()
          デフォルトのドキュメント構造を表すために使うルート要素を作成します。
 Element getDefaultRootElement()
          ドキュメントモデルのデフォルトのルート要素を返します。
 Element getParagraphElement(int pos)
          指定された位置を保持する段落要素を返します。
 void insertString(int offs, String str, AttributeSet a)
          ドキュメントに内容を挿入します。
protected  void insertUpdate(AbstractDocument.DefaultDocumentEvent chng, AttributeSet attr)
          ドキュメント構造をテキスト挿入の結果で更新します。
protected  void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)
          ドキュメント構造をテキスト削除の結果で更新します。
 
クラス javax.swing.text.AbstractDocument から継承されたメソッド
addDocumentListener, addUndoableEditListener, createBranchElement, createLeafElement, createPosition, dump, fireChangedUpdate, fireInsertUpdate, fireRemoveUpdate, fireUndoableEditUpdate, getAsynchronousLoadPriority, getAttributeContext, getBidiRootElement, getContent, getCurrentWriter, getDocumentFilter, getDocumentListeners, getDocumentProperties, getEndPosition, getLength, getListeners, getProperty, getRootElements, getStartPosition, getText, getText, getUndoableEditListeners, postRemoveUpdate, putProperty, readLock, readUnlock, remove, removeDocumentListener, removeUndoableEditListener, render, replace, setAsynchronousLoadPriority, setDocumentFilter, setDocumentProperties, writeLock, writeUnlock
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

tabSizeAttribute

public static final String tabSizeAttribute
コンテンツ内のタブのサイズを指定する属性の名前です。値の型は整数型です。

関連項目:
定数フィールド値

lineLimitAttribute

public static final String lineLimitAttribute
最大長がある場合、1 行の最大長を指定する属性の名前です。値の型は整数型です。

関連項目:
定数フィールド値
コンストラクタの詳細

PlainDocument

public PlainDocument()
プレーンテキストドキュメントを構築します。GapContent を使うデフォルトモデルが構築されて、設定されます。


PlainDocument

public PlainDocument(AbstractDocument.Content c)
プレーンテキストドキュメントを構築します。デフォルトのルート要素が作成され、タブのサイズが 8 に設定されます。

パラメータ:
c - コンテンツのコンテナ
メソッドの詳細

insertString

public void insertString(int offs,
                         String str,
                         AttributeSet a)
                  throws BadLocationException
ドキュメントに内容を挿入します。内容の挿入によって、実際の変更が起きるまでは書き込みロックが保持されます。そのあとで、書き込みロックをグラブしているスレッド上のオブザーバに通知が行われます。

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

定義:
インタフェース Document 内の insertString
オーバーライド:
クラス AbstractDocument 内の insertString
パラメータ:
offs - 開始オフセット >= 0
str - 挿入する文字列。null や空の文字列の場合は何もしない
a - 挿入されたコンテンツの属性
例外:
BadLocationException - 指定された挿入の位置が、ドキュメント内の有効な位置ではない場合
関連項目:
Document.insertString(int, java.lang.String, javax.swing.text.AttributeSet)

getDefaultRootElement

public Element getDefaultRootElement()
ドキュメントモデルのデフォルトのルート要素を返します。

定義:
インタフェース Document 内の getDefaultRootElement
定義:
クラス AbstractDocument 内の getDefaultRootElement
戻り値:
ルート
関連項目:
Document.getDefaultRootElement()

createDefaultRoot

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

戻り値:
要素ベース

getParagraphElement

public Element getParagraphElement(int pos)
指定された位置を保持する段落要素を返します。このドキュメントは行をモデル化するだけなので、代わりに目的の行を返します。

定義:
クラス AbstractDocument 内の getParagraphElement
パラメータ:
pos - 開始オフセット >= 0
戻り値:
要素

insertUpdate

protected void insertUpdate(AbstractDocument.DefaultDocumentEvent chng,
                            AttributeSet attr)
ドキュメント構造をテキスト挿入の結果で更新します。これは、書き込みロック内で発生します。このドキュメントは行をマップするだけなので、ユーザが行マップを更新します。

オーバーライド:
クラス AbstractDocument 内の insertUpdate
パラメータ:
chng - 編集を記述する変更イベント
attr - 挿入テキストの属性セット

removeUpdate

protected void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)
ドキュメント構造をテキスト削除の結果で更新します。これは、書き込みロック内で発生します。構造は行マップを表すので、削除のスパンが複数の行を占めているかどうかをチェックするだけです。削除のスパンが複数の行を占めている場合は、削除範囲を挟む前後の 2 行が結合されます。

オーバーライド:
クラス AbstractDocument 内の removeUpdate
パラメータ:
chng - 編集を記述する変更イベント

JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。