JAL-1925 update source version in license
[jalview.git] / src / jalview / schemes / TCoffeeColourScheme.java
index 82ca10f..c9e1889 100644 (file)
@@ -1,6 +1,25 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b2)
+ * Copyright (C) 2015 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.schemes;
 
-import jalview.analysis.SequenceIdMatcher;
 import jalview.datamodel.AlignmentAnnotation;
 import jalview.datamodel.AlignmentI;
 import jalview.datamodel.AnnotatedCollectionI;
@@ -13,7 +32,6 @@ import java.awt.Color;
 import java.util.ArrayList;
 import java.util.IdentityHashMap;
 import java.util.Map;
-import java.util.TreeMap;
 
 /**
  * Defines the color score for T-Coffee MSA
@@ -27,8 +45,7 @@ import java.util.TreeMap;
 public class TCoffeeColourScheme extends ResidueColourScheme
 {
 
-  static final Color[] colors =
-  { new Color(102, 102, 255), // #6666FF
+  static final Color[] colors = { new Color(102, 102, 255), // #6666FF
       new Color(0, 255, 0), // #00FF00
       new Color(102, 255, 0), // #66FF00
       new Color(204, 255, 0), // #CCFF00
@@ -67,8 +84,10 @@ public class TCoffeeColourScheme extends ResidueColourScheme
     // Search alignment to get all tcoffee annotation and pick one set of
     // annotation to use to colour seqs.
     seqMap = new IdentityHashMap<SequenceI, Color[]>();
+    AnnotatedCollectionI alcontext = alignment instanceof AlignmentI ? alignment
+            : alignment.getContext();
     int w = 0;
-    for (AlignmentAnnotation al : alignment
+    for (AlignmentAnnotation al : alcontext
             .findAnnotation(TCoffeeScoreFile.TCOFFEE_SCORE))
     {
       if (al.sequenceRef != null && !al.belowAlignment)
@@ -111,4 +130,11 @@ public class TCoffeeColourScheme extends ResidueColourScheme
     }
     return cols[j];
   }
+
+  @Override
+  public ColourSchemeI applyTo(AnnotatedCollectionI sg,
+          Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
+  {
+    return new TCoffeeColourScheme(sg);
+  }
 }