/// <summary> /// Print number to TextAns TextBox in proper format. /// </summary> /// <param name="number">Pressed number in string format.</param> /// <returns>True, if number was printed, false otherwise.</returns> public bool PrintNumber(string number) { // remove "NumPad" from converted string number if NumPad numbers are used if (number.Contains("NumPad")) { number = number.Remove(0, 6); } // if result is in log, then clear log if (this.ResultInLog) { this.ClearLog(); MathProcessor.ClearResult(); } this.ResultInLog = false; // max length was reached if (this.textAns.Text.Length > TextAnsMaxLength && !this.IsAnswer) { return(false); } if (this.textAns.Text == "0" || this.IsAnswer || this.IsMemoryOperator) { this.textAns.Text = number; } else { this.textAns.Text += number; } this.textAns.Text = this.FormatNumericValue(this.textAns.Text); this.FixAnsFontSize(); this.IsAnswer = false; this.IsMemoryOperator = false; MathProcessor.WaitingForNumber = false; return(true); }
/// <summary> /// MainWindow construct. /// </summary> public MainWindow() { this.InitializeComponent(); this.outputProcessor = new OutputProcessor(this.TextAns, this.TextLog); this.mathProcessor = new MathProcessor(this.outputProcessor); }
/// <summary> /// Process C button click. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ButtonC_Click(object sender, RoutedEventArgs e) { this.outputProcessor.ClearAns(); this.outputProcessor.ClearLog(); MathProcessor.ClearResult(); }