private bool FilterProjectilesData(object item) { if (!Weapons) { return(false); } UIModelProjectile projectile = item as UIModelProjectile; if ((Size_S && projectile.Size == "S") || (m_Size_M && projectile.Size == "M") || (m_Size_L && projectile.Size == "L") || (m_Size_XL && projectile.Size == "XL") || (m_Size_Other && (projectile.Size != "S" && projectile.Size != "M" && projectile.Size != "L" && projectile.Size != "XL"))) { List <string> searchArray = new List <string>(); List <string> searchArrayExceptNegatives = new List <string>(); if (this.SearchText != null && this.SearchText.Length > 0) { searchArray = this.SearchText.Split(' ').ToList(); searchArrayExceptNegatives = searchArray.Where(x => !x.StartsWith("-")).ToList(); } // filter entered if (searchArray.Count > 0) { bool found = false; foreach (string searchString in searchArray) { if (searchString.Length > 0) { if (searchString.StartsWith("-")) { if (projectile.Name.ToUpper().Contains(searchString.Replace("-", "").ToUpper())) { return(false); } } if (searchArrayExceptNegatives.Count == 0 || projectile.Name.ToUpper().Contains(searchString.ToUpper())) { found = true; } } } return(found); } return(true); } return(false); }
private bool FilterSpecificProjectile(object item) { UIModelProjectile projectile = item as UIModelProjectile; List <string> searchArray = new List <string>(); bool found = false; if (m_SpecificWeaponFilter.Length > 0) { if (projectile.Name.ToUpper().Contains(m_SpecificWeaponFilter.ToUpper())) { DoubleClickedWeapon = ""; found = true; } DoubleClickedWeapon = ""; } else { return(true); } return(found); }
public void ReadAllProjectiles(List <FileInfo> xmlProjectilesList) { string folderPath = this.UIModel.Path.Replace(@"\\", @"\"); if (!Directory.Exists(folderPath + this.PathToProjectiles)) { MessageBox.Show("No valid weapons found.", "No data found."); } foreach (var item in xmlProjectilesList) { UIModelProjectile projectile = m_XmlExtractor.ReadSingleProjectile(item); if (projectile != null && projectile.Name.Length > 1) { this.UIModel.UIModelProjectiles.Add(projectile); } } this.UIModel.UIModelProjectilesVanilla.Clear(); foreach (var item in this.UIModel.UIModelProjectiles) { this.UIModel.UIModelProjectilesVanilla.Add(item.Copy()); } }
private bool FilterWaresData(object item) { UIModelWare ware = item as UIModelWare; if (Wares) { if ((Size_S && ware.Size == "S") || (m_Size_M && ware.Size == "M") || (m_Size_L && ware.Size == "L") || (m_Size_XL && ware.Size == "XL") || (m_Size_Other && (ware.Size != "S" && ware.Size != "M" && ware.Size != "L" && ware.Size != "XL"))) { List <string> searchArray = new List <string>(); List <string> searchArrayExceptNegatives = new List <string>(); if (this.SearchText != null && this.SearchText.Length > 0) { searchArray = this.SearchText.Split(' ').ToList(); searchArrayExceptNegatives = searchArray.Where(x => !x.StartsWith("-")).ToList(); } // filter entered if (searchArray.Count > 0) { bool found = false; foreach (string searchString in searchArray) { if (searchString.Length > 0) { if (searchString.StartsWith("-")) { if (ware.Name.ToUpper().Contains(searchString.Replace("-", "").ToUpper())) { return(false); } } if (searchArrayExceptNegatives.Count == 0 || ware.Name.ToUpper().Contains(searchString.ToUpper())) { found = true; } } } return(found); } return(true); } return(false); } else { bool found = false; foreach (var s in m_ShipsDataView) { UIModelShip ship = s as UIModelShip; if (ship != null && ship.Name.Contains(ware.Name)) { return(true); } } foreach (var e in m_EnginesDataView) { UIModelEngine engine = e as UIModelEngine; if (engine != null && engine.Name.Contains(ware.Name)) { return(true); } } foreach (var s in m_ShieldsDataView) { UIModelShield shield = s as UIModelShield; if (shield != null && shield.Name.Contains(ware.Name)) { return(true); } } foreach (var p in m_ProjectilesDataView) { UIModelProjectile weapon = p as UIModelProjectile; if (weapon != null && weapon.Name.Contains(ware.Name)) { return(true); } } foreach (var w in m_WeaponsDataView) { UIModelWeapon weapon = w as UIModelWeapon; if (weapon != null && weapon.Name.Contains(ware.Name)) { return(true); } } foreach (var w in m_ProjectilesDataView) { UIModelWeapon weapon = w as UIModelWeapon; if (weapon != null && weapon.Name.Contains(ware.Name)) { return(true); } } foreach (var m in m_MissilesDataView) { UIModelMissile missile = m as UIModelMissile; if (missile != null && missile.Name.Contains(ware.Name)) { return(true); } } return(found); } }