Server/Events/EventHidWindowsMediaCenter.cs
author StephaneLenclud
Thu, 18 Aug 2016 14:35:50 +0200
changeset 238 c92587ddabcd
parent 237 1a1c2ae3a29c
permissions -rw-r--r--
Support for launch action and WMC HID events.
     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using System.Threading.Tasks;
     6 using System.Runtime.Serialization;
     7 using Ear = SharpLib.Ear;
     8 using Hid = SharpLib.Hid;
     9 
    10 namespace SharpDisplayManager
    11 {
    12     [DataContract]
    13     [Ear.AttributeObject(Id = "Event.Hid.WindowsMediaCenter", Name = "HID Windows Media Center", Description = "Corresponding HID message received.")]
    14     public class EventHidWindowsMediaCenter : Ear.Event
    15     {
    16         public EventHidWindowsMediaCenter()
    17         {
    18         }
    19 
    20         [DataMember]
    21         [Ear.AttributeObjectProperty
    22             (
    23             Id = "HID.WMC.Usage",
    24             Name = "Usage",
    25             Description = "The usage corresponding to your remote button."
    26             )]
    27         public Hid.Usage.WindowsMediaCenterRemoteControl Usage { get; set; }
    28 
    29         /// <summary>
    30         /// Make sure we distinguish between various configuration of this event 
    31         /// </summary>
    32         /// <returns></returns>
    33         public override string Brief()
    34         {
    35             return Name + ": " + Usage.ToString();
    36         }
    37 
    38         /// <summary>
    39         ///
    40         /// </summary>
    41         /// <param name="obj"></param>
    42         /// <returns></returns>
    43         public override bool Equals(object obj)
    44         {
    45             if (obj is EventHidWindowsMediaCenter)
    46             {
    47                 EventHidWindowsMediaCenter e = (EventHidWindowsMediaCenter)obj;
    48                 bool res = (e.Usage == Usage);
    49                 return res;
    50             }
    51 
    52             return false;
    53         }
    54 
    55     }
    56 }