22 |
package org.jsampler.view; |
package org.jsampler.view; |
23 |
|
|
24 |
import javax.swing.JTree; |
import javax.swing.JTree; |
25 |
|
import javax.swing.tree.TreePath; |
26 |
|
import org.jsampler.CC; |
27 |
|
import org.jsampler.view.SamplerTreeModel.TreeNodeBase; |
28 |
|
|
29 |
/** |
/** |
30 |
* |
* |
31 |
* @author Grigor Iliev |
* @author Grigor Iliev |
32 |
*/ |
*/ |
33 |
public class AbstractSamplerTree extends JTree { |
public class AbstractSamplerTree extends JTree { |
34 |
|
private SamplerBrowserView view = null; |
35 |
|
|
36 |
|
|
37 |
/** |
/** |
38 |
* Creates a new instance of <code>AbstractSamplerTree</code> |
* Creates a new instance of <code>AbstractSamplerTree</code> |
39 |
* using the specified tree model. |
* using the specified tree model. |
43 |
public |
public |
44 |
AbstractSamplerTree(SamplerTreeModel model) { |
AbstractSamplerTree(SamplerTreeModel model) { |
45 |
setModel(model); |
setModel(model); |
46 |
|
setView(CC.getViewConfig().getSamplerBrowserView()); |
47 |
//setRootVisible(false); |
//setRootVisible(false); |
48 |
|
|
49 |
|
setSelectedNode((TreeNodeBase)getModel().getRoot()); |
50 |
} |
} |
51 |
|
|
52 |
@Override |
@Override |
53 |
public SamplerTreeModel |
public SamplerTreeModel |
54 |
getModel() { return (SamplerTreeModel) super.getModel(); } |
getModel() { return (SamplerTreeModel) super.getModel(); } |
55 |
|
|
56 |
|
/** Sets the view to be used for retrieving UI information. */ |
57 |
|
public void |
58 |
|
setView(SamplerBrowserView view) { |
59 |
|
this.view = view; |
60 |
|
} |
61 |
|
|
62 |
|
/** Gets the view used to retrieve UI information. */ |
63 |
|
public SamplerBrowserView |
64 |
|
getView() { return view; } |
65 |
|
|
66 |
|
public void |
67 |
|
setSelectedNode(TreeNodeBase node) { |
68 |
|
if(node == null || node.isLeaf()) return; |
69 |
|
Object[] objs = getModel().getPathToRoot(node); |
70 |
|
setSelectionPath(new TreePath(objs)); |
71 |
|
} |
72 |
} |
} |