Revision: 21485 http://sourceforge.net/p/jmol/code/21485 Author: hansonr Date: 2017-04-06 12:09:34 +0000 (Thu, 06 Apr 2017) Log Message: ----------- Jmol.___JmolVersion="14.11.3" // 2017-04-06
bug fix: partial bond order for orders > 3 not working -- for example: connect {_C} {_C} partial 5.3 bug fix: NBO MODEL loading with no file name goes to wrong directory bug fix: NBO job names need to be cleaned and set if necessary bug fix: some sort of bad build for DSSR Modified Paths: -------------- trunk/Jmol/src/org/gennbo/NBOFileHandler.java trunk/Jmol/src/org/gennbo/NBOModel.java trunk/Jmol/src/org/gennbo/NBORun.java trunk/Jmol/src/org/jmol/render/SticksRenderer.java trunk/Jmol/src/org/jmol/script/ScriptParam.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties Modified: trunk/Jmol/src/org/gennbo/NBOFileHandler.java =================================================================== --- trunk/Jmol/src/org/gennbo/NBOFileHandler.java 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/gennbo/NBOFileHandler.java 2017-04-06 12:09:34 UTC (rev 21485) @@ -356,6 +356,24 @@ return NBOUtil.newNBOFile(inputFile, filenum); } + /** + * Fix a file name to be [A-Z0-9_]+ + * + * @param name the name to fix, or if empty, the input file name truncated to a maximum of 10 digits + * @return fixed name replacing not-allowed characters with '_' + */ + public String fixJobName(String name) { + if (name == null || (name = name.trim()).length() == 0) + name = jobStem; + for (int i = name.length(); --i >= 0;) { + char ch = name.charAt(i); + if (!Character.isLetterOrDigit(ch) && ch != '_') + name = name.substring(0, i) + "_" + name.substring(i + 1); + } + return name; + } + + public String[] update47File(String jobName, String keywords) { if (!useExt.equals("47")) return null; @@ -405,5 +423,4 @@ return true; } - } Modified: trunk/Jmol/src/org/gennbo/NBOModel.java =================================================================== --- trunk/Jmol/src/org/gennbo/NBOModel.java 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/gennbo/NBOModel.java 2017-04-06 12:09:34 UTC (rev 21485) @@ -297,14 +297,25 @@ @Override protected boolean doFileBrowsePressed() { String folder = tfDir.getText().trim(); - folder = NBOUtil.getWindowsFullNameFor(folder, tfName.getText(), tfExt.getText()); + String name = tfName.getText(); + if (name.length() == 0) + name = "*"; + String ext = tfExt.getText(); + if (ext.length() == 0) + ext = "*"; + folder = NBOUtil.getWindowsFullNameFor(folder, name, ext); JFileChooser myChooser = new JFileChooser(); - if (useExt.contains(";")) - myChooser.setFileFilter(new FileNameExtensionFilter(useExt, useExt + String filter = useExt; + if (name.equals("*") && !ext.equals("*")) + filter = ext; + if (filter.contains(";")) + myChooser.setFileFilter(new FileNameExtensionFilter(filter, filter .split(";"))); else - myChooser.setFileFilter(new FileNameExtensionFilter(useExt, useExt)); + myChooser.setFileFilter(new FileNameExtensionFilter(filter, filter)); myChooser.setFileHidingEnabled(true); + if (folder.endsWith("/")) + folder = folder + "*.*"; if (!folder.equals("")) myChooser.setSelectedFile(new File(folder)); int button = myChooser.showDialog(this, GT._("Select")); Modified: trunk/Jmol/src/org/gennbo/NBORun.java =================================================================== --- trunk/Jmol/src/org/gennbo/NBORun.java 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/gennbo/NBORun.java 2017-04-06 12:09:34 UTC (rev 21485) @@ -326,7 +326,8 @@ tfJobName.setText(jobName); } } - String name = tfJobName.getText(); + String name = tfJobName.getText().trim(); + name = dialog.inputFileHandler.fixJobName(name); dialog.inputFileHandler.update47File(name, keywords); addNBOKeylist(); tfJobName.setText(name); @@ -694,8 +695,7 @@ // from another module tfJobName.setText(dialog.inputFileHandler.jobStem); } - String jobName = (tfJobName == null ? dialog.inputFileHandler.jobStem - : tfJobName.getText().trim()); + String jobName = dialog.inputFileHandler.fixJobName(tfJobName == null ? null : tfJobName.getText().trim()); // BH Q: Would it be reasonable if the NO option is chosen to put that other job name in to the jobStem field, and also copy the .47 file to that? Or use that? // Or, would it be better to ask this question immediately upon file loading so that it doesn't come up, and make it so that Modified: trunk/Jmol/src/org/jmol/render/SticksRenderer.java =================================================================== --- trunk/Jmol/src/org/jmol/render/SticksRenderer.java 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/jmol/render/SticksRenderer.java 2017-04-06 12:09:34 UTC (rev 21485) @@ -308,7 +308,7 @@ drawBond(mask); bondsPerp = !bondsPerp; bondOrder = 2; - drawBond(mask); + drawBond(mask >> 2); bondsPerp = !bondsPerp; multipleBondSpacing = m; } @@ -325,7 +325,7 @@ bondsPerp = !bondsPerp; bondOrder = 2; multipleBondSpacing *= 1.5f; - drawBond(mask); + drawBond(mask >> 3); bondsPerp = !bondsPerp; multipleBondSpacing = m; } @@ -342,7 +342,7 @@ bondsPerp = !bondsPerp; bondOrder = 2; multipleBondSpacing *= 1.5f; - drawBond(mask); + drawBond(mask >> 4); bondsPerp = !bondsPerp; multipleBondSpacing = m; } Modified: trunk/Jmol/src/org/jmol/script/ScriptParam.java =================================================================== --- trunk/Jmol/src/org/jmol/script/ScriptParam.java 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/jmol/script/ScriptParam.java 2017-04-06 12:09:34 UTC (rev 21485) @@ -982,7 +982,7 @@ } /** - * reads standard n.m float-as-integer n*1000000 + m and returns (n % 6) << 5 + * reads standard n.m float-as-integer n*1000000 + m and returns (n % 7) << 5 * + (m % 0x1F) * * @param bondOrderInteger @@ -989,7 +989,7 @@ * @return Bond order partial mask */ public static int getPartialBondOrderFromFloatEncodedInt(int bondOrderInteger) { - return (((bondOrderInteger / 1000000) % 6) << 5) + return (((bondOrderInteger / 1000000) % 7) << 5) + ((bondOrderInteger % 1000000) & 0x1F); } Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2017-04-05 17:23:57 UTC (rev 21484) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2017-04-06 12:09:34 UTC (rev 21485) @@ -49,8 +49,12 @@ # 10. Run jmol/tools build-release.xml # -Jmol.___JmolVersion="14.11.3" // 2017-04-05 +Jmol.___JmolVersion="14.11.3" // 2017-04-06 +bug fix: partial bond order for orders > 3 not working + -- for example: connect {_C} {_C} partial 5.3 +bug fix: NBO MODEL loading with no file name goes to wrong directory +bug fix: NBO job names need to be cleaned and set if necessary bug fix: some sort of bad build for DSSR JmolVersion="14.11.2" // 2017-04-04 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Jmol-commits mailing list Jmol-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jmol-commits