/// <summary> /// Start pool miners. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnStartPoolMiningClick(object sender, EventArgs e) { lbMiningPools.Enabled = MinerManager.IsMinig; tbPoolLogin.Enabled = MinerManager.IsMinig; tbPoolPassword.Enabled = MinerManager.IsMinig; tbPoolMinerThreads.Enabled = MinerManager.IsMinig; chkShowPoolMinerWindows.Enabled = MinerManager.IsMinig; if (MinerManager.IsMinig) { // Stop MinerManager.Exit(); btnStartPoolMining.Text = "Start mining"; } else { // Start if (!string.IsNullOrEmpty(lbMiningPools.Text) && !string.IsNullOrEmpty(tbPoolLogin.Text) && !string.IsNullOrEmpty(tbPoolPassword.Text) && tbPoolMinerThreads.Value != 0M) { MinerManager.Start( lbMiningPools.Text, tbPoolLogin.Text, tbPoolPassword.Text, (int)tbPoolMinerThreads.Value, chkShowPoolMinerWindows.Checked); btnStartPoolMining.Text = string.Format("Stop miners ({0})", MinerManager.Processes.Count); } } }
/// <summary> /// Start pool miners. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnStartPoolMiningClick(object sender, RoutedEventArgs e) { lbMiningPools.IsEnabled = MinerManager.IsMinig; tbPoolLogin.IsEnabled = MinerManager.IsMinig; tbPoolPassword.IsEnabled = MinerManager.IsMinig; tbPoolMinerThreads.IsEnabled = MinerManager.IsMinig; chkShowPoolMinerWindows.IsEnabled = MinerManager.IsMinig; if (MinerManager.IsMinig) { // Stop MinerManager.Exit(); btnStartPoolMining.Content = "Start mining"; } else { // Start if (lbMiningPools.SelectedValue != null && !string.IsNullOrEmpty(tbPoolLogin.Text) && !string.IsNullOrEmpty(tbPoolPassword.Text) && tbPoolMinerThreads.Value.HasValue) { MinerManager.Start( lbMiningPools.SelectedValue.ToString(), tbPoolLogin.Text, tbPoolPassword.Text, tbPoolMinerThreads.Value.Value, chkShowPoolMinerWindows.IsChecked.GetValueOrDefault()); btnStartPoolMining.Content = string.Format("Stop miners ({0})", MinerManager.Processes.Count); } } }
/// <summary> /// When the form closes, make sure the wallet stops refreshing and all work is saved. /// </summary> /// <param name="e"></param> protected async override void OnClosing(System.ComponentModel.CancelEventArgs e) { if (!skipExitWrappers) { Cursor = Cursors.WaitCursor; SetStatus(WalletStatus.Ready, "Exiting..."); skipExitWrappers = true; e.Cancel = true; Progress progess = new Progress(); progess.Show(this); var tf = new TaskFactory(); progess.SetProgress("Stopping miners", 0); await tf.StartNew(() => MinerManager.Exit()); progess.SetProgress("Stopping wallet", 33); await tf.StartNew(() => Wallet.Exit()); progess.SetProgress("Stopping daemon", 66); await tf.StartNew(() => Daemon.Exit()); Close(); } }
/// <summary> /// When the form closes, make sure the wallet stops refreshing and all work is saved. /// </summary> /// <param name="e"></param> protected override void OnClosing(System.ComponentModel.CancelEventArgs e) { Cursor = Cursors.Wait; SetStatus(WalletStatus.Ready, "Waiting for daemon to exit..."); MinerManager.Exit(); Wallet.Exit(); Daemon.Exit(); base.OnClosing(e); }