protected override void inicializarComponente()
        {
            base.inicializarComponente();

            foreach (var item in _SomAlarme)
            {
                var alarmeSwitch = new AlarmeSwitch {
                    Style     = EstiloUtils.Popup.CheckBox,
                    SomAlarme = item.Key
                };
                alarmeSwitch.Toggled += (sender, e) =>
                {
                    var alSwitch = (AlarmeSwitch)sender;
                    if (alSwitch.IsToggled)
                    {
                        foreach (var s in _Controls)
                        {
                            if (alSwitch.SomAlarme != s.Key)
                            {
                                s.Value.IsToggled = false;
                            }
                        }
                        PreferenciaUtils.SomAlarme = alSwitch.SomAlarme;
                        var regraAviso = new AvisoSonoroBLL();
                        if (PreferenciaUtils.CanalAudio == AudioCanalEnum.Notificacao)
                        {
                            string arquivoSom = regraAviso.pegarArquivo(alSwitch.SomAlarme);
                            MensagemUtils.notificar(104, "Radar+", "Reproduzindo som de alarme para escolha!", audio: arquivoSom);
                        }
                        else
                        {
                            regraAviso.play(alSwitch.SomAlarme);
                        }
                    }
                    else
                    {
                        bool marcado = false;
                        foreach (var s in _Controls)
                        {
                            if (s.Value.IsToggled)
                            {
                                marcado = true;
                                break;
                            }
                        }
                        if (!marcado)
                        {
                            alSwitch.IsToggled = true;
                        }
                    }
                };
                _Controls.Add(item.Key, alarmeSwitch);
            }
        }
示例#2
0
        private static void avisarRadar(LocalizacaoInfo local, RadarInfo radar)
        {
            var regraAviso = new AvisoSonoroBLL();

            RadarBLL.RadarAtual = radar;
            string titulo   = "Radar+";
            string mensagem = "Tem um radar a frente, diminua para " + radar.Velocidade.ToString() + "km/h!";

            if (PreferenciaUtils.VibrarAlerta)
            {
                int tempo = PreferenciaUtils.TempoDuracaoVibracao;
                if (tempo <= 0)
                {
                    tempo = 1;
                }
                tempo = tempo * 1000;
                MensagemUtils.vibrar(tempo);
            }
            if (PreferenciaUtils.HabilitarVoz)
            {
                MensagemUtils.notificar(RADAR_ID, titulo, mensagem, velocidade: radar.Velocidade);
                int distancia = arredondarDistancia(local.Distancia);
                regraAviso.play(radar.Tipo, radar.Velocidade, distancia);
                DistanciaOld = distancia;
            }
            else
            {
                if (PreferenciaUtils.CanalAudio == AudioCanalEnum.Notificacao)
                {
                    if (PreferenciaUtils.BeepAviso)
                    {
                        string arquivoAlarme = regraAviso.pegarArquivo(PreferenciaUtils.SomAlarme);
                        MensagemUtils.notificar(RADAR_ID, titulo, mensagem, audio: arquivoAlarme, velocidade: radar.Velocidade);
                    }
                    else
                    {
                        MensagemUtils.notificar(RADAR_ID, titulo, mensagem, velocidade: radar.Velocidade);
                    }
                }
                else
                {
                    MensagemUtils.notificar(RADAR_ID, titulo, mensagem, velocidade: radar.Velocidade);
                    if (PreferenciaUtils.BeepAviso)
                    {
                        regraAviso.play(PreferenciaUtils.SomAlarme);
                    }
                }
            }
        }