Java プラットフォーム 1.2

javax.swing.tree
クラス DefaultTreeSelectionModel

java.lang.Object
  |
  +--javax.swing.tree.DefaultTreeSelectionModel
直接の既知のサブクラス:
JTree.EmptySelectionModel

public class DefaultTreeSelectionModel
extends Object
implements Cloneable, Serializable, TreeSelectionModel

TreeSelectionModel の実装です。リスナーは、行が変更されたときではなく選択範囲のパスが変更されたときに通知を受けます。行の変更を追跡できるようにするには、ツリー上で展開イベントを待機することにより、行の変更を判定します。

警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。今後の Swing リリースでは、長期間の持続性をサポートする予定です。

関連項目:
直列化された形式

フィールドの概要
protected  SwingPropertyChangeSupport changeSupport
          メッセージを送られた登録済みリスナーのために使います。
protected  int leadIndex
          選択範囲のリードパスのインデックスです。
protected  TreePath leadPath
          追加された最後のパスです。
protected  int leadRow
          リード行です。
protected  EventListenerList listenerList
          イベントリスナーリストです。
protected  DefaultListSelectionModel listSelectionModel
          リスト選択モデルの管理を行います。
protected  RowMapper rowMapper
          指定のパスに行を提供します。
protected  TreePath[] selection
          現在選択されているパスです。
static String SELECTION_MODE_PROPERTY
          selectionMode のプロパティ名です。
protected  int selectionMode
          選択モードは、SINGLE_TREE_SELECTION、CONTIGUOUS_TREE_SELECTION、DISCONTIGUOUS_TREE_SELECTION のどれかになります。
 
コンストラクタの概要
DefaultTreeSelectionModel()
          空の新しい DefaultTreeSelectionMode のインスタンスを生成します。
 
メソッドの概要
 void addPropertyChangeListener(PropertyChangeListener listener)
          PropertyChangeListener をリスナーリストに追加します。
 void addSelectionPath(TreePath path)
          現在の選択範囲に path を追加します。
 void addSelectionPaths(TreePath[] paths)
          現在の選択範囲に paths を追加します。
 void addTreeSelectionListener(TreeSelectionListener x)
          選択範囲が変更されるたびに通知を受けるリスナーのリストに x を追加します。
protected  boolean arePathsContiguous(TreePath[] paths)
          指定された複数のパスが連続している場合に true を返します。
protected  boolean canPathsBeAdded(TreePath[] paths)
          モデルの連続性を壊さずにパスを追加できる場合に true を返します。
protected  boolean canPathsBeRemoved(TreePath[] paths)
          モデルの連続性を壊さずにパスを削除できる場合に true を返します。
 void clearSelection()
          現在の選択範囲を空にします。
 Object clone()
          同じ選択範囲を持つレシーバの複製を返します。
protected  void fireValueChanged(TreeSelectionEvent e)
           
 TreePath getLeadSelectionPath()
          追加された最後のパスを返します。
 int getLeadSelectionRow()
          選択範囲のリードインデックスを返します。
 int getMaxSelectionRow()
          選択されている最後の行を取得します。
 int getMinSelectionRow()
          選択されている最初の行を取得します。
 RowMapper getRowMapper()
          パスを行にマップできる RowMapper のインスタンスを返します。
 int getSelectionCount()
          選択されているパスの数を返します。
 int getSelectionMode()
          選択モードを返します。
 TreePath getSelectionPath()
          選択範囲の最初のパスを返します。
 TreePath[] getSelectionPaths()
          選択範囲のすべてのパスを返します。
 int[] getSelectionRows()
          現在選択されている行をすべて返します。
protected  void insureRowContinuity()
          CONTIGUOUS_TREE_SELECTION の場合に使用します。
protected  void insureUniqueness()
          path 内のすべての要素が一意であることを保証します。
 boolean isPathSelected(TreePath path)
          パス path が現在の選択範囲にある場合に true を返します。
 boolean isRowSelected(int row)
          row で識別される行が選択されている場合に true を返します。
 boolean isSelectionEmpty()
          選択範囲が現在空の場合に true を返します。
