示例#1
0
 private static void EventListenerStart()
 {
     s_handler = (int type, IntPtr value, IntPtr data) =>
     {
         int val = value.ToInt32();
         LedBrightnessChangedEventArgs e = new LedBrightnessChangedEventArgs()
         {
             Brightness = val
         };
         s_brightnessChanged?.Invoke(null, e);
         return(true);
     };
     Interop.Device.DeviceAddCallback(EventType.FlashBrightness, s_handler, IntPtr.Zero);
 }
示例#2
0
 private static void EventListenerStart()
 {
     s_handler = (int type, IntPtr value, IntPtr data) =>
     {
         int val = value.ToInt32();
         DisplayStateChangedEventArgs e = new DisplayStateChangedEventArgs()
         {
             State = (DisplayState)val
         };
         s_stateChanged?.Invoke(null, e);
         return(true);
     };
     Interop.Device.DeviceAddCallback(EventType.DisplayState, s_handler, IntPtr.Zero);
 }
示例#3
0
        private static void EventListenerStart(EventType eventType)
        {
            switch (eventType)
            {
            case EventType.BatteryPercent:
                s_cpacityHandler = (int type, IntPtr value, IntPtr data) =>
                {
                    int val = value.ToInt32();
                    BatteryPercentChangedEventArgs e = new BatteryPercentChangedEventArgs()
                    {
                        Percent = val
                    };
                    s_capacityChanged?.Invoke(null, e);
                    return(true);
                };

                Interop.Device.DeviceAddCallback(eventType, s_cpacityHandler, IntPtr.Zero);
                break;

            case EventType.BatteryLevel:
                s_levelHandler = (int type, IntPtr value, IntPtr data) =>
                {
                    int val = value.ToInt32();
                    BatteryLevelChangedEventArgs e = new BatteryLevelChangedEventArgs()
                    {
                        Level = (BatteryLevelStatus)val
                    };
                    s_levelChanged?.Invoke(null, e);
                    return(true);
                };

                Interop.Device.DeviceAddCallback(eventType, s_levelHandler, IntPtr.Zero);
                break;

            case EventType.BatteryCharging:
                s_chargingHandler = (int type, IntPtr value, IntPtr data) =>
                {
                    bool val = (value.ToInt32() == 1);
                    BatteryChargingStateChangedEventArgs e = new BatteryChargingStateChangedEventArgs()
                    {
                        IsCharging = val
                    };
                    s_chargingStateChanged?.Invoke(null, e);
                    return(true);
                };
                Interop.Device.DeviceAddCallback(eventType, s_chargingHandler, IntPtr.Zero);
                break;
            }
        }