// ////////////////////////////////////////////
// Save the Alignments
- Alignment alignment = (Alignment) getjv2vObj(av); // this is so we can get
+ Alignment alignment = (Alignment) getjv2vObj(av.getSequenceSetId()); // this is so we can get
// the alignviewport
// back
if (alignment == null)
{
alignment = new Alignment();
- bindjvvobj(av, alignment);
+ bindjvvobj(av.getSequenceSetId(), alignment);
if (alignment.getProvenance() == null)
{
alignment.setProvenance(new Provenance());
{
uk.ac.vamsas.objects.core.Alignment alignment = dataset
.getAlignment(al);
- AlignViewport av = (AlignViewport) getvObj2jv(alignment);
+ AlignViewport av=findViewport(alignment);
+
jalview.datamodel.AlignmentI jal = null;
if (av != null)
{
jalview.gui.Desktop.addInternalFrame(alignFrame, title
,
AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT);
- bindjvvobj(av, alignment);
+ bindjvvobj(av.getSequenceSetId(), alignment);
}
else
{
.ShowNewickTree(vstree.getNewickTree(), vstree
.getTitle(), vstree.getInputData(), 600,
500, t * 20 + 50, t * 20 + 50);
+
}
if (tp!=null)
+ {
bindjvvobj(tp, alignment.getTree(t));
+ try
+ {
+ vstree.UpdateSequenceTreeMap(tp);
+ } catch (RuntimeException e)
+ {
+ Cache.log.warn("update of labels failed.",e);
+ }
+ }
else
{
Cache.log.warn("Cannot create tree for tree "+t+" in document ("+alignment.getTree(t).getVorbaId());
}
}
+ public AlignViewport findViewport(Alignment alignment)
+ {
+ AlignViewport av=null;
+ AlignViewport[] avs = findViewportForSequenceSetId((String)getvObj2jv(alignment));
+ if (avs!=null)
+ {
+ av = avs[0];
+ }
+ return av;
+ }
+
+ private AlignViewport[] findViewportForSequenceSetId(String sequenceSetId)
+ {
+ Vector viewp = new Vector();
+ if (Desktop.desktop != null)
+ {
+ javax.swing.JInternalFrame[] frames = Desktop.instance.getAllFrames();
+
+ for (int t = 0; t < frames.length; t++)
+ {
+ if (frames[t] instanceof AlignFrame)
+ {
+ if (((AlignFrame) frames[t]).getViewport().getSequenceSetId().equals(sequenceSetId))
+ {
+ viewp.addElement(((AlignFrame) frames[t]).getViewport());
+ }
+ }
+ }
+ if (viewp.size()>0)
+ {
+ AlignViewport[] vp = new AlignViewport[viewp.size()];
+ viewp.copyInto(vp);
+ return vp;
+ }
+ }
+ return null;
+ }
+
// bitfields - should be a template in j1.5
private static int HASSECSTR = 0;
{
Cache.log
.warn("NO Vamsas Binding for local sequence! NOT CREATING MAPPING FOR "
- + mfrom.getName()
+ + dmps[smp].getDisplayId(true)
+ " to "
+ mps[smp].getTo().getName());
}