2
2
// Copyright 2009, Novell, Inc.
3
// Copyright 2011, 2012 Xamarin Inc
5
// Permission is hereby granted, free of charge, to any person obtaining
6
// a copy of this software and associated documentation files (the
7
// "Software"), to deal in the Software without restriction, including
8
// without limitation the rights to use, copy, modify, merge, publish,
9
// distribute, sublicense, and/or sell copies of the Software, and to
10
// permit persons to whom the Software is furnished to do so, subject to
11
// the following conditions:
13
// The above copyright notice and this permission notice shall be
14
// included in all copies or substantial portions of the Software.
16
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
4
25
using MonoMac.ObjCRuntime;
5
26
using MonoMac.Foundation;
51
72
List <ObservedData> __mt_ObserverList_var = new List <ObservedData> ();
53
[Obsolete ("Use AddObserver(NSString, Action<NSNotification>, NSObject)")]
74
[Advice ("Use AddObserver(NSString, Action<NSNotification>, NSObject)")]
54
75
public NSObject AddObserver (string aName, Action<NSNotification> notify, NSObject fromObject)
56
77
return AddObserver (new NSString (aName), notify, fromObject);
64
85
var proxy = new InternalNSNotificationHandler (this, notify);
66
AddObserver (proxy, postSelector, aName, fromObject);
87
AddObserver (proxy, new Selector (postSelector), aName, fromObject);
73
94
return AddObserver (aName, notify, null);
76
[Obsolete ("Use AddObserver(NSString, Action<NSNotification>) instead")]
97
[Advice ("Use AddObserver(NSString, Action<NSNotification>) instead")]
77
98
public NSObject AddObserver (string aName, Action<NSNotification> notify)
79
100
return AddObserver (aName, notify, null);
82
[Obsolete ("Use AddObserver(NSObject, Selector, NSString, NSObject) instead")]
103
[Advice ("Use AddObserver(NSObject, Selector, NSString, NSObject) instead")]
83
104
public void AddObserver (NSObject observer, Selector aSelector, string aname, NSObject anObject)
85
106
AddObserver (observer, aSelector, new NSString (aname), anObject);