JAL-2805 added getter and setter for jalview association to tree frame
[jalview.git] / src / jalview / ext / archaeopteryx / AptxTreePanel.java
1 package jalview.ext.archaeopteryx;
2
3 import jalview.ext.treeviewer.TreeI;
4 import jalview.ext.treeviewer.TreeNodeI;
5 import jalview.ext.treeviewer.TreePanelI;
6 import jalview.gui.PaintRefresher;
7
8 import java.awt.Event;
9 import java.awt.Font;
10 import java.awt.Graphics2D;
11 import java.awt.MenuComponent;
12 import java.awt.Rectangle;
13 import java.awt.event.MouseListener;
14 import java.io.File;
15 import java.util.Set;
16
17 import javax.accessibility.AccessibleContext;
18
19 public class AptxTreePanel implements TreePanelI
20 {
21   private final org.forester.archaeopteryx.TreePanel treeView;
22
23   private final TreeI tree;
24
25   private String sequenceSetId;
26
27   protected AptxTreePanel(
28           org.forester.archaeopteryx.TreePanel aptxTreePanel)
29   {
30     treeView = aptxTreePanel;
31     tree = new Tree(treeView.getPhylogeny());
32   }
33
34   protected AptxTreePanel(
35           org.forester.archaeopteryx.TreePanel aptxTreePanel,
36           TreeI aptxTree)
37   {
38     treeView = aptxTreePanel;
39     tree = aptxTree;
40
41   }
42
43   @Override
44   public void setTreeFile(File file)
45   {
46     treeView.setTreeFile(file);
47   }
48
49   @Override
50   public TreeI getTree()
51   {
52     return tree;
53   }
54
55   @Override
56   public File getTreeFile()
57   {
58     return treeView.getTreeFile();
59   }
60
61   @Override
62   public TreeNodeI findNode(int x, int y)
63   {
64     return TreeNode.getUniqueWrapper(treeView.findNode(x, y));
65   }
66
67   @Override
68   public void setMatchingNodes(Set<Long> hashSet)
69   {
70     treeView.setFoundNodes0(hashSet);
71
72   }
73
74   @Override
75   public Set<Long> getMatchingNodes()
76   {
77     return treeView.getFoundNodes0();
78   }
79
80   @Override
81   public AccessibleContext getAccessibleContext()
82   {
83     return treeView.getAccessibleContext();
84   }
85
86   @Override
87   public Font getFont()
88   {
89     return treeView.getFont();
90   }
91
92   @Override
93   public void remove(MenuComponent comp)
94   {
95     treeView.remove(comp);
96
97   }
98
99   @Deprecated
100   @Override
101   public boolean postEvent(Event evt)
102   {
103     return treeView.postEvent(evt);
104   }
105
106   @Override
107   public void addMouseListener(MouseListener listener)
108   {
109     treeView.addMouseListener(listener);
110   }
111
112   @Override
113   public void removeMouseListener(MouseListener listener)
114   {
115     treeView.removeMouseListener(listener);
116
117   }
118
119   @Override
120   public MouseListener[] getMouseListeners()
121   {
122     return treeView.getMouseListeners();
123   }
124
125   @Override
126   public void repaint()
127   {
128     treeView.repaint();
129
130   }
131
132   @Override
133   public void registerWithPaintRefresher(String sequenceSetIdentifier)
134   {
135     sequenceSetId = sequenceSetIdentifier;
136     PaintRefresher.Register(treeView, sequenceSetIdentifier);
137
138   }
139
140   @Override
141   public void notifyPaintRefresher(String sequenceSetIdentifier,
142           boolean alignmentChanged, boolean validateSequences)
143   {
144     PaintRefresher.Refresh(treeView, sequenceSetIdentifier,
145             alignmentChanged, validateSequences);
146
147   }
148
149   @Override
150   public void notifyPaintRefresher(boolean alignmentChanged,
151           boolean validateSequences)
152   {
153     if (sequenceSetId != null)
154     {
155     PaintRefresher.Refresh(treeView, sequenceSetId, alignmentChanged,
156               validateSequences);
157     }
158     else
159     {
160       // throw some kind of exception
161     }
162
163   }
164
165   @Override
166   public int getWidth()
167   {
168     return treeView.getWidth();
169   }
170
171   @Override
172   public int getHeight()
173   {
174     return treeView.getHeight();
175   }
176
177   @Override
178   public void paintToFile(Graphics2D pg, int width, int height)
179   {
180     treeView.paintFile(pg, false, width, height, 0, 0);
181
182   }
183
184   @Override
185   public boolean showingSubTree()
186   {
187     return treeView.isCurrentTreeIsSubtree();
188   }
189
190   @Override
191   public Rectangle getVisibleArea()
192   {
193     return treeView.getVisibleRect();
194   }
195
196   @Override
197   public float getPartitionThreshold()
198   {
199     return treeView.getThreshold();
200   }
201 }