X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FAlignmentAnnotation.java;h=40d2b7ee5056cebc8f8f5d12ffc2962c80ec988f;hb=30bc1314d4206cafea412dcd9decdea7e318481f;hp=acb02b18135fc3594daa8f6b96f039b15c6dbd05;hpb=ed3ef4a5d351592f978b6d7e793e70de6ad247ca;p=jalview.git diff --git a/src/jalview/datamodel/AlignmentAnnotation.java b/src/jalview/datamodel/AlignmentAnnotation.java index acb02b1..40d2b7e 100755 --- a/src/jalview/datamodel/AlignmentAnnotation.java +++ b/src/jalview/datamodel/AlignmentAnnotation.java @@ -57,7 +57,7 @@ public class AlignmentAnnotation /** * Score associated with label and description. */ - public float score= Float.NaN; + public double score= Double.NaN; /** * flag indicating if annotation has a score. */ @@ -88,7 +88,7 @@ public class AlignmentAnnotation public int graphHeight = 40; - public boolean padGaps = true; + public boolean padGaps = false; public static final int NO_GRAPH = 0; @@ -118,10 +118,9 @@ public class AlignmentAnnotation /** * Creates a new AlignmentAnnotation object. * - * @param label DOCUMENT ME! - * @param description DOCUMENT ME! - * @param annotations DOCUMENT ME!about:blank -Loading... + * @param label short label shown under sequence labels + * @param description text displayed on mouseover + * @param annotations set of positional annotation elements */ public AlignmentAnnotation(String label, String description, Annotation[] annotations) @@ -138,11 +137,11 @@ Loading... void areLabelsSecondaryStructure() { boolean nonSSLabel = false; + char firstChar=0; for (int i = 0; i < annotations.length; i++) { if (annotations[i] == null) { - padGaps = false; continue; } if (annotations[i].secondaryStructure == 'H' || @@ -152,29 +151,35 @@ Loading... } if(annotations[i].displayCharacter==null) + { continue; - - - if (annotations[i].displayCharacter.length() == 1 - && !annotations[i].displayCharacter.equals("H") - && !annotations[i].displayCharacter.equals("E") - && !annotations[i].displayCharacter.equals("-") - && !annotations[i].displayCharacter.equals(".")) + } + if (annotations[i].displayCharacter.length() == 1) + { + firstChar = annotations[i].displayCharacter.charAt(0); + // check to see if it looks like a sequence or is secondary structure labelling. + if ( + // Uncomment to only catch case where displayCharacter==secondary Structure + // to correctly redisplay SS annotation imported from Stockholm, exported to JalviewXML and read back in again. + // && annotations[i].displayCharacter.charAt(0)==annotations[i].secondaryStructure + firstChar!='H' + && firstChar!='E' + && firstChar!='-' + && firstChar!='-' && firstChar 0) - { - hasText = true; - } - else - padGaps = false; + if (annotations[i].displayCharacter.length() > 0) + { + hasText = true; } + } if (nonSSLabel) { @@ -360,11 +365,22 @@ Loading... public void restrict(int startRes, int endRes) { if (annotations==null) + { + // non-positional + return; + } + if (startRes<0) + startRes=0; + if (startRes>=annotations.length) + startRes = annotations.length-1; + if (endRes>=annotations.length) + endRes = annotations.length-1; + if (annotations==null) return; Annotation[] temp = new Annotation[endRes-startRes+1]; if (startRes