X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FAppJmol.java;h=4058cda92763bb28cce91bd5fcb1af73d4f98935;hb=4f30214e8098748469c6a4269ac2ed6c5750e4b0;hp=06102399f0aefe4acb27a7d67aa61aec91599b55;hpb=9dabc02511e3a334a5749a504f57f69d6c9017bd;p=jalview.git diff --git a/src/jalview/gui/AppJmol.java b/src/jalview/gui/AppJmol.java index 0610239..4058cda 100644 --- a/src/jalview/gui/AppJmol.java +++ b/src/jalview/gui/AppJmol.java @@ -41,6 +41,7 @@ import jalview.bin.Cache; import jalview.datamodel.AlignmentI; import jalview.datamodel.PDBEntry; import jalview.datamodel.SequenceI; +import jalview.gui.ImageExporter.ImageWriterI; import jalview.gui.StructureViewer.ViewerType; import jalview.structure.StructureCommand; import jalview.structures.models.AAStructureBindingModel; @@ -302,6 +303,8 @@ public class AppJmol extends StructureViewerBase } catch (Exception ex) { Cache.log.error("Couldn't open Jmol viewer!", ex); + ex.printStackTrace(); + return; } } else @@ -321,9 +324,12 @@ public class AppJmol extends StructureViewerBase new OOMWarning("When trying to add structures to the Jmol viewer!", oomerror); Cache.log.debug("File locations are " + filesString); + return; } catch (Exception ex) { Cache.log.error("Couldn't add files to Jmol viewer!", ex); + ex.printStackTrace(); + return; } } @@ -502,49 +508,30 @@ public class AppJmol extends StructureViewerBase return files; } + /** + * Outputs the Jmol viewer image as an image file, after prompting the user to + * choose a file and (for EPS) choice of Text or Lineart character rendering + * (unless a preference for this is set) + * + * @param type + */ @Override - public void eps_actionPerformed() - { - makePDBImage(ImageMaker.TYPE.EPS); - } - - @Override - public void png_actionPerformed() - { - makePDBImage(ImageMaker.TYPE.PNG); - } - - void makePDBImage(ImageMaker.TYPE type) + public void makePDBImage(ImageMaker.TYPE type) { int width = getWidth(); int height = getHeight(); - - ImageMaker im; - - if (type == ImageMaker.TYPE.PNG) + ImageWriterI writer = new ImageWriterI() { - im = new ImageMaker(this, ImageMaker.TYPE.PNG, - "Make PNG image from view", - width, height, null, null, null, 0, false); - } - else if (type == ImageMaker.TYPE.EPS) - { - im = new ImageMaker(this, ImageMaker.TYPE.EPS, - "Make EPS file from view", - width, height, null, this.getTitle(), null, 0, false); - } - else - { - im = new jalview.util.ImageMaker(this, - ImageMaker.TYPE.SVG, "Make SVG file from PCA", - width, height, null, this.getTitle(), null, 0, false); - } - - if (im.getGraphics() != null) - { - jmb.jmolViewer.renderScreenImage(im.getGraphics(), width, height); - im.writeImage(); - } + @Override + public void exportImage(Graphics g) throws Exception + { + jmb.jmolViewer.renderScreenImage(g, width, height); + } + }; + String view = MessageManager.getString("action.view").toLowerCase(); + ImageExporter exporter = new ImageExporter(writer, + getProgressIndicator(), type, getTitle()); + exporter.doExport(null, this, width, height, view); } @Override @@ -552,8 +539,8 @@ public class AppJmol extends StructureViewerBase { try { - BrowserLauncher - .openURL("http://jmol.sourceforge.net/docs/JmolUserGuide/"); + BrowserLauncher // BH 2018 + .openURL("http://wiki.jmol.org");//http://jmol.sourceforge.net/docs/JmolUserGuide/"); } catch (Exception ex) { System.err.println("Show Jmol help failed with: " + ex.getMessage());