X-Git-Url: http://source.jalview.org/gitweb/?p=jalview.git;a=blobdiff_plain;f=src%2Fext%2Fedu%2Fucsf%2Frbvi%2Fstrucviz2%2FStructureManager.java;h=f7dba792be3cb627bd303cba91e9d7ea431dddc0;hp=9078d1223d8c6a35e8ae50b88de4c3361d1fa417;hb=14e1f9dbb9c7a4535734fd3be7ddeee2a5ae72dc;hpb=09796fae6f999e5fb68a8d2fed46aa4447235b12 diff --git a/src/ext/edu/ucsf/rbvi/strucviz2/StructureManager.java b/src/ext/edu/ucsf/rbvi/strucviz2/StructureManager.java index 9078d12..f7dba79 100644 --- a/src/ext/edu/ucsf/rbvi/strucviz2/StructureManager.java +++ b/src/ext/edu/ucsf/rbvi/strucviz2/StructureManager.java @@ -39,6 +39,7 @@ import java.util.Arrays; import java.util.Collection; import java.util.HashMap; import java.util.List; +import java.util.Locale; import java.util.Map; import java.util.Properties; import java.util.Set; @@ -74,8 +75,8 @@ public class StructureManager "1.11.2", "1.11.1", "1.11" }; // Missing 1.1 as this has known bug see JAL-2422 - private static String[] CHIMERAX_VERSIONS = new String[] { "1.2.5", "1.0", - "0.93", "0.92", "0.91", "0.9" }; + private static String[] CHIMERAX_VERSIONS = new String[] { "1.3", "1.2.5", + "1.0", "0.93", "0.92", "0.91", "0.9" }; static final String[] defaultStructureKeys = { "Structure", "pdb", "pdbFileName", "PDB ID", "structure", "biopax.xref.PDB", "pdb_ids", @@ -561,8 +562,8 @@ public class StructureManager /** * This is called by the selectionListener to let us know that the user has - * changed their selection in Chimera. We need to go back to Chimera to find out - * what is currently selected and update our list. + * changed their selection in Chimera. We need to go back to Chimera to find + * out what is currently selected and update our list. */ public void chimeraSelectionChanged() { @@ -677,11 +678,11 @@ public class StructureManager } /** - * Add a selection to the selection list. This is called primarily by the Model - * Navigator Dialog to keep the selections in sync + * Add a selection to the selection list. This is called primarily by the + * Model Navigator Dialog to keep the selections in sync * * @param selectionToAdd - * the selection to add to our list + * the selection to add to our list */ public void addChimSelection(ChimeraStructuralObject selectionToAdd) { @@ -698,7 +699,7 @@ public class StructureManager * Model Navigator Dialog to keep the selections in sync * * @param selectionToRemove - * the selection to remove from our list + * the selection to remove from our list */ public void removeChimSelection(ChimeraStructuralObject selectionToRemove) { @@ -977,33 +978,38 @@ public class StructureManager // Add default installation paths if (os.startsWith("Linux")) { - // ChimeraX .deb and .rpm packages put symbolic link from /usr/bin/chimerax - pathList.add(String.format("/usr/bin/%s", chimeraExe.toLowerCase())); + // ChimeraX .deb and .rpm packages put symbolic link from + // /usr/bin/chimerax + pathList.add(String.format("/usr/bin/%s", + chimeraExe.toLowerCase(Locale.ROOT))); pathList.add(String.format("/usr/bin/%s", chimeraExe)); - pathList.add( - String.format("/usr/local/bin/%s", chimeraExe.toLowerCase())); + pathList.add(String.format("/usr/local/bin/%s", + chimeraExe.toLowerCase(Locale.ROOT))); pathList.add(String.format("/usr/local/bin/%s", chimeraExe)); // these paths also used by .deb and .rpm pathList.add(String.format("/usr/lib/ucsf-%s/bin/%s", - chimera.toLowerCase(), chimeraExe)); + chimera.toLowerCase(Locale.ROOT), chimeraExe)); pathList.add(String.format("/usr/libexec/UCSF-%s/bin/%s", chimera, chimeraExe)); pathList.add(String.format("/usr/local/chimera/bin/%s", chimeraExe)); // user home paths - pathList.add(String.format("%s/bin/%s", - System.getProperty("user.home"), chimeraExe.toLowerCase())); + pathList.add( + String.format("%s/bin/%s", System.getProperty("user.home"), + chimeraExe.toLowerCase(Locale.ROOT))); pathList.add(String.format("%s/bin/%s", System.getProperty("user.home"), chimeraExe)); pathList.add(String.format("%s/opt/bin/%s", - System.getProperty("user.home"), chimeraExe.toLowerCase())); + System.getProperty("user.home"), + chimeraExe.toLowerCase(Locale.ROOT))); pathList.add(String.format("%s/opt/bin/%s", System.getProperty("user.home"), chimeraExe)); pathList.add(String.format("%s/local/bin/%s", - System.getProperty("user.home"), chimeraExe.toLowerCase())); + System.getProperty("user.home"), + chimeraExe.toLowerCase(Locale.ROOT))); pathList.add(String.format("%s/local/bin/%s", System.getProperty("user.home"), chimeraExe)); } @@ -1011,7 +1017,8 @@ public class StructureManager { for (String root : new String[] { "\\Program Files", "C:\\Program Files", "\\Program Files (x86)", - "C:\\Program Files (x86)" }) + "C:\\Program Files (x86)", String.format("%s\\AppData\\Local", + System.getProperty("user.home")) }) { String[] candidates = isChimeraX ? CHIMERAX_VERSIONS : CHIMERA_VERSIONS; @@ -1040,9 +1047,15 @@ public class StructureManager pathList.add( String.format("/Applications/%s-%s.app/Contents/MacOS/%s", chimera, version, chimeraExe)); + pathList.add( + String.format("%s/Applications/%s-%s.app/Contents/MacOS/%s", + System.getProperty("user.home"), chimera, version, + chimeraExe)); } pathList.add(String.format("/Applications/%s.app/Contents/MacOS/%s", chimera, chimeraExe)); + pathList.add(String.format("%s/Applications/%s.app/Contents/MacOS/%s", + System.getProperty("user.home"), chimera, chimeraExe)); } return pathList; }