Loads PDB files from jar file, new views can open PDB file
[jalview.git] / src / jalview / gui / Jalview2XML.java
index e6191de..8a4c669 100755 (executable)
@@ -335,19 +335,20 @@ public class Jalview2XML
                 pdb.setId(entry.getId());
                 pdb.setType(entry.getType());
 
+
                 if(entry.getFile()!=null)
                 {
+                  pdb.setFile(entry.getFile());
                   if(pdbfiles==null)
                     pdbfiles = new Vector();
 
-
                   if(!pdbfiles.contains(entry.getId()))
                   {
                     pdbfiles.addElement(entry.getId());
                     try
                     {
                       File file = new File(entry.getFile());
-                      if(file.exists())
+                      if(file.exists() && jout!=null)
                       {
                         byte[] data = new byte[ (int) file.length()];
                         jout.putNextEntry(new JarEntry(entry.getId()));
@@ -981,6 +982,7 @@ public class Jalview2XML
 
     String loadPDBFile(String file, String pdbId)
     {
+      System.out.println(file +" "+pdbId);
       try
       {
         JarInputStream jin = null;
@@ -1003,6 +1005,7 @@ public class Jalview2XML
 
         BufferedReader in = new BufferedReader(new InputStreamReader(jin));
         File outFile = File.createTempFile("jalview_pdb", ".txt");
+        System.out.println("CREATE "+outFile);
         outFile.deleteOnExit();
         PrintWriter out = new PrintWriter(new FileOutputStream(outFile));
         String data;
@@ -1410,8 +1413,7 @@ public class Jalview2XML
         }
         af.setBounds(view.getXpos(), view.getYpos(), view.getWidth(),
             view.getHeight());
-        af.viewport.setStartRes(view.getStartRes());
-        af.viewport.setStartSeq(view.getStartSeq());
+
         af.viewport.setShowAnnotation(view.getShowAnnotation());
         af.viewport.setAbovePIDThreshold(view.getPidSelected());
 
@@ -1437,6 +1439,8 @@ public class Jalview2XML
         af.viewport.textColour2 = new java.awt.Color(view.getTextCol2());
         af.viewport.thresholdTextColour = view.getTextColThreshold();
 
+        af.viewport.setStartRes(view.getStartRes());
+        af.viewport.setStartSeq(view.getStartSeq());
 
         ColourSchemeI cs = null;