Merge branch 'develop' into features/JAL-2446NCList
[jalview.git] / src / jalview / ext / rbvi / chimera / ChimeraCommands.java
index 1d8b944..dad8511 100644 (file)
@@ -25,7 +25,7 @@ import jalview.api.AlignmentViewPanel;
 import jalview.api.FeatureRenderer;
 import jalview.api.SequenceRenderer;
 import jalview.datamodel.AlignmentI;
-import jalview.datamodel.ColumnSelection;
+import jalview.datamodel.HiddenColumns;
 import jalview.datamodel.SequenceFeature;
 import jalview.datamodel.SequenceI;
 import jalview.renderer.seqfeatures.FeatureColourFinder;
@@ -194,7 +194,7 @@ public class ChimeraCommands
     FeatureRenderer fr = viewPanel.getFeatureRenderer();
     FeatureColourFinder finder = new FeatureColourFinder(fr);
     AlignViewportI viewport = viewPanel.getAlignViewport();
-    ColumnSelection cs = viewport.getColumnSelection();
+    HiddenColumns cs = viewport.getAlignment().getHiddenColumns();
     AlignmentI al = viewport.getAlignment();
     Map<Object, AtomSpecModel> colourMap = new LinkedHashMap<Object, AtomSpecModel>();
     Color lastColour = null;
@@ -240,7 +240,6 @@ public class ChimeraCommands
                */
               if (!cs.isVisible(r))
               {
-                // colour = ColorUtils.darkerThan(colour);
                 colour = Color.GRAY;
               }
 
@@ -270,8 +269,8 @@ public class ChimeraCommands
             // final colour range
             if (lastColour != null)
             {
-              addColourRange(colourMap, lastColour, pdbfnum, startPos, lastPos,
-                      lastChain);
+              addColourRange(colourMap, lastColour, pdbfnum, startPos,
+                      lastPos, lastChain);
             }
             // break;
           }
@@ -319,8 +318,8 @@ public class ChimeraCommands
    * @return
    */
   public static StructureMappingcommandSet getSetAttributeCommandsForFeatures(
-          StructureSelectionManager ssm, String[] files,
-          SequenceI[][] seqs, AlignmentViewPanel viewPanel)
+          StructureSelectionManager ssm, String[] files, SequenceI[][] seqs,
+          AlignmentViewPanel viewPanel)
   {
     Map<String, Map<Object, AtomSpecModel>> featureMap = buildFeaturesMap(
             ssm, files, seqs, viewPanel);
@@ -347,8 +346,8 @@ public class ChimeraCommands
    * @return
    */
   protected static Map<String, Map<Object, AtomSpecModel>> buildFeaturesMap(
-          StructureSelectionManager ssm, String[] files,
-          SequenceI[][] seqs, AlignmentViewPanel viewPanel)
+          StructureSelectionManager ssm, String[] files, SequenceI[][] seqs,
+          AlignmentViewPanel viewPanel)
   {
     Map<String, Map<Object, AtomSpecModel>> theMap = new LinkedHashMap<String, Map<Object, AtomSpecModel>>();
 
@@ -412,12 +411,8 @@ public class ChimeraCommands
           StructureMapping mapping, SequenceI seq,
           Map<String, Map<Object, AtomSpecModel>> theMap, int modelNumber)
   {
-    SequenceFeature[] sfs = seq.getSequenceFeatures();
-    if (sfs == null)
-    {
-      return;
-    }
-
+    List<SequenceFeature> sfs = seq.getFeatures().getPositionalFeatures(
+            visibleFeatures.toArray(new String[visibleFeatures.size()]));
     for (SequenceFeature sf : sfs)
     {
       String type = sf.getType();
@@ -428,7 +423,7 @@ public class ChimeraCommands
        */
       boolean isFromViewer = JalviewChimeraBinding.CHIMERA_FEATURE_GROUP
               .equals(sf.getFeatureGroup());
-      if (isFromViewer || !visibleFeatures.contains(type))
+      if (isFromViewer)
       {
         continue;
       }
@@ -455,8 +450,8 @@ public class ChimeraCommands
         }
         for (int[] range : mappedRanges)
         {
-          addColourRange(featureValues, value, modelNumber, range[0], range[1],
-                  mapping.getChain());
+          addColourRange(featureValues, value, modelNumber, range[0],
+                  range[1], mapping.getChain());
         }
       }
     }
@@ -518,9 +513,11 @@ public class ChimeraCommands
    * to an underscore.
    * 
    * @param featureType
-   * @return <pre>
-   * @see https://www.cgl.ucsf.edu/chimera/current/docs/UsersGuide/midas/setattr.html
-   * </pre>
+   * @return
+   * 
+   *         <pre>
+   * &#64;see https://www.cgl.ucsf.edu/chimera/current/docs/UsersGuide/midas/setattr.html
+   *         </pre>
    */
   protected static String makeAttributeName(String featureType)
   {