X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FJalview2XML.java;h=8497df7361a1323b223abc686fd7886b834b68b6;hb=4e1cb9b8b058d9b633af223b1cdb7b220d5d2ccd;hp=03a9ecc4fe81a849357f93c4d9644cdaf8023882;hpb=64b04d099703227728d30b7ebaeb60c5ed93ed6e;p=jalview.git diff --git a/src/jalview/gui/Jalview2XML.java b/src/jalview/gui/Jalview2XML.java index 03a9ecc..8497df7 100755 --- a/src/jalview/gui/Jalview2XML.java +++ b/src/jalview/gui/Jalview2XML.java @@ -574,6 +574,7 @@ public class Jalview2XML AppJmol jmol; // This must have been loaded, is it still visible? JInternalFrame[] frames = Desktop.desktop.getAllFrames(); + String matchedFile=null; for (int f = frames.length - 1; f > -1; f--) { if (frames[f] instanceof AppJmol) @@ -581,9 +582,9 @@ public class Jalview2XML jmol = (AppJmol) frames[f]; if (!jmol.pdbentry.getId().equals(entry.getId()) && !(entry.getId().length()>4 - && entry.getId().startsWith(jmol.pdbentry.getId()))) + && entry.getId().toLowerCase().startsWith(jmol.pdbentry.getId().toLowerCase()))) continue; - + matchedFile = jmol.pdbentry.getFile(); // record the file so we can get at it if the ID match is ambiguous (e.g. 1QIP==1qipA) StructureState state = new StructureState(); state.setVisible(true); state.setXpos(jmol.getX()); @@ -606,9 +607,14 @@ public class Jalview2XML } } - if (entry.getFile() != null) + if (matchedFile!=null || entry.getFile() != null ) { - pdb.setFile(entry.getFile()); + if (entry.getFile()!=null) + { + // use entry's file + matchedFile = entry.getFile(); + } + pdb.setFile(matchedFile); // entry.getFile()); if (pdbfiles == null) { pdbfiles = new Vector(); @@ -619,7 +625,7 @@ public class Jalview2XML pdbfiles.addElement(entry.getId()); try { - File file = new File(entry.getFile()); + File file = new File(matchedFile); if (file.exists() && jout != null) { byte[] data = new byte[(int) file.length()]; @@ -2243,12 +2249,13 @@ public class Jalview2XML .getHeight(), tree.getXpos(), tree.getYpos()); if (tree.getId() != null) { - + // perhaps bind the tree id to something ? } } else { // update local tree attributes ? + // TODO: should check if tp has been manipulated by user - if so its settings shouldn't be modified tp.setTitle(tree.getTitle()); tp.setBounds(new Rectangle(tree.getXpos(), tree.getYpos(), tree .getWidth(), tree.getHeight())); @@ -2365,7 +2372,8 @@ public class Jalview2XML } } } - Desktop.desktop.getComponentAt(x, y); + // Probably don't need to do this anymore... + // Desktop.desktop.getComponentAt(x, y); // TODO: NOW: check that this recovers the PDB file correctly. String pdbFile = loadPDBFile(jprovider, ids[p].getId());