MCPcopy Create free account
hub / github.com/rambaut/figtree / DefaultTreeViewer

Class DefaultTreeViewer

src/figtree/treeviewer/DefaultTreeViewer.java:49–809  ·  view source on GitHub ↗

@author Andrew Rambaut @version $Id$ $HeadURL$ $LastChangedBy$ $LastChangedDate$ $LastChangedRevision$

Source from the content-addressed store, hash-verified

47 * $LastChangedRevision$
48 */
49public class DefaultTreeViewer extends TreeViewer {
50 private final static double ZOOM_SCALE = 0.02;
51 private final static double VERTICAL_EXPANSION_SCALE = 0.02;
52 private final static double ZOOM_POWER = 1.2;
53
54 public DefaultTreeViewer() {
55 this(null);
56 }
57
58 /**
59 * Creates new TreeViewer
60 */
61 public DefaultTreeViewer(JFrame frame) {
62 this.frame = frame;
63
64 setLayout(new BorderLayout());
65
66 this.treePane = new TreePane();
67 treePane.setAutoscrolls(true); //enable synthetic drag events
68
69 treePane.addTreePaneListener(new TreePaneListener() {
70 public void treePaneSettingsChanged() {
71 fireTreeSettingsChanged();
72 }
73 });
74
75 JScrollPane scrollPane = new JScrollPane(treePane, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
76 scrollPane.setMinimumSize(new Dimension(150, 150));
77
78 scrollPane.setBorder(null);
79 viewport = scrollPane.getViewport();
80
81 add(scrollPane, BorderLayout.CENTER);
82
83 // This overrides MouseListener and MouseMotionListener to allow selection in the TreePane -
84 // It installs itself within the constructor.
85 treePaneSelector = new TreePaneSelector(treePane);
86 treePaneRollOver = new TreePaneRollOver(treePane);
87
88 setFocusable(true);
89
90 }
91
92 public void setTree(Tree tree) {
93 trees.clear();
94 addTree(tree);
95 showTree(0);
96 }
97
98 public void setTrees(Collection<? extends Tree> trees) {
99 this.trees.clear();
100 for (Tree tree : trees) {
101 addTree(tree);
102 }
103 showTree(0);
104 }
105
106 public void addTree(Tree tree) {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…