private async void BtnMinimize_Click(object sender, RoutedEventArgs e) { try { var items = new List <LogicItem>(); int variables = 2; switch (TabInputMode.SelectedIndex) { case 0: items.AddRange(Minterm2x.GetSelected()); variables = 2; break; case 1: items.AddRange(Minterm3x.GetSelected()); variables = 3; break; case 2: items.AddRange(Minterm4x.GetSelected()); variables = 4; break; case 3: items.AddRange(Minterm5x.GetSelected()); variables = 5; break; case 4: variables = (int)EsListVarCount.Value; foreach (var line in TbListSet.Text.Split('\n')) { if (string.IsNullOrEmpty(line)) { continue; } items.Add(LogicItem.CreateFromMintermIndex(Convert.ToInt32(line.Replace("\r", "")), variables, true)); } foreach (var line in TbListDontCare.Text.Split('\n')) { if (string.IsNullOrEmpty(line)) { continue; } items.Add(LogicItem.CreateFromMintermIndex(Convert.ToInt32(line.Replace("\r", "")), variables, null)); } break; } string result = QuineMcclusky.GetSimplified(items, variables, (bool)CbHazardFree.IsChecked, (bool)RadioLSB.IsChecked); TbResults.Text = result; } catch (Exception ex) { await _app.ShowMessageBox("Error", ex.Message, DialogButtons.Ok); } }
private void BtnUnsetAll_Click(object sender, RoutedEventArgs e) { if (!_loaded) { return; } Minterm2x.SetAll(false); Minterm3x.SetAll(false); Minterm4x.SetAll(false); Minterm5x.SetAll(false); }
private void VarnameSet(object sender, RoutedEventArgs e) { if (!_loaded) { return; } Minterm2x.SwapVarnames(); Minterm3x.SwapVarnames(); Minterm4x.SwapVarnames(); Minterm5x.SwapVarnames(); }