From: <ha...@us...> - 2015-08-02 03:06:34
|
Revision: 20673 http://sourceforge.net/p/jmol/code/20673 Author: hansonr Date: 2015-08-02 03:06:31 +0000 (Sun, 02 Aug 2015) Log Message: ----------- bug fix: SMARTS matching broken for [r5] ring designation bug fix: reference to functions as commands requires lower case: -- for example: function F(a){ print a } F("test") // OK f("test") // OK f "test" // OK F "test" // fails Revision Links: -------------- http://sourceforge.net/p/jmol/code/5 Modified Paths: -------------- branches/v14_2/Jmol/src/org/jmol/modelset/BondCollection.java branches/v14_2/Jmol/src/org/jmol/script/ScriptTokenParser.java branches/v14_2/Jmol/src/org/jmol/smiles/SmilesAtom.java branches/v14_2/Jmol/src/org/jmol/smiles/SmilesParser.java branches/v14_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v14_2/Jmol/src/org/jmol/modelset/BondCollection.java =================================================================== --- branches/v14_2/Jmol/src/org/jmol/modelset/BondCollection.java 2015-08-02 03:03:52 UTC (rev 20672) +++ branches/v14_2/Jmol/src/org/jmol/modelset/BondCollection.java 2015-08-02 03:06:31 UTC (rev 20673) @@ -128,8 +128,7 @@ Bond bond = bo[iBond]; boolean isSelected1 = bsAtoms.get(bond.atom1.i); boolean isSelected2 = bsAtoms.get(bond.atom2.i); - if ((!bondSelectionModeOr & isSelected1 & isSelected2) - || (bondSelectionModeOr & (isSelected1 | isSelected2))) + if (bondSelectionModeOr ? isSelected1 || isSelected2 : isSelected1 && isSelected2) bs.set(iBond); } return bs; Modified: branches/v14_2/Jmol/src/org/jmol/script/ScriptTokenParser.java =================================================================== --- branches/v14_2/Jmol/src/org/jmol/script/ScriptTokenParser.java 2015-08-02 03:03:52 UTC (rev 20672) +++ branches/v14_2/Jmol/src/org/jmol/script/ScriptTokenParser.java 2015-08-02 03:06:31 UTC (rev 20673) @@ -264,6 +264,7 @@ protected Map<String, Boolean> htUserFunctions; protected boolean isUserFunction(String name) { + name = name.toLowerCase(); return (!isStateScript && (vwr.isFunction(name) || htUserFunctions.containsKey(name))); } Modified: branches/v14_2/Jmol/src/org/jmol/smiles/SmilesAtom.java =================================================================== --- branches/v14_2/Jmol/src/org/jmol/smiles/SmilesAtom.java 2015-08-02 03:03:52 UTC (rev 20672) +++ branches/v14_2/Jmol/src/org/jmol/smiles/SmilesAtom.java 2015-08-02 03:06:31 UTC (rev 20673) @@ -202,6 +202,7 @@ int ringSize = Integer.MIN_VALUE; int ringConnectivity = -1; private Node matchingNode; + public boolean hasSubpattern; public SmilesAtom setAll(int iComponent, int ptAtom, int flags, int atomicNumber, int charge) { Modified: branches/v14_2/Jmol/src/org/jmol/smiles/SmilesParser.java =================================================================== --- branches/v14_2/Jmol/src/org/jmol/smiles/SmilesParser.java 2015-08-02 03:03:52 UTC (rev 20672) +++ branches/v14_2/Jmol/src/org/jmol/smiles/SmilesParser.java 2015-08-02 03:06:31 UTC (rev 20673) @@ -339,7 +339,7 @@ for (int i = molecule.ac; --i >= 0;) { SmilesAtom atom = molecule.patternAtoms[i]; if (molecule.isTopology && - (atom.elementNumber != -2 || atom.nAtomsOr > 0 || atom.nPrimitives > 0)) + (atom.hasSubpattern || atom.elementNumber != -2 || atom.nAtomsOr > 0 || atom.nPrimitives > 0)) molecule.isTopology = false; atom.setBondArray(); if (!isSmarts && atom.bioType == '\0' && !atom.setHydrogenCount(molecule)) @@ -550,6 +550,7 @@ subPattern += ".0"; currentAtom = parseAtom(molecule, null, subPattern, currentAtom, bond, ch == '[', false, isBranchAtom); + currentAtom.hasSubpattern = true; if (bond.order != SmilesBond.TYPE_UNKNOWN && bond.order != SmilesBond.TYPE_NONE) bond.set2a(null, currentAtom); @@ -766,7 +767,6 @@ SmilesAtom newAtom = (atomSet == null ? molecule.addAtom() : isPrimitive ? atomSet.addPrimitive() : atomSet.addAtomOr()); - if (braceCount > 0) newAtom.selected = true; Modified: branches/v14_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v14_2/Jmol/src/org/jmol/viewer/Jmol.properties 2015-08-02 03:03:52 UTC (rev 20672) +++ branches/v14_2/Jmol/src/org/jmol/viewer/Jmol.properties 2015-08-02 03:06:31 UTC (rev 20673) @@ -6,8 +6,20 @@ # see also http://chemapps.stolaf.edu/jmol/zip for daily updates -Jmol.___JmolVersion="14.2.15_2015.07.30b" +Jmol.___JmolVersion="14.2.15_2015.08.01" +bug fix: SMARTS matching broken for [r5] ring designation + +bug fix: reference to functions as commands requires lower case: + -- for example: + function F(a){ print a } + F("test") // OK + f("test") // OK + f "test" // OK + F "test" // fails + +JmolVersion="14.2.15_2015.07.30b" + bug fix: JavaScript deletion of array elements fails for int[] arrays. JmolVersion="14.2.15_2015.07.30" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |