public async void finalizarMeditacao()
        {
            if (FinalizarMeditacao)
            {
                //acender tela
                DependencyService.Get <IWindowController>().acenderTela();

                var qualidadeDePresenca = await page.DisplayAlert("", "Houve Qualidade de Presença em sua prática?", "Sim", "Não");

                if (qualidadeDePresenca)
                {
                    Meditacao meditacao = dao.TemposMeditacao[0];
                    meditacao.TempoTotalMeditado += NumeroRepeticoes + numeroRepeticoesHumming;
                    dao.AtualizarMeditacao(meditacao);
                }

                bool aumentar_tempo_humming = NumeroRepeticoesHumming == tempoMaxHumming && NumeroRepeticoesHumming < 30;

                bool aumentar_tempo_ump = NumeroRepeticoes == tempoMaxUMDP;

                if (aumentar_tempo_humming || aumentar_tempo_ump)
                {
                    DependencyService.Get <ICustomDialog>().callCustomDialog(aumentar_tempo_humming, aumentar_tempo_ump, this);
                }
                else
                {
                    var resposta = await page.DisplayAlert("", "Deseja praticar novamente?", "Sim", "Não");

                    if (resposta)
                    {
                        FinalizarMeditacao = false;
                        comecarMeditacao();
                    }
                    else
                    {
                        await Navigation.PopAsync();
                    }
                    //apagar tela
                    DependencyService.Get <IWindowController>().apagarTela();
                }
            }
        }
        public void ajustaLimitesMaximosDeTempos()
        {
            Meditacao med = new Meditacao();


            if (dao.TemposMeditacao.Count == 0)
            {
                var audioInicialHumming = ListasDeSonsMeditacao.listaDeSonsHumming.GetEnumerator();
                audioInicialHumming.MoveNext();

                var audioInicialUMP = ListasDeSonsMeditacao.listaDeSonsUMP.GetEnumerator();
                audioInicialUMP.MoveNext();

                med = new Meditacao()
                {
                    TempoMaximoHumming = 5,
                    TempoMaximoUMDP    = 5,
                    AudioHumming       = audioInicialHumming.Current.Key,
                    //AudioHumming = "Didgeridoo",
                    AudioUMP = audioInicialUMP.Current.Key,
                    //AudioUMP = "Qual é a realidade?",
                    TempoTotalMeditado = 0
                };
                dao.AdicionarMeditacao(med);
            }
            else
            {
                med = dao.TemposMeditacao[0];
            }

            Valor        = 1;
            ValorHumming = 0;

            TempoMaximoHumming = med.TempoMaximoHumming;
            TempoMaximoUMDP    = med.TempoMaximoUMDP;
        }
 public void AdicionarMeditacao(Meditacao med)
 {
     conexao.Insert(med);
     tempos.Add(med);
 }
 public void AtualizarMeditacao(Meditacao med)
 {
     conexao.Update(med);
 }
Ejemplo n.º 5
0
        public void callCustomDialog(bool hummingMaximo, bool umdpMaximo, MeditacaoUMDPViewModel umdpvm)
        {
            SQLite_Android sqlite = new SQLite_Android();
            MeditacaoDAO   dao    = new MeditacaoDAO(sqlite.GetConnection());
            Meditacao      tempos = dao.TemposMeditacao[0];

            umdp = umdpvm;

            hummingConcluido = !hummingMaximo;
            umdpConcluido    = !umdpMaximo;

            var context = Android.App.Application.Context;

            var inflater = context.GetSystemService(Context.LayoutInflaterService) as LayoutInflater;

            var view = inflater.Inflate(Resource.Layout.layout1, null);

            var layoutHumming   = view.FindViewById <Android.Widget.LinearLayout>(Resource.Id.layoutHumming);
            var layoutUMDP      = view.FindViewById <Android.Widget.LinearLayout>(Resource.Id.layoutUMDP);
            var layoutPrincipal = view.FindViewById <Android.Widget.LinearLayout>(Resource.Id.layoutPrincipal);

            btHummingSim = view.FindViewById <Android.Widget.Button>(Resource.Id.btHummingSim);
            btHummingNao = view.FindViewById <Android.Widget.Button>(Resource.Id.btHummingNao);

            btUMDPSim = view.FindViewById <Android.Widget.Button>(Resource.Id.btUMDPSim);
            btUMDPNao = view.FindViewById <Android.Widget.Button>(Resource.Id.btUMDPNao);

            btHummingSim.Click += (sender, args) =>
            {
                tempos.TempoMaximoHumming += 5;
                dao.AtualizarMeditacao(tempos);
                acoesBotoesHumming();
            };

            btHummingNao.Click += (sender, args) =>
            {
                acoesBotoesHumming();
            };

            btUMDPSim.Click += (sender, args) =>
            {
                tempos.TempoMaximoUMDP += 5;
                dao.AtualizarMeditacao(tempos);
                acoesBotoesUMDP();
            };

            btUMDPNao.Click += (sender, args) =>
            {
                acoesBotoesUMDP();
            };

            if (!hummingMaximo)
            {
                layoutPrincipal.RemoveView(layoutHumming);
                //layoutHumming.Visibility = ViewStates.Invisible;
            }
            if (!umdpMaximo)
            {
                layoutPrincipal.RemoveView(layoutUMDP);
                //layoutUMDP.Visibility = ViewStates.Invisible;
            }

            AlertDialog.Builder builder = new AlertDialog.Builder(Forms.Context)
                                          .SetView(view);

            alert = builder.Create();

            alert.SetCanceledOnTouchOutside(false);

            alert.Show();
        }