JAL-2799 rearranged AptxInit code
[jalview.git] / src / jalview / ext / archaeopteryx / AptxInit.java
index 7dbddad..5a9fb12 100644 (file)
@@ -57,35 +57,9 @@ public final class AptxInit
   private final static NHXParser.TAXONOMY_EXTRACTION TAXONOMY_EXTRACTION = APTX_CONFIG
           .getTaxonomyExtraction();
 
-  /**
-   * Test method, should generally not be used as it does not bind the tree to
-   * its alignment
-   * 
-   * @param aptxTrees
-   * @return
-   */
-  public static MainFrame createUnboundInstance(final Phylogeny aptxTree)
-  {
-    return createAptxFrame(aptxTree);
-  }
 
-  // public static MainFrame createInstance(final Phylogeny[] aptxTrees,
-  // AlignmentViewport jalviewAlignmentView)
-  // {
-  // return createAptxFrameInJalview(aptxTrees);
-  //
-  // }
-  //
-  // public static MainFrame createInstance(final Phylogeny aptxTree,
-  // final AlignmentViewport jalviewAlignmentView)
-  // {
-  // Phylogeny[] aptxTrees = { aptxTree }; // future possibility to load in
-  // // several trees simultaneously
-  // return createAptxFrameInJalview(aptxTrees);
-  //
-  // }
-
-  public static MainFrame createInstance(
+
+  public static MainFrame createInstanceFromCalculation(
           final TreeBuilder calculatedTree) // very dense method, to be split up
   {
     ExternalTreeBuilderI<Phylogeny, PhylogenyNode> aptxTreeBuilder = new AptxTreeBuilder(
@@ -93,14 +67,10 @@ public final class AptxInit
 
     Phylogeny aptxTree = aptxTreeBuilder.buildTree();
 
-    MainFrame aptxApp = createAptxFrame(aptxTree);
+    MainFrame aptxApp = createAptxFrame(aptxTree,
+            calculatedTree.getAvport(), null);
             
-    bindNodesToJalviewSequences(aptxApp, calculatedTree.getAvport(),
-            aptxTreeBuilder.getAlignmentBoundNodes(),
-            aptxTreeBuilder.getNodesBoundAlignment());
-
-    return bindFrameToJalview(aptxApp);
-
+    return aptxApp;
   }
 
   /**
@@ -153,22 +123,13 @@ public final class AptxInit
     for (int i = 0; i < phylogenies.length; i++)
       {
       Phylogeny tree = phylogenies[i];
+
       if (nhx_or_nexus && INTERNAL_NUMBERS_AS_CONFIDENCE)
       {
         PhylogenyMethods.transferInternalNodeNamesToConfidence(tree, "");
       }
 
-      MainFrame aptxApp = Archaeopteryx.createApplication(tree, APTX_CONFIG,
-              treeTitle);
-      LoadedTreeAssociation bindAptxNodes = new LoadedTreeAssociation(
-              viewport.getAlignment().getSequencesArray(), tree);
-
-      bindAptxNodes.associateLeavesToSequences();
-      bindNodesToJalviewSequences(aptxApp, viewport,
-              bindAptxNodes.getAlignmentWithNodes(),
-              bindAptxNodes.getNodesWithAlignment());
-      bindFrameToJalview(aptxApp);
-      aptxFrames[i] = aptxApp;
+      aptxFrames[i] = createAptxFrame(tree, viewport, treeTitle);
     }
 
     return aptxFrames;
@@ -190,17 +151,7 @@ public final class AptxInit
     for (int i = 0; i < trees.length; i++)
     {
       Phylogeny tree = trees[i];
-      MainFrame aptxApp = Archaeopteryx.createApplication(tree, APTX_CONFIG,
-              treeTitle);
-      LoadedTreeAssociation bindAptxNodes = new LoadedTreeAssociation(
-              viewport.getAlignment().getSequencesArray(), tree);
-
-      bindAptxNodes.associateLeavesToSequences();
-      bindNodesToJalviewSequences(aptxApp, viewport,
-              bindAptxNodes.getAlignmentWithNodes(),
-              bindAptxNodes.getNodesWithAlignment());
-      bindFrameToJalview(aptxApp);
-      aptxFrames[i] = aptxApp;
+      aptxFrames[i] = createAptxFrame(tree, viewport, treeTitle);
     }
 
     return aptxFrames;
@@ -210,11 +161,21 @@ public final class AptxInit
 
 
 
+
   public static MainFrame createAptxFrame(
-          final Phylogeny aptxTree)
+          final Phylogeny aptxTree,
+          final AlignmentViewport jalviewAlignport, String treeTitle)
   {
     MainFrame aptxApp = Archaeopteryx.createApplication(aptxTree,
-            APTX_CONFIG, null);
+            APTX_CONFIG, treeTitle);
+    LoadedTreeAssociation bindAptxNodes = new LoadedTreeAssociation(
+            jalviewAlignport.getAlignment().getSequencesArray(), aptxTree);
+
+    bindAptxNodes.associateLeavesToSequences();
+    bindNodesToJalviewSequences(aptxApp, jalviewAlignport,
+            bindAptxNodes.getAlignmentWithNodes(),
+            bindAptxNodes.getNodesWithAlignment());
+    bindFrameToJalview(aptxApp);
     return aptxApp;
   }