X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fdatamodel%2FAlignmentAnnotation.java;h=87c113fa5ad346e2c13b2f68b59a1fd7d2d02807;hb=cc190cfe952a4d8ef8c38247ee35b1a4675da572;hp=3ad05ea552204370d36b4e35e6d3c4607d744e2c;hpb=6951479b7dc56bd022ce2c370b7f88b5571004fd;p=jalview.git diff --git a/src/jalview/datamodel/AlignmentAnnotation.java b/src/jalview/datamodel/AlignmentAnnotation.java index 3ad05ea..87c113f 100755 --- a/src/jalview/datamodel/AlignmentAnnotation.java +++ b/src/jalview/datamodel/AlignmentAnnotation.java @@ -57,12 +57,12 @@ public class AlignmentAnnotation /** * Score associated with label and description. */ - public float score; + public double score= Double.NaN; /** * flag indicating if annotation has a score. */ public boolean hasScore=false; - + public GraphLine threshold; // Graphical hints and tips @@ -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; @@ -96,6 +96,8 @@ public class AlignmentAnnotation public static final int LINE_GRAPH = 2; + public boolean belowAlignment = true; + public static int getGraphValueFromString(String string) { @@ -118,7 +120,8 @@ public class AlignmentAnnotation * * @param label DOCUMENT ME! * @param description DOCUMENT ME! - * @param annotations DOCUMENT ME! + * @param annotations DOCUMENT ME!about:blank +Loading... */ public AlignmentAnnotation(String label, String description, Annotation[] annotations) @@ -139,7 +142,6 @@ public class AlignmentAnnotation { if (annotations[i] == null) { - padGaps = false; continue; } if (annotations[i].secondaryStructure == 'H' || @@ -149,8 +151,9 @@ public class AlignmentAnnotation } if(annotations[i].displayCharacter==null) + { continue; - + } if (annotations[i].displayCharacter.length() == 1 && !annotations[i].displayCharacter.equals("H") @@ -169,8 +172,6 @@ public class AlignmentAnnotation { hasText = true; } - else - padGaps = false; } if (nonSSLabel) @@ -223,11 +224,13 @@ public class AlignmentAnnotation * if appropriate. */ private void validateRangeAndDisplay() { + if (annotations==null) { visible=false; // try to prevent renderer from displaying. return; // this is a non-annotation row annotation - ie a sequence score. } + int graphType = graph; float min = graphMin; float max = graphMax; @@ -301,6 +304,11 @@ public class AlignmentAnnotation this.height = annotation.height; this.label = annotation.label; this.padGaps = annotation.padGaps; + this.visible = annotation.visible; + if (this.hasScore = annotation.hasScore) + { + this.score = annotation.score; + } if (threshold!=null) { threshold = new GraphLine(annotation.threshold); } @@ -349,10 +357,18 @@ public class AlignmentAnnotation */ public void restrict(int startRes, int endRes) { + 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