Catch null colour exception
[jalview.git] / src / MCview / PDBViewer.java
index 95d4b35..082ce6e 100755 (executable)
@@ -19,9 +19,13 @@ public class PDBViewer extends JInternalFrame implements Runnable
                    Sequence seq,\r
                    SeqCanvas seqcanvas)\r
   {\r
+\r
     pdb = entry;\r
     sequence = seq;\r
 \r
+    Thread worker = new Thread(this);\r
+    worker.start();\r
+\r
     try\r
     {\r
       jbInit();\r
@@ -42,10 +46,8 @@ public class PDBViewer extends JInternalFrame implements Runnable
       title.append( " Chain:" );\r
       title.append( pdb.getProperty().get("chains"));\r
     }\r
-    Desktop.addInternalFrame(this,title.toString(),400, 400);\r
 \r
-     Thread worker = new Thread(this);\r
-     worker.start();\r
+     Desktop.addInternalFrame(this,title.toString(),400, 400);\r
   }\r
 \r
   public void run()\r
@@ -53,8 +55,7 @@ public class PDBViewer extends JInternalFrame implements Runnable
     try\r
     {\r
       EBIFetchClient ebi = new EBIFetchClient();\r
-      String[] result = ebi.fetchData("pdb:" + pdb.getId(), null,\r
-                                      null);\r
+      String[] result = ebi.fetchData("pdb:" + pdb.getId(), "default","raw");\r
 \r
       PDBfile pdbfile = new PDBfile(result);\r
 \r
@@ -174,6 +175,15 @@ public class PDBViewer extends JInternalFrame implements Runnable
         molecule_actionPerformed(e);\r
       }\r
     });\r
+    allchains.setSelected(true);\r
+    allchains.setText("Show All Chains");\r
+    allchains.addItemListener(new ItemListener()\r
+    {\r
+      public void itemStateChanged(ItemEvent e)\r
+      {\r
+        allchains_itemStateChanged(e);\r
+      }\r
+    });\r
     jMenuBar1.add(fileMenu);\r
     jMenuBar1.add(coloursMenu);\r
     fileMenu.add(saveMenu);\r
@@ -189,6 +199,7 @@ public class PDBViewer extends JInternalFrame implements Runnable
     coloursMenu.add(depth);\r
     coloursMenu.add(zbuffer);\r
     coloursMenu.add(molecule);\r
+    coloursMenu.add(allchains);\r
     ButtonGroup bg = new ButtonGroup();\r
     bg.add(seqButton);\r
     bg.add(chain);\r
@@ -211,6 +222,7 @@ public class PDBViewer extends JInternalFrame implements Runnable
   JRadioButtonMenuItem chain = new JRadioButtonMenuItem();\r
   JRadioButtonMenuItem seqButton = new JRadioButtonMenuItem();\r
   JCheckBoxMenuItem molecule = new JCheckBoxMenuItem();\r
+  JCheckBoxMenuItem allchains = new JCheckBoxMenuItem();\r
 \r
   /**\r
    * DOCUMENT ME!\r
@@ -326,7 +338,12 @@ public class PDBViewer extends JInternalFrame implements Runnable
   public void mapping_actionPerformed(ActionEvent e)\r
   {\r
     jalview.gui.CutAndPasteTransfer cap = new jalview.gui.CutAndPasteTransfer();\r
-    Desktop.addInternalFrame(cap, "PDB - Sequence Mapping", 500, 600);\r
+    Desktop.addInternalFrame(cap, "PDB - Sequence Mapping", 550, 600);\r
     cap.setText(pdbcanvas.mappingDetails.toString());\r
   }\r
+\r
+  public void allchains_itemStateChanged(ItemEvent e)\r
+  {\r
+    pdbcanvas.setAllchainsVisible(allchains.getState());\r
+  }\r
 }\r