private void Run(TabBase fromTab) { commandShell.ClearLog(); // Prepare to start task. _runningTab = fromTab ?? _tabs[tabs.SelectedIndex]; if (!_runningTab.Run()) { _runningTab = null; } if (_runningTab == null) // note: may be cleared by Run() (e.g., Cancel in DeleteWindow) { return; } foreach (var runButton in _runButtons) { runButton.Text = "Stop"; } buttonStop.Enabled = true; EnableButtonSelectFailedTests(false); // Until we have failures to select AcceptButton = null; // Update elapsed time display. ResetElapsedTime(); commandShell.RunStartTime = _runStartTime; if (_runTimer != null) { _runTimer.Stop(); _runTimer.Dispose(); } _runTimer = new Timer { Interval = 1000 }; _runTimer.Tick += (s, a) => { var elapsedTime = RunElapsedTime; statusRunTime.Text = "{0}:{1:D2}:{2:D2}".With(elapsedTime.Hours, elapsedTime.Minutes, elapsedTime.Seconds); }; _runTimer.Start(); }
public void RunByTimer(TabBase fromTab) { RunUI(() => Run(fromTab)); }
protected override void OnClosed(EventArgs e) { _runningTab = null; commandShell.Stop(); Settings.Default.SavedSettings = SaveSettings(); Settings.Default.Save(); base.OnClosed(e); }