From a9566d5dcac080d7fa91546823277c57a5d09a5f Mon Sep 17 00:00:00 2001 From: James Willcox Date: Fri, 9 Sep 2005 23:48:54 +0000 Subject: s/Host/HostName/ in a couple places, and keep references to callbacks to avoid crashing git-svn-id: file:///home/lennart/svn/public/avahi/trunk@554 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe --- avahi-sharp/Client.cs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'avahi-sharp/Client.cs') diff --git a/avahi-sharp/Client.cs b/avahi-sharp/Client.cs index 3e4e617..84069fc 100644 --- a/avahi-sharp/Client.cs +++ b/avahi-sharp/Client.cs @@ -36,7 +36,9 @@ namespace Avahi Removed } - internal delegate void ClientHandler (IntPtr client, ClientState state, IntPtr userData); + internal delegate void ClientCallback (IntPtr client, ClientState state, IntPtr userData); + + public delegate void ClientStateHandler (object o, ClientState state); public enum Protocol { Unspecified = 0, @@ -57,7 +59,7 @@ namespace Avahi private IntPtr handle; [DllImport ("avahi-client")] - private static extern IntPtr avahi_client_new (IntPtr poll, ClientHandler handler, + private static extern IntPtr avahi_client_new (IntPtr poll, ClientCallback handler, IntPtr userData, out int error); [DllImport ("avahi-client")] @@ -87,6 +89,8 @@ namespace Avahi [DllImport ("avahi-glib")] private static extern IntPtr avahi_glib_poll_get (IntPtr gpoll); + public event ClientStateHandler StateChanged; + internal IntPtr Handle { get { return handle; } @@ -156,7 +160,8 @@ namespace Avahi private void OnClientCallback (IntPtr client, ClientState state, IntPtr userData) { - Console.WriteLine ("Got new state: " + state); + if (StateChanged != null) + StateChanged (this, state); } } } -- cgit