Server/Events/EventHidConsumerControl.cs
changeset 237 1a1c2ae3a29c
child 238 c92587ddabcd
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/Server/Events/EventHidConsumerControl.cs	Wed Aug 17 16:39:36 2016 +0200
     1.3 @@ -0,0 +1,51 @@
     1.4 +using System;
     1.5 +using System.Collections.Generic;
     1.6 +using System.Linq;
     1.7 +using System.Text;
     1.8 +using System.Threading.Tasks;
     1.9 +using System.Runtime.Serialization;
    1.10 +using Ear = SharpLib.Ear;
    1.11 +using Hid = SharpLib.Hid;
    1.12 +
    1.13 +namespace SharpDisplayManager
    1.14 +{
    1.15 +        [DataContract]
    1.16 +        [Ear.AttributeObject(Id = "Event.Hid.ConsumerControl", Name = "HID Consumer Control", Description = "Corresponding HID message received.")]
    1.17 +        public class EventHidConsumerControl : Ear.Event
    1.18 +        {
    1.19 +            public EventHidConsumerControl()
    1.20 +            {
    1.21 +            }
    1.22 +
    1.23 +        [DataMember]
    1.24 +        [Ear.AttributeObjectProperty
    1.25 +            (
    1.26 +            Id = "HID.ConsumerControl.Usage",
    1.27 +            Name = "Usage",
    1.28 +            Description = "The usage corresponding to your remote button."
    1.29 +            )]
    1.30 +        public Hid.Usage.ConsumerControl Usage { get; set; }
    1.31 +
    1.32 +        /// <summary>
    1.33 +        /// Make sure we distinguish between various configuration of this event 
    1.34 +        /// </summary>
    1.35 +        /// <returns></returns>
    1.36 +        public override string Brief()
    1.37 +        {
    1.38 +            return Name + ": " + Usage.ToString();
    1.39 +        }
    1.40 +
    1.41 +        /// <summary>
    1.42 +        ///
    1.43 +        /// </summary>
    1.44 +        /// <param name="obj"></param>
    1.45 +        /// <returns></returns>
    1.46 +        public override bool Equals(object obj)
    1.47 +        {
    1.48 +            EventHidConsumerControl e = (EventHidConsumerControl) obj;
    1.49 +            bool res = (e != null && e.Usage == Usage);
    1.50 +            return res;
    1.51 +        }
    1.52 +
    1.53 +    }
    1.54 +}