+
+ @Override
+ protected JmolAppConsoleInterface createJmolConsole(
+ Container consolePanel, String buttonsToShow)
+ {
+ jmolViewer.setJmolCallbackListener(this);
+ // BH comment: can't do this yet [for JS only, or generally?]
+ return Platform.isJS() || Jalview.isHeadlessMode() ? null
+ : new AppConsole(jmolViewer, consolePanel, buttonsToShow);
+ }
+
+ @Override
+ protected void releaseUIResources()
+ {
+ setViewer(null);
+ closeConsole();
+ }
+
+ @Override
+ public void releaseReferences(Object svl)
+ {
+ if (svl instanceof SeqPanel)
+ {
+ getViewer().removeAlignmentPanel(((SeqPanel) svl).ap);
+ }
+ }
+
+ @Override
+ public Map<String, Object> getJSpecViewProperty(String arg0)
+ {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @SuppressWarnings("unused")
+ public void cacheFiles(List<File> files)
+ {
+ if (files == null)
+ {
+ return;
+ }
+ for (File f : files)
+ {
+ Platform.cacheFileData(f);
+ }
+ }
+
+ /**
+ * Retrieves and saves as file any modelled PDB entries for which we do not
+ * already have a file saved. Returns a list of absolute paths to structure
+ * files which were either retrieved, or already stored but not modelled in
+ * the structure viewer (i.e. files to add to the viewer display).
+ *
+ * Currently only used by Jmol - similar but different code used for Chimera/X
+ * and Pymol so still need to refactor
+ *
+ * @param structureViewer
+ * UI proxy for the structure viewer
+ * @return list of absolute paths to structures retrieved that need to be
+ * added to the display
+ */
+ public List<String> fetchPdbFiles(StructureViewerBase structureViewer)