JavaTM 2
Platform
Std. Ed. v1.4.0

javax.swing.text
クラス WrappedPlainView

java.lang.Object
  |
  +--javax.swing.text.View
        |
        +--javax.swing.text.CompositeView
              |
              +--javax.swing.text.BoxView
                    |
                    +--javax.swing.text.WrappedPlainView
すべての実装インタフェース:
SwingConstants, TabExpander

public class WrappedPlainView
extends BoxView
implements TabExpander

行折り返しを行うプレーンテキスト (フォントおよび色が 1 種類ずつのテキスト) のビューです。このビューには、関連する要素に、ラップしなければならない行を表す子要素があるはずです。これは、論理行ビューを含む垂直ボックスとして実装されます。論理行ビューは、論理行が割り当てに収まらない場合に論理行を複数の物理行として描画する入れ子のクラスです。行ビューは、その状態の外部クラスで描画し、必要なメモリ量を削減します。

行ビューはすべての描画を drawLine メソッドを介して行います。このメソッドは、すべての描画を drawSelectedText および drawUnselectedText メソッドを介して行います。これは、サブクラスがレイアウトを考慮することなく描画を容易に特殊化できるようにします。

関連項目:
View

フィールドの概要
 
クラス javax.swing.text.View から継承したフィールド
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
 
インタフェース javax.swing.SwingConstants から継承したフィールド
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
コンストラクタの概要
WrappedPlainView(Element elem)
          新しい WrappedPlainView を作成します。
WrappedPlainView(Element elem, boolean wordWrap)
          新しい WrappedPlainView を作成します。
 
メソッドの概要
protected  int calculateBreakPosition(int p0, int p1)
          このメソッドは、入れ子のラップされた行ビューによって分割位置を指定するために呼び出されます。
 void changedUpdate(DocumentEvent e, Shape a, ViewFactory f)
          このビューが扱う位置で属性が変更されたことをドキュメントから通知します。
protected  void drawLine(int p0, int p1, Graphics g, int x, int y)
          末尾の余白を削除し、タブを拡張しながら、1 行のテキストを描画します。
protected  int drawSelectedText(Graphics g, int x, int y, int p0, int p1)
          モデル内の指定された範囲を、選択されたテキストとして描画します。
protected  int drawUnselectedText(Graphics g, int x, int y, int p0, int p1)
          モデル内の指定された範囲を通常の選択されていないテキストとして描画します。
protected  Segment getLineBuffer()
          関連するドキュメントからテキストを取得するために使用できるバッファへのアクセスを提供します。
 float getMaximumSpan(int axis)
          このビューの軸に沿った最大スパンを判定します。
 float getMinimumSpan(int axis)
          このビューの軸に沿った最小スパンを判定します。
 float getPreferredSpan(int axis)
          このビューの軸に沿った望ましいスパンを判定します。
protected  int getTabSize()
          ドキュメントに設定されたタブのサイズを返します。
 void insertUpdate(DocumentEvent e, Shape a, ViewFactory f)
          このビューが扱う位置でドキュメントに何かが挿入されたことを通知します。
protected  void loadChildren(ViewFactory f)
          ビューを初期化するためにすべての子をロードします。
 float nextTabStop(float x, int tabOffset)
          指定された参照位置より後の次のタブストップ位置を返します。
 void paint(Graphics g, Shape a)
          指定された描画表面とその領域を使って描画します。
 void removeUpdate(DocumentEvent e, Shape a, ViewFactory f)
          このビューが扱う位置でドキュメントから何かが削除されたことを通知します。
 void setSize(float width, float height)
          ビューのサイズを設定します。
 
クラス javax.swing.text.BoxView から継承したメソッド
baselineLayout, baselineRequirements, calculateMajorAxisRequirements, calculateMinorAxisRequirements, childAllocation, flipEastAndWestAtEnds, forwardUpdate, getAlignment, getAxis, getChildAllocation, getHeight, getOffset, getResizeWeight, getSpan, getViewAtPoint, getWidth, isAfter, isAllocationValid, isBefore, isLayoutValid, layout, layoutChanged, layoutMajorAxis, layoutMinorAxis, modelToView, paintChild, preferenceChanged, replace, setAxis, viewToModel
 
クラス javax.swing.text.CompositeView から継承したメソッド
getBottomInset, getInsideAllocation, getLeftInset, getNextEastWestVisualPositionFrom, getNextNorthSouthVisualPositionFrom, getNextVisualPositionFrom, getRightInset, getTopInset, getView, getViewAtPosition, getViewCount, getViewIndex, getViewIndexAtPosition, modelToView, setInsets, setParagraphInsets, setParent
 
