JAL-1641 Further refactoring of JSON export option, introduction of Viewport to the...
[jalview.git] / src / jalview / io / HtmlSvgOutput.java
index 64dfc1c..db34c2f 100644 (file)
@@ -1,12 +1,9 @@
 package jalview.io;
 
-import jalview.datamodel.Alignment;
-import jalview.datamodel.AlignmentAnnotation;
 import jalview.datamodel.SequenceI;
 import jalview.gui.AlignViewport;
 import jalview.gui.AlignmentPanel;
 import jalview.gui.AnnotationPanel;
-import jalview.gui.Desktop;
 import jalview.gui.FeatureRenderer;
 import jalview.gui.HTMLOptions;
 import jalview.math.AlignmentDimension;
@@ -37,6 +34,7 @@ public class HtmlSvgOutput
 
       this.av = ap.av;
       this.ap = ap;
+    av.setFeatureRenderer(new FeatureRenderer(ap));
       this.annotationPanel = ap.getAnnotationPanel();
     generateHtmlSvgOutput(file);
   }
@@ -103,7 +101,7 @@ public class HtmlSvgOutput
 
       String titleSvgData = g1.getSVGDocument();
       String alignSvgData = g2.getSVGDocument();
-      String jsonData = getJSONData();
+      String jsonData = JSONFile.getJSONData(av);
       String htmlData = getHtml(titleSvgData, alignSvgData, jsonData);
 
       out.write(htmlData.getBytes());
@@ -261,39 +259,6 @@ public class HtmlSvgOutput
     return Printable.PAGE_EXISTS;
   }
   
-  private String getJSONData()
-  {
-    JSONFile jsonFile = new JSONFile();
-    Alignment al = new Alignment(av.getAlignment().getSequencesArray());
-    jsonFile.seqGroups = av.getAlignment().getGroups();
-    // jsonFile.addAnnotations(al);
-    jsonFile.setDisplayedFeatures(av.getFeaturesDisplayed());
-    Desktop.setCurrentAlignFrame(av.getAlignPanel().alignFrame);
-    for (SequenceI seq : av.getAlignment().getSequences())
-    {
-      jsonFile.seqs.add(seq);
-    }
-
-    // Add non auto calculated annotation to AlignFile
-    for (AlignmentAnnotation annot : av.getAlignment()
-            .getAlignmentAnnotation())
-    {
-      if (annot != null && !annot.autoCalculated)
-      {
-        if (annot.label.equals("PDB.CATempFactor"))
-        {
-          continue;
-        }
-        jsonFile.annotations.add(annot);
-      }
-    }
-
-    // jsonFile.setGlobalColorScheme(av.getGlobalColourScheme());
-    String jsonString = jsonFile.print();
-    System.out.println(">>>>>>>>>>> JSONFile : " + jsonString);
-    return jsonString;
-  }
-
   private String getHtml(String titleSvg, String alignmentSvg,
           String jsonData)
   {