Esempio n. 1
0
        private void _anperi_Message(object sender, AnperiMessageEventArgs e)
        {
            switch (e.Message)
            {
            case EventFiredAnperiMessage eventMessage:
                switch (eventMessage.Event)
                {
                case EventFiredAnperiMessage.EventType.on_click:
                    if (_shuttingDown)
                    {
                        ShutdownHelper.AbortShutdown();
                        _shuttingDown = false;
                    }
                    else
                    {
                        ShutdownHelper.Shutdown(10);
                        _shuttingDown = true;
                    }
                    _anperi.UpdateElementParam(_elementIds[Elements.ButtonShutdown], "text", _shuttingDown ? "Abort Shutdown" : "Shutdown");
                    break;

                case EventFiredAnperiMessage.EventType.on_click_long:
                    break;

                case EventFiredAnperiMessage.EventType.on_change:
                    if (eventMessage.ElementId == _elementIds[Elements.SliderVolume])
                    {
                        if (eventMessage.EventData.TryGetValue(nameof(Slider.progress), out int prog))
                        {
                            OnVolumeChanged(eventMessage.ElementId, prog);
                        }
                        else
                        {
                            Trace.TraceInformation("Error parsing volume from message.");
                        }
                    }
                    break;

                case EventFiredAnperiMessage.EventType.on_input:
                    break;

                default:
                    Trace.TraceWarning($"Got not handled event: {eventMessage.Event.ToString()} from: {eventMessage.ElementId}");
                    break;
                }
                break;
            }
        }
Esempio n. 2
0
        private static void Anperi_Message(object sender, AnperiMessageEventArgs e)
        {
            switch (e.Message)
            {
            case DebugAnperiMessage _:
                Trace.TraceInformation($"Got debug: {e.Message.Data.ToDataString()}");
                break;

            case ErrorAnperiMessage _:
                Trace.TraceInformation($"Got error: {e.Message.Data.ToDataString()}");
                break;

            case EventFiredAnperiMessage _:
                Trace.TraceInformation($"Got event fired: {e.Message.Data.ToDataString()}");
                break;

            case PeripheralInfoAnperiMessage _:
                Trace.TraceInformation($"Got peripheral info: {e.Message.Data.ToDataString()}");
                break;

            default:
                throw new NotImplementedException("this type is not implemented yet");
            }
        }