Revision: 18278
http://sourceforge.net/p/jmol/code/18278
Author: hansonr
Date: 2013-06-04 23:07:26 +0000 (Tue, 04 Jun 2013)
Log Message:
-----------
___version=13.0.16_dev_2013.06.04
bug fix: "display add" by itself should not do anything
bug fix: Gaussian reader not splitting MO set by model
bug fix: polyhedra not saved in state
Modified Paths:
--------------
trunk/Jmol/src/org/jmol/viewer/ActionManager.java
trunk/Jmol/src/org/jmol/viewer/SelectionManager.java
trunk/Jmol/src/org/jmol/viewer/ShapeManager.java
trunk/Jmol/src/org/jmol/viewer/StateManager.java
trunk/Jmol/src/org/jmol/viewer/Viewer.java
Modified: trunk/Jmol/src/org/jmol/viewer/ActionManager.java
===================================================================
--- trunk/Jmol/src/org/jmol/viewer/ActionManager.java 2013-06-03 02:09:09 UTC
(rev 18277)
+++ trunk/Jmol/src/org/jmol/viewer/ActionManager.java 2013-06-04 23:07:26 UTC
(rev 18278)
@@ -739,7 +739,7 @@
case PICKING_DRAG_MINIMIZE_MOLECULE:
bs = viewer.getAtomBits(T.molecule, BSUtil
.newAndSetBit(dragAtomIndex));
- viewer.select(bs, false, null, true);
+ viewer.select(bs, false, 0, true);
break;
}
viewer.moveAtomWithHydrogens(dragAtomIndex, deltaX, deltaY, (isBound(
@@ -1995,7 +1995,7 @@
Logger.debug(s);
BS bs = getSelectionSet(s);
if (bs != null) {
- viewer.select(bs, false, null, false);
+ viewer.select(bs, false, 0, false);
viewer.refresh(3, "selections set");
}
}
Modified: trunk/Jmol/src/org/jmol/viewer/SelectionManager.java
===================================================================
--- trunk/Jmol/src/org/jmol/viewer/SelectionManager.java 2013-06-03
02:09:09 UTC (rev 18277)
+++ trunk/Jmol/src/org/jmol/viewer/SelectionManager.java 2013-06-04
23:07:26 UTC (rev 18278)
@@ -68,52 +68,65 @@
void clear() {
clearSelection(true);
- hide(null, null, null, true);
+ hide(null, null, 0, true);
setSelectionSubset(null);
bsDeleted = null;
setMotionFixedAtoms(null);
}
- void hide(ModelSet modelSet, BS bs, Boolean addRemove, boolean isQuiet) {
- if (bs == null) {
- bsHidden.clearAll();
- } else if (addRemove == null) {
- bsHidden.clearAll();
- bsHidden.or(bs);
- } else if (addRemove.booleanValue()) {
- bsHidden.or(bs);
- } else {
- bsHidden.andNot(bs);
+ void display(ModelSet modelSet, BS bs, int addRemove, boolean isQuiet) {
+ switch (addRemove) {
+ default:
+ BS bsAll = modelSet.getModelAtomBitSetIncludingDeleted(-1, false);
+ bsHidden.or(bsAll);
+ //$FALL-THROUGH$
+ case T.add:
+ if (bs != null)
+ bsHidden.andNot(bs);
+ break;
+ case T.remove:
+ if (bs != null)
+ bsHidden.or(bs);
+ break;
}
- if (modelSet != null)
- modelSet.setBsHidden(bsHidden);
+ BSUtil.andNot(bsHidden, bsDeleted);
+ modelSet.setBsHidden(bsHidden);
if (!isQuiet)
viewer.reportSelection(GT._("{0} atoms hidden", ""
+ bsHidden.cardinality()));
}
- void display(ModelSet modelSet, BS bs, Boolean addRemove, boolean isQuiet) {
- BS bsAll = modelSet.getModelAtomBitSetIncludingDeleted(-1, false);
- if (bs == null) {
- if (Boolean.TRUE == addRemove)
- bsHidden.clearAll();
- else
- bsHidden.or(bsAll);
- } else if (addRemove == null) {
- bsHidden.or(bsAll);
- bsHidden.andNot(bs);
- } else if (addRemove.booleanValue()) {
- bsHidden.andNot(bs);
- } else {
- bsHidden.or(bs);
- }
- BSUtil.andNot(bsHidden, bsDeleted);
- modelSet.setBsHidden(bsHidden);
+ void hide(ModelSet modelSet, BS bs, int addRemove, boolean isQuiet) {
+ setBitSet(bsHidden, bs, addRemove);
+ if (modelSet != null)
+ modelSet.setBsHidden(bsHidden);
if (!isQuiet)
viewer.reportSelection(GT._("{0} atoms hidden", ""
+ bsHidden.cardinality()));
}
+ void setSelectionSet(BS set, int addRemove) {
+ setBitSet(bsSelection, set, addRemove);
+ empty = UNKNOWN;
+ selectionChanged(false);
+ }
+
+ private static void setBitSet(BS bsWhat, BS bs, int addRemove) {
+ switch (addRemove) {
+ default:
+ bsWhat.clearAll();
+ //$FALL-THROUGH$
+ case T.add:
+ if (bs != null)
+ bsWhat.or(bs);
+ break;
+ case T.remove:
+ if (bs != null)
+ bsWhat.andNot(bs);
+ break;
+ }
+ }
+
BS getHiddenSet() {
return bsHidden;
}
@@ -132,7 +145,7 @@
return (atomIndex >= 0 && bsSelection.get(atomIndex));
}
- void select(BS bs, Boolean addRemove, boolean isQuiet) {
+ void select(BS bs, int addRemove, boolean isQuiet) {
if (bs == null) {
selectAll(true);
if (!viewer.getBoolean(T.hydrogen))
@@ -193,21 +206,6 @@
empty = UNKNOWN;
}
- void setSelectionSet(BS set, Boolean addRemove) {
- if (set == null) {
- bsSelection.clearAll();
- } else if (addRemove == null) {
- bsSelection.clearAll();
- bsSelection.or(set);
- } else if (addRemove.booleanValue()) {
- bsSelection.or(set);
- } else {
- bsSelection.andNot(set);
- }
- empty = UNKNOWN;
- selectionChanged(false);
- }
-
void setSelectionSubset(BS bs) {
// for informational purposes only
@@ -277,7 +275,7 @@
private void selectionChanged(boolean isQuiet) {
if (hideNotSelected)
- hide(viewer.getModelSet(), BSUtil.copyInvert(bsSelection,
viewer.getAtomCount()), null, isQuiet);
+ hide(viewer.getModelSet(), BSUtil.copyInvert(bsSelection,
viewer.getAtomCount()), 0, isQuiet);
if (isQuiet || listeners.length == 0)
return;
for (int i = listeners.length; --i >= 0;)
@@ -331,7 +329,7 @@
BSUtil.deleteBits(bsHidden, bsAtoms);
BS bs = BSUtil.copy(bsSelection);
BSUtil.deleteBits(bs, bsAtoms);
- setSelectionSet(bs, null);
+ setSelectionSet(bs, 0);
}
void setMotionFixedAtoms(BS bs) {
Modified: trunk/Jmol/src/org/jmol/viewer/ShapeManager.java
===================================================================
--- trunk/Jmol/src/org/jmol/viewer/ShapeManager.java 2013-06-03 02:09:09 UTC
(rev 18277)
+++ trunk/Jmol/src/org/jmol/viewer/ShapeManager.java 2013-06-04 23:07:26 UTC
(rev 18278)
@@ -542,7 +542,7 @@
if (bsSubset != null) {
bsSelected = BSUtil.copy(viewer.getSelectionSet(true));
bsSelected.and(bsSubset);
- viewer.select(bsSelected, false, null, true);
+ viewer.select(bsSelected, false, 0, true);
BSUtil.invertInPlace(bsSelected, viewer.getAtomCount());
bsSelected.and(bsSubset);
}
@@ -570,7 +570,7 @@
setLabel(null, bs);
if (!isBond)
viewer.setBooleanProperty("bondModeOr", bondmode);
- viewer.select(bsSelected, false, null, true);
+ viewer.select(bsSelected, false, 0, true);
}
}
Modified: trunk/Jmol/src/org/jmol/viewer/StateManager.java
===================================================================
--- trunk/Jmol/src/org/jmol/viewer/StateManager.java 2013-06-03 02:09:09 UTC
(rev 18277)
+++ trunk/Jmol/src/org/jmol/viewer/StateManager.java 2013-06-04 23:07:26 UTC
(rev 18278)
@@ -224,10 +224,10 @@
: lastSelected);
BS bsSelected = (BS) getNoCase(saved, name);
if (bsSelected == null) {
- viewer.select(new BS(), false, null, false);
+ viewer.select(new BS(), false, 0, false);
return false;
}
- viewer.select(bsSelected, false, null, false);
+ viewer.select(bsSelected, false, 0, false);
return true;
}
Modified: trunk/Jmol/src/org/jmol/viewer/Viewer.java
===================================================================
--- trunk/Jmol/src/org/jmol/viewer/Viewer.java 2013-06-03 02:09:09 UTC (rev
18277)
+++ trunk/Jmol/src/org/jmol/viewer/Viewer.java 2013-06-04 23:07:26 UTC (rev
18278)
@@ -1661,7 +1661,7 @@
// delegated to SelectionManager
// ///////////////////////////////////////////////////////////////
- public void select(BS bs, boolean isGroup, Boolean addRemove, boolean
isQuiet) {
+ public void select(BS bs, boolean isGroup, int addRemove, boolean isQuiet) {
// Eval, ActionManager
if (isGroup)
bs = getUndeletedGroupAtomBits(bs);
@@ -1672,7 +1672,7 @@
@Override
public void setSelectionSet(BS set) {
// JmolViewer API only -- not used in Jmol
- select(set, false, null, true);
+ select(set, false, 0, true);
}
public void selectBonds(BS bs) {
@@ -1680,7 +1680,7 @@
}
public void displayAtoms(BS bs, boolean isDisplay, boolean isGroup,
- Boolean addRemove, boolean isQuiet) {
+ int addRemove, boolean isQuiet) {
// Eval
if (isGroup)
bs = getUndeletedGroupAtomBits(bs);
@@ -10005,4 +10005,8 @@
}
}
+ public void setBondParameters(int modelIndex, int i, float rad, int argb,
float trans) {
+ modelSet.setBondParameters(modelIndex, i, rad, argb, trans);
+ }
+
}
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
Jmol-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jmol-commits