public bool ContainsListener(IGridViewEventListener listener) { if (this.IsDisposing || this.IsDisposed) { throw new ObjectDisposedException(nameof(GridViewSynchronizationService)); } GridEventType desiredEvents = listener.DesiredEvents; return((desiredEvents & GridEventType.Data) == GridEventType.Data && this.dataEntity.Contains(listener) || (desiredEvents & GridEventType.UI) == GridEventType.UI && this.uiEntity.Contains(listener)); }
public bool Contains(IGridViewEventListener listener) { if (listener == null) { return(false); } GridEventProcessMode desiredProcessMode = listener.DesiredProcessMode; return((desiredProcessMode & GridEventProcessMode.PreProcess) == GridEventProcessMode.PreProcess && this.preProcessListeners.IndexOf(listener) >= 0 || (desiredProcessMode & GridEventProcessMode.Process) == GridEventProcessMode.Process && this.processListeners.IndexOf(listener) >= 0 || (desiredProcessMode & GridEventProcessMode.PostProcess) == GridEventProcessMode.PostProcess && this.postProcessListeners.IndexOf(listener) >= 0); }
public void Remove(IGridViewEventListener listener) { GridEventProcessMode desiredProcessMode = listener.DesiredProcessMode; if ((desiredProcessMode & GridEventProcessMode.PreProcess) == GridEventProcessMode.PreProcess) { this.preProcessListeners.Remove(listener); } if ((desiredProcessMode & GridEventProcessMode.Process) == GridEventProcessMode.Process) { this.processListeners.Remove(listener); } if ((desiredProcessMode & GridEventProcessMode.PostProcess) != GridEventProcessMode.PostProcess) { return; } this.postProcessListeners.Remove(listener); }
public void RemoveListener(IGridViewEventListener listener) { GridEventType desiredEvents = listener.DesiredEvents; if ((desiredEvents & GridEventType.Data) == GridEventType.Data && this.dataEntity.Contains(listener)) { this.dataEntity.Remove(listener); } if ((desiredEvents & GridEventType.UI) == GridEventType.UI && this.uiEntity.Contains(listener)) { this.uiEntity.Remove(listener); } if ((listener.DesiredProcessMode & GridEventProcessMode.AnalyzeQueue) != GridEventProcessMode.AnalyzeQueue || this.queueAnalyzers.IndexOf(listener) < 0) { return; } this.queueAnalyzers.Remove(listener); }
public void AddListener(IGridViewEventListener listener) { GridEventType desiredEvents = listener.DesiredEvents; if ((desiredEvents & GridEventType.Data) == GridEventType.Data) { this.dataEntity.Add(listener); } if ((desiredEvents & GridEventType.UI) == GridEventType.UI) { this.uiEntity.Add(listener); } if ((listener.DesiredProcessMode & GridEventProcessMode.AnalyzeQueue) != GridEventProcessMode.AnalyzeQueue) { return; } this.queueAnalyzers.Add(listener); }
public void Add(IGridViewEventListener listener) { if (!this.VerifyAdd(listener)) { return; } GridEventProcessMode desiredProcessMode = listener.DesiredProcessMode; if ((desiredProcessMode & GridEventProcessMode.PreProcess) == GridEventProcessMode.PreProcess) { this.preProcessListeners.Add(listener); } if ((desiredProcessMode & GridEventProcessMode.Process) == GridEventProcessMode.Process) { this.processListeners.Add(listener); } if ((desiredProcessMode & GridEventProcessMode.PostProcess) != GridEventProcessMode.PostProcess) { return; } this.postProcessListeners.Add(listener); }
private bool VerifyAdd(IGridViewEventListener listener) { return(!this.owner.IsDisposing && !this.owner.IsDisposed && !this.Contains(listener)); }