JAL-1807 - Bob's last(?) before leaving Dundee -- adds fast file loading
[jalviewjs.git] / site / j2s / 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.overrideMethod (c$, "findColourSeq", 
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 });