public Task(IDataBindEngineClient c, TaskOps o, Task previousForClient) { client = c; op = o; PreviousForClient = previousForClient; status = Status.Pending; }
//------------------------------------------------------ // // Internal Methods // //------------------------------------------------------ internal void AddTask(IDataBindEngineClient c, TaskOps op) { // ignore requests that arrive after shutdown if (_mostRecentTask == null) { return; } // if we're adding to an empty list, request that the list be processed if (_head == _tail) { RequestRun(); } // link a new task into the list Task recentTask = (Task)_mostRecentTask[c]; Task newTask = new Task(c, op, recentTask); _tail.Next = newTask; _tail = newTask; _mostRecentTask[c] = newTask; // if the task is AttachToContext and the target is a UIElement, // register for the LayoutUpdated event, and run the task list from the // event handler. This avoids flashing, at the expense of lots more // events and handlers (bug 1019232) if (op == TaskOps.AttachToContext && _layoutElement == null && (_layoutElement = c.TargetElement as UIElement) != null) { _layoutElement.LayoutUpdated += new EventHandler(OnLayoutUpdated); } }
// Token: 0x06008DA5 RID: 36261 RVA: 0x00259CB6 File Offset: 0x00257EB6 public Task(IDataBindEngineClient c, TaskOps o, DataBindEngine.Task previousForClient) { this.client = c; this.op = o; this.PreviousForClient = previousForClient; this.status = DataBindEngine.Task.Status.Pending; }
// Token: 0x060074B1 RID: 29873 RVA: 0x002160D0 File Offset: 0x002142D0 internal void CancelTask(IDataBindEngineClient c, TaskOps op) { if (this._mostRecentTask == null) { return; } for (DataBindEngine.Task task = (DataBindEngine.Task) this._mostRecentTask[c]; task != null; task = task.PreviousForClient) { if (task.op == op && task.status == DataBindEngine.Task.Status.Pending) { task.status = DataBindEngine.Task.Status.Cancelled; return; } } }
internal void CancelTask(IDataBindEngineClient c, TaskOps op) { // ignore requests that arrive after shutdown if (_mostRecentTask == null) { return; } for (Task task = (Task)_mostRecentTask[c]; task != null; task = task.PreviousForClient) { if (task.op == op && task.status == Task.Status.Pending) { task.status = Task.Status.Cancelled; break; } } }
// Token: 0x060074B0 RID: 29872 RVA: 0x00216030 File Offset: 0x00214230 internal void AddTask(IDataBindEngineClient c, TaskOps op) { if (this._mostRecentTask == null) { return; } if (this._head == this._tail) { this.RequestRun(); } DataBindEngine.Task previousForClient = (DataBindEngine.Task) this._mostRecentTask[c]; DataBindEngine.Task task = new DataBindEngine.Task(c, op, previousForClient); this._tail.Next = task; this._tail = task; this._mostRecentTask[c] = task; if (op == TaskOps.AttachToContext && this._layoutElement == null && (this._layoutElement = (c.TargetElement as UIElement)) != null) { this._layoutElement.LayoutUpdated += this.OnLayoutUpdated; } }
internal void CancelTask(IDataBindEngineClient c, TaskOps op) { // ignore requests that arrive after shutdown if (_mostRecentTask == null) return; for (Task task = (Task)_mostRecentTask[c]; task != null; task = task.PreviousForClient) { if (task.op == op && task.status == Task.Status.Pending) { task.status = Task.Status.Cancelled; break; } } }
//------------------------------------------------------ // // Internal Methods // //------------------------------------------------------ internal void AddTask(IDataBindEngineClient c, TaskOps op) { // ignore requests that arrive after shutdown if (_mostRecentTask == null) return; // if we're adding to an empty list, request that the list be processed if (_head == _tail) { RequestRun(); } // link a new task into the list Task recentTask = (Task)_mostRecentTask[c]; Task newTask = new Task(c, op, recentTask); _tail.Next = newTask; _tail = newTask; _mostRecentTask[c] = newTask; // if the task is AttachToContext and the target is a UIElement, // register for the LayoutUpdated event, and run the task list from the // event handler. This avoids flashing, at the expense of lots more // events and handlers (bug 1019232) if (op == TaskOps.AttachToContext && _layoutElement == null && (_layoutElement = c.TargetElement as UIElement) != null) { _layoutElement.LayoutUpdated += new EventHandler(OnLayoutUpdated); } }