JAL-1807 includes ?j2sdebug flag and DebugJS._(msg)
[jalviewjs.git] / bin / jalview / schemes / TCoffeeColourScheme.js
1 Clazz.declarePackage ("jalview.schemes");
2 Clazz.load (["jalview.schemes.ResidueColourScheme", "java.awt.Color"], "jalview.schemes.TCoffeeColourScheme", ["jalview.datamodel.AlignmentI", "java.util.ArrayList", "$.IdentityHashMap"], function () {
3 c$ = Clazz.decorateAsClass (function () {
4 this.seqMap = null;
5 Clazz.instantialize (this, arguments);
6 }, jalview.schemes, "TCoffeeColourScheme", jalview.schemes.ResidueColourScheme);
7 Clazz.makeConstructor (c$, 
8 function (alignment) {
9 Clazz.superConstructor (this, jalview.schemes.TCoffeeColourScheme, []);
10 this.alignmentChanged (alignment, null);
11 }, "jalview.datamodel.AnnotatedCollectionI");
12 Clazz.overrideMethod (c$, "alignmentChanged", 
13 function (alignment, hiddenReps) {
14 var annots =  new java.util.ArrayList ();
15 this.seqMap =  new java.util.IdentityHashMap ();
16 var alcontext = Clazz.instanceOf (alignment, jalview.datamodel.AlignmentI) ? alignment : alignment.getContext ();
17 var w = 0;
18 for (var al, $al = alcontext.findAnnotation ("TCoffeeScore").iterator (); $al.hasNext () && ((al = $al.next ()) || true);) {
19 if (al.sequenceRef != null && !al.belowAlignment) {
20 annots.add (al);
21 if (w < al.annotations.length) {
22 w = al.annotations.length;
23 }var scores =  new Array (al.annotations.length);
24 var i = 0;
25 for (var an, $an = 0, $$an = al.annotations; $an < $$an.length && ((an = $$an[$an]) || true); $an++) {
26 scores[i++] = (an != null) ? an.colour : java.awt.Color.white;
27 }
28 this.seqMap.put (al.sequenceRef, scores);
29 }}
30 }, "jalview.datamodel.AnnotatedCollectionI,java.util.Map");
31 Clazz.defineMethod (c$, "findColour", 
32 function (c, j, seq) {
33 var cols;
34 if (this.seqMap == null || (cols = this.seqMap.get (seq)) == null) {
35 return java.awt.Color.white;
36 }if (j < 0 || j >= cols.length) {
37 return java.awt.Color.white;
38 }return cols[j];
39 }, "~S,~N,jalview.datamodel.SequenceI");
40 Clazz.overrideMethod (c$, "applyTo", 
41 function (sg, hiddenRepSequences) {
42 return  new jalview.schemes.TCoffeeColourScheme (sg);
43 }, "jalview.datamodel.AnnotatedCollectionI,java.util.Map");
44 c$.$colors = c$.prototype.$colors =  Clazz.newArray (-1, [ new java.awt.Color (102, 102, 255),  new java.awt.Color (0, 255, 0),  new java.awt.Color (102, 255, 0),  new java.awt.Color (204, 255, 0),  new java.awt.Color (255, 255, 0),  new java.awt.Color (255, 204, 0),  new java.awt.Color (255, 153, 0),  new java.awt.Color (255, 102, 0),  new java.awt.Color (255, 51, 0),  new java.awt.Color (255, 34, 0)]);
45 });