public void AddTask(GUITask task, int taskCanvasId) { Task newTask = new Task() { internalId = task.InternalId, imagesConverted = true, name = task.Name, x = task.X, y = task.Y, originalImage = task.OriginalBitmap, convertedImage = task.ConvertedBitmap, ditheredImage = task.DitheredConvertedBitmap, dithering = task.Dithering, loop = task.KeepRepairing, isEnabled = task.Enabled }; if (!tasks.ContainsKey(taskCanvasId)) { tasks.Add(taskCanvasId, new List <Task>()); } tasks[taskCanvasId].Add(newTask); DataExchange.UpdateTasksFromGUI(); UpdateTaskList(); }
/// <summary> /// returns an immutable copy of tasks /// </summary> /// <returns></returns> public Dictionary <int, List <GUITask> > GetTasks() { Dictionary <int, List <GUITask> > converted = new Dictionary <int, List <GUITask> >(); foreach (KeyValuePair <int, List <Task> > canvas in tasks) { converted.Add(canvas.Key, new List <GUITask>()); foreach (Task task in canvas.Value) { if (task.imagesConverted) { GUITask newTask = new GUITask(task.internalId, task.name, task.isEnabled, task.x, task.y, task.dithering, task.loop, task.originalImage, task.convertedImage, task.ditheredImage); converted[canvas.Key].Add(newTask); } } } return(converted); }