Java プラットフォーム 1.2

javax.swing.text
クラス LabelView

java.lang.Object
  |
  +--javax.swing.text.View
        |
        +--javax.swing.text.LabelView
直接の既知のサブクラス:
InlineView

public class LabelView
extends View

LabelView は、テキストの書式設定されたチャンクであり、テキストモデル内の要素にマップされたビューを表します。このビューは、書式を整えるために分割をサポートしています。分割によって作られたフラグメントは、その要素を主として担当するビューを共有します。すなわち、各フラグメントは入れ子にされたクラスであり、自分自身の状態は最小限しか持ちません。これによって、各フラグメントはそのリソースを共有できます。

このビューは、一般的に、文字レベルの属性をなんらかの形で表示することを担当します。このビューは、タブが埋め込まれたテキストを表現することもあるので、TabableView インタフェースを実装します。タブが展開されるのは、タブの展開を行うコンテナにこのビューが埋め込まれている場合だけです。タブ展開を行うコンテナとしては、ParagraphView などがあります。


クラス javax.swing.text.View から継承したフィールド
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
 
コンストラクタの概要
LabelView(Element elem)
          要素でラップした新しいビューを構築します。
 
メソッドの概要
 View breakView(int axis, int p0, float pos, float len)
          このビューを指定された軸に沿って指定された長さで分割します。
 void changedUpdate(DocumentEvent e, Shape a, ViewFactory f)
          このビューが担当する位置で属性が変更されたということをドキュメントから通知します。
 View createFragment(int p0, int p1)
          要素の一部を表すビューを作成します。
 float getAlignment(int axis)
          このビューの望ましい配置を軸に沿って指定します。
 int getBreakWeight(int axis, float pos, float len)
          このビューで分割を実行する機会がどれだけ適切かを判別します。
protected  Font getFont()
          このビューに使うフォントを取得します。
protected  FontMetrics getFontMetrics()
          このビューに使うフォントメトリックスを取得します。
 int getNextVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet)
          キャレットを置くことのできる、次に視覚的に表示されるモデル内の位置を判断する方法を提供します。
 float getPreferredSpan(int axis)
          このビューの望ましいスパンを軸に沿って指定します。
 void insertUpdate(DocumentEvent e, Shape a, ViewFactory f)
          このビューが担当する範囲内の位置に何かが追加されたということをドキュメントから通知します。
 Shape modelToView(int pos, Shape a, Position.Bias b)
          ドキュメントモデルの座標空間からそれに対応付けられるビューの座標空間への対応付けを提供します。
 void paint(Graphics g, Shape a)
          テキストスタイルランの一部を描画します。
 void removeUpdate(DocumentEvent changes, Shape a, ViewFactory f)
          このビューが担当する範囲内の位置から何かが削除されたということをドキュメントから通知します。
protected  void setPropertiesFromAttributes()
          属性からキャッシュされたプロパティを設定します。
protected  void setStrikeThrough(boolean s)
          ビューを取り消し線付きにするかどうかを設定します。
protected  void setSubscript(boolean s)
          ビューが下付き文字を表すかどうかを設定します。
protected  void setSuperscript(boolean s)
          ビューが上付き文字を表すかどうかを設定します。
protected  void setUnderline(boolean u)
          ビューを下線付きにするかどうかを設定します。
 String toString()
           
 int viewToModel(float x, float y, Shape a, Position.Bias[] biasReturn)
          ビュー座標空間からモデルの論理座標空間への対応付けを提供します。
 
クラス javax.swing.text.View から継承したメソッド
getAttributes, getChildAllocation, getContainer, getDocument, getElement, getEndOffset, getMaximumSpan, getMinimumSpan, getParent, getResizeWeight, getStartOffset, getView, getViewCount, getViewFactory, isVisible, modelToView, modelToView, preferenceChanged, setParent, setSize, viewToModel
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

LabelView

public LabelView(Element elem)
要素でラップした新しいビューを構築します。
パラメータ:
elem - 要素
メソッドの詳細

setUnderline

protected void setUnderline(boolean u)
ビューを下線付きにするかどうかを設定します。

setStrikeThrough

protected void setStrikeThrough(boolean s)
ビューを取り消し線付きにするかどうかを設定します。

setSuperscript

protected void setSuperscript(boolean s)
ビューが上付き文字を表すかどうかを設定します。

setSubscript

protected void setSubscript(boolean s)
ビューが下付き文字を表すかどうかを設定します。

setPropertiesFromAttributes

protected void setPropertiesFromAttributes()
属性からキャッシュされたプロパティを設定します。

getFontMetrics

protected FontMetrics getFontMetrics()
このビューに使うフォントメトリックスを取得します。

getFont

protected Font getFont()
このビューに使うフォントを取得します。

paint

public void paint(Graphics g,
                  Shape a)
テキストスタイルランの一部を描画します。
パラメータ:
g - 使用する描画表面
a - 描画対象の割り当て領域
オーバーライド:
クラス View 内の paint

getPreferredSpan

public float getPreferredSpan(int axis)
このビューの望ましいスパンを軸に沿って指定します。
パラメータ:
axis - View.X_AXIS または View.Y_AXIS
戻り値:
ビューの描画対象のスパン >= 0。通常、ビューは返されたスパン内に描画されることになるが、保証はない。親はビューのサイズ変更や分割を行う可能性がある
オーバーライド:
クラス View 内の getPreferredSpan

getAlignment

public float getAlignment(int axis)
このビューの望ましい配置を軸に沿って指定します。ラベルでは、y 軸についてはフォントベースラインに沿って配置され、x 軸に沿ってはスーパークラスの配置が行われます。
パラメータ:
axis - View.X_AXIS または View.Y_AXIS
戻り値:
望ましい配置。値の範囲は 0.0 〜 1.0 で 、0 は起点への配置、1.0 は起点から最大スパン離れた配置を表す。0.5 は、ビューの中央への配置になる
オーバーライド:
クラス View 内の getAlignment

modelToView

public Shape modelToView(int pos,
                         Shape a,
                         Position.Bias b)
                  throws BadLocationException
ドキュメントモデルの座標空間からそれに対応付けられるビューの座標空間への対応付けを提供します。
パラメータ:
pos - 変換対象の位置 >= 0
a - 描画対象の割り当て領域
戻り値:
指定された位置のバウンディングボックス
例外:
BadLocationException - 指定された位置が、関連付けられているドキュメント内の有効な位置を表していない場合
オーバーライド:
クラス View 内の modelToView
関連項目:
View.modelToView(int, java.awt.Shape, javax.swing.text.Position.Bias)

viewToModel

public int viewToModel(float x,
                       float y,
                       Shape a,
                       Position.Bias[] biasReturn)
ビュー座標空間からモデルの論理座標空間への対応付けを提供します。
パラメータ:
x - X 座標 >= 0
y - Y 座標 >= 0
a - 描画対象の割り当て領域
戻り値:
ビューの指定された点を最適に表すモデル内の位置 >= 0
オーバーライド:
クラス View 内の viewToModel
関連項目:
View.viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])

getNextVisualPositionFrom

public int getNextVisualPositionFrom(int pos,
                                     Position.Bias b,
                                     Shape a,
                                     int direction,
                                     Position.Bias[] biasRet)
                              throws BadLocationException
キャレットを置くことのできる、次に視覚的に表示されるモデル内の位置を判断する方法を提供します。ビューによっては、表示されなかったり、モデル内と同じ順序でなかったり、モデル内の位置へのアクセスが許可されないことがあります。
パラメータ:
pos - 変換する位置 >= 0
a - 描画先として割り当てられた領域
direction - キーボードにある矢印キーに対応する、現在位置からの方向。SwingConstants.WEST、SwingConstants.EAST、SwingConstants.NORTH、SwingConstants.SOUTH のどれかを指定する
戻り値:
視覚的に表示される次の位置をもっとも適切に表現するモデル内の位置
例外:
BadLocationException -  
IllegalArgumentException - 方向が無効な場合
オーバーライド:
クラス View 内の getNextVisualPositionFrom

getBreakWeight

public int getBreakWeight(int axis,
                          float pos,
                          float len)
このビューで分割を実行する機会がどれだけ適切かを判別します。これは、書式設定のプロセスで breakView を呼び出す対象としてどのビューがもっとも効果的かを判別するために使用できます。ウェイトが重いほど、分割もいっそう効果的です。View.BadBreakWeight 以下の値の場合は分割してはなりません。View.ForcedBreakWeight 以上の値であれば、分割した方がよいでしょう。

