summaryrefslogtreecommitdiffstats
path: root/avahi-sharp/Client.cs
diff options
context:
space:
mode:
Diffstat (limited to 'avahi-sharp/Client.cs')
-rw-r--r--avahi-sharp/Client.cs19
1 files changed, 17 insertions, 2 deletions
diff --git a/avahi-sharp/Client.cs b/avahi-sharp/Client.cs
index 394efc5..01b08bd 100644
--- a/avahi-sharp/Client.cs
+++ b/avahi-sharp/Client.cs
@@ -43,8 +43,23 @@ namespace Avahi
internal delegate int PollCallback (IntPtr ufds, uint nfds, int timeout);
internal delegate void ClientCallback (IntPtr client, ClientState state, IntPtr userData);
- public delegate void ClientStateHandler (object o, ClientState state);
+ public delegate void ClientStateHandler (object o, ClientStateArgs state);
+ public class ClientStateArgs : EventArgs
+ {
+ private ClientState state;
+
+ public ClientState State
+ {
+ get { return state; }
+ }
+
+ public ClientStateArgs (ClientState state)
+ {
+ this.state = state;
+ }
+ }
+
public enum Protocol {
Unspecified = -1,
IPv4 = 0,
@@ -268,7 +283,7 @@ namespace Avahi
private void OnClientCallback (IntPtr client, ClientState state, IntPtr userData)
{
if (StateChanged != null)
- StateChanged (this, state);
+ StateChanged (this, new ClientStateArgs (state));
}
private int OnPollCallback (IntPtr ufds, uint nfds, int timeout) {