diff options
author | James Willcox <snopr@snorp.net> | 2005-09-26 03:57:30 +0000 |
---|---|---|
committer | James Willcox <snopr@snorp.net> | 2005-09-26 03:57:30 +0000 |
commit | a4c2edcece605452c4d72da36b8c39da5e514314 (patch) | |
tree | 29737fdadb25ce064719db9e7bd85adf96e78ed8 /avahi-sharp/ServiceTypeBrowser.cs | |
parent | 2920c718017cf93a15f1e3a9c20b3cbb3e2f1f9a (diff) |
add some missing events to the resolver classes, and make them
inherit from a base class which contains these events
git-svn-id: file:///home/lennart/svn/public/avahi/trunk@635 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
Diffstat (limited to 'avahi-sharp/ServiceTypeBrowser.cs')
-rw-r--r-- | avahi-sharp/ServiceTypeBrowser.cs | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/avahi-sharp/ServiceTypeBrowser.cs b/avahi-sharp/ServiceTypeBrowser.cs index 4d996d6..754b9b1 100644 --- a/avahi-sharp/ServiceTypeBrowser.cs +++ b/avahi-sharp/ServiceTypeBrowser.cs @@ -40,7 +40,7 @@ namespace Avahi public delegate void ServiceTypeInfoHandler (object o, ServiceTypeInfo info); - public class ServiceTypeBrowser : IDisposable + public class ServiceTypeBrowser : BrowserBase, IDisposable { private IntPtr handle; private ArrayList infos = new ArrayList (); @@ -160,17 +160,23 @@ namespace Avahi info.Flags = flags; infos.Add (info); - - if (bevent == BrowserEvent.Added) { + + switch (bevent) { + case BrowserEvent.Added: infos.Add (info); foreach (ServiceTypeInfoHandler handler in addListeners) handler (this, info); - } else { + break; + case BrowserEvent.Removed: infos.Remove (info); foreach (ServiceTypeInfoHandler handler in removeListeners) handler (this, info); + break; + default: + EmitBrowserEvent (bevent); + break; } } } |