);
}
}
-
+ if (view.getCalcIdParam()!=null)
+ {
+ for (CalcIdParam calcIdParam:view.getCalcIdParam())
+ {
+ if (recoverCalcIdParam(calcIdParam, af.viewport)) {
+ } else {
+ warn("Couldn't recover parameters for "+calcIdParam.getCalcId());
+ }
+ }
+ }
af.setMenusFromViewport(af.viewport);
// TODO: we don't need to do this if the viewport is aready visible.
Desktop.addInternalFrame(af, view.getTitle(), view.getWidth(),
}
for (JvAnnotRow auan : autoAlan)
{
- visan.put(auan.template.label, auan);
+ visan.put(auan.template.label+(auan.template.getCalcId()==null ? "" : "\t"+auan.template.getCalcId()), auan);
}
int hSize = al.getAlignmentAnnotation().length;
ArrayList<JvAnnotRow> reorder = new ArrayList<JvAnnotRow>();
+ // work through any autoCalculated annotation already on the view
+ // removing it if it should be placed in a different location on the
+ // annotation panel.
for (int h = 0; h < hSize; h++)
{
jalview.datamodel.AlignmentAnnotation jalan = al
if (jalan.autoCalculated)
{
JvAnnotRow valan = visan.get(jalan.label);
+ if (jalan.getCalcId()!=null)
+ {
+ valan = visan.get(jalan.label+ "\t"+jalan.getCalcId());
+ }
+
if (valan != null)
{
// delete the auto calculated row from the alignment
- al.deleteAnnotation(al.getAlignmentAnnotation()[h], false);
+ al.deleteAnnotation(jalan, false);
hSize--;
h--;
if (valan != nullAnnot)