X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fschemes%2FAnnotationColourGradient.java;h=89b8f0711ad3e764b202e2fa30274e2a0cfec663;hb=37de9310bec3501cbc6381e0c3dcb282fcaad812;hp=efad430126b12c20e749a4508b05bcd2b50276d6;hpb=f0fab8d696fa0cbeb7409b3269360e618b96f174;p=jalview.git diff --git a/src/jalview/schemes/AnnotationColourGradient.java b/src/jalview/schemes/AnnotationColourGradient.java index efad430..89b8f07 100755 --- a/src/jalview/schemes/AnnotationColourGradient.java +++ b/src/jalview/schemes/AnnotationColourGradient.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2) - * Copyright (C) 2014 The Jalview Authors + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * @@ -53,12 +53,14 @@ public class AnnotationColourGradient extends FollowerColourScheme private boolean predefinedColours = false; private boolean seqAssociated = false; + /** * false if the scheme was constructed without a minColour and maxColour used * to decide if existing colours should be taken from annotation elements when * they exist */ private boolean noGradient = false; + IdentityHashMap seqannot = null; @Override @@ -114,6 +116,7 @@ public class AnnotationColourGradient extends FollowerColourScheme bb = 0; noGradient = true; + checkLimits(); } /** @@ -140,10 +143,17 @@ public class AnnotationColourGradient extends FollowerColourScheme bb = maxColour.getBlue() - b1; noGradient = false; + checkLimits(); + } + + private void checkLimits() + { aamax = annotation.graphMax; aamin = annotation.graphMin; if (annotation.isRNA()) { + // reset colour palette + ColourSchemeProperty.resetRnaHelicesShading(); ColourSchemeProperty.initRnaHelicesShading(1 + (int) aamax); } } @@ -167,7 +177,7 @@ public class AnnotationColourGradient extends FollowerColourScheme // resolve the context containing all the annotation for the sequence AnnotatedCollectionI alcontext = alignment instanceof AlignmentI ? alignment : alignment.getContext(); - boolean f = true,rna=false; + boolean f = true, rna = false; for (AlignmentAnnotation alan : alcontext.findAnnotation(annotation .getCalcId())) { @@ -199,6 +209,7 @@ public class AnnotationColourGradient extends FollowerColourScheme } float aamin = 0f, aamax = 0f; + public String getAnnotation() { return annotation.label; @@ -258,8 +269,8 @@ public class AnnotationColourGradient extends FollowerColourScheme public Color findColour(char c, int j, SequenceI seq) { Color currentColour = Color.white; - AlignmentAnnotation annotation = (seqAssociated ? seqannot.get(seq) - : this.annotation); + AlignmentAnnotation annotation = (seqAssociated && seqannot != null ? seqannot + .get(seq) : this.annotation); if (annotation == null) { return currentColour; @@ -388,6 +399,7 @@ public class AnnotationColourGradient extends FollowerColourScheme return new Color(dr, dg, db); } + public boolean isPredefinedColours() { return predefinedColours;