X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FAppJmol.java;h=217d2b1c5f89b5b641e38e5c31120d100b1587f1;hb=9d2408483e451285fd555c3cd6e0273977acbaa7;hp=7cf10e7d0bba59d73aa46eb98238b1303767d22c;hpb=7720585dc8cc56cdad2486b330ed37ddd0133531;p=jalview.git diff --git a/src/jalview/gui/AppJmol.java b/src/jalview/gui/AppJmol.java index 7cf10e7..217d2b1 100644 --- a/src/jalview/gui/AppJmol.java +++ b/src/jalview/gui/AppJmol.java @@ -20,13 +20,14 @@ */ package jalview.gui; +import java.util.Locale; + import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.Graphics; import java.io.File; -import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -38,11 +39,11 @@ import javax.swing.event.InternalFrameEvent; import jalview.api.AlignmentViewPanel; import jalview.bin.Cache; -import jalview.datamodel.AlignmentI; import jalview.datamodel.PDBEntry; import jalview.datamodel.SequenceI; import jalview.datamodel.StructureViewerModel; import jalview.datamodel.StructureViewerModel.StructureData; +import jalview.fts.service.alphafold.AlphafoldRestClient; import jalview.gui.ImageExporter.ImageWriterI; import jalview.gui.StructureViewer.ViewerType; import jalview.structure.StructureCommand; @@ -51,7 +52,6 @@ import jalview.util.BrowserLauncher; import jalview.util.ImageMaker; import jalview.util.MessageManager; import jalview.util.Platform; -import jalview.ws.dbsources.Pdb; public class AppJmol extends StructureViewerBase { @@ -271,7 +271,7 @@ public class AppJmol extends StructureViewerBase _started = true; try { - List files = fetchPdbFiles(); + List files = jmb.fetchPdbFiles(this); if (files.size() > 0) { showFilesInViewer(files); @@ -417,110 +417,6 @@ public class AppJmol extends StructureViewerBase } /** - * 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). - * - * @return - */ - List fetchPdbFiles() - { - // todo - record which pdbids were successfully imported. - StringBuilder errormsgs = new StringBuilder(); - - List files = new ArrayList<>(); - String pdbid = ""; - try - { - String[] filesInViewer = jmb.getStructureFiles(); - // TODO: replace with reference fetching/transfer code (validate PDBentry - // as a DBRef?) - Pdb pdbclient = new Pdb(); - for (int pi = 0; pi < jmb.getPdbCount(); pi++) - { - String file = jmb.getPdbEntry(pi).getFile(); - if (file == null) - { - // todo: extract block as method and pull up (also ChimeraViewFrame) - // retrieve the pdb and store it locally - AlignmentI pdbseq = null; - pdbid = jmb.getPdbEntry(pi).getId(); - long hdl = pdbid.hashCode() - System.currentTimeMillis(); - setProgressMessage(MessageManager - .formatMessage("status.fetching_pdb", new String[] - { pdbid }), hdl); - try - { - pdbseq = pdbclient.getSequenceRecords(pdbid); - } catch (OutOfMemoryError oomerror) - { - new OOMWarning("Retrieving PDB id " + pdbid, oomerror); - } catch (Exception ex) - { - ex.printStackTrace(); - errormsgs.append("'").append(pdbid).append("'"); - } finally - { - setProgressMessage( - MessageManager.getString("label.state_completed"), hdl); - } - if (pdbseq != null) - { - // just transfer the file name from the first sequence's first - // PDBEntry - file = new File(pdbseq.getSequenceAt(0).getAllPDBEntries() - .elementAt(0).getFile()).getAbsolutePath(); - jmb.getPdbEntry(pi).setFile(file); - files.add(file); - } - else - { - errormsgs.append("'").append(pdbid).append("' "); - } - } - else - { - if (filesInViewer != null && filesInViewer.length > 0) - { - addingStructures = true; // already files loaded. - for (int c = 0; c < filesInViewer.length; c++) - { - if (Platform.pathEquals(filesInViewer[c], file)) - { - file = null; - break; - } - } - } - if (file != null) - { - files.add(file); - } - } - } - } catch (OutOfMemoryError oomerror) - { - new OOMWarning("Retrieving PDB files: " + pdbid, oomerror); - } catch (Exception ex) - { - ex.printStackTrace(); - errormsgs.append("When retrieving pdbfiles : current was: '") - .append(pdbid).append("'"); - } - if (errormsgs.length() > 0) - { - JvOptionPane.showInternalMessageDialog(Desktop.desktop, - MessageManager.formatMessage( - "label.pdb_entries_couldnt_be_retrieved", new String[] - { errormsgs.toString() }), - MessageManager.getString("label.couldnt_load_file"), - JvOptionPane.ERROR_MESSAGE); - } - 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) @@ -540,7 +436,7 @@ public class AppJmol extends StructureViewerBase jmb.jmolViewer.renderScreenImage(g, width, height); } }; - String view = MessageManager.getString("action.view").toLowerCase(); + String view = MessageManager.getString("action.view").toLowerCase(Locale.ROOT); ImageExporter exporter = new ImageExporter(writer, getProgressIndicator(), type, getTitle()); exporter.doExport(null, this, width, height, view);