これは、Y_AXIS のスーパークラスに転送するために実装します。X_AXIS に沿って、以下の値が返されます。

View.ExcellentBreakWeight
望ましい分割位置の前に空白がある場合
View.BadBreakWeight
望ましい分割位置が開始オフセットの分割位置になる場合
View.GoodBreakWeight
ほかの条件が生じない場合
これは一般的に、空白が検出されるとそこで分割動作が行われますが、それ以外の場合には文字の間で分割されます。
パラメータ:
axis - View.X_AXIS または View.Y_AXIS
pos - 分割ビューの先頭の潜在位置 >= 0。これは、タブ位置の計算に役立つ
len - 分割が望ましい pos からの相対的な長さを指定する >= 0
戻り値:
ウェイト。View.ForcedBreakWeight と View.BadBreakWeight の間の値
オーバーライド:
クラス View 内の getBreakWeight
関連項目:
LabelView, ParagraphView, BadBreakWeight, GoodBreakWeight, ExcellentBreakWeight, ForcedBreakWeight

breakView

public View breakView(int axis,
                      int p0,
                      float pos,
                      float len)
このビューを指定された軸に沿って指定された長さで分割します。これを実装すると空白位置で分割を試みることができ、フラグメントの末尾に空白を付けて返します。空白位置が見つからなかった場合、もっとも近い文字が使われます。
パラメータ:
axis - View.X_AXIS または View.Y_AXIS
p0 - フラグメントがその表現を開始するモデル内の位置 >= 0
pos - 分割されたビューが占める軸に沿った位置 >= 0。これは、タブ計算のような機能に役立つ
len - 潜在的な分割が望まれる長さを軸に沿って指定する >= 0
戻り値:
ビューを分割できる場合は、指定されたスパンを表すビューのフラグメント。ビューが分割動作をサポートしていない場合は、ビュー自身
オーバーライド:
クラス View 内の breakView
関連項目:
View.breakView(int, int, float, float)

createFragment

public View createFragment(int p0,
                           int p1)
要素の一部を表すビューを作成します。これは、書式設定でビューのフラグメントの寸法を取得するのに役立つ可能性があります。ビューがフラグメント化をサポートしない (デフォルト) 場合、それ自身を返さなければなりません。

このビューはフラグメント化をサポートしています。これを実装すると、このビューで状態を共有する入れ子クラス (ビューの一部のみを表す) を返すことができます。

パラメータ:
p0 - 開始オフセット >= 0。これは、要素開始オフセット以上で要素終了オフセット未満の値でなければならない
p1 - 終了オフセット > p0。これは、要素終了オフセット以下で要素開始オフセットより大きな値でなければならない
戻り値:
ビューのフラグメント。ビューがフラグメントへの分割をサポートしていない場合にはそれ自身
オーバーライド:
クラス View 内の createFragment
関連項目:
LabelView

changedUpdate

public void changedUpdate(DocumentEvent e,
                          Shape a,
                          ViewFactory f)
このビューが担当する位置で属性が変更されたということをドキュメントから通知します。
パラメータ:
e - 関連付けられているドキュメントからの変更情報
a - ビューの現在の割り当て
f - ビューが子を持つ場合に再構築に使うファクトリ
オーバーライド:
クラス View 内の changedUpdate
関連項目:
View.changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

insertUpdate

public void insertUpdate(DocumentEvent e,
                         Shape a,
                         ViewFactory f)
このビューが担当する範囲内の位置に何かが追加されたということをドキュメントから通知します。
パラメータ:
changes - 関連付けられているドキュメントからの変更情報
a - ビューへの現在の割り当て
f - ビューが子を持つ場合に、作り直すために必要なファクトリ
オーバーライド:
クラス View 内の insertUpdate
関連項目:
View.insertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

removeUpdate

public void removeUpdate(DocumentEvent changes,
                         Shape a,
                         ViewFactory f)
このビューが担当する範囲内の位置から何かが削除されたということをドキュメントから通知します。
パラメータ:
changes - 関連付けられているドキュメントからの変更情報
a - ビューへの現在の割り当て
f - ビューが子を持つ場合に、作り直すために必要なファクトリ
オーバーライド:
クラス View 内の removeUpdate
関連項目:
View.removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

toString

public String toString()
オーバーライド:
クラス Object 内の toString

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.