private void Evaluate() { IEnumerable <string> variablesList = Variables.Split(',').Where(s => !String.IsNullOrEmpty(s)); if (variablesList.Count() == 0) { MessageBox.Show("No variable names given.\n\nType all desired variable names (seperated by commas) into the variables textbox.", "Error"); return; } Steps1.Clear(); Steps2.Clear(); OnPropertyChanged(nameof(Steps1)); OnPropertyChanged(nameof(Steps2)); if (!String.IsNullOrWhiteSpace(InputText)) { Steps1 = EvaluateExpression(variablesList, InputText); OnPropertyChanged(nameof(Steps1)); } if (!String.IsNullOrWhiteSpace(InputText2)) { Steps2 = EvaluateExpression(variablesList, InputText2); OnPropertyChanged(nameof(Steps2)); } checkEquivalence(); }
private void checkEquivalence() { if (Steps1 != null && Steps1.Count > 0 && Steps2 != null && Steps2.Count > 0) { if (Steps1.Last().Expression == Steps2.Last().Expression) { ResultText = "Equivalent!"; ResultColor = Brushes.LightGreen; } else { ResultText = "Not equivalent"; ResultColor = Brushes.LightCoral; } } }