X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fext%2Fjmol%2FJmolCommands.java;h=7c024ba309444fc7b35d5eec245c62ac66cd4c4f;hb=HEAD;hp=19d64f0864e1ec0fdf58470ab46c503bd3e62d51;hpb=2115060f8ce4b907d033a77ccd929420c61ec234;p=jalview.git diff --git a/src/jalview/ext/jmol/JmolCommands.java b/src/jalview/ext/jmol/JmolCommands.java index 19d64f0..7c024ba 100644 --- a/src/jalview/ext/jmol/JmolCommands.java +++ b/src/jalview/ext/jmol/JmolCommands.java @@ -241,7 +241,10 @@ public class JmolCommands extends StructureCommandsBase /* * https://chemapps.stolaf.edu/jmol/docs/#writemodel */ - return new StructureCommand("write STATE \"" + filepath + "\""); + StructureCommand sc = new StructureCommand( + "write STATE \"" + filepath + "\""); + sc.setWaitNeeded(true); + return sc; } @Override @@ -317,6 +320,39 @@ public class JmolCommands extends StructureCommandsBase "load FILES \"" + Platform.escapeBackslashes(file) + "\""); } + @Override + public StructureCommandI restoreSession(String filePath) + { + return new StructureCommand("restore STATE \"" + + Platform.escapeBackslashes(filePath) + "\""); + } + + @Override + public List showHetatms(List toShow) + { + // always clear the current hetero cpk display + + StringBuilder sb = new StringBuilder(); + sb.append("select hetero; cpk off;"); + + if (toShow != null && !toShow.isEmpty()) + { + // select what was requested + sb.append("select "); + boolean or = false; + for (String k : toShow) + { + sb.append(or ? " or " : " "); + sb.append(k); + or = true; + } + // and show as + sb.append("; cpk;"); + } + + return Arrays.asList(new StructureCommand(sb.toString())); + } + /** * Obsolete method, only referenced from * jalview.javascript.MouseOverStructureListener