private void PopulateChampionChangeBrowser(TreeNode tn) { foreach (var diff_elem in diff_calculator.DifferingChampions) { bool passes_filter = false; Pox.Diff.DifferenceLink diff_link = new Pox.Diff.DifferenceLink() { ElemType = Pox.DataElement.ElementType.CHAMPION }; if (diff_calculator.PreviousDatabase.Champions.ContainsKey(diff_elem.id)) { if (ElementPassesFilter(diff_calculator.PreviousDatabase.Champions[diff_elem.id])) { passes_filter = true; } diff_link.PreviousElement = diff_calculator.PreviousDatabase.Champions[diff_elem.id]; } if (diff_calculator.CurrentDatabase_ref.Champions.ContainsKey(diff_elem.id)) { if ((!passes_filter) && (ElementPassesFilter(diff_calculator.CurrentDatabase_ref.Champions[diff_elem.id]))) { passes_filter = true; } diff_link.CurrentElement = diff_calculator.CurrentDatabase_ref.Champions[diff_elem.id]; } if (!passes_filter) { continue; } tn.Nodes.Add(new TreeNode() { Text = diff_link.ToString(), Tag = diff_link }); } tn.Text = string.Format("Champions ({0} changes)", tn.Nodes.Count); }
private void PopulateFactionChangeBrowser(TreeNode tn) { // champions foreach (var diff_elem in diff_calculator.DifferingChampions) { bool contains_faction = false; bool passes_filter = false; Pox.Diff.DifferenceLink diff_link = new Pox.Diff.DifferenceLink() { ElemType = Pox.DataElement.ElementType.CHAMPION }; if (diff_calculator.PreviousDatabase.Champions.ContainsKey(diff_elem.id)) { if (ElementPassesFilter(diff_calculator.PreviousDatabase.Champions[diff_elem.id])) { passes_filter = true; } if (diff_calculator.PreviousDatabase.Champions[diff_elem.id].Faction.Contains(tn.Name)) { diff_link.PreviousElement = diff_calculator.PreviousDatabase.Champions[diff_elem.id]; contains_faction = true; } } if (diff_calculator.CurrentDatabase_ref.Champions.ContainsKey(diff_elem.id)) { if ((!passes_filter) && (ElementPassesFilter(diff_calculator.CurrentDatabase_ref.Champions[diff_elem.id]))) { passes_filter = true; } if (diff_calculator.CurrentDatabase_ref.Champions[diff_elem.id].Faction.Contains(tn.Name)) { diff_link.CurrentElement = diff_calculator.CurrentDatabase_ref.Champions[diff_elem.id]; contains_faction = true; } } if (!contains_faction) { continue; } if (!passes_filter) { continue; } tn.Nodes.Add(new TreeNode() { Text = diff_link.ToString(), Tag = diff_link }); } // spells foreach (var diff_elem in diff_calculator.DifferingSpells) { bool contains_faction = false; bool passes_filter = false; Pox.Diff.DifferenceLink diff_link = new Pox.Diff.DifferenceLink() { ElemType = Pox.DataElement.ElementType.SPELL }; if (diff_calculator.PreviousDatabase.Spells.ContainsKey(diff_elem.id)) { if (ElementPassesFilter(diff_calculator.PreviousDatabase.Spells[diff_elem.id])) { passes_filter = true; } if (diff_calculator.PreviousDatabase.Spells[diff_elem.id].Faction.Contains(tn.Name)) { diff_link.PreviousElement = diff_calculator.PreviousDatabase.Spells[diff_elem.id]; contains_faction = true; } } if (diff_calculator.CurrentDatabase_ref.Spells.ContainsKey(diff_elem.id)) { if ((!passes_filter) && (ElementPassesFilter(diff_calculator.CurrentDatabase_ref.Spells[diff_elem.id]))) { passes_filter = true; } if (diff_calculator.CurrentDatabase_ref.Spells[diff_elem.id].Faction.Contains(tn.Name)) { diff_link.CurrentElement = diff_calculator.CurrentDatabase_ref.Spells[diff_elem.id]; contains_faction = true; } } if (!contains_faction) { continue; } if (!passes_filter) { continue; } tn.Nodes.Add(new TreeNode() { Text = diff_link.ToString(), Tag = diff_link }); } // relics foreach (var diff_elem in diff_calculator.DifferingRelics) { bool contains_faction = false; bool passes_filter = false; Pox.Diff.DifferenceLink diff_link = new Pox.Diff.DifferenceLink() { ElemType = Pox.DataElement.ElementType.RELIC }; if (diff_calculator.PreviousDatabase.Relics.ContainsKey(diff_elem.id)) { if (ElementPassesFilter(diff_calculator.PreviousDatabase.Relics[diff_elem.id])) { passes_filter = true; } if (diff_calculator.PreviousDatabase.Relics[diff_elem.id].Faction.Contains(tn.Name)) { diff_link.PreviousElement = diff_calculator.PreviousDatabase.Relics[diff_elem.id]; contains_faction = true; } } if (diff_calculator.CurrentDatabase_ref.Relics.ContainsKey(diff_elem.id)) { if ((!passes_filter) && (ElementPassesFilter(diff_calculator.CurrentDatabase_ref.Relics[diff_elem.id]))) { passes_filter = true; } if (diff_calculator.CurrentDatabase_ref.Relics[diff_elem.id].Faction.Contains(tn.Name)) { diff_link.CurrentElement = diff_calculator.CurrentDatabase_ref.Relics[diff_elem.id]; contains_faction = true; } } if (!contains_faction) { continue; } if (!passes_filter) { continue; } tn.Nodes.Add(new TreeNode() { Text = diff_link.ToString(), Tag = diff_link }); } // equipments foreach (var diff_elem in diff_calculator.DifferingEquipments) { bool contains_faction = false; bool passes_filter = false; Pox.Diff.DifferenceLink diff_link = new Pox.Diff.DifferenceLink() { ElemType = Pox.DataElement.ElementType.EQUIPMENT }; if (diff_calculator.PreviousDatabase.Equipments.ContainsKey(diff_elem.id)) { if (ElementPassesFilter(diff_calculator.PreviousDatabase.Equipments[diff_elem.id])) { passes_filter = true; } if (diff_calculator.PreviousDatabase.Equipments[diff_elem.id].Faction.Contains(tn.Name)) { diff_link.PreviousElement = diff_calculator.PreviousDatabase.Equipments[diff_elem.id]; contains_faction = true; } } if (diff_calculator.CurrentDatabase_ref.Equipments.ContainsKey(diff_elem.id)) { if ((!passes_filter) && (ElementPassesFilter(diff_calculator.CurrentDatabase_ref.Equipments[diff_elem.id]))) { passes_filter = true; } if (diff_calculator.CurrentDatabase_ref.Equipments[diff_elem.id].Faction.Contains(tn.Name)) { diff_link.CurrentElement = diff_calculator.CurrentDatabase_ref.Equipments[diff_elem.id]; contains_faction = true; } } if (!contains_faction) { continue; } if (!passes_filter) { continue; } tn.Nodes.Add(new TreeNode() { Text = diff_link.ToString(), Tag = diff_link }); } tn.Text = string.Format("{0} ({1} changes)", tn.Name, tn.Nodes.Count); }