protected  void notifyPathChange(Vector changedPaths, TreePath oldLeadSelection)
          path 内の変更をリスナーに通知します。
 void removePropertyChangeListener(PropertyChangeListener listener)
          PropertyChangeListener をリスナーリストから削除します。
 void removeSelectionPath(TreePath path)
          選択範囲から path を削除します。
 void removeSelectionPaths(TreePath[] paths)
          選択範囲から paths を削除します。
 void removeTreeSelectionListener(TreeSelectionListener x)
          選択範囲が変更されるたびに通知を受けるリスナーのリストから x を削除します。
 void resetRowSelection()
          どの行が選択されるかを再計算するには、RowMapper に各パスの行を要求します。
 void setRowMapper(RowMapper newMapper)
          RowMapper のインスタンスを設定します。
 void setSelectionMode(int mode)
          選択モデルを設定します。
 void setSelectionPath(TreePath path)
          選択範囲を path に設定します。
 void setSelectionPaths(TreePath[] pPaths)
          選択範囲を pPaths のパスに設定します。
 String toString()
          このオブジェクトのプロパティを表示および識別する文字列を返します。
protected  void updateLeadIndex()
          leadIndex インスタンス変数を更新します。
 
クラス java.lang.Object から継承したメソッド
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

SELECTION_MODE_PROPERTY

public static final String SELECTION_MODE_PROPERTY
selectionMode のプロパティ名です。

changeSupport

protected SwingPropertyChangeSupport changeSupport
メッセージを送られた登録済みリスナーのために使います。

selection

protected TreePath[] selection
現在選択されているパスです。選択されているパスがない場合は null になります。

listenerList

protected EventListenerList listenerList
イベントリスナーリストです。

rowMapper

protected transient RowMapper rowMapper
指定のパスに行を提供します。

listSelectionModel

protected DefaultListSelectionModel listSelectionModel
リスト選択モデルの管理を行います。

selectionMode

protected int selectionMode
選択モードは、SINGLE_TREE_SELECTION、CONTIGUOUS_TREE_SELECTION、DISCONTIGUOUS_TREE_SELECTION のどれかになります。

leadPath

protected TreePath leadPath
追加された最後のパスです。

leadIndex

protected int leadIndex
選択範囲のリードパスのインデックスです。

leadRow

protected int leadRow
リード行です。
コンストラクタの詳細

DefaultTreeSelectionModel

public DefaultTreeSelectionModel()
空の新しい DefaultTreeSelectionMode のインスタンスを生成します。生成されたインスタンスの選択モードは DISCONTIGUOUS_TREE_SELECTION です。
メソッドの詳細

setRowMapper

public void setRowMapper(RowMapper newMapper)
RowMapper のインスタンスを設定します。このインスタンスを使うことによって、どの行がどのパスに対応するかを判定します。
定義:
インタフェース TreeSelectionModel 内の setRowMapper

getRowMapper

public RowMapper getRowMapper()
パスを行にマップできる RowMapper のインスタンスを返します。
定義:
インタフェース TreeSelectionModel 内の getRowMapper

setSelectionMode

public void setSelectionMode(int mode)
選択モデルを設定します。これは、SINGLE_TREE_SELECTION、CONTIGUOUS_TREE_SELECTION、DISCONTIGUOUS_TREE_SELECTION のどれかになります。
定義:
インタフェース TreeSelectionModel 内の setSelectionMode

getSelectionMode

public int getSelectionMode()
選択モードを返します。
定義:
インタフェース TreeSelectionModel 内の getSelectionMode

setSelectionPath

public void setSelectionPath(TreePath path)
選択範囲を path に設定します。これが変更を表す場合は、TreeSelectionListeners が通知を受けます。
定義:
インタフェース TreeSelectionModel 内の setSelectionPath
パラメータ:
path - 選択する新しいパス

