/// <summary> /// Resets mode Counters to zero /// </summary> public void ResetModeCounters() { if (logTextBox.InvokeRequired) { ResetModeCountersSafely d = new ResetModeCountersSafely(ResetModeCounters); Invoke(d, new object[] { }); } else { foreach (DictionaryEntry modeEntry in modeManager.GetModeHashtable()) { Services.Mode mode = modeEntry.Value as Services.Mode; Label modeCounter = mode.GetCounter(); if (modeCounter != null) { modeCounter.BackColor = SystemColors.Control; modeCounter.Text = "0"; } mode.ResetCount(); } } }
/// <summary> /// Sets active mode. /// </summary> /// <param name="activeMode">Currently active mode.</param> public void SetActiveMode(Mode activeMode) { NewActiveModeEventArgs args = new NewActiveModeEventArgs(); if (activeMode != null) { args.lastActive = this.activeMode.GetButton(); } else { args.lastActive = null; } args.newActive = activeMode.GetButton(); this.activeMode = activeMode; newActiveModeEvent(this, args); }
/// <summary> /// Adds new Mode to the Hashtable /// </summary> /// <param name="mode">Mode to be added to the Hashtable</param> public void AddMode(Mode mode) { modes.Add(mode.GetButton(), mode); }
/// <summary> /// Sets active mode via button. /// </summary> /// <param name="modeButton">Button of currently active mode.</param> public void SetActiveMode(Button modeButton) { NewActiveModeEventArgs args = new NewActiveModeEventArgs(); if (activeMode != null) { args.lastActive = this.activeMode.GetButton(); } else { args.lastActive = null; } args.newActive = modeButton; this.activeMode = (Mode)modes[modeButton]; newActiveModeEvent(this, args); }