public void removeGroupItem_Click(object sender, EventArgs e) { _view = (AccountsGroupsForm)((ContextMenuStrip)(((ToolStripMenuItem)sender).Owner)).SourceControl.FindForm(); TreeNode theNode = _view.Tree().SelectedNode; if (theNode.Level == 0) { _view.showErrorMessage("The accounts categories can not be removed"); } else { if (theNode.Nodes.Count > 0) { _view.showErrorMessage("You can not remove this group unless you remove all its sub groups"); } else { var theGroup = systemModel.Groups.Find(Convert.ToInt32(theNode.ImageKey)); systemModel.Groups.Remove(theGroup); systemModel.SaveChanges(); _view.removeNode(theNode); } } }
public void addGroupBtn_Click(object sender, EventArgs e) { _view = (AccountsGroupsForm)((Button)sender).FindForm(); if (!System.Text.RegularExpressions.Regex.IsMatch(_view.groupName, "^[a-zA-Z0-9]")) { _view.showErrorMessage("Invalid group name"); } else { TreeNode root = _view.Tree().SelectedNode; while (root.Parent != null) { root = root.Parent; } Group g = null; var parentGroup = systemModel.Groups.Find(Convert.ToInt32(_view.Tree().SelectedNode.ImageKey)); var parentCategory = systemModel.AccountCategories.Find(Convert.ToInt32(root.Name)); Group group = new Group(); group.name = _view.groupName; group.parent = parentGroup; group.AccountCategory = parentCategory; g = systemModel.Groups.Add(group); systemModel.SaveChanges(); _view.addGroupNode(g.ID.ToString(), _view.groupName); _view.groupName = ""; } }
public void groupsTree_AfterLabelEdit(object sender, NodeLabelEditEventArgs e) { TreeView currentNode = (TreeView)sender; _view = (AccountsGroupsForm)((TreeView)sender).FindForm(); if (currentNode.SelectedNode.Level == 0) { e.CancelEdit = true; _view.showErrorMessage("The accounts categories can not be changed"); } else { _view.updateTree(e.Node); } }