For FG 2.6, I decided that "cancel isolate" needs to blank hideMode. Otherwise, next chain you click is hidden! (bug!) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Hide can be used before or after Isolate. Items checked in Hide are not checked in Isolate. If a checkbox-category is hidden, and the same checkbox is clicked in Isolate, option is offered to unhide and isolate that category (via confirm dialog). If a checkbox-category is isolated, then hidden, nothing remains visible. Left this alone as it seems obvious and recovery is just by unchecking. When hiding is inverted, isolate is disallowed. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Isolate cannot be re-executed once something is isolated. After something is isolated, it is automatically centered. After isolation is undone, the visible atoms (some may remain hidden) are automatically centered. Isolate and Hide share makeHideHelpDetails() in help.js. makeIsolateHelp() sets isolateMode true, then calls makeHideHelpDetails(). isolateMode controls behavior after something is clicked or checked. Since isolate is limited to a single entity, after execution, isolateMode goes false. isolatedDescription goes nonblank with the text/echo description of what is isolated. isolatedAtomExpression contains the atom expression for isolation. ~hidden4isolated_jdef contains the isolated atoms. NOTE: In FGiJ 2.2, ~hidden_jdef was redefined to mean (~hidden4hide_jdef or ~hidden4isolate_jdef) The hidden arrays are cleared! Thus hiddenTot goes back to pre-isolate. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Execution: see makeIsolateHelp() above. isolateMode is true pickcall.js handles clicking. pickcall.js first populates the hidden??? arrays, then fills isolatedDescription and isolatedAtomExpression, then clears the last entry in the hidden??? arrays. makeIsolateSpt() (jcontrol.js) is called in doMolViewSpt() (scripts.js) just before makeHideSpt(). makeIsolateSpt() (jcontrol.js) does not center the isolated moiety. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Clearing (jcontrol.js): undoIsolated() calls clearIsolated() unHideAll() calls clearHidden() unHideLast() isolatedDescription isolatedAtomExpression - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -