- String type;
- String pwtype;
- TreeCanvas treeCanvas;
- NJTree tree;
- AlignViewport av;
-
- /**
- * Creates a new TreePanel object.
- *
- * @param av DOCUMENT ME!
- * @param seqVector DOCUMENT ME!
- * @param type DOCUMENT ME!
- * @param pwtype DOCUMENT ME!
- * @param s DOCUMENT ME!
- * @param e DOCUMENT ME!
- */
- public TreePanel(AlignmentPanel ap, String type, String pwtype)
+ String substitutionMatrix;
+
+ String treeType;
+
+ String treeTitle; // if tree loaded
+
+ TreeCanvas treeCanvas;
+
+ TreeModel tree;
+
+ AlignViewport av;
+
+ /**
+ * Creates a new TreePanel object.
+ *
+ * @param ap
+ * @param tree
+ */
+ public TreePanel(AlignmentPanel ap, TreeModel tree, String treeType,
+ String substitutionMatrix)
+ {
+ super();
+ this.treeType = treeType;
+ this.substitutionMatrix = substitutionMatrix;
+ this.tree = tree;
+ initNewTreePanel(ap, tree);
+
+ // We know this tree has distances. JBPNote TODO: prolly should add this as
+ // a userdefined default
+ // showDistances(true);
+ }
+
+ /**
+ * Creates a new TreePanel object.
+ *
+ * @param alignPanel
+ * @param newtree
+ * @param theTitle
+ * @param inputData
+ * @param viewport
+ */
+ public TreePanel(AlignmentPanel alignPanel, NewickFile newtree,
+ String theTitle, AlignmentView inputData)
+ {
+ super();
+ this.treeTitle = theTitle;
+ initLoadedTreePanel(alignPanel, newtree, inputData);
+ }
+
+ public AlignmentI getAlignment()
+ {
+ return treeCanvas.av.getAlignment();
+ }
+
+ public AlignmentViewport getViewPort()
+ {
+ return treeCanvas.av;
+ }
+
+ void initNewTreePanel(AlignmentPanel ap, TreeModel tree)
+ {
+ buildTreeCanvas(ap);
+
+ TreeLoader tl = new TreeLoader(null, null);
+ tl.start();
+
+ }
+ void initLoadedTreePanel(AlignmentPanel ap,
+ NewickFile newTree, AlignmentView inputData)
+ {
+ buildTreeCanvas(ap);
+
+ TreeLoader tl = new TreeLoader(newTree, inputData);
+ tl.start();
+ }
+
+public void buildTreeCanvas(AlignmentPanel ap) {
+ av = ap.av;
+
+ treeCanvas = new TreeCanvas(this, ap, scrollPane);
+ scrollPane.setViewportView(treeCanvas);
+
+
+ PaintRefresher.Register(this, ap.av.getSequenceSetId());
+
+ buildAssociatedViewMenu();
+
+ av.addPropertyChangeListener(new java.beans.PropertyChangeListener()