Ejemplo n.º 1
0
        void NotifyHandler(object sender, WaiterEventArgs args)
        {
            lock (this._syncRoot) {
                this._eventQueue.Enqueue(item: args);
            }

            this._resetEvent.Set();
        }
Ejemplo n.º 2
0
 protected virtual void OnNotify(WaiterEventArgs e)
 {
     if (Notify == null)
     {
         return;
     }
     Notify(sender: this, e: e);
 }
        protected override bool Matches(WaiterEventArgs eventArgs)
        {
            var flag = true;

            if (null != eventArgs.Sender)
            {
                flag = UIObject.Matches(uiObject: eventArgs.Sender, condition: this._condition);
            }
            return(flag);
        }
Ejemplo n.º 4
0
        protected override bool Matches(WaiterEventArgs eventArgs)
        {
            var eventArgs1 = (StructureChangedEventArgs)eventArgs.EventArgs;
            var flag       = false;

            if (eventArgs1.StructureChangeType == StructureChangeType.ChildAdded)
            {
                flag = UIObject.Matches(uiObject: eventArgs.Sender, condition: this._condition);
            }
            return(flag);
        }
Ejemplo n.º 5
0
        protected override bool Matches(WaiterEventArgs eventArgs)
        {
            var eventArgs1 = (StructureChangedEventArgs)eventArgs.EventArgs;
            var flag       = false;

            if (eventArgs1.StructureChangeType == StructureChangeType.ChildRemoved)
            {
                flag = true;
                if (this._runtimeId != null)
                {
                    flag = Automation.Compare(runtimeId1: eventArgs1.GetRuntimeId(), runtimeId2: this._runtimeId);
                }
            }

            return(flag);
        }
Ejemplo n.º 6
0
        public void SinkEvent(WaiterEventArgs eventArgs)
        {
            Log.Out(msg: "{0} checking event {1} from {2}", (object)this._debug_identity, eventArgs.EventArgs != null ? (object)eventArgs.EventArgs.ToString() : (object)"null", (object)eventArgs.Sender);
            lock (this._lockObject) {
                if (this._disposed || !Matches(eventArgs: eventArgs))
                {
                    return;
                }
                var flag = true;
                Log.Out(msg: "{0} matched", (object)this._debug_identity);
                if (this._filterDelegate != null)
                {
                    foreach (Predicate <WaiterEventArgs> invocation in this._filterDelegate.GetInvocationList())
                    {
                        flag = invocation(obj: eventArgs);
                        if (!flag)
                        {
                            Log.Out(msg: "{0} filtered out", (object)this._debug_identity);
                            break;
                        }
                    }
                }

                if (!flag)
                {
                    return;
                }
                this.Arguments = eventArgs;
                Log.Out(msg: "{0} notifying", (object)this._debug_identity);
                try {
                    OnNotify(e: eventArgs);
                } finally {
                    this._blockingEvent.Set();
                }
            }
        }
Ejemplo n.º 7
0
 protected virtual bool Matches(WaiterEventArgs eventArgs)
 {
     return(true);
 }
 protected override bool Matches(WaiterEventArgs eventArgs)
 {
     return(null != eventArgs.Sender && UIObject.Matches(uiObject: eventArgs.Sender, condition: this._condition));
 }