/// <summary> /// A roaming manipulator is not part of a <see cref="ManipulatorManagerBase"/> but /// is added to whichever is active /// </summary> /// <remarks> /// ATTN: !!! Incomplete roaming manipulators implementation: !!! /// - Only those events used by <see cref="ChurchManipulator"/> are actually called /// - New roaming manipulators are not automatically persisted /// - etc.. /// </remarks> private void ToggleRoamingManipulator(ManipulatorBase manipulator) { Debug.Assert(manipulator is ChurchManipulator, "See remark above. RoamingManipulators only implemented for the Church."); if (_roaming.Contains(manipulator)) { _roaming.Remove(manipulator); } else { _roaming.Add(manipulator); } }