private void UpdateNotes(ListView lv){ BusinessBase note = (BusinessBase)lv.SelectedItems[0].Tag; string text; if(note != null) { if(note is Defect) text = ((Defect)note).Desc; else text = ((Business.Message)note).Text; InputModelLarge im = new InputModelLarge(text); if (im.ShowDialog(this) == DialogResult.OK){ if(note is Defect) text = ((Defect)note).Desc = im.Answer; else text = ((Business.Message)note).Text = im.Answer; if (note.IsValid){ note.Update(); lv.SelectedItems[0].Text = text; }else{ MessageBox.Show(this, note.BrokenRules.ToString(), "QED"); } } } }
private void mnuItemNotesAdd_Click(object sender, System.EventArgs e) { ListView lv = (ListView)this.ActiveControl; ListViewItem item = new ListViewItem(); QED.Business.Message msg = null; InputModal imRollDef = null; InputModelLarge im = null; const string DEFECT = "Description"; const string EFFORT = "Enter Effort: "; Defect def = null; if (lv.Name != "lvRollDefectNotes"){ im = new InputModelLarge(); }else{ if (_rollout.Efforts.Count > 0){ imRollDef = new InputModal("Enter Defect Info", DEFECT); ComboBox cb = new ComboBox(); cb.Name = EFFORT; cb.DropDownStyle = ComboBoxStyle.DropDownList; cb.DisplayMember = "ExternalId_Desc"; foreach(Effort eff in _rollout.Efforts){ cb.Items.Add(eff); } imRollDef.AddToPanel(cb); }else{ MessageBox.Show("No efforts have been assigned to this rollout."); } } if( (imRollDef != null && imRollDef.ShowDialog() == DialogResult.OK) || (im != null && im.ShowDialog(this) == DialogResult.OK) ){ switch (lv.Name) { case "lvTestNotes": msg = _testingEff.Messages.Add(new QED.Business.Message(im.Answer)); if (msg.IsValid) msg.Update(); else MessageBox.Show(this, msg.BrokenRules.ToString()); item.Text = msg.Text; item.Tag = msg; break; case "lvTestDefectNotes" : def = _testingEff.Defects.Add(new QED.Business.Defect(im.Answer)); def.ForRoll = false; if (def.IsValid) def.Update(); else MessageBox.Show(this, def.BrokenRules.ToString()); item.Text = def.Desc; item.Tag = def; break; case "lvRollNotes" : msg = _rollout.Messages.Add(new QED.Business.Message(im.Answer)); if (msg.IsValid) msg.Update(); else MessageBox.Show(this, msg.BrokenRules.ToString()); item.Text = msg.Text; item.Tag = msg; break; case "lvRollDefectNotes" : string defectMsg = ((TextBox)imRollDef.AnswerTable[DEFECT]).Text; Effort eff = null; if (((ComboBox)imRollDef.AnswerTable[EFFORT]).SelectedItem != null) eff = ((Effort)((ComboBox)imRollDef.AnswerTable[EFFORT]).SelectedItem); if (eff == null || defectMsg.Trim() == ""){ MessageBox.Show(this, "All values required", "QED"); }else{ def = _rollout.Defects.Add(new QED.Business.Defect(defectMsg)); def.ForRoll = true; def.Effort = eff; if (def.IsValid) def.Update(); else MessageBox.Show(this, def.BrokenRules.ToString()); item.Tag = def; item.Text = def.Desc; item.SubItems.Add(eff.ExternalId_Desc); } break; } if ( (def != null && def.IsValid) || (msg != null && msg.IsValid) ) lv.Items.Add(item); } }