JAL-1953 first pass of adding javadoc, some methods renamed
[jalview.git] / src / jalview / ext / treeviewer / TreeViewerUtils.java
1 package jalview.ext.treeviewer;
2
3 import jalview.datamodel.SequenceI;
4 import jalview.ext.archaeopteryx.JalviewBinding;
5 import jalview.util.MessageManager;
6 import jalview.viewmodel.AlignmentViewport;
7
8 import java.awt.Dimension;
9 import java.io.File;
10 import java.util.HashMap;
11 import java.util.Map;
12
13 public final class TreeViewerUtils
14 {
15   private static Map<TreeFrameI, TreeViewerBindingI> activeViews = new HashMap<>();
16
17   public static TreeFrameI addTreeViewFrameToJalview(
18           final TreeFrameI treeFrame)
19   {
20     int width = 400;
21     int height = 550;
22     treeFrame.setMinimumSize(new Dimension(width, height));
23     // aptxApp.setFont(Desktop.instance.getFont());
24     // aptxApp.getMainPanel().setFont(Desktop.instance.getFont());
25     String frameTitle = MessageManager.getString("label.aptx_title");
26     File treeFile = treeFrame.getTreePanel().getTreeFile();
27     if (treeFile != null)
28     {
29       frameTitle += MessageManager.formatMessage("label.of_x",
30               new String[]
31               { treeFile.getAbsolutePath() });
32     }
33     // Usually redundant as this is done when associating nodes as well but that
34     // step could be bypassed
35     activeViews.put(treeFrame, treeFrame.getViewBinding());
36
37     treeFrame.addFrameToJalview(frameTitle, true, width, height, true,
38             false);
39     treeFrame.getTreeControls().displayEntireTree();
40     return treeFrame;
41   
42   }
43
44   public static TreeViewerBindingI associateNodesWithJalviewSequences(
45           final TreeFrameI treeFrame,
46           final AlignmentViewport jalviewAlignViewport,
47           final Map<SequenceI, TreeNodeI> alignMappedToNodes,
48           final Map<TreeNodeI, SequenceI> nodesMappedToAlign)
49   {
50     TreeViewerBindingI treeBinding = new JalviewBinding(treeFrame,
51             jalviewAlignViewport,
52             alignMappedToNodes, nodesMappedToAlign);
53     jalviewAlignViewport.setCurrentExtTree(treeFrame.getTree());
54     activeViews.put(treeFrame, treeFrame.getViewBinding());
55
56     return treeBinding;
57   }
58
59   public static Map<TreeFrameI, TreeViewerBindingI> getActiveTreeViews()
60   {
61     return activeViews;
62   }
63
64 }