Revision: 20460 http://sourceforge.net/p/jmol/code/20460 Author: hansonr Date: 2015-04-28 01:31:15 +0000 (Tue, 28 Apr 2015) Log Message: ----------- Jmol.___JmolVersion="14.2.13_2015.04.27"
bug fix: with set dragSelected, highlight does not recognize whole molecule Modified Paths: -------------- trunk/Jmol/src/org/jmol/modelset/ModelSet.java trunk/Jmol/src/org/jmol/render/HalosRenderer.java trunk/Jmol/src/org/jmol/script/ScriptEval.java trunk/Jmol/src/org/jmol/scriptext/CmdExt.java trunk/Jmol/src/org/jmol/shape/Halos.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/jmol/viewer/StateCreator.java trunk/Jmol/src/org/jmol/viewer/Viewer.java trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/DisplayPanel.java Modified: trunk/Jmol/src/org/jmol/modelset/ModelSet.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/ModelSet.java 2015-04-26 15:55:33 UTC (rev 20459) +++ trunk/Jmol/src/org/jmol/modelset/ModelSet.java 2015-04-28 01:31:15 UTC (rev 20460) @@ -245,17 +245,8 @@ //variables that will be reset when a new frame is instantiated - private boolean selectionHaloEnabled = false; private boolean echoShapeActive = false; - public void setSelectionHaloEnabled(boolean selectionHaloEnabled) { - this.selectionHaloEnabled = selectionHaloEnabled; - } - - public boolean getSelectionHaloEnabled() { - return selectionHaloEnabled; - } - public boolean getEchoStateActive() { return echoShapeActive; } Modified: trunk/Jmol/src/org/jmol/render/HalosRenderer.java =================================================================== --- trunk/Jmol/src/org/jmol/render/HalosRenderer.java 2015-04-26 15:55:33 UTC (rev 20459) +++ trunk/Jmol/src/org/jmol/render/HalosRenderer.java 2015-04-28 01:31:15 UTC (rev 20460) @@ -39,13 +39,16 @@ @Override protected boolean render() { Halos halos = (Halos) shape; - boolean selectDisplayTrue = vwr.getSelectionHaloEnabled(true); + boolean showOnce = vwr.getShowSelectedOnce(); + boolean selectDisplayTrue = vwr.getSelectionHalosEnabled() || showOnce; + System.out.println(showOnce + " testhalos"); boolean showHiddenSelections = (selectDisplayTrue && vwr.getBoolean(T.showhiddenselectionhalos)); if (halos.mads == null && halos.bsHighlight == null && !selectDisplayTrue) return false; isAntialiased = g3d.isAntialiased(); Atom[] atoms = ms.at; - BS bsSelected = (selectDisplayTrue ? vwr.bsA() : null); + BS bsSelected = (showOnce && vwr.movableBitSet != null ? vwr.movableBitSet + : selectDisplayTrue ? vwr.bsA() : null); boolean needTranslucent = false; g3d.addRenderer(T.circle); for (int i = ms.ac; --i >= 0;) { Modified: trunk/Jmol/src/org/jmol/script/ScriptEval.java =================================================================== --- trunk/Jmol/src/org/jmol/script/ScriptEval.java 2015-04-26 15:55:33 UTC (rev 20459) +++ trunk/Jmol/src/org/jmol/script/ScriptEval.java 2015-04-28 01:31:15 UTC (rev 20460) @@ -6606,7 +6606,7 @@ case T.on: case T.off: if (!chk) - vwr.setSelectionHalos(tok == T.on); + vwr.setSelectionHalosEnabled(tok == T.on); tok = tokAt(++i); if (tok == T.nada) return; Modified: trunk/Jmol/src/org/jmol/scriptext/CmdExt.java =================================================================== --- trunk/Jmol/src/org/jmol/scriptext/CmdExt.java 2015-04-26 15:55:33 UTC (rev 20459) +++ trunk/Jmol/src/org/jmol/scriptext/CmdExt.java 2015-04-28 01:31:15 UTC (rev 20460) @@ -3899,7 +3899,7 @@ case T.display:// deprecated case T.selectionhalos: msg = "selectionHalos " - + (vwr.getSelectionHaloEnabled(false) ? "ON" : "OFF"); + + (vwr.getSelectionHalosEnabled() ? "ON" : "OFF"); break; case T.hetero: msg = "set selectHetero " + vwr.getBoolean(T.hetero); Modified: trunk/Jmol/src/org/jmol/shape/Halos.java =================================================================== --- trunk/Jmol/src/org/jmol/shape/Halos.java 2015-04-26 15:55:33 UTC (rev 20459) +++ trunk/Jmol/src/org/jmol/shape/Halos.java 2015-04-28 01:31:15 UTC (rev 20460) @@ -68,7 +68,7 @@ @Override public void setModelVisibilityFlags(BS bs) { - BS bsSelected = (vwr.getSelectionHaloEnabled(false) ? vwr + BS bsSelected = (vwr.getSelectionHalosEnabled() ? vwr .bsA() : null); for (int i = ac; --i >= 0;) { boolean isVisible = bsSelected != null && bsSelected.get(i) Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2015-04-26 15:55:33 UTC (rev 20459) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2015-04-28 01:31:15 UTC (rev 20460) @@ -14,8 +14,12 @@ TODO: remove HTML5 dependency on synchronous file loading (check SCRIPT command for problems) -Jmol.___JmolVersion="14.3.13_2015.04.25" +Jmol.___JmolVersion="14.3.13_2015.04.27" +bug fix: with set dragSelected, highlight does not recognize whole molecule + +JmolVersion="14.3.13_2015.04.25" + code: integration of changes made for SwingJS into JSmol code Modified: trunk/Jmol/src/org/jmol/viewer/StateCreator.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/StateCreator.java 2015-04-26 15:55:33 UTC (rev 20459) +++ trunk/Jmol/src/org/jmol/viewer/StateCreator.java 2015-04-28 01:31:15 UTC (rev 20460) @@ -744,7 +744,7 @@ app(commands, "set hideNotSelected " + sm.hideNotSelected); commands.append((String) vwr.getShapeProperty(JC.SHAPE_STICKS, "selectionState")); - if (vwr.getSelectionHaloEnabled(false)) + if (vwr.getSelectionHalosEnabled()) app(commands, "SelectionHalos ON"); if (sfunc != null) commands.append("}\n\n"); Modified: trunk/Jmol/src/org/jmol/viewer/Viewer.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Viewer.java 2015-04-26 15:55:33 UTC (rev 20459) +++ trunk/Jmol/src/org/jmol/viewer/Viewer.java 2015-04-28 01:31:15 UTC (rev 20460) @@ -693,7 +693,7 @@ */ public boolean headless; - + private void setStartupBooleans() { setBooleanProperty("_applet", isApplet); setBooleanProperty("_JSpecView".toLowerCase(), false); @@ -996,6 +996,8 @@ + deltaY : ""); } + public BS movableBitSet; + private BS setMovableBitSet(BS bsSelected, boolean checkMolecule) { if (bsSelected == null) bsSelected = bsA(); @@ -1003,7 +1005,7 @@ BSUtil.andNot(bsSelected, getMotionFixedAtoms()); if (checkMolecule && !g.allowMoveAtoms) bsSelected = ms.getMoleculeBitSet(bsSelected); - return bsSelected; + return movableBitSet = bsSelected; } public void translateXYBy(int xDelta, int yDelta) { @@ -1341,7 +1343,7 @@ } void reportSelection(String msg) { - if (ms.getSelectionHaloEnabled()) + if (selectionHalosEnabled) setTainted(true); if (isScriptQueued() || g.debugScript) scriptStatus(msg); @@ -2533,6 +2535,7 @@ movingSelected = false; slm.noneSelected = Boolean.FALSE; hoverEnabled = true; + setSelectionHalosEnabled(false); tm.setCenter(); am.initializePointers(1); if (!ms.getMSInfoB("isPyMOL")) { @@ -4900,7 +4903,7 @@ if (key.equalsIgnoreCase("isNavigating")) return tm.isNavigating(); if (key.equalsIgnoreCase("showSelections")) - return ms.getSelectionHaloEnabled(); + return selectionHalosEnabled; if (g.htUserVariables.containsKey(key)) { SV t = g.getUserVariable(key); if (t.tok == T.on) @@ -6188,9 +6191,9 @@ break; case T.allowmoveatoms: // 12.1.21 + //setBooleanProperty("allowRotateSelected", value); + //setBooleanProperty("dragSelected", value); g.allowMoveAtoms = value; - g.allowRotateSelected = value; - g.dragSelected = value; showSelected = false; break; case T.showscript: @@ -6280,7 +6283,7 @@ g.dotsSelectedOnly = value; break; case T.selectionhalos: - setSelectionHalos(value); + setSelectionHalosEnabled(value); break; case T.selecthydrogen: g.rasmolHydrogenSetting = value; @@ -6637,20 +6640,23 @@ g.setI("axesMode", mode); } - public void setSelectionHalos(boolean TF) { - // display panel can hit this without a frame, apparently - if (TF == ms.getSelectionHaloEnabled()) + private boolean selectionHalosEnabled = false; + + public boolean getSelectionHalosEnabled() { + return selectionHalosEnabled; + } + + public void setSelectionHalosEnabled(boolean TF) { + if (selectionHalosEnabled == TF) return; g.setB("selectionHalos", TF); shm.loadShape(JC.SHAPE_HALOS); - // a frame property, so it is automatically reset - ms.setSelectionHaloEnabled(TF); + selectionHalosEnabled = TF; } - public boolean getSelectionHaloEnabled(boolean isRenderer) { - boolean flag = ms.getSelectionHaloEnabled() || isRenderer && showSelected; - if (isRenderer) - showSelected = false; + public boolean getShowSelectedOnce() { + boolean flag = showSelected; + showSelected = false; return flag; } @@ -7334,6 +7340,7 @@ return; if (deltaX == Integer.MIN_VALUE) { showSelected = true; + movableBitSet = setMovableBitSet(null, !asAtoms); shm.loadShape(JC.SHAPE_HALOS); refresh(6, "moveSelected"); return; @@ -7342,6 +7349,7 @@ if (!showSelected) return; showSelected = false; + movableBitSet = null; refresh(6, "moveSelected"); return; } Modified: trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/DisplayPanel.java =================================================================== --- trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/DisplayPanel.java 2015-04-26 15:55:33 UTC (rev 20459) +++ trunk/Jmol/src/org/openscience/jmol/app/jmolpanel/DisplayPanel.java 2015-04-28 01:31:15 UTC (rev 20460) @@ -117,14 +117,14 @@ void setRotateMode() { if (buttonRotate != null && !isRotateMode()) { buttonRotate.setSelected(true); - vwr.setSelectionHalos(false); + vwr.setSelectionHalosEnabled(false); } } void setModelkitMode() { if (buttonModelkit != null) buttonModelkit.setSelected(true); - vwr.setSelectionHalos(false); + vwr.setSelectionHalosEnabled(false); } @Override @@ -257,7 +257,7 @@ @Override public void actionPerformed(ActionEvent e) { - vwr.setSelectionHalos(false); + vwr.setSelectionHalosEnabled(false); if (statusText != null) { status.setStatus(1, statusText); } else { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ One dashboard for servers and applications across Physical-Virtual-Cloud Widest out-of-the-box monitoring support with 50+ applications Performance metrics, stats and reports that give you Actionable Insights Deep dive visibility with transaction tracing using APM Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y _______________________________________________ Jmol-commits mailing list Jmol-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jmol-commits