Revision: 20885 http://sourceforge.net/p/jmol/code/20885 Author: hansonr Date: 2015-12-10 21:45:39 +0000 (Thu, 10 Dec 2015) Log Message: ----------- Jmol.___JmolVersion="14.4.0_2015.12.10"
bug fix: set selectAllModels should restrict action of display/hide as well bug fix: set selectAllModels not working appropriately bug fix: set selectAllModels should not be saved in state bug fix: JmolData.jar does not update atom screen positions upon REFRESH or select {visible} bug fix: JmolData.jar -p flag does not work properly bug fix: model 0 issued when more than one PDB file is open does not execute model * Modified Paths: -------------- branches/v14_4/Jmol/src/org/jmol/viewer/Jmol.properties branches/v14_4/Jmol/src/org/jmol/viewer/SelectionManager.java branches/v14_4/Jmol/src/org/openscience/jmol/app/jmolpanel/console/AppConsole.java Modified: branches/v14_4/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v14_4/Jmol/src/org/jmol/viewer/Jmol.properties 2015-12-08 16:01:40 UTC (rev 20884) +++ branches/v14_4/Jmol/src/org/jmol/viewer/Jmol.properties 2015-12-10 21:45:39 UTC (rev 20885) @@ -7,22 +7,15 @@ # see also http://chemapps.stolaf.edu/jmol/zip for daily updates +Jmol.___JmolVersion="14.4.0_2015.12.10" -Jmol.___JmolVersion="14.4.0_2015.12.07" - +bug fix: set selectAllModels should restrict action of display/hide as well bug fix: set selectAllModels not working appropriately bug fix: set selectAllModels should not be saved in state - -JmolVersion="14.4.0_2015.12.05" - bug fix: JmolData.jar does not update atom screen positions upon REFRESH or select {visible} bug fix: JmolData.jar -p flag does not work properly bug fix: model 0 issued when more than one PDB file is open does not execute model * -JmolVersion="14.4.0_2015.12.03" - -bug fix: model 0 issued when more than one PDB file is open does not execute model * - JmolVersion="14.4.0_2015.12.02" bug fix: PDB reader broken for filter "biomolecule n" Modified: branches/v14_4/Jmol/src/org/jmol/viewer/SelectionManager.java =================================================================== --- branches/v14_4/Jmol/src/org/jmol/viewer/SelectionManager.java 2015-12-08 16:01:40 UTC (rev 20884) +++ branches/v14_4/Jmol/src/org/jmol/viewer/SelectionManager.java 2015-12-10 21:45:39 UTC (rev 20885) @@ -48,7 +48,7 @@ private final BS bsSelection = new BS(); final BS bsFixed = new BS(); - public BS bsSubset; // set in Eval and only pointed to here + public BS bsSubset; public BS bsDeleted; public Boolean noneSelected; @@ -62,10 +62,8 @@ // } void processDeletedModelAtoms(BS bsAtoms) { - if (bsDeleted != null) - BSUtil.deleteBits(bsDeleted, bsAtoms); - if (bsSubset != null) - BSUtil.deleteBits(bsSubset, bsAtoms); + BSUtil.deleteBits(bsDeleted, bsAtoms); + BSUtil.deleteBits(bsSubset, bsAtoms); BSUtil.deleteBits(bsFixed, bsAtoms); BSUtil.deleteBits(bsHidden, bsAtoms); BS bs = BSUtil.copy(bsSelection); @@ -84,13 +82,14 @@ void clear() { clearSelection(true); + setSelectionSubset(null); hide(null, null, 0, true); - setSelectionSubset(null); bsDeleted = null; setMotionFixedAtoms(null); } void display(ModelSet modelSet, BS bs, int addRemove, boolean isQuiet) { + BS bsNotSubset = (bsSubset == null ? null : BSUtil.andNot(BSUtil.copy(bsHidden), bsSubset)); switch (addRemove) { default: BS bsAll = modelSet.getModelAtomBitSetIncludingDeleted(-1, false); @@ -105,6 +104,10 @@ bsHidden.or(bs); break; } + if (bsNotSubset != null) { + bsHidden.and(bsSubset); + bsHidden.or(bsNotSubset); + } BSUtil.andNot(bsHidden, bsDeleted); modelSet.setBsHidden(bsHidden); if (!isQuiet) @@ -112,7 +115,10 @@ } void hide(ModelSet modelSet, BS bs, int addRemove, boolean isQuiet) { + BS bsNotSubset = (bsSubset == null ? null : BSUtil.andNot(BSUtil.copy(bsHidden), bsSubset)); setBitSet(bsHidden, bs, addRemove); + if (bsNotSubset != null) + bsHidden.or(bsNotSubset); if (modelSet != null) modelSet.setBsHidden(bsHidden); if (!isQuiet) @@ -219,12 +225,6 @@ } public void setSelectionSubset(BS bs) { - - // for informational purposes only - // the real copy is in Eval so that eval operations - // can all use it directly, and so that all these - // operations still work properly on the full set of atoms - bsSubset = bs; } @@ -252,13 +252,13 @@ return 0; empty = TRUE; BS bs; - if (bsSubset != null) { + if (bsSubset == null) { + bs = bsSelection; + } else { bsTemp.clearAll(); bsTemp.or(bsSubset); bsTemp.and(bsSelection); bs = bsTemp; - } else { - bs = bsSelection; } int count = bs.cardinality(); if (count > 0) Modified: branches/v14_4/Jmol/src/org/openscience/jmol/app/jmolpanel/console/AppConsole.java =================================================================== --- branches/v14_4/Jmol/src/org/openscience/jmol/app/jmolpanel/console/AppConsole.java 2015-12-08 16:01:40 UTC (rev 20884) +++ branches/v14_4/Jmol/src/org/openscience/jmol/app/jmolpanel/console/AppConsole.java 2015-12-10 21:45:39 UTC (rev 20885) @@ -30,7 +30,6 @@ import java.awt.Dimension; import java.awt.EventQueue; import java.awt.Font; -import java.awt.Rectangle; import java.awt.Window; import java.awt.event.ActionEvent; import java.awt.event.KeyEvent; @@ -531,7 +530,7 @@ str = str.substring(1); if (vwr.checkHalt(str, isInterrupt)) strErrorMessage = (isScriptExecuting ? "script execution halted with " - + strCommand : "no script was executing"); + + strCommand : "no script was executing - use exitJmol to exit Jmol"); //the problem is that scriptCheck is synchronized, so these might get backed up. if (strErrorMessage.length() > 0) { console.outputError(strErrorMessage); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ _______________________________________________ Jmol-commits mailing list Jmol-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jmol-commits