クラス javax.swing.text.View から継承したメソッド
append, breakView, createFragment, forwardUpdateToView, getAttributes, getBreakWeight, getContainer, getDocument, getElement, getEndOffset, getGraphics, getParent, getStartOffset, getToolTipText, getViewFactory, getViewIndex, insert, isVisible, modelToView, remove, removeAll, updateChildren, updateLayout, viewToModel
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

WrappedPlainView

public WrappedPlainView(Element elem)
新しい WrappedPlainView を作成します。行は、文字境界でラップされます。

パラメータ:
elem - ビューの元になる要素

WrappedPlainView

public WrappedPlainView(Element elem,
                        boolean wordWrap)
新しい WrappedPlainView を作成します。行は、wordWrap パラメータの設定に応じて文字境界またはワード境界でラップできます。

パラメータ:
elem - ビューの元になる要素
wordWrap - 行がワード境界でラップされるかどうか
メソッドの詳細

getTabSize

protected int getTabSize()
ドキュメントに設定されたタブのサイズを返します。デフォルトは 8 です。

戻り値:
タブのサイズ

drawLine

protected void drawLine(int p0,
                        int p1,
                        Graphics g,
                        int x,
                        int y)
末尾の余白を削除し、タブを拡張しながら、1 行のテキストを描画します。このメソッドは、選択されたテキストまたは選択されていないテキストが描画される方法をカスタマイズできるように、drawUnselectedText および drawSelectedText メソッドを呼び出すために実装されます。

パラメータ:
p0 - 使用する開始ドキュメントの位置 >= 0
p1 - 使用する終了ドキュメントの位置 >= p1
g - グラフィックスコンテキスト
x - 開始 X 位置 >= 0
y - 開始 Y 位置 >= 0
関連項目:
drawUnselectedText(java.awt.Graphics, int, int, int, int), drawSelectedText(java.awt.Graphics, int, int, int, int)

drawUnselectedText

protected int drawUnselectedText(Graphics g,
                                 int x,
                                 int y,
                                 int p0,
                                 int p1)
                          throws BadLocationException
モデル内の指定された範囲を通常の選択されていないテキストとして描画します。

パラメータ:
g - グラフィックスコンテキスト
x - 開始 X 座標 >= 0
y - 開始 Y 座標 >= 0
p0 - モデル内の開始位置 >= 0
p1 - モデル内の終了位置 >= p0
戻り値:
範囲の終了の X 位置 >= 0
例外:
BadLocationException - 範囲が無効な場合

drawSelectedText

protected int drawSelectedText(Graphics g,
                               int x,
                               int y,
                               int p0,
                               int p1)
                        throws BadLocationException
モデル内の指定された範囲を、選択されたテキストとして描画します。このメソッドは、収容側コンポーネントで指定された色でテキストを描画するために実装されます。このメソッドは、ハイライタが選択されたバックグラウンドを描画することを前提にしています。

パラメータ:
g - グラフィックスコンテキスト
x - 開始 X 座標 >= 0
y - 開始 Y 座標 >= 0
p0 - モデル内の開始位置 >= 0
p1 - モデル内の終了位置 >= p0
戻り値:
範囲の終了の位置
例外:
BadLocationException - 範囲が無効な場合

getLineBuffer

protected final Segment getLineBuffer()
関連するドキュメントからテキストを取得するために使用できるバッファへのアクセスを提供します。

戻り値:
バッファ

calculateBreakPosition

protected int calculateBreakPosition(int p0,
                                     int p1)
このメソッドは、入れ子のラップされた行ビューによって分割位置を指定するために呼び出されます。このメソッドは、分割動作を変更するために再実装できます。このメソッドは、作成時に指定された分割引数に応じてワード境界または文字境界で分割します。


loadChildren

protected void loadChildren(ViewFactory f)
ビューを初期化するためにすべての子をロードします。このメソッドは、setParent メソッドによって呼び出されます。サブクラスは、このメソッドを再実装して別の方法で子ビューを初期化できます。デフォルトの実装は、子要素ごとに子ビューを作成します。

オーバーライド:
クラス CompositeView 内の loadChildren
パラメータ:
f - ビューファクトリ
関連項目:
CompositeView.setParent(javax.swing.text.View)

nextTabStop

public float nextTabStop(float x,
                         int tabOffset)
指定された参照位置より後の次のタブストップ位置を返します。この実装は中央揃えなどの機能をサポートしていないので、tabOffset 引数を無視します。

定義:
インタフェース TabExpander 内の nextTabStop
パラメータ:
x - 現在位置 >= 0
tabOffset - タブが発生するテキストストリーム内の位置 >= 0
戻り値:
ポイント単位で測定されたタブストップ >= 0

paint

public void paint(Graphics g,
                  Shape a)
指定された描画表面とその領域を使って描画します。このメソッドは、入れ子の行が使用する選択位置、選択色、およびフォントメトリックスを隠すために実装されます。

オーバーライド:
クラス BoxView 内の paint
パラメータ:
g - 使用する描画表面
a - 描画のために割り当てられた領域
関連項目:
View.paint(java.awt.Graphics, java.awt.Shape)

setSize

public void setSize(float width,
                    float height)
ビューのサイズを設定します。レイアウトの必要がある場合は、指定した軸に沿ったビューのレイアウトを表示します。

オーバーライド:
クラス BoxView 内の setSize
パラメータ:
width - 幅 >= 0
height - 高さ>= 0

getPreferredSpan

public float getPreferredSpan(int axis)
このビューの軸に沿った望ましいスパンを判定します。このメソッドは、最初に現在のフォントメトリックスがキャッシュに格納されていることを確認したあとで、スーパークラスの動作を提供するために実装されています。これは、入れ子の行が、ラップされている行の高さを判定する場合に、このメトリックスを使用するためです。

オーバーライド:
クラス BoxView 内の getPreferredSpan
パラメータ:
axis - View.X_AXIS または View.Y_AXIS
戻り値:
ビューの描画先のスパン。通常、ビューは返されたスパン内に描画されるよう求められるが、その保証はない。親はビューのサイズの変更や分割を行う可能性がある
関連項目:
View.getPreferredSpan(int)

getMinimumSpan

public float getMinimumSpan(int axis)
このビューの軸に沿った最小スパンを判定します。このメソッドは、最初に現在のフォントメトリックスがキャッシュに格納されていることを確認したあとで、スーパークラスの動作を提供するために実装されています。これは、入れ子の行が、ラップされている行の高さを判定する場合に、このメトリックスを使用するためです。

オーバーライド:
クラス BoxView 内の getMinimumSpan
パラメータ:
axis - View.X_AXIS または View.Y_AXIS
戻り値:
ビューの描画先のスパン。通常、ビューは返されたスパン内に描画されるよう求められるが、その保証はない。親はビューのサイズの変更や分割を行う可能性がある
関連項目:
View.getMinimumSpan(int)

getMaximumSpan

public float getMaximumSpan(int axis)
このビューの軸に沿った最大スパンを判定します。このメソッドは、最初に現在のフォントメトリックスがキャッシュに格納されていることを確認したあとで、スーパークラスの動作を提供するために実装されています。これは、入れ子の行が、ラップされている行の高さを判定する場合に、このメトリックスを使用するためです。

オーバーライド:
クラス BoxView 内の getMaximumSpan
パラメータ:
axis - View.X_AXIS または View.Y_AXIS
戻り値:
ビューの描画先のスパン。通常、ビューは返されたスパン内に描画されるよう求められるが、その保証はない。親はビューのサイズの変更や分割を行う可能性がある
関連項目:
View.getMaximumSpan(int)

insertUpdate

public void insertUpdate(DocumentEvent e,
                         Shape a,
                         ViewFactory f)
このビューが扱う位置でドキュメントに何かが挿入されたことを通知します。このメソッドは、単純に子を更新するために実装されます。

オーバーライド:
クラス View 内の insertUpdate
パラメータ:
e - 関連するドキュメントからの変更情報
a - ビューの現在の割り当て
f - ビューが子を持つ場合に再構築に使用するファクトリ
関連項目:
View.insertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

removeUpdate

public void removeUpdate(DocumentEvent e,
                         Shape a,
                         ViewFactory f)
このビューが扱う位置でドキュメントから何かが削除されたことを通知します。このメソッドは、単純に子を更新するために実装されます。

オーバーライド:
クラス View 内の removeUpdate
パラメータ:
e - 関連するドキュメントからの変更情報
a - ビューの現在の割り当て
f - ビューが子を持つ場合に再構築に使用するファクトリ
関連項目:
View.removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

changedUpdate

public void changedUpdate(DocumentEvent e,
                          Shape a,
                          ViewFactory f)
このビューが扱う位置で属性が変更されたことをドキュメントから通知します。

オーバーライド:
クラス View 内の changedUpdate
パラメータ:
e - 関連するドキュメントからの変更情報
a - ビューの現在の割り当て
f - ビューが子を持つ場合に再構築に使用するファクトリ
関連項目:
View.changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

JavaTM 2
Platform
Std. Ed. v1.4.0

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

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.