クラスAsyncBoxView

java.lang.Object
javax.swing.text.View
javax.swing.text.AsyncBoxView
すべての実装されたインタフェース:
SwingConstants

public class AsyncBoxView extends View
非同期にレイアウトを行うボックスです。 GUIイベント・スレッドにレイアウトを行わないでGUIイベント・スレッドを移動させ続けるのに役立ちます。 レイアウトは子ビューの操作で詳細に行われます。 各子ビューがレイアウトの一部にアクセスされたあと(操作に時間がかかる場合がある)、残りのタスクを放棄することも、新しい優先度の高いタスク(つまり同期の要求または可視領域にサービスすること)を行うこともできます。

子ビューにアクセスしている間に、関連するドキュメントで読取りロックが取得され、アクセス中モデルを安定させます。

導入されたバージョン:
1.3
  • ネストされたクラスのサマリー

    ネストされたクラス
    修飾子と型
    クラス
    説明
    class 
    局部の周辺で変更が行われているときに、局部での子ビューの効果的な位置を管理するクラスです。
    class 
    子ビューのレイアウト状態を表すレコードです。
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    子のオフセットを管理するオブジェクトです。

    クラスビューで宣言されたフィールド

    BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
    修飾子と型
    フィールド
    説明
    static final int
    フォーマット目的とするには不完全な分割の機会であるビューを示すウエイトです。
    static final int
    分割をサポートしているビューを示すウエイトで、分割するのに適した位置であることを表わしています。
    static final int
    分割をサポートしているビューを示すウエイトで、子を分割することで子をフォーマットするビューに配置されている場合に、ビューを正しく表わすには分割しなければいけません。
    static final int
    分割をサポートしているビューを示すウエイトですが、もっと良い機会が存在する可能性があります。
    static final int
    フォーマット/分割処理の軸です。
    static final int
    フォーマット/分割処理の軸です。

    インタフェースで宣言されたフィールド SwingConstants

    BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
    修飾子と型
    フィールド
    説明
    static final int
    ボックスの下端を指定するために使用するボックス配置定数です。
    static final int
    領域内の中央位置です。
    static final int
    東(右)の方角です。
    static final int
    水平方向です。
    static final int
    左から右に記述する言語および右から左に記述する言語で使用するテキストのリーディング・エッジを指定します。
    static final int
    ボックスの左端を指定するために使用するボックス配置定数です。
    static final int
    シーケンス内の次の方向を指定します。
    static final int
    北(上)の方角です。
    static final int
    北東(右上)の方角です。
    static final int
    北西(左上)の方角です。
    static final int
    シーケンス内の前の方向を指定します。
    static final int
    ボックスの右端を指定するために使用するボックス配置定数です。
    static final int
    南(下)の方角です。
    static final int
    南東(右下)の方角です。
    static final int
    南西(左下)の方角です。
    static final int
    ボックスの上端を指定するために使用するボックス配置定数です。
    static final int
    左から右に記述する言語および右から左に記述する言語で使用するテキストのトレーリング・エッジを指定します。
    static final int
    垂直方向です。
    static final int
    西(左)の方角です。
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    AsyncBoxView(Element elem, int axis)
    非同期レイアウトを行うボックス・ビューを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    サブクラスがChildStateレコードを拡張してより多くのことを行なったり保持したりできるように、新しいChildStateレコードがこのメソッドによって作成されます。
    protected void
    設定の変更を上方の親ビューへ通知します。
    float
    ビュー周囲の下部マージンを取得します。
    getChildAllocation(int index, Shape a)
    指定された子ビューの割り当てを取得します。
    getChildState(int index)
    指定されたインデックスの子のレイアウト状態を表すオブジェクトを取得します。
    protected boolean
    現在、主なスパンが評価されているかどうかを示します。
    protected float
    getInsetSpan(int axis)
    インセットで取り上げられた軸に沿ったスパンを取得します。
    protected LayoutQueue
    レイアウトに使用するキューを取得します。
    float
    ビュー周囲の左部マージンを取得します。
    int
    主軸(子のタイリングの基準にする軸)を取得します。
    float
    getMaximumSpan(int axis)
    このビューの最大スパンを軸に沿って指定します。
    float
    getMinimumSpan(int axis)
    このビューの最小スパンを軸に沿って指定します。
    int
    副軸(タイリングされた軸に直角の軸)を取得します。
    int
    getNextVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet)
    キャレットが配置される可能性のある、視覚的に表された次のモデル位置を決定する手段を提供します。
    float
    getPreferredSpan(int axis)
    このビューに適切なスパンを軸に沿って指定します。
    float
    ビュー周囲の右部マージンを取得します。
    float
    ビュー周囲の上部マージンを取得します。
    getView(int n)
    n番目の子ビューを返します。
    int
    このビュー内のビューの数を返します。
    int
    モデル内の指定された位置を表す子ビューのインデックスを返します。
    protected int
    モデル内の指定された位置を表す子ビューのインデックスを取得します。
    protected void
    ビューを初期化するためにすべての子をロードします。
    protected void
    主軸に沿って変更された要件です。
    protected void
    副軸に沿って変更された要件です。
    modelToView(int pos, Shape a, Position.Bias b)
    ドキュメント・モデルの座標空間からビューの座標空間へのマッピングを提供します。
    void
    paint(Graphics g, Shape alloc)
    指定された割当ておよびレンダリング表面を使って、ビューをレンダリングします。
    void
    preferenceChanged(View child, boolean width, boolean height)
    子ビューは親でこのメソッドを呼び出し、設定が変更されたこと、および再度レイアウトが考慮されなければならないことを示すことができます。
    void
    replace(int offset, int length, View[] views)
    子ビューを更新するためにスーパー・クラスを呼び出し、子のステータス・レコードを更新します。
    void
    setBottomInset(float i)
    ビュー周囲の下部マージンを設定します。
    protected void
    setEstimatedMajorSpan(boolean isEstimated)
    主なスパンを評価中として処理するかどうかを決定する、estimatedMajorSpanプロパティを設定します。
    void
    setLeftInset(float i)
    ビュー周囲の左部マージンを設定します。
    void
    setParent(View parent)
    ビューの親を設定します。
    void
    setRightInset(float i)
    ビュー周囲の右部マージンを設定します。
    void
    setSize(float width, float height)
    ビューのサイズを設定します。
    void
    setTopInset(float i)
    ビュー周囲の上部マージンを設定します。
    protected void
    モデルから変更の通知を受け取った場合に、レイアウトを更新します。
    int
    viewToModel(float x, float y, Shape a, Position.Bias[] biasReturn)
    ビューの座標空間からモデルの論理座標空間へのマッピングを提供します。

    Viewクラスで宣言されたメソッド

    append, breakView, changedUpdate, createFragment, forwardUpdate, forwardUpdateToView, getAlignment, getAttributes, getBreakWeight, getContainer, getDocument, getElement, getEndOffset, getGraphics, getParent, getResizeWeight, getStartOffset, getToolTipText, getViewFactory, getViewIndex, insert, insertUpdate, isVisible, modelToView, modelToView, remove, removeAll, removeUpdate, updateChildren, viewToModel
    修飾子と型
    メソッド
    説明
    void
    1つの子ビューを追加します。
    breakView(int axis, int offset, float pos, float len)
    指定された軸でこのビューの分割を試みます。
    void
    このビューが扱う位置で属性が変更されたことをドキュメントから通知します。
    createFragment(int p0, int p1)
    要素の一部分を表すビューを作成します。
    protected void
    指定されたDocumentEventを、モデルへの変更について通知する必要のある子ビューに転送します。
    protected void
    指定された子ビューにDocumentEventを転送します。
    float
    getAlignment(int axis)
    軸に沿ったこのビューの望ましいレイアウトを決定します。
    描画するときに使用する属性を取得します。
    int
    getBreakWeight(int axis, float pos, float len)
    このビューで分割のウエイトがどのくらい適切かを示します。
    ビューを収容するコンテナを取得します。
    ビューに関連したモデルを取り出します。
    このビューがマッピングされる対象の構造部分を取り出します。
    int
    このビューが扱うモデルの一部を取り出します。
    レンダリングのためのGraphicsを取得します。
    ビューの親を返します。
    int
    getResizeWeight(int axis)
    指定された軸に沿ってビューのサイズを変更できるかどうかを指定します。
    int
    このビューが扱うモデルの一部を取り出します。
    getToolTipText(float x, float y, Shape allocation)
    指定された位置にあるツールヒントのテキストを返します。
    ビュー階層を供給しているViewFactoryの実装を取り出します。
    int
    getViewIndex(float x, float y, Shape allocation)
    ビュー内の指定された位置を表す子ビュー・インデックスを返します。
    void
    insert(int offs, View v)
    1つの子ビューを挿入します。
    void
    このビューが扱う位置でドキュメントに何かが挿入されたことを通知します。
    boolean
    ビューが可視かどうかを示すboolean型の値を返します。
    modelToView(int pos, Shape a)
    非推奨。 
    modelToView(int p0, Position.Bias b0, int p1, Position.Bias b1, Shape a)
    指定した範囲について、ドキュメント・モデル座標空間からビュー座標空間へのマッピングを提供します。
    void
    remove(int i)
    指定された位置にある子を1つ削除します。
    void
    すべての子を削除します。
    void
    このビューが扱うドキュメント内の位置から何かが削除されたということを通知します。
    protected boolean
    モデルが変更されたという通知を受け取ると、子ビューを更新します。このビューが扱う要素の変更記録があります。
    int
    viewToModel(float x, float y, Shape a)
    非推奨。 

    クラスオブジェクトで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    boolean
    このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    int
    このオブジェクトに対するハッシュ・コード値を返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    オブジェクトの文字列表現を返します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • フィールド詳細

    • locator

      protected AsyncBoxView.ChildLocator locator
      子のオフセットを管理するオブジェクトです。 子の位置の管理のためのロックはすべて、このオブジェクトで行われます。
  • コンストラクタの詳細

    • AsyncBoxView

      public AsyncBoxView(Element elem, int axis)
      非同期レイアウトを行うボックス・ビューを構築します。
      パラメータ:
      elem - 表すモデルの要素
      axis - タイリングの基準にする軸。 X_AXISまたはY_AXISのどちらか
  • メソッドの詳細

    • getMajorAxis

      public int getMajorAxis()
      主軸(子のタイリングの基準にする軸)を取得します。 X_AXISまたはY_AXISのどちらかの値を持ちます。
      戻り値:
      長軸
    • getMinorAxis

      public int getMinorAxis()
      副軸(タイリングされた軸に直角の軸)を取得します。 X_AXISまたはY_AXISのどちらかの値を持ちます。
      戻り値:
      短軸
    • getTopInset

      public float getTopInset()
      ビュー周囲の上部マージンを取得します。
      戻り値:
      ビュー周りのマージンの上部
    • setTopInset

      public void setTopInset(float i)
      ビュー周囲の上部マージンを設定します。
      パラメータ:
      i - インセットの値
    • getBottomInset

      public float getBottomInset()
      ビュー周囲の下部マージンを取得します。
      戻り値:
      ビュー周りのマージンの下部
    • setBottomInset

      public void setBottomInset(float i)
      ビュー周囲の下部マージンを設定します。
      パラメータ:
      i - インセットの値
    • getLeftInset

      public float getLeftInset()
      ビュー周囲の左部マージンを取得します。
      戻り値:
      ビュー周りの余白の左部分
    • setLeftInset

      public void setLeftInset(float i)
      ビュー周囲の左部マージンを設定します。
      パラメータ:
      i - インセットの値
    • getRightInset

      public float getRightInset()
      ビュー周囲の右部マージンを取得します。
      戻り値:
      ビュー周りのマージンの右部分
    • setRightInset

      public void setRightInset(float i)
      ビュー周囲の右部マージンを設定します。
      パラメータ:
      i - インセットの値
    • getInsetSpan

      protected float getInsetSpan(int axis)
      インセットで取り上げられた軸に沿ったスパンを取得します。
      パラメータ:
      axis - 合計インセットを決定する軸。X_AXISまたはY_AXISのどちらか。
      戻り値:
      インセットによって占められる軸に沿ったスパン
      導入されたバージョン:
      1.4
    • setEstimatedMajorSpan

      protected void setEstimatedMajorSpan(boolean isEstimated)
      主なスパンを評価中として処理するかどうかを決定する、estimatedMajorSpanプロパティを設定します。 このプロパティがtrueの場合、主軸に沿ったsetSizeの値により主軸に沿った要件が変更され、増分の変更は子がすべて更新されるまで無視されます(この更新により、プロパティが自動的にfalseに設定されます)。 プロパティがfalseの場合、majorSpanの値が正確であるとみなされ、計算時に増分の変更が合計に加えられます。
      パラメータ:
      isEstimated - estimatedMajorSpanプロパティの新しい値
      導入されたバージョン:
      1.4
    • getEstimatedMajorSpan

      protected boolean getEstimatedMajorSpan()
      現在、主なスパンが評価されているかどうかを示します。
      戻り値:
      現在推定されている主要スパンかどうか
      導入されたバージョン:
      1.4
    • getChildState

      protected AsyncBoxView.ChildState getChildState(int index)
      指定されたインデックスの子のレイアウト状態を表すオブジェクトを取得します。
      パラメータ:
      index - 子のインデックス。 0以上でgetViewCount()より小さい値であること。
      戻り値:
      指定されたインデックスにある子のレイアウト状態を表すオブジェクト
    • getLayoutQueue

      protected LayoutQueue getLayoutQueue()
      レイアウトに使用するキューを取得します。
      戻り値:
      レイアウトに使用するキュー
    • createChildState

      protected AsyncBoxView.ChildState createChildState(View v)
      サブクラスがChildStateレコードを拡張してより多くのことを行なったり保持したりできるように、新しいChildStateレコードがこのメソッドによって作成されます。
      パラメータ:
      v - ビュー
      戻り値:
      新しい子供状態
    • majorRequirementChange

      protected void majorRequirementChange(AsyncBoxView.ChildState cs, float delta)
      主軸に沿って変更された要件です。 指定されたChildStateオブジェクトのレイアウトを行うスレッドが、子ビューの新しい設定を取得し終えたときに呼び出します。 呼び出すのは通常レイアウト・スレッドですが、モデルとビューの変換の実行など、イベント・スレッドが何かをすぐに更新しようとしている場合は、イベント・スレッドのこともあります。

      この実装では、親ビューに通知する必要のある要件で主軸を考慮するかどうかを将来確認するために、主軸を変更済みとしてマークします。 主軸とともにスパンが評価されない場合、指定されたデルタで更新されて、増分の変更が反映されます。 主なスパンが評価される場合、デルタは無視されます。

      パラメータ:
      cs - 子状態
      delta - デルタ
    • minorRequirementChange

      protected void minorRequirementChange(AsyncBoxView.ChildState cs)
      副軸に沿って変更された要件です。 指定されたChildStateオブジェクトのレイアウトを行うスレッドが、子ビューの新しい設定を取得し終えたときに呼び出します。 呼び出すのは通常レイアウト・スレッドですが、モデルとビューの変換の実行など、GUIスレッドが何かをすぐに更新しようとしている場合は、GUIスレッドが呼び出します。
      パラメータ:
      cs - 子状態
    • flushRequirementChanges

      protected void flushRequirementChanges()
      設定の変更を上方の親ビューへ通知します。 通常は、レイアウト・スレッドによって呼び出されます。
    • replace

      public void replace(int offset, int length, View[] views)
      子ビューを更新するためにスーパー・クラスを呼び出し、子のステータス・レコードを更新します。 このオブジェクトは、レイアウト・スレッドとの相互作用が発生しないように、書込みロックがモデルで保持されている間に呼び出されることになっています(つまり、レイアウト・スレッドは処理開始前に読取りロックを取得する)。
      オーバーライド:
      replace、クラスView
      パラメータ:
      offset - 子ビューへの開始オフセット>= 0
      length - 置き換える既存のビューの数>= 0
      views - 挿入する子ビュー
    • loadChildren

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

      通常書込みロックは子が変更される間Documentで保持され、描画スレッドとレイアウト・スレッドを安全に保ちます。 これに対する例外は、既存の要素を表すようこのメソッドによってビューが初期化されるときで、初期化中はpreferenceChangedを除外するよう同期化されます。

      パラメータ:
      f - ビュー・ファクトリ
      関連項目:
    • getViewIndexAtPosition

      protected int getViewIndexAtPosition(int pos, Position.Bias b)
      モデル内の指定された位置を表す子ビューのインデックスを取得します。 このメソッドは、それぞれの子要素に対して子ビューがある場合に、ビューを取り出すために実装されています。
      パラメータ:
      pos - 位置>= 0
      b - 位置バイアス
      戻り値:
      指定された位置を表すビューのインデックス。その位置を表すビューがない場合は -1
    • updateLayout

      protected void updateLayout(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a)
      モデルから変更の通知を受け取った場合に、レイアウトを更新します。 子のオフセットが正しく計算されるように、ChildLocatorの変更を通知するために実装されます。
      オーバーライド:
      updateLayout、クラスView
      パラメータ:
      ec - このビューが扱う要素への変更。変更がなかった場合、nullになる可能性がある。
      e - 関連するドキュメントからの変更情報
      a - ビューの現在の割当て
      関連項目:
    • setParent

      public void setParent(View parent)
      ビューの親を設定します。 このビューがまだ子を持たない場合は、loadChildrenメソッドの呼出しとともにスーパークラスの動作を提供するために実装し直されます。 子をコンストラクタの中にロードしないようにしてください。これは、親を設定する動作が原因となって、たとえば収容側Containerを取得するために、子が階層をさかのぼって検索しようとする可能性があるからです。 このビューが子を持つ場合、ビューはビュー階層内のある位置から別の位置へ移動しているので、loadChildrenメソッドは呼び出されません。
      オーバーライド:
      setParent、クラスView
      パラメータ:
      parent - ビューの親。ない場合はnull
    • preferenceChanged

      public void preferenceChanged(View child, boolean width, boolean height)
      子ビューは親でこのメソッドを呼び出し、設定が変更されたこと、および再度レイアウトが考慮されなければならないことを示すことができます。 このメソッドはレイアウト・スレッドで新しい作業に待機するために実装し直されます。 このメソッドは子を通じて複数のスレッドからメッセージを託されます。
      オーバーライド:
      preferenceChanged、クラスView
      パラメータ:
      child - 子ビュー
      width - 幅の設定が変更されている場合はtrue
      height - 高さの設定が変更されている場合はtrue
      関連項目:
    • setSize

      public void setSize(float width, float height)
      ビューのサイズを設定します。 これにより、ビューでレイアウト情報がキャッシュされていると、ビューのレイアウトが行われます。

      主軸は非同期に更新され、タイリングされた子の合計でなければならないため、主軸に対する呼出しは無視されます。 主軸に柔軟性があるため、小スパンが変更されると処理がキューに入り、子のサイズが変更されます。

      オーバーライド:
      setSize、クラスView
      パラメータ:
      width - 幅>= 0
      height - 高さ>= 0
    • paint

      public void paint(Graphics g, Shape alloc)
      指定された割当ておよびレンダリング表面を使って、ビューをレンダリングします。

      描画の対象範囲、つまりクリップされていない領域が最新のものかどうかを判定するために実装されます。 最新のものであれば子が描画されます。 最新のものでない場合、対象領域を作成するタスクが優先度の高いタスクとしてレイアウトのキューに置かれます。 このメソッドはイベント・スレッドごとに、準備ができていれば描画により移動し続け、準備ができていない場合は延期します(ペイント要求はスケジュール変更可能であるため)。

      定義:
      paint、クラスView
      パラメータ:
      g - 使用する描画表面
      alloc - 描画するために割り当てられた領域
      関連項目:
    • getPreferredSpan

      public float getPreferredSpan(int axis)
      このビューに適切なスパンを軸に沿って指定します。
      定義:
      getPreferredSpan、クラスView
      パラメータ:
      axis - View.X_AXISまたはView.Y_AXIS
      戻り値:
      ビューの描画先のスパン>= 0。 通常、ビューは返されたスパン内に描画されるよう求められるが、その保証はない。 親はビューのサイズの変更や分割を行う可能性がある。
      スロー:
      IllegalArgumentException - 軸が無効な型
    • getMinimumSpan

      public float getMinimumSpan(int axis)
      このビューの最小スパンを軸に沿って指定します。
      オーバーライド:
      getMinimumSpan、クラスView
      パラメータ:
      axis - View.X_AXISまたはView.Y_AXIS
      戻り値:
      ビューの描画先のスパン>= 0。 通常、ビューは返されたスパン内に描画されるよう求められるが、その保証はない。 親はビューのサイズの変更や分割を行う可能性がある。
      スロー:
      IllegalArgumentException - 軸が無効な型
      関連項目:
    • getMaximumSpan

      public float getMaximumSpan(int axis)
      このビューの最大スパンを軸に沿って指定します。
      オーバーライド:
      getMaximumSpan、クラスView
      パラメータ:
      axis - View.X_AXISまたはView.Y_AXIS
      戻り値:
      ビューの描画先のスパン>= 0。 通常、ビューは返されたスパン内に描画されるよう求められるが、その保証はない。 親はビューのサイズの変更や分割を行う可能性がある。
      スロー:
      IllegalArgumentException - 軸が無効な型
      関連項目:
    • getViewCount

      public int getViewCount()
      このビュー内のビューの数を返します。 デフォルトでは複合ビューにならないので、このメソッドは0を返します。
      オーバーライド:
      getViewCount、クラスView
      戻り値:
      ビューの数>= 0
      関連項目:
    • getView

      public View getView(int n)
      n番目の子ビューを返します。 デフォルトでは子がないので、このメソッドはnullを返します。
      オーバーライド:
      getView、クラスView
      パラメータ:
      n - 取得するビューの番号。0以上でgetViewCount()より小さい値
      戻り値:
      ビュー
    • getChildAllocation

      public Shape getChildAllocation(int index, Shape a)
      指定された子ビューの割り当てを取得します。 このメソッドを使用すると、ビューがそれらの位置を格納していることを仮定することなく、さまざまなビューがどこにあるかを知ることができます。 デフォルトでは子ビューを持たないので、このメソッドはnullを返します。
      オーバーライド:
      getChildAllocation、クラスView
      パラメータ:
      index - 子のインデックス。0以上でgetViewCount()より小さい値
      a - このビューに対する割当て。
      戻り値:
      子に対する割当て
    • getViewIndex

      public int getViewIndex(int pos, Position.Bias b)
      モデル内の指定された位置を表す子ビューのインデックスを返します。 デフォルトでは、ビューに子がないので、あらゆる位置に対して有効な子インデックスがないことを表すには、-1を返すように実装されています。
      オーバーライド:
      getViewIndex、クラスView
      パラメータ:
      pos - 位置>= 0
      b - バイアス
      戻り値:
      指定された位置を表すビューのインデックス。その位置を表すビューがない場合は -1
      導入されたバージョン:
      1.3
    • modelToView

      public Shape modelToView(int pos, Shape a, Position.Bias b) throws BadLocationException
      ドキュメント・モデルの座標空間からビューの座標空間へのマッピングを提供します。
      定義:
      modelToView、クラスView
      パラメータ:
      pos - 変換対象の位置>= 0
      a - 描画するために割り当てられた領域
      b - 位置が2つのビューの境界である場合に、オフセットによって表される直前の文字または次の文字へのバイアス。
      戻り値:
      指定された位置のバウンディング・ボックス
      スロー:
      BadLocationException - 指定された位置が、関連するドキュメント内の有効な位置を示さない場合
      IllegalArgumentException - bias引数が無効な場合
      関連項目:
    • viewToModel

      public int viewToModel(float x, float y, Shape a, Position.Bias[] biasReturn)
      ビューの座標空間からモデルの論理座標空間へのマッピングを提供します。 biasReturn引数は、指定された点がモデル内の次の文字と近いのか、あるいはモデル内の前の文字と近いのかを示します。

      このメソッドはGUIスレッドによって呼び出され、関連するモデルで読取りロックを保持します。 子ビューを配置してChildLocatorオブジェクトのロックを使ってその子ビューの割り当てを決定し、レイアウト・スレッドとの相互作用を避けるためにChildStateオブジェクトのロックを使って子ビューのviewToModelを呼び出すために実装されます。

      定義:
      viewToModel、クラスView
      パラメータ:
      x - X座標>= 0
      y - Y座標>= 0
      a - 描画するために割り当てられた領域
      biasReturn - 戻りバイアス
      戻り値:
      指定されたビュー内の点をもっとも適切に表現するモデル内の位置。0以上。 biasReturn引数は、指定された点がモデル内の次の文字と近いのか、あるいはモデル内の前の文字と近いのかを示します。
    • getNextVisualPositionFrom

      public int getNextVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet) throws BadLocationException
      キャレットが配置される可能性のある、視覚的に表された次のモデル位置を決定する手段を提供します。 ビューによっては、可視ではないか、モデル内と同じ順序でないか、またはモデル内の一部の位置へのアクセスを許可しない場合があります。 このメソッドを使用すると、0以上の範囲内で変換する位置を指定できます。 値が-1の場合は、位置が自動的に計算されます。 値が-1よりも小さい場合は、BadLocationExceptionがスローされます。
      オーバーライド:
      getNextVisualPositionFrom、クラスView
      パラメータ:
      pos - 変換対象の位置
      b - バイアス
      a - 描画するために割り当てられた領域
      direction - 現在位置からの方向。これは、キーボードに通常存在する矢印キーと見なすことができ、次のいずれかになる。
      • SwingConstants.WEST
      • SwingConstants.EAST
      • SwingConstants.NORTH
      • SwingConstants.SOUTH
      biasRet - チェックされたバイアスを含む配列
      戻り値:
      次の可視の位置をもっともよく表す、モデル内の位置
      スロー:
      BadLocationException - 指定された位置がドキュメント内の有効な位置でない場合
      IllegalArgumentException - directionが無効である場合