+ if (newtree != null)
+ {
+ tree = new TreeModel(av.getAlignment().getSequencesArray(), odata,
+ newtree);
+ if (tree.getOriginalData() == null)
+ {
+ originalSeqData.setVisible(false);
+ }
+ }
+ else
+ {
+ ScoreModelI sm = ScoreModels.getInstance()
+ .getScoreModel(scoreModelName, treeCanvas.ap);
+ TreeBuilder njtree = treeType.equals(TreeBuilder.NEIGHBOUR_JOINING)
+ ? new NJTree(av, sm, similarityParams)
+ : new AverageDistanceTree(av, sm, similarityParams);
+ tree = new TreeModel(njtree);
+ showDistances(true);
+ }
+
+ tree.reCount(tree.getTopNode());
+ tree.findHeight(tree.getTopNode());
+ treeCanvas.setTree(tree);
+ treeCanvas.repaint();
+ av.setCurrentTree(tree);
+ if (av.getSortByTree())
+ {
+ sortByTree_actionPerformed();
+ }
+ }
+ }
+
+ public void showDistances(boolean b)
+ {
+ treeCanvas.setShowDistances(b);
+ distanceMenu.setSelected(b);
+ }
+
+ public void showBootstrap(boolean b)
+ {
+ treeCanvas.setShowBootstrap(b);
+ bootstrapMenu.setSelected(b);
+ }
+
+ public void showPlaceholders(boolean b)
+ {
+ placeholdersMenu.setState(b);
+ treeCanvas.setMarkPlaceholders(b);
+ }
+
+ /**
+ * DOCUMENT ME!
+ *
+ * @return DOCUMENT ME!
+ */
+ public TreeModel getTree()
+ {
+ return tree;
+ }
+
+ /**
+ * DOCUMENT ME!
+ *
+ * @param e
+ * DOCUMENT ME!
+ */
+ @Override
+ public void textbox_actionPerformed(ActionEvent e)
+ {
+ CutAndPasteTransfer cap = new CutAndPasteTransfer();
+
+ String newTitle = getPanelTitle();
+
+ NewickFile fout = new NewickFile(tree.getTopNode());
+ try
+ {
+ cap.setText(fout.print(tree.hasBootstrap(), tree.hasDistances(),
+ tree.hasRootDistance()));
+ Desktop.addInternalFrame(cap, newTitle, 500, 100);
+ } catch (OutOfMemoryError oom)