getWidth and getHeight just once
[jalview.git] / src / jalview / gui / TreePanel.java
index c6c9b53..9c1e42e 100755 (executable)
@@ -38,7 +38,6 @@ import java.util.*;
 \r
 import javax.imageio.*;\r
 \r
 \r
 import javax.imageio.*;\r
 \r
-import javax.swing.*;\r
 import java.beans.PropertyChangeEvent;\r
 \r
 \r
 import java.beans.PropertyChangeEvent;\r
 \r
 \r
@@ -75,8 +74,7 @@ public class TreePanel extends GTreePanel
       initTreePanel(av, seqVector, type, pwtype, s, e, null);\r
 \r
       // We know this tree has distances. JBPNote TODO: prolly should add this as a userdefined default\r
       initTreePanel(av, seqVector, type, pwtype, s, e, null);\r
 \r
       // We know this tree has distances. JBPNote TODO: prolly should add this as a userdefined default\r
-      treeCanvas.setShowDistances(true);\r
-      distanceMenu.setSelected(true);\r
+      showDistances(true);\r
     }\r
 \r
     /**\r
     }\r
 \r
     /**\r
@@ -95,6 +93,11 @@ public class TreePanel extends GTreePanel
       initTreePanel(av, seqVector, type, pwtype, 0, seqVector.size(), newtree);\r
     }\r
 \r
       initTreePanel(av, seqVector, type, pwtype, 0, seqVector.size(), newtree);\r
     }\r
 \r
+    public AlignmentI getAlignment()\r
+    {\r
+      return treeCanvas.av.getAlignment();\r
+    }\r
+\r
 \r
     void initTreePanel(AlignViewport av, Vector seqVector, String type,\r
                        String pwtype, int s, int e, NewickFile newTree)\r
 \r
     void initTreePanel(AlignViewport av, Vector seqVector, String type,\r
                        String pwtype, int s, int e, NewickFile newTree)\r
@@ -148,11 +151,8 @@ public class TreePanel extends GTreePanel
         {\r
           // Must be outside run(), as Jalview2XML tries to\r
           // update distance/bootstrap visibility at the same time\r
         {\r
           // Must be outside run(), as Jalview2XML tries to\r
           // update distance/bootstrap visibility at the same time\r
-          treeCanvas.setShowBootstrap(newtree.HasBootstrap());\r
-          bootstrapMenu.setSelected(newtree.HasBootstrap());\r
-\r
-          treeCanvas.setShowDistances(newtree.HasDistances());\r
-          distanceMenu.setSelected(newtree.HasDistances());\r
+          showBootstrap(newtree.HasBootstrap());\r
+          showDistances(newtree.HasDistances());\r
         }\r
       }\r
 \r
         }\r
       }\r
 \r
@@ -172,6 +172,26 @@ public class TreePanel extends GTreePanel
       }\r
     }\r
 \r
       }\r
     }\r
 \r
+    public void showDistances(boolean b)\r
+    {\r
+      treeCanvas.setShowDistances(b);\r
+      distanceMenu.setSelected(b);\r
+    }\r
+\r
+    public void showBootstrap(boolean b)\r
+    {\r
+      treeCanvas.setShowBootstrap(b);\r
+      bootstrapMenu.setSelected(b);\r
+    }\r
+\r
+    public void showPlaceholders(boolean b)\r
+    {\r
+      placeholdersMenu.setState(b);\r
+      treeCanvas.setMarkPlaceholders(b);\r
+    }\r
+\r
+\r
+\r
 \r
     /**\r
      * DOCUMENT ME!\r
 \r
     /**\r
      * DOCUMENT ME!\r
@@ -216,7 +236,7 @@ public class TreePanel extends GTreePanel
         Desktop.addInternalFrame(cap, buffer.toString(), 500, 100);\r
 \r
         jalview.io.NewickFile fout = new jalview.io.NewickFile(tree.getTopNode());\r
         Desktop.addInternalFrame(cap, buffer.toString(), 500, 100);\r
 \r
         jalview.io.NewickFile fout = new jalview.io.NewickFile(tree.getTopNode());\r
-        cap.setText(fout.print(false, true));\r
+        cap.setText(fout.print(tree.isHasBootstrap(), tree.isHasDistances(), tree.isHasRootDistance()));\r
     }\r
 \r
     /**\r
     }\r
 \r
     /**\r
@@ -243,7 +263,7 @@ public class TreePanel extends GTreePanel
             try\r
             {\r
                 jalview.io.NewickFile fout = new jalview.io.NewickFile(tree.getTopNode());\r
             try\r
             {\r
                 jalview.io.NewickFile fout = new jalview.io.NewickFile(tree.getTopNode());\r
-                String output = fout.print(false, true); // distances only\r
+                String output = fout.print(tree.isHasBootstrap(), tree.isHasDistances(), tree.isHasRootDistance());\r
                 java.io.PrintWriter out = new java.io.PrintWriter(new java.io.FileWriter(\r
                             choice));\r
                 out.println(output);\r
                 java.io.PrintWriter out = new java.io.PrintWriter(new java.io.FileWriter(\r
                             choice));\r
                 out.println(output);\r