/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6)
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
+ * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
*
* This file is part of Jalview.
*
* Jalview is free software: you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *
+ *
* Jalview is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR
import java.awt.*;
import java.awt.event.*;
-import java.util.Hashtable;
import jalview.analysis.*;
import jalview.datamodel.*;
NJTree tree;
+ AlignmentPanel ap;
+
AlignViewport av;
public NJTree getTree()
return tree;
}
+ public void finalize() throws Throwable
+ {
+ ap = null;
+ av = null;
+ super.finalize();
+ }
+
/**
* Creates a new TreePanel object.
*
* @param e
* DOCUMENT ME!
*/
- public TreePanel(AlignViewport av, String type, String pwtype)
+ public TreePanel(AlignmentPanel ap, String type, String pwtype)
{
try
{
ex.printStackTrace();
}
- initTreePanel(av, type, pwtype, null);
+ initTreePanel(ap, type, pwtype, null);
}
/**
* @param pwtype
* DOCUMENT ME!
*/
- public TreePanel(AlignViewport av, String type, String pwtype,
+ public TreePanel(AlignmentPanel ap, String type, String pwtype,
NewickFile newtree)
{
try
e.printStackTrace();
}
- initTreePanel(av, type, pwtype, newtree);
+ initTreePanel(ap, type, pwtype, newtree);
}
- void initTreePanel(AlignViewport av, String type, String pwtype,
+ void initTreePanel(AlignmentPanel ap, String type, String pwtype,
NewickFile newTree)
{
- this.av = av;
+ this.ap = ap;
+ this.av = ap.av;
this.type = type;
this.pwtype = pwtype;
- treeCanvas = new TreeCanvas(av, scrollPane);
+ treeCanvas = new TreeCanvas(ap, scrollPane);
TreeLoader tl = new TreeLoader(newTree);
tl.start();
embedMenuIfNeeded(treeCanvas);
{
if (odata == null)
{
- tree = new NJTree(av.alignment.getSequencesArray(), newtree);
+ tree = new NJTree(av.getAlignment().getSequencesArray(), newtree);
}
else
{
- tree = new NJTree(av.alignment.getSequencesArray(), odata,
+ tree = new NJTree(av.getAlignment().getSequencesArray(), odata,
newtree);
}
{
int start, end;
SequenceI[] seqs;
- AlignmentView seqStrings = av.getAlignmentView(av
- .getSelectionGroup() != null);
- if (av.getSelectionGroup() == null)
+ boolean selview = (av.getSelectionGroup() != null)
+ && (av.getSelectionGroup().getSize() > 1);
+ AlignmentView seqStrings = av.getAlignmentView(selview);
+ if (!selview)
{
start = 0;
- end = av.alignment.getWidth();
- seqs = av.alignment.getSequencesArray();
+ end = av.getAlignment().getWidth();
+ seqs = av.getAlignment().getSequencesArray();
}
else
{
start = av.getSelectionGroup().getStartRes();
end = av.getSelectionGroup().getEndRes() + 1;
- seqs = av.getSelectionGroup().getSequencesInOrder(av.alignment);
+ seqs = av.getSelectionGroup().getSequencesInOrder(
+ av.getAlignment());
}
tree = new NJTree(seqs, seqStrings, type, pwtype, start, end);
public void newickOutput_actionPerformed()
{
- jalview.io.NewickFile fout = new jalview.io.NewickFile(tree
- .getTopNode());
+ jalview.io.NewickFile fout = new jalview.io.NewickFile(
+ tree.getTopNode());
String output = fout.print(false, true);
CutAndPasteTransfer cap = new CutAndPasteTransfer(false, null);
cap.setText(output);