diff options
Diffstat (limited to 'Rx/NET/Source/System.Reactive.Linq/Reactive/EventPatternSource.cs')
-rw-r--r-- | Rx/NET/Source/System.Reactive.Linq/Reactive/EventPatternSource.cs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/Rx/NET/Source/System.Reactive.Linq/Reactive/EventPatternSource.cs b/Rx/NET/Source/System.Reactive.Linq/Reactive/EventPatternSource.cs new file mode 100644 index 0000000..742970e --- /dev/null +++ b/Rx/NET/Source/System.Reactive.Linq/Reactive/EventPatternSource.cs @@ -0,0 +1,28 @@ +// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information. + +namespace System.Reactive +{ + class EventPatternSource<TEventArgs> : EventPatternSourceBase<object, TEventArgs>, IEventPatternSource<TEventArgs> +#if !NO_EVENTARGS_CONSTRAINT + where TEventArgs : EventArgs +#endif + { + public EventPatternSource(IObservable<EventPattern<object, TEventArgs>> source, Action<Action<object, TEventArgs>, /*object,*/ EventPattern<object, TEventArgs>> invokeHandler) + : base(source, invokeHandler) + { + } + + event EventHandler<TEventArgs> IEventPatternSource<TEventArgs>.OnNext + { + add + { + Add(value, (o, e) => value(o, e)); + } + + remove + { + Remove(value); + } + } + } +} |