/// <summary> /// コンストラクタ /// </summary> static TaskGroupInfo() { _rootGroup = new TaskGroupInfo(); _rootGroup.Name = string.Empty; _rootGroup.ChildTaskItems = new HashSet <TaskItem>(); _rootGroup.ChildGroups = new HashSet <KeyInfo>(); _rootGroup.Key = KeyInfo.CreateKeyInfoGroup(); _defaultGroup = new TaskGroupInfo(); _defaultGroup.Name = "未分類"; _defaultGroup.ChildTaskItems = new HashSet <TaskItem>(); _defaultGroup.ChildGroups = new HashSet <KeyInfo>(); _defaultGroup.Key = KeyInfo.CreateKeyInfoGroup(); _rootGroup.ChildGroups.Add(_defaultGroup.Key); _defaultGroup.ParentGroup = _rootGroup.Key; }
/// <summary> /// 新しいグループ情報を追加します。 /// </summary> /// <param name="name">追加するグループの名称</param> /// <param name="parent">親グループ</param> /// <returns>追加結果</returns> public TaskGroupInfo AddTaskGroup(string name, TaskGroupInfo parent) { var group = new TaskGroupInfo(); group.Name = name; group.Key = KeyInfo.CreateKeyInfoGroup(); this.TaskGroupList.Add(group.Key, group); this.TaskGroupListJsonObj.Add(group); if (parent != null) { group.ParentGroup = parent.Key; parent.ChildGroups.Add(group.Key); } return(group); }