モジュール java.desktop
パッケージ javax.swing.text

クラスFlowView.FlowStrategy

java.lang.Object
javax.swing.text.FlowView.FlowStrategy
含まれているクラス:
FlowView

public static class FlowView.FlowStrategy extends Object
フローの物理的なフォームを維持するための方法です。 デフォルトの実装には状態がまったくなく、レイアウトが指定されたFlowViewの中で無効な場合は全フローを再計算します。 もう一つの方法は、サブクラスで実装して、レイアウトを追加修復するかまたは代替のブレーク動作を実行する方法です。
導入されたバージョン:
1.3
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    FlowStrategyを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    protected void
    adjustRow(FlowView fv, int rowIndex, int desiredSpan, int x)
    指定された行を可能であれば調整して、配置スパン内に収めるようにします。
    void
    このビューが扱う位置で属性が変更されたことをドキュメントから通知します。
    protected View
    createView(FlowView fv, int startOffset, int spanLeft, int rowIndex)
    現在のフローの一部を表すために使用できるビューを作成します。
    protected View
    このメソッドはFlowViewの論理ビューへのフローを示します。
    void
    このビューが担当する位置でドキュメントに何かが挿入されたことを通知します。
    void
    指定されたFlowViewのフローを更新します。
    protected int
    layoutRow(FlowView fv, int rowIndex, int pos)
    行の配置スパンのなかにおさまるビューの行を作成します。
    void
    このビューが担当するドキュメント内の位置から何かが削除されたということを通知します。

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • FlowStrategy

      public FlowStrategy()
      FlowStrategyを構築します。
  • メソッドの詳細

    • insertUpdate

      public void insertUpdate(FlowView fv, DocumentEvent e, Rectangle alloc)
      このビューが担当する位置でドキュメントに何かが挿入されたことを通知します。 このメソッドでは、修復する際に使用する適切な変更領域を更新する必要があります。
      パラメータ:
      fv - フロー・ビュー
      e - 関連するドキュメントからの変更情報
      alloc - インセットの内側のビューの現在の割当て。 ビューが表示されていない場合、戻り値はnull。
      関連項目:
    • removeUpdate

      public void removeUpdate(FlowView fv, DocumentEvent e, Rectangle alloc)
      このビューが担当するドキュメント内の位置から何かが削除されたということを通知します。
      パラメータ:
      fv - フロー・ビュー
      e - 関連するドキュメントからの変更情報
      alloc - インセットの内側のビューの現在の割当て。
      関連項目:
    • changedUpdate

      public void changedUpdate(FlowView fv, DocumentEvent e, Rectangle alloc)
      このビューが扱う位置で属性が変更されたことをドキュメントから通知します。
      パラメータ:
      fv - 変更を含むFlowView
      e - ドキュメントに変更が加えられたことを説明するDocumentEvent
      alloc - ViewのBounds
      関連項目:
    • getLogicalView

      protected View getLogicalView(FlowView fv)
      このメソッドはFlowViewの論理ビューへのフローを示します。
      パラメータ:
      fv - FlowView
      戻り値:
      FlowViewの論理ビュー
    • layout

      public void layout(FlowView fv)
      指定されたFlowViewのフローを更新します。 デフォルトでは、すべての子ビューの行が各行の制約に合致するように再構築されます。 これはFlowView.layoutが呼び出してフローのなかの子ビューを更新します。
      パラメータ:
      fv - 再フローするビュー
    • layoutRow

      protected int layoutRow(FlowView fv, int rowIndex, int pos)
      行の配置スパンのなかにおさまるビューの行を作成します。 配置メソッドが呼び出します。 この実装は使用可能なスパンが空になるまで、強制ブレークが検出されるまで、またはcreateViewメソッドがnullを返すまで繰返し呼び出して行に挿入します。 残りのスパンが空になったら、adjustRowメソッドが呼び出されて、指定したスパンにおさまるように行が調整されます。
      パラメータ:
      fv - フロー・ビュー
      rowIndex - ビューを収める行のインデックス。 この行は入力時に空と見なされる。
      pos - このビュー要素の子の中の現在の開始位置。
      戻り値:
      次の行を開始する位置
    • adjustRow

      protected void adjustRow(FlowView fv, int rowIndex, int desiredSpan, int x)
      指定された行を可能であれば調整して、配置スパン内に収めるようにします。 デフォルトでは、行末尾にできるだけ近くで最大の分割ウエイトを見つけようとします。 強制分割が検出されると、分割がそこに配置されます。
      パラメータ:
      fv - フロー・ビュー
      rowIndex - 現在の配置スパンに調整される行。
      desiredSpan - 現在の配置スパン>= 0
      x - rの開始位置。
    • createView

      protected View createView(FlowView fv, int startOffset, int spanLeft, int rowIndex)
      現在のフローの一部を表すために使用できるビューを作成します。 論理ビューの全体ビューでも、一部でもかまいません。
      パラメータ:
      fv - フローを保持するビュー
      startOffset - 作成されるビューの開始位置
      spanLeft - 行に挿入される残りのスパン
      rowIndex - ビューの配置先の行
      戻り値:
      現在のフローを表すのに使用できるビュー