Ejemplo n.º 1
0
 private void InvokeSettingChanged(Util.SettingName settingName, bool?value)
 {
     SettingChangedEvent?.Invoke(settingName, value);
 }
Ejemplo n.º 2
0
        private void SettingChanged(Util.SettingName settingName, bool?value)
        {
            switch (settingName)
            {
            case Util.SettingName.GurmukhiVisible:
                versesObs.ToList().ForEach(a => a.GurmukhiVisible = value.Value);
                //ReloadGrid();
                break;

            case Util.SettingName.EngTranslationVisible:
                versesObs.ToList().ForEach(a => a.TranslationVisible = value.Value);
                //ReloadGrid();
                break;

            case Util.SettingName.PunTranslationVisible:
                versesObs.ToList().ForEach(a => a.PunjabiTranslationVisible = value.Value);
                //ReloadGrid();
                break;

            case Util.SettingName.TransliterationVisible:
                versesObs.ToList().ForEach(a => a.TransliterationVisible = value.Value);
                //ReloadGrid();
                break;

            case Util.SettingName.GurmukhiFontSize:
                if (value.Value)
                {
                    versesObs.ToList().ForEach(a => a.GurmukhiFontSize += 2);
                }
                else
                {
                    if (versesObs[0].GurmukhiFontSize >= 8)
                    {
                        versesObs.ToList().ForEach(a => a.GurmukhiFontSize -= 2);
                    }
                }
                //ReloadGrid();
                break;

            case Util.SettingName.EngTranslationFontSize:
                if (value.Value)
                {
                    versesObs.ToList().ForEach(a => a.EnglishFontSize += 2);
                }
                else
                {
                    if (versesObs[0].EnglishFontSize >= 8)
                    {
                        versesObs.ToList().ForEach(a => a.EnglishFontSize -= 2);
                    }
                }
                //ReloadGrid();
                break;

            case Util.SettingName.PunTranslationFontSize:
                if (value.Value)
                {
                    versesObs.ToList().ForEach(a => a.PunjabiFontSize += 2);
                }
                else
                {
                    if (versesObs[0].PunjabiFontSize >= 8)
                    {
                        versesObs.ToList().ForEach(a => a.PunjabiFontSize -= 2);
                    }
                }
                //ReloadGrid();
                break;

            case Util.SettingName.TransliterationFontSize:
                if (value.Value)
                {
                    versesObs.ToList().ForEach(a => a.TransliterationFontSize += 2);
                }
                else
                {
                    if (versesObs[0].TransliterationFontSize >= 8)
                    {
                        versesObs.ToList().ForEach(a => a.TransliterationFontSize -= 2);
                    }
                }
                //ReloadGrid();
                break;

            case Util.SettingName.FullScreen:
                //FullScreen(value.Value);
                break;

            case Util.SettingName.NormalFont:
                string fontName = value.Value ? Util.PunjabiFontKey : Util.HandFontKey;
                versesObs.ToList().ForEach(a => a.GurmukhiFontName = fontName);
                //ReloadGrid();
                break;

            case Util.SettingName.HandFont:
                string fontName2 = value.Value ? Util.HandFontKey : Util.PunjabiFontKey;
                versesObs.ToList().ForEach(a => a.GurmukhiFontName = fontName2);
                //ReloadGrid();
                break;

            case Util.SettingName.Ladivaar:
                VishraamLadivaar();
                //ReloadGrid();
                break;

            case Util.SettingName.Vishraam:
                VishraamLadivaar();
                //ReloadGrid();
                break;

            case Util.SettingName.Theme:
                Theme theme = new Theme();
                versesObs?.ToList().ForEach(a => a.PageBgTheme = theme);
                BindingContext = theme;
                Util.SetStatusBarColor(Color.FromHex(theme.HeaderColor));
                MasterDetailPage curPage = (MasterDetailPage)Application.Current.MainPage;
                if (curPage != null)
                {
                    ((NavigationPage)curPage.Detail).BarBackgroundColor = Color.FromHex(theme.HeaderColor);
                    EditToolbar.BackgroundColor = Color.FromHex(theme.HeaderColor);
                }

                if (SelectedVerseId != null && SelectedVerseId > 0)
                {
                    SelectedVerse             = versesObs.FirstOrDefault(a => a.ID == SelectedVerseId);
                    SelectedVerse.ListBgColor = SelectedVerse.PageBgTheme.DefaultItemBg;
                }
                VishraamLadivaar();
                break;
            }
        }