private void toSubtaskButton_Click(object sender, EventArgs e) { if (allTaskList.SelectedItem == null) { MessageBox.Show("Select an item from All Subtasks first"); } else if (sTaskList.SelectedItem == null) { MessageBox.Show("Select an item from Specific Tasks first"); } else { if (!subtaskList.Items.Contains(allTaskList.SelectedItem)) { subtaskList.Items.Add(allTaskList.SelectedItem); // long fid = 0; foreach (KeyValuePair <long, names> kvp in asDic) { if (kvp.Value.name == sTaskList.SelectedItem.ToString()) { fid = kvp.Key; break; } } foreach (KeyValuePair <long, names> kvp in asDic) { if (kvp.Value.name == allTaskList.SelectedItem.ToString()) { names n = new names(); n.name = kvp.Value.name; n.inall = false; n.isfather = false; long id = kvp.Key; asDic.Remove(id); asDic.Add(id, n); if (fsRel.Keys.Contains(fid)) { idn idnx = new idn(); idnx.id = id; idnx.order = subtaskList.Items.Count - 1; fsRel[fid].Add(idnx); } break; } } // allTaskList.Items.Remove(allTaskList.SelectedItem); } } }
private void subtaskDownButton_Click(object sender, EventArgs e) { if (subtaskList.SelectedIndex < subtaskList.Items.Count - 1) { string s = subtaskList.SelectedItem.ToString(); int n = subtaskList.SelectedIndex; // long idu = 0, idd = 0, fid = 0; foreach (KeyValuePair <long, names> kvp in asDic) { if (kvp.Value.name == s) { idu = kvp.Key; } if (kvp.Value.name == subtaskList.Items[n + 1].ToString()) { idd = kvp.Key; } if (kvp.Value.name == sTaskList.SelectedItem.ToString()) { fid = kvp.Key; } } idn idxd = new idn(); idxd.id = idu; idxd.order = n + 1; idn idxu = new idn(); idxu.id = idd; idxu.order = n; fsRel[fid].Remove(fsRel[fid].Find(p => (p.id == idd))); fsRel[fid].Remove(fsRel[fid].Find(p => (p.id == idu))); fsRel[fid].Add(idxu); fsRel[fid].Add(idxd); // subtaskList.Items.Remove(subtaskList.SelectedItem); subtaskList.Items.Insert(n + 1, s); } }
private void TaskBook_Load(object sender, EventArgs e) { try { task = TaskDictionary.GetInstance().find(taskID); asDic = new Dictionary <long, names>(); fsRel = new Dictionary <long, List <idn> >(); try { if (task.staskID != null && task.staskID.Count != 0) { string[] sTaskArray = new string[task.staskID.Count]; foreach (long id in task.staskID) { //sTaskList.Items.Add(STaskDictionary.GetInstance().find(id).name); sTaskArray[STaskDictionary.GetInstance().find(id).order] = STaskDictionary.GetInstance().find(id).name; names n = new names(); n.name = STaskDictionary.GetInstance().find(id).name; n.isfather = true; n.inall = false; asDic.Add(id, n); if (STaskDictionary.GetInstance().find(id).subtaskID != null && STaskDictionary.GetInstance().find(id).subtaskID.Count > 0) { fsRel.Add(id, new List <idn>()); foreach (long l in STaskDictionary.GetInstance().find(id).subtaskID) { names n1 = new names(); n1.name = SubTaskDictionary.GetInstance().find(l).name; n1.isfather = false; n1.inall = false; asDic.Add(l, n1); idn idnx = new idn(); idnx.id = l; idnx.order = SubTaskDictionary.GetInstance().find(l).order; fsRel[id].Add(idnx); } } } foreach (string str in sTaskArray) { sTaskList.Items.Add(str); } } } catch (Exception ex) { Logger.WriteLogs("TaskBook/sTaskList Loading Error: " + ex.Message); } try { if (task.allSubID != null && task.allSubID.Count != 0) { foreach (long id in task.allSubID) { if (!asDic.ContainsKey(id)) { allTaskList.Items.Add(AllSubDictionary.GetInstance().find(id).name); names n = new names(); n.name = AllSubDictionary.GetInstance().find(id).name; n.isfather = false; n.inall = true; asDic.Add(id, n); } } } } catch (Exception ex) { Logger.WriteLogs("TaskBook/allTaskList Loading Error: " + ex.Message); } } catch (Exception ex) { Logger.WriteLogs("TaskBook Loading Error: " + ex.Message); } }