X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FAppletJmol.java;h=14e67048a86bd6cd460c0b0fabda3bbd9b8e008b;hb=94e19634c669879ab63bbb82d5489c200cdb18f8;hp=3f3c3ddc30365beb9393db45d922468d475ff70a;hpb=bdb9169fe2d203d921a111dc683d7daf7b887c25;p=jalview.git diff --git a/src/jalview/appletgui/AppletJmol.java b/src/jalview/appletgui/AppletJmol.java index 3f3c3dd..14e6704 100644 --- a/src/jalview/appletgui/AppletJmol.java +++ b/src/jalview/appletgui/AppletJmol.java @@ -67,6 +67,7 @@ public class AppletJmol extends Frame TextField inputLine; TextArea history; SequenceI[] sequence; + String [] chains; StructureSelectionManager ssm; RenderPanel renderPanel; AlignmentPanel ap; @@ -78,11 +79,13 @@ public class AppletJmol extends Frame public AppletJmol(PDBEntry pdbentry, SequenceI[] seq, + String[] chains, AlignmentPanel ap, String protocol) { this.ap = ap; this.sequence = seq; + this.chains = chains; this.pdbentry = pdbentry; String alreadyMapped = StructureSelectionManager @@ -92,7 +95,7 @@ public class AppletJmol extends Frame if (alreadyMapped != null) { StructureSelectionManager.getStructureSelectionManager() - .setMapping(seq, pdbentry.getFile(), protocol); + .setMapping(seq, chains, pdbentry.getFile(), protocol); //PROMPT USER HERE TO ADD TO NEW OR EXISTING VIEW? //FOR NOW, LETS JUST OPEN A NEW WINDOW } @@ -166,9 +169,7 @@ public class AppletJmol extends Frame viewer.openFile(pdbentry.getFile()); } - this.setBounds(400, 400, 400, 400); - - this.setVisible(true); + jalview.bin.JalviewLite.addFrame(this, "Jmol", 400,400); } public void loadInline(String string) @@ -440,14 +441,15 @@ public class AppletJmol extends Frame resetLastRes.append(":" + chain); } - eval.append(";color gold;wireframe 100"); + eval.append(";wireframe 100");//;color gold Color col = new Color(viewer.getAtomArgb(atomIndex)); - resetLastRes.append(";color[" - + col.getRed() + "," - + col.getGreen() + "," - + col.getBlue() + "];wireframe 0"); + resetLastRes.append(";wireframe 0;"//color[" + // + col.getRed() + "," + // + col.getGreen() + "," + // + col.getBlue() + "]" + ); viewer.evalStringQuiet(eval.toString()); @@ -470,6 +472,7 @@ public class AppletJmol extends Frame } FeatureRenderer fr; + String lastCommand; public void colourBySequence(AlignmentPanel ap) { if(!colourBySequence) @@ -481,7 +484,7 @@ public class AppletJmol extends Frame if (mapping.length < 1) return; - SequenceRenderer sr = ap.seqPanel.seqCanvas.getSequenceRenderer(); + SequenceRenderer sr = new SequenceRenderer(ap.av); boolean showFeatures = false; if (ap.av.showSequenceFeatures) @@ -502,7 +505,8 @@ public class AppletJmol extends Frame { for (int m = 0; m < mapping.length; m++) { - if (mapping[m].getSequence() == sequence[s]) + if (mapping[m].getSequence() == sequence[s] + && ap.av.alignment.findIndex(sequence[s])>-1) { for (int r = 0; r < sequence[s].getLength(); r++) { @@ -547,7 +551,10 @@ public class AppletJmol extends Frame } } - viewer.evalStringQuiet(command.toString()); + if (lastCommand == null || !lastCommand.equals(command.toString())) + viewer.evalStringQuiet(command.toString()); + + lastCommand = command.toString(); } StringBuffer condenseCommand(String command, int pos) @@ -615,14 +622,14 @@ public class AppletJmol extends Frame MCview.PDBfile pdb; if (loadedInline) { - pdb = ssm.setMapping(sequence, + pdb = ssm.setMapping(sequence,chains, pdbentry.getFile(), AppletFormatAdapter.PASTE); pdbentry.setFile("INLINE"+pdb.id); } else { - pdb = ssm.setMapping(sequence, + pdb = ssm.setMapping(sequence,chains, pdbentry.getFile(), AppletFormatAdapter.URL); }