protected virtual void OnCheckboxUnsetModified(Ucbx u) { logger.ConditionalDebug(ConfigBase.cultF, "OnCheckboxUnsetModified, checkbox \'{0}\'", cbuNames[(int)u]); EventHandler <CheckboxUnsetModifiedEventArgs> eventHandler = CheckboxUnsetModifiedEvent; eventHandler?.Invoke(this, new CheckboxUnsetModifiedEventArgs(u, cbuNames[(int)u])); }
public void TestUnsetBehConf() { var ubc = new UnsetBehConf(); for (Ucbx u = Ucbx.bold; u < Ucbx.last; u++) { ubc.SetCbuFlag(u, true); ubc.SetCbuFlag(u, false); Assert.IsFalse(ubc.GetCbuFlag(u)); UndoFactory.UndoLastAction(); Assert.IsTrue(ubc.GetCbuFlag(u)); UndoFactory.RedoLastCanceledAction(); Assert.IsFalse(ubc.GetCbuFlag(u)); UndoFactory.UndoLastAction(); Assert.IsTrue(ubc.GetCbuFlag(u)); } ubc.Reset(); for (Ucbx u = Ucbx.bold; u < Ucbx.last; u++) { Assert.IsFalse(ubc.GetCbuFlag(u)); } UndoFactory.UndoLastAction(); for (Ucbx u = Ucbx.bold; u < Ucbx.last; u++) { Assert.IsTrue(ubc.GetCbuFlag(u)); } UndoFactory.RedoLastCanceledAction(); for (Ucbx u = Ucbx.bold; u < Ucbx.last; u++) { Assert.IsFalse(ubc.GetCbuFlag(u)); } }
public UnsetBehAction(string name, UnsetBehConf inUbc, Ucbx inUcbx, bool inPrevFlag, bool inNewFlag) : base(name) { ubc = inUbc; flag = inUcbx; prevFlagValue = inPrevFlag; newFlagValue = inNewFlag; }
private bool IsInEventList(Ucbx flag) { foreach (CheckboxUnsetModifiedEventArgs e in checkboxUnsetModifiedEvents) { if (e.unsetCBX == flag) { return(true); } } return(false);; }
/// <summary> /// N'est <c>public</c> que pour les annulations. /// </summary> /// <param name="flag">Le flag à modifier.</param> /// <param name="val">La nouvelle valeur.</param> public void SetCbuFlag(Ucbx flag, bool val) { logger.ConditionalDebug("SetCbuFlag flag: \'{0}\', val: {1}", flag, val); int btuIndex = (int)flag; if (act[btuIndex] != val) // Pour éviter un évènement si rien ne change { UndoFactory.ExceutingAction(new UnsetBehAction("Modifier flag avancé", this, flag, act[btuIndex], val)); act[btuIndex] = val; OnCheckboxUnsetModified((Ucbx)btuIndex); if (btuIndex == (int)Ucbx.all) { for (int i = 0; i < (int)Ucbx.all; i++) { act[i] = val; OnCheckboxUnsetModified((Ucbx)i); } } } }
public CheckboxUnsetModifiedEventArgs(Ucbx inUnsetCBX, string inUnsetCBName) { unsetCBX = inUnsetCBX; unsetCBName = inUnsetCBName; }
/// <summary> /// Donne la valeur du flag identifié par <paramref name="u"/>. /// </summary> /// <param name="u">Le flag dont on veut connaître la valeur.</param> /// <returns>La valeur du flag.</returns> /// <exception cref="IndexOutOfRangeException"> si <paramref name="u"/> est égal à /// <c>Ucbx.last</c></exception> public bool GetCbuFlag(Ucbx u) => act[(int)u];