public void SyncTasks(SyncCallback callback) { TaskListTaskCollection tmp = new TaskListTaskCollection(this); if (IsSmart == true) { tmp.SmartResync(() => { mTasks = tmp; OnPropertyChanged("Tasks"); OnPropertyChanged("Count"); callback(); }); } else { tmp.Resync(() => { mTasks = tmp; OnPropertyChanged("Tasks"); OnPropertyChanged("Count"); callback(); }); } }
public void SyncTasks(SyncCallback callback) { TaskListTaskCollection tmp = new TaskListTaskCollection(this); if (!GetFlag(TaskListFlags.Smart)) { tmp.Resync(() => { mTasks = tmp; OnPropertyChanged("Tasks"); OnPropertyChanged("Count"); callback(); }); } else if (!IsFrozen && GetFlag(TaskListFlags.Smart)) { // Resync all the time for smart lists... //TODO: maybe use cache like normal lists, but for only a short time? tmp.SmartResync(() => { mTasks = tmp; OnPropertyChanged("Tasks"); OnPropertyChanged("Count"); callback(); }); } }