package jalview.ext.archaeopteryx;
import jalview.bin.Cache;
-import jalview.ext.treeviewer.ExternalTreeControlsI;
-import jalview.ext.treeviewer.ExternalTreeFrame;
-import jalview.ext.treeviewer.ExternalTreeI;
-import jalview.ext.treeviewer.ExternalTreePanel;
+import jalview.ext.treeviewer.TreeControlsI;
+import jalview.ext.treeviewer.TreeFrameI;
+import jalview.ext.treeviewer.TreeI;
+import jalview.ext.treeviewer.TreePanelI;
+import jalview.ext.treeviewer.TreeViewerUtils;
import jalview.gui.Desktop;
import jalview.gui.EPSOptions;
import jalview.io.JalviewFileChooser;
import javax.swing.JSeparator;
import javax.swing.event.InternalFrameListener;
+import org.forester.archaeopteryx.Archaeopteryx;
+import org.forester.archaeopteryx.Configuration;
import org.forester.archaeopteryx.MainFrame;
+import org.forester.phylogeny.Phylogeny;
import org.jibble.epsgraphics.EpsGraphics2D;
-public class AptxFrame implements ExternalTreeFrame
+public class AptxFrame implements TreeFrameI
{
private final MainFrame aptxFrame;
- private ExternalTreePanel aptxPanel;
+ private TreePanelI aptxPanel;
+
+ private TreeControlsI aptxControls;
+
+
+ public AptxFrame(Phylogeny tree, Configuration aptxConfig,
+ String treeTitle)
+ {
+ this(Archaeopteryx.createApplication(tree,
+ aptxConfig,
+ treeTitle));
+
+ }
- private ExternalTreeControlsI aptxControls;
public AptxFrame(MainFrame aptx)
{
+
aptxFrame = aptx;
aptxPanel = new AptxTreePanel(
aptxFrame.getMainPanel().getCurrentTreePanel());
adaptAptxGui(aptxFrame);
}
+
/**
* Hides certain redundant Archaeopteryx GUI elements such as the menu items
* for reading in trees and adds extra items related to Jalview such as the
- * tree sorting item.
+ * tree sorting menu item.
*
*
* @param aptxFrame
*/
- private void adaptAptxGui(MainFrame aptxFrame)
+ protected void adaptAptxGui(MainFrame aptxFrame)
{
JMenuBar frameBar = aptxFrame.getJMenuBar();
boolean epsAdded = false;
"Filter alignment to show only currently visible sequences");
refreshJalview.setFont(menu.getFont());
-
- menu.add(sortByTree);
- menu.add(refreshJalview);
-
- sortByTree.setFont(menu.getFont());
- refreshJalview.addActionListener(new ActionListener()
+ refreshJalview.addActionListener(
+ TreeViewerUtils.getActiveTreeViews().get(this));
+ sortByTree.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
- // TODO Auto-generated method stub
+ TreeViewerUtils.getActiveTreeViews().get(AptxFrame.this)
+ .sortByTree_actionPerformed();
}
});
+ menu.add(sortByTree);
+ menu.add(refreshJalview);
+
+ sortByTree.setFont(menu.getFont());
+
+
}
}
- aptxFrame.validate();
+ // aptxFrame.validate();
}
public void epsTree_actionPerformed(ActionEvent e)
}
}
@Override
- public ExternalTreePanel getTreePanel()
+ public TreePanelI getTreePanel()
{
return aptxPanel;
}
@Override
- public ExternalTreeI getTree()
+ public TreeI getTree()
{
return aptxPanel.getTree();
}
}
@Override
- public ExternalTreeControlsI getTreeControls()
+ public TreeControlsI getTreeControls()
{
return aptxControls;
}