Ejemplo n.º 1
0
            }             // ctor

            public override bool Equals(PpsDataChangedEvent ev)
            {
                if (ev == this)
                {
                    return(true);
                }
                else
                {
                    var other = ev as PpsDataRowExtentedValueChanged;
                    return(other != null ?
                           other.value == value && other.propertyName == propertyName :
                           false);
                }
            }             // func Same
Ejemplo n.º 2
0
        }         // proc DeferedEvents

        internal void ExecuteEvent(PpsDataChangedEvent ev)
        {
            if (inChanged)
            {
                var i      = 0;
                var length = changedEvents.Count;
                PpsDataChangedEvent cur;
                while (i < length && (cur = changedEvents[i]).Level <= ev.Level)
                {
                    if (cur.Equals(ev))
                    {
                        return;                         // same event, no add needed
                    }
                    i++;
                }

                changedEvents.Insert(i, ev);
            }
            else if (undoSink != null && undoSink.InTransaction && !undoSink.InUndoRedoOperation)
            {
                inChanged = true;
                ExecuteEvent(ev);
                undoSink.Append(new ExecuteEvents(this));                 // sets inChanged to false if raised in a case of exception
            }
            else
            {
                inChanged = true;
                try
                {
                    // clear list to zero
                    changedEvents.Clear();

                    // invoke the event and start the loop
                    ev.InvokeEvent();

                    // invoke related events
                    ExecuteQueuedEventsUnsafe();
                }
                finally
                {
                    inChanged = false;
                }
            }
        }         // proc ExecuteEvent
Ejemplo n.º 3
0
 public override bool Equals(PpsDataChangedEvent ev)
 => true;