//============================================================================* // PopulateLoadDataCaliberCombo() //============================================================================* private void PopulateLoadDataCaliberCombo() { m_fPopulating = true; LoadDataCaliberCombo.Items.Clear(); LoadDataCaliberCombo.Items.Add("Any Caliber"); cCaliber SelectCaliber = null; foreach (cCaliber CheckCaliber in m_DataFiles.CaliberList) { if (CheckCaliber.FirearmType == LoadDataFirearmTypeCombo.Value) { bool fCaliberUsed = false; foreach (cLoad Load in m_DataFiles.LoadList) { if (CheckCaliber.CompareTo(Load.Caliber) == 0 && (!m_DataFiles.Preferences.HideUncheckedCalibers || CheckCaliber.Checked)) { fCaliberUsed = true; break; } } if (fCaliberUsed) { cCaliber.CurrentFirearmType = CheckCaliber.FirearmType; LoadDataCaliberCombo.Items.Add(CheckCaliber); if (CheckCaliber.CompareTo(m_DataFiles.Preferences.LastLoadDataCaliberSelected) == 0) { SelectCaliber = CheckCaliber; } } } } if (SelectCaliber != null) { LoadDataCaliberCombo.SelectedItem = SelectCaliber; } else { if (LoadDataCaliberCombo.Items.Count > 0) { LoadDataCaliberCombo.SelectedIndex = 0; } } m_fPopulating = false; PopulateLoadDataBulletCombo(); }
//============================================================================* // UpdateCaliber() //============================================================================* private void UpdateCaliber(cCaliber OldCaliber, cCaliber NewCaliber) { //----------------------------------------------------------------------------* // Find the Caliber //----------------------------------------------------------------------------* foreach (cCaliber CheckCaliber in m_DataFiles.CaliberList) { //----------------------------------------------------------------------------* // See if this is the same Caliber //----------------------------------------------------------------------------* if (CheckCaliber.CompareTo(OldCaliber) == 0) { //----------------------------------------------------------------------------* // Update the current Caliber record //----------------------------------------------------------------------------* CheckCaliber.Copy(NewCaliber); //----------------------------------------------------------------------------* // Update the Caliber on the Caliber tab //----------------------------------------------------------------------------* m_CalibersListView.UpdateCaliber(CheckCaliber, true); //----------------------------------------------------------------------------* // Update the other tabs //----------------------------------------------------------------------------* InitializeFirearmTab(); InitializeSuppliesTab(); InitializeLoadDataTab(); InitializeBatchTab(); InitializeBallisticsTab(); return; } } //----------------------------------------------------------------------------* // If the Caliber was not found, add it //----------------------------------------------------------------------------* AddCaliber(NewCaliber); }
//============================================================================* // HasCaliber() //============================================================================* public bool HasCaliber(cCaliber Caliber, bool fHideCalibers = false) { if (m_BulletCaliberList == null) { m_BulletCaliberList = new cBulletCaliberList(); } foreach (cBulletCaliber CheckCaliber in m_BulletCaliberList) { if (CheckCaliber.CompareTo(Caliber) == 0) { if (!fHideCalibers || CheckCaliber.Caliber.Checked) { return(true); } } } return(false); }
//============================================================================* // AddCaliber() //============================================================================* private void AddCaliber(cCaliber Caliber) { //----------------------------------------------------------------------------* // If the Caliber already exists, update the existing one and exit //----------------------------------------------------------------------------* foreach (cCaliber CheckCaliber in m_DataFiles.CaliberList) { if (CheckCaliber.CompareTo(Caliber) == 0) { UpdateCaliber(CheckCaliber, Caliber); return; } } //----------------------------------------------------------------------------* // Add the new caliber to the list //----------------------------------------------------------------------------* m_DataFiles.CaliberList.Add(Caliber); //----------------------------------------------------------------------------* // Add the new Caliber to the Caliber tab //----------------------------------------------------------------------------* m_CalibersListView.AddCaliber(Caliber, true); //----------------------------------------------------------------------------* // Update the Load Data Tab Caliber Combo //----------------------------------------------------------------------------* PopulateLoadDataCaliberCombo(); PopulateBatchCaliberCombo(); PopulateBallisticsCaliberCombo(); SetCaliberCount(); }
//============================================================================* // AddCaliber() //============================================================================* public bool AddCaliber(cCaliber Caliber, bool fCountOnly = false) { m_nImportCount++; foreach (cCaliber CheckCaliber in this) { if (CheckCaliber.CompareTo(Caliber) == 0) { m_nUpdateCount += CheckCaliber.Append(Caliber, fCountOnly); return(false); } } if (!fCountOnly) { Add(Caliber); } m_nNewCount++; return(true); }