setSelectionPaths

public void setSelectionPaths(TreePath[] pPaths)
選択範囲を pPaths のパスに設定します。これが変更を表す場合は、TreeSelectionListeners が通知を受けます。潜在的に、paths はレシーバによって保持されます。そのため、一度渡された配列内のオブジェクトを変更してはなりません。
定義:
インタフェース TreeSelectionModel 内の setSelectionPaths
パラメータ:
pPaths - 新しい選択範囲

addSelectionPath

public void addSelectionPath(TreePath path)
現在の選択範囲に path を追加します。path が選択範囲に現在ない場合は、TreeSelectionListeners が通知を受けます。
定義:
インタフェース TreeSelectionModel 内の addSelectionPath
パラメータ:
path - 現在の選択範囲に追加する新しいパス

addSelectionPaths

public void addSelectionPaths(TreePath[] paths)
現在の選択範囲に paths を追加します。paths 内のパスのどれかが選択範囲に現在ない場合は、TreeSelectionListeners が通知を受けます。
定義:
インタフェース TreeSelectionModel 内の addSelectionPaths
パラメータ:
paths - 現在の選択範囲に追加する新しいパス

removeSelectionPath

public void removeSelectionPath(TreePath path)
選択範囲から path を削除します。path が選択範囲にある場合は、TreeSelectionListeners が通知を受けます。
定義:
インタフェース TreeSelectionModel 内の removeSelectionPath
パラメータ:
path - 選択範囲から削除するパス

removeSelectionPaths

public void removeSelectionPaths(TreePath[] paths)
選択範囲から paths を削除します。paths 内のパスのどれかが選択範囲にある場合は、TreeSelectionListeners が通知を受けます。
定義:
インタフェース TreeSelectionModel 内の removeSelectionPaths
パラメータ:
paths - 選択範囲から削除するパス

getSelectionPath

public TreePath getSelectionPath()
選択範囲の最初のパスを返します。
定義:
インタフェース TreeSelectionModel 内の getSelectionPath

getSelectionPaths

public TreePath[] getSelectionPaths()
選択範囲のすべてのパスを返します。
定義:
インタフェース TreeSelectionModel 内の getSelectionPaths

getSelectionCount

public int getSelectionCount()
選択されているパスの数を返します。
定義:
インタフェース TreeSelectionModel 内の getSelectionCount

isPathSelected

public boolean isPathSelected(TreePath path)
パス path が現在の選択範囲にある場合に true を返します。
定義:
インタフェース TreeSelectionModel 内の isPathSelected

isSelectionEmpty

public boolean isSelectionEmpty()
選択範囲が現在空の場合に true を返します。
定義:
インタフェース TreeSelectionModel 内の isSelectionEmpty

clearSelection

public void clearSelection()
現在の選択範囲を空にします。これが現在の選択範囲の変更を表す場合は、選択リスナーが通知を受けます。
定義:
インタフェース TreeSelectionModel 内の clearSelection

addTreeSelectionListener

public void addTreeSelectionListener(TreeSelectionListener x)
選択範囲が変更されるたびに通知を受けるリスナーのリストに x を追加します。
定義:
インタフェース TreeSelectionModel 内の addTreeSelectionListener
パラメータ:
x - 追加される新しいリスナー

removeTreeSelectionListener

public void removeTreeSelectionListener(TreeSelectionListener x)
選択範囲が変更されるたびに通知を受けるリスナーのリストから x を削除します。
定義:
インタフェース TreeSelectionModel 内の removeTreeSelectionListener
パラメータ:
x - 削除するリスナー

fireValueChanged

protected void fireValueChanged(TreeSelectionEvent e)

getSelectionRows

public int[] getSelectionRows()
現在選択されている行をすべて返します。
定義:
インタフェース TreeSelectionModel 内の getSelectionRows

getMinSelectionRow

public int getMinSelectionRow()
選択されている最初の行を取得します。
定義:
インタフェース TreeSelectionModel 内の getMinSelectionRow

getMaxSelectionRow

public int getMaxSelectionRow()
選択されている最後の行を取得します。
定義:
インタフェース TreeSelectionModel 内の getMaxSelectionRow

isRowSelected

public boolean isRowSelected(int row)
row で識別される行が選択されている場合に true を返します。
定義:
インタフェース TreeSelectionModel 内の isRowSelected

resetRowSelection

public void resetRowSelection()
どの行が選択されるかを再計算するには、RowMapper に各パスの行を要求します。
定義:
インタフェース TreeSelectionModel 内の resetRowSelection

getLeadSelectionRow

public int getLeadSelectionRow()
選択範囲のリードインデックスを返します。これは、追加された最後のインデックスです。
定義:
インタフェース TreeSelectionModel 内の getLeadSelectionRow

getLeadSelectionPath

public TreePath getLeadSelectionPath()
追加された最後のパスを返します。
定義:
インタフェース TreeSelectionModel 内の getLeadSelectionPath

addPropertyChangeListener

public void addPropertyChangeListener(PropertyChangeListener listener)
PropertyChangeListener をリスナーリストに追加します。すべてのプロパティに対して、リスナーが登録されます。

現在のコンポーネントの明示的な setFont、setBackground、または SetForeground に応答して、PropertyChangeEvent がトリガーされます。ただし、現在のコンポーネントがそのフォアグラウンド、バックグラウンド、またはフォントをコンテナから継承している場合は、継承したプロパティの変更に応答してトリガーされるイベントはありません。

定義:
インタフェース TreeSelectionModel 内の addPropertyChangeListener
パラメータ:
listener - 追加される PropertyChangeListener

removePropertyChangeListener

public void removePropertyChangeListener(PropertyChangeListener listener)
PropertyChangeListener をリスナーリストから削除します。すべてのプロパティに対して登録されていた PropertyChangeListener を削除します。
定義:
インタフェース TreeSelectionModel 内の removePropertyChangeListener
パラメータ:
listener - 削除される PropertyChangeListener

insureRowContinuity

protected void insureRowContinuity()
CONTIGUOUS_TREE_SELECTION の場合に使用します。選択されている複数の行が連続していない場合、選択範囲は連続するようにリセットされます。あるいは、選択モードが単一選択である場合に、複数の範囲が選択されたときは、選択がリセットされます。

arePathsContiguous

protected boolean arePathsContiguous(TreePath[] paths)
指定された複数のパスが連続している場合に true を返します。

canPathsBeAdded

protected boolean canPathsBeAdded(TreePath[] paths)
モデルの連続性を壊さずにパスを追加できる場合に true を返します。

canPathsBeRemoved

protected boolean canPathsBeRemoved(TreePath[] paths)
モデルの連続性を壊さずにパスを削除できる場合に true を返します。これにはかなり大きな負荷がかかります。

notifyPathChange

protected void notifyPathChange(Vector changedPaths,
                                TreePath oldLeadSelection)
path 内の変更をリスナーに通知します。changePaths は、PathPlaceHolder のインスタンスを保持します。

updateLeadIndex

protected void updateLeadIndex()
leadIndex インスタンス変数を更新します。

insureUniqueness

protected void insureUniqueness()
path 内のすべての要素が一意であることを保証します。選択が null かどうかの確認は行いません。

toString

public String toString()
このオブジェクトのプロパティを表示および識別する文字列を返します。
戻り値:
このオブジェクトの String 表現
オーバーライド:
クラス Object 内の toString

clone

public Object clone()
             throws CloneNotSupportedException
同じ選択範囲を持つレシーバの複製を返します。selectionListeners と PropertyListeners は複製されません。
例外:
CloneNotSupportedException - レシーバが、(a) Cloneable インスタンスを実装せず、(b) clone メソッドを定義しない場合
オーバーライド:
クラス Object 内の clone

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.