private void BtnConSave_Click(object sender, EventArgs e) { int conid = (int)lvConditions.SelectedItems[0].Tag; Condition con; string strName = TxtConName.Text; string strType = ""; string strValue = ""; switch (cbConType.SelectedItem) { case "Prefix Only": strType = "Prefix"; strValue = TxtCon1.Text.ToUpper(); con = new PreCondition(conid, strName, strValue); break; case "Suffix Only": strType = "Suffix"; strValue = TxtCon1.Text.ToUpper(); con = new SufCondition(conid, strName, strValue); break; case "Prefix and Suffix": strType = "Prefix/Suffix"; string str1 = TxtCon1.Text.ToUpper(); string str2 = TxtCon2.Text.ToUpper(); strValue = str1 + "/" + str2; con = new PreSufCondition(conid, strName, str1, str2); break; case "Specific Callsign": strType = "Callsign"; strValue = TxtCon1.Text.ToUpper(); con = new CsCondition(conid, strName, strValue); break; default: con = new Condition(conid, ""); break; } Position pos = (Position)lvPositions.SelectedItems[0].Tag; pos.listConditions[pos.listConditions.IndexOf(Condition.Find(pos, conid))] = con; lvConditions.SelectedItems[0].SubItems[0].Text = strName; lvConditions.SelectedItems[0].SubItems[1].Text = strType; lvConditions.SelectedItems[0].SubItems[2].Text = strValue; lvPositions.SelectedItems[0].SubItems[2].Text = pos.listConditions.Count.ToString(); ResizeListViewColumns(lvConditions); }
private void lvConditions_SelectedIndexChanged(object sender, EventArgs e) { if (lvConditions.SelectedItems.Count > 0) { int conid = (int)lvConditions.SelectedItems[0].Tag; Condition con = Condition.Find((Position)lvPositions.SelectedItems[0].Tag, conid); TxtConName.Text = con.strName; if (con is PreCondition) { PreCondition pcon = (PreCondition)con; cbConType.SelectedIndex = 0; LblCon1.Text = "Prefix:"; TxtCon1.Text = pcon.strPre; LblCon2.Hide(); TxtCon2.Hide(); } else if (con is SufCondition) { SufCondition scon = (SufCondition)con; cbConType.SelectedIndex = 1; LblCon1.Text = "Suffix:"; TxtCon1.Text = scon.strSuf; LblCon2.Hide(); TxtCon2.Hide(); } else if (con is PreSufCondition) { PreSufCondition pscon = (PreSufCondition)con; cbConType.SelectedIndex = 2; LblCon1.Text = "Prefix:"; TxtCon1.Text = pscon.strPre; LblCon2.Text = "Suffix:"; TxtCon2.Text = pscon.strSuf; LblCon2.Show(); TxtCon2.Show(); } else if (con is CsCondition) { CsCondition cscon = (CsCondition)con; cbConType.SelectedIndex = 3; LblCon1.Text = "Callsign:"; TxtCon1.Text = cscon.strCs; LblCon2.Hide(); TxtCon2.Hide(); } else { cbConType.SelectedIndex = -1; LblCon1.Hide(); TxtCon1.Hide(); LblCon2.Hide(); TxtCon2.Hide(); BtnConSave.Hide(); } tlpConditions.Show(); } else { tlpConditions.Hide(); } }
private void lvPositions_SelectedIndexChanged(object sender, EventArgs e) { if (lvPositions.SelectedItems.Count > 0) { tlpConditions.Hide(); Position posTemp = (Position)lvPositions.SelectedItems[0].Tag; cbDetParent.Items.Clear(); cbDetParent.Items.Add(new ComboBoxItem("(none)", null)); List <Position> descendents = posTemp.FindDescendents(); foreach (ListViewItem lvi in lvPositions.Items) { if (lvi != lvPositions.SelectedItems[0] && !descendents.Contains((Position)lvi.Tag)) { Position pos = (Position)lvi.Tag; cbDetParent.Items.Add(new ComboBoxItem(pos.strName, pos)); } } TxtDetName.Text = posTemp.strName; foreach (ComboBoxItem cbi in cbDetParent.Items) { if ((Position)cbi.Value == posTemp.posParent) { cbDetParent.SelectedItem = cbi; } } lvConditions.Items.Clear(); for (int i = 0; i < posTemp.listConditions.Count; i++) { Condition con = posTemp.listConditions[i]; string[] strData = null; if (con is PreCondition) { PreCondition pcon = (PreCondition)con; strData = new string[] { pcon.strName, "Prefix", pcon.strPre }; } else if (con is SufCondition) { SufCondition scon = (SufCondition)con; strData = new string[] { scon.strName, "Suffix", scon.strSuf }; } else if (con is PreSufCondition) { PreSufCondition pscon = (PreSufCondition)con; strData = new string[] { pscon.strName, "Prefix/Suffix", pscon.strPre + "/" + pscon.strSuf }; } else if (con is CsCondition) { CsCondition cscon = (CsCondition)con; strData = new string[] { cscon.strName, "Callsign", cscon.strCs }; } else { strData = new string[] { "", "None", "" }; } ListViewItem lviTemp = new ListViewItem(strData); lviTemp.Tag = con.intID; lvConditions.Items.Add(lviTemp); } tlpDetails.Show(); } else { tlpDetails.Hide(); } ResizeListViewColumns(lvConditions); }