private void btnCalc_Click(object sender, EventArgs e) { errorProvider.Clear(); warningProvider.Clear(); if (txtTarget.Text == "") { errorProvider.SetError(txtTarget, "cannot be empty"); return; } else if (!double.TryParse(txtTarget.Text, out _)) { errorProvider.SetError(txtTarget, "NaN"); return; } else if (txtFosc.Text == "") { errorProvider.SetError(txtFosc, "cannot be empty"); return; } else if (!double.TryParse(txtFosc.Text, out _)) { errorProvider.SetError(txtFosc, "NaN"); return; } else if (timer.SelectedIndex < 0) { errorProvider.SetError(timer, "no timer selected"); return; } TimerCalc timerCalc = new TimerCalc(txtFosc.Text, txtTarget.Text, prescaler, postscaler, txtScalerOverride.Text, timer.Text, chckCalcScalers.Checked); log(timerCalc.logv); txtAccuracy.Text = timerCalc.accuracy.ToString(); txtActualPeriod.Text = timerCalc.actual.ToString(); txtPreload.Text = timerCalc.preload.ToString(); txtFormattedCode.Text = timerCalc.timerCode; txtSteps.Text = timerCalc.actualTicks.ToString(); txtDeviation.Text = timerCalc.deviation.ToString(); if (int.Parse(txtSteps.Text) > 255) { warningProvider.SetError(txtSteps, "maximum exceeded"); } }
private void timerCode_SelectedIndexChanged(object sender, EventArgs e) { txtTimerCode.Text = TimerCalc.getTimerCode(timerCode.Text); }