JAL-629 Fix Exceptions when running with CLI not headless
[jalview.git] / src / mc_view / PDBChain.java
index d9e7ec9..6d02630 100755 (executable)
@@ -28,11 +28,12 @@ import java.util.Vector;
 import jalview.analysis.AlignSeq;
 import jalview.datamodel.AlignmentAnnotation;
 import jalview.datamodel.Annotation;
+import jalview.datamodel.ContactMatrixI;
 import jalview.datamodel.Mapping;
 import jalview.datamodel.Sequence;
 import jalview.datamodel.SequenceFeature;
 import jalview.datamodel.SequenceI;
-import jalview.datamodel.annotations.AnnotationRowBuilder.AnnotationRowBuilder;
+import jalview.datamodel.annotations.AnnotationRowBuilder;
 import jalview.schemes.ColourSchemeI;
 import jalview.schemes.ResidueProperties;
 import jalview.structure.StructureImportSettings;
@@ -81,7 +82,7 @@ public class PDBChain
   public String pdbid = "";
 
   AnnotationRowBuilder tfacTemplate = new AnnotationRowBuilder(
-          "TemperatureFactor");
+          "Temperature Factor");
 
   public PDBChain(String thePdbid, String theId,
           AnnotationRowBuilder template)
@@ -535,6 +536,7 @@ public class PDBChain
                       ? tfacTemplate.getDescription()
                       : tfacTemplate.getName()) + " for " + pdbid + id,
               annots, min, max, AlignmentAnnotation.LINE_GRAPH);
+      tfactorann.setTFType(tfacTemplate.getTFType());
       tfactorann.setCalcId(getClass().getName());
 
       tfactorann.setSequenceRef(sequence);
@@ -664,10 +666,16 @@ public class PDBChain
                   ana.getCalcId(), ana.label, ana.description);
           if (transfer == null || transfer.size() == 0)
           {
+            ContactMatrixI cm = shadow.getContactMatrixFor(ana);
             ana = new AlignmentAnnotation(ana);
+            // TODO map contact matrix under mapping
             ana.liftOver(sequence, shadowMap);
             ana.liftOver(dsq, sqmpping);
             dsq.addAlignmentAnnotation(ana);
+            if (cm != null)
+            {
+              dsq.addContactListFor(ana, cm);
+            }
           }
           else
           {
@@ -688,10 +696,14 @@ public class PDBChain
                             ana.description);
             if (transfer == null || transfer.size() == 0)
             {
+              ContactMatrixI cm = sequence.getContactMatrixFor(ana);
               ana = new AlignmentAnnotation(ana);
               ana.liftOver(dsq, sqmpping);
               dsq.addAlignmentAnnotation(ana);
-              // mapping.transfer(ana);
+              if (cm != null)
+              {
+                dsq.addContactListFor(ana, cm);
+              }
             }
             else
             {