private void trlCRTree_DeleteNode(object sender, EventArgs e) { object obj = trlCRTree.GetDataRecordByNode(trlCRTree.FocusedNode); if (XtraMessageBox.Show("Are you sure to delete node?", "Delete node", MessageBoxButtons.YesNo) == DialogResult.Yes) { QChangeRequest cr = (QChangeRequest)obj; QChangeRequest.Delete(cr); if (cr.GetType() == typeof(QDocumentCR)) { trlCRTree.DataSource = null; } } }
private void ShowModifier_ItemClick <TModifier>(object sender, EventArgs e) where TModifier : QCRModifier, new() { object Obj = trlCRTree.GetDataRecordByNode(trlCRTree.FocusedNode); QChangeRequest cr = (QChangeRequest)Obj; frmModifier f = new frmModifier(); TModifier modifier = new TModifier(); modifier.ChangeRequest = cr; if (f.ShowDialog(modifier) == DialogResult.OK) { FocusNode(((QChangeRequest)Obj).Id); trlCRTree.ExpandAll(); } }
private void bbAdd_Child_ItemClick <TChild>(object sender, EventArgs e) where TChild : QChangeRequest, new() { object Obj = trlCRTree.GetDataRecordByNode(trlCRTree.FocusedNode); QChangeRequest cr = (QChangeRequest)Obj; frmObjectEditor f = new frmObjectEditor(); TChild newObj = new TChild(); newObj.Parent = (QChangeRequest)Obj; if (f.ShowAddDialog(newObj) == DialogResult.OK) { TChild child = (TChild)f.NewObj; cr.AddChild <TChild>(child); FocusNode(((QChangeRequest)child).Id); } }
private void trlCRTree_GetStateImage(object sender, DevExpress.XtraTreeList.GetStateImageEventArgs e) { object Obj = trlCRTree.GetDataRecordByNode(e.Node); if (Obj != null) { QChangeRequest cr = (QChangeRequest)Obj; switch (cr.CheckResultType) { case QCRCheckResultType.NotChecked: e.NodeImageIndex = 0; break; case QCRCheckResultType.WellImplemented: e.NodeImageIndex = 1; break; case QCRCheckResultType.NeedsAttention: e.NodeImageIndex = 2; break; } } }
private void FocusedNodeChanged(TreeListNode node) { if (trlCRTree.FocusedNode != null) { string id = trlCRTree.FocusedNode.GetValue("Id").ToString(); if (!string.IsNullOrEmpty(id)) { // get cr object QChangeRequest obj = (QChangeRequest)trlCRTree.GetDataRecordByNode(node); // refresh grid propertyGridControl1.Rows.Clear(); propertyGridControl1.SelectedObject = null; propertyGridControl1.SelectedObject = obj; propertyGridControl1.Refresh(); // refresh actions grdCRActions.DataSource = obj.Actions; } } }
private void LoadCriteria(QChangeRequest cr) { if (cr != null) { if (cr.GetType() == typeof(QAddCriterioCR)) { QAddCriterioCR criterio = (QAddCriterioCR)cr; DataRow row = Criteria.NewRow(); row["Checked"] = criterio.CheckResultType == QCRCheckResultType.WellImplemented; row["Name"] = criterio.Name; row["CriUniqueId"] = criterio.CriUniqueId; row["CheckResultType"] = criterio.CheckResultType; row["DatabaseName"] = criterio.DatabaseName; row["ObjCR"] = criterio; Criteria.Rows.Add(row); } foreach (QChangeRequest child in cr.Children) { LoadCriteria(child); } } }
private void trlCRTree_PopupMenuShowing(object sender, DevExpress.XtraTreeList.PopupMenuShowingEventArgs e) { if (e.Menu is TreeListNodeMenu) { trlCRTree.FocusedNode = ((TreeListNodeMenu)e.Menu).Node; object Obj = trlCRTree.GetDataRecordByNode(trlCRTree.FocusedNode); QChangeRequest objCR = (QChangeRequest)Obj; foreach (Type crType in objCR.CompatibleChildren) { e.Menu.Items.Add(new DevExpress.Utils.Menu.DXMenuItem("Add " + crType.GetDescription(), addHandlers[crType])); } if (modifiers.ContainsKey(objCR.GetType())) { e.Menu.Items.Add(new DevExpress.Utils.Menu.DXMenuItem(string.Format("Run {0} modifier.", objCR.GetType().Name), modifiers[objCR.GetType()])); } e.Menu.Items.Add(new DevExpress.Utils.Menu.DXMenuItem("Delete", trlCRTree_DeleteNode)); if (objCR.GetType() == typeof(QAddCriterioCR)) { e.Menu.Items.Add(new DevExpress.Utils.Menu.DXMenuItem(string.Format("Script Criterio"), trlCRTree_ScriptCriterio)); } } }