import jalview.gui.TreePanel;
import jalview.io.vamsas.Datasetsequence;
import jalview.io.vamsas.DatastoreItem;
+import jalview.io.vamsas.DatastoreRegistry;
import jalview.io.vamsas.Rangetype;
import jalview.util.UrlLink;
}
// update dataset
Sequence sequence;
- DbRef dbref;
// set new dataset and alignment sequences based on alignment Nucleotide
// flag.
// this *will* break when alignment contains both nucleotide and amino
}
// dataset.setProvenance(getVamsasProvenance(jal.getDataset().getProvenance()));
// ////////////////////////////////////////////
- if (!av.getAlignment().isAligned())
+ if (alignmentWillBeSkipped(av))
{
// TODO: trees could be written - but for the moment we just
addToSkipList(av);
{
TreePanel tp = (TreePanel) frames[t];
- if (tp.getAlignment() == jal)
+ if (tp.getViewPort().getSequenceSetId().equals(av.getSequenceSetId()))
{
DatastoreItem vtree = new jalview.io.vamsas.Tree(this, tp,
jal, alignment);
return true;
}
+ /**
+ * very quick test to see if the viewport would be stored in the vamsas document.
+ * Reasons for not storing include the unaligned flag being false.
+ * @param av
+ * @return true if alignment associated with this view will be stored in document.
+ */
+ public boolean alignmentWillBeSkipped(AlignViewport av)
+ {
+ return (!av.getAlignment().isAligned());
+ }
+
private void addToSkipList(AlignViewport av)
{
if (skipList == null)
}
/**
* synchronize Jalview from the vamsas document
+ * @return number of new views from document
*/
- public void updateToJalview()
+ public int updateToJalview()
{
VAMSAS _roots[] = cdoc.getVamsasRoots();
jal = (av.hasHiddenRows()) ? av.getAlignment()
.getHiddenSequences().getFullAlignment() : av
.getAlignment();
- }
+ }
iSize = alignment.getAlignmentSequenceCount();
- boolean newal = (jal == null) ? true : false;
boolean refreshal = false;
Vector newasAnnots = new Vector();
char gapChar = ' '; // default for new alignments read in from the
}
}
}
+ return newAlignmentViews.size();
}
public AlignViewport findViewport(Alignment alignment)
{
this.skipList = skipList;
}
+ /**
+ * registry for datastoreItems
+ */
+ DatastoreRegistry dsReg = new DatastoreRegistry();
+ public DatastoreRegistry getDatastoreRegisty()
+ {
+ if (dsReg==null)
+ {
+ dsReg = new DatastoreRegistry();
+ }
+ return dsReg;
+ }
}