コード例 #1
0
        /// <summary>
        /// Initialization extension for IDeckAdvisorProgram.
        /// </summary>
        /// <param name="app">The program.</param>
        public static void InitializeProgram(this IDeckAdvisorProgram program)
        {
            program.Logger.Debug("InitializeProgram() Called - {0}", program.ApplicationName);

            program.SetCulture();

            // these have to happen after SetCulture()
            program.FormatMappings = new Dictionary <string, Tuple <string, string> >()
            {
                { program.GetLocalizedString("Item_Standard"), new Tuple <string, string>("standard", "Standard") },
                { program.GetLocalizedString("Item_ArenaStandard"), new Tuple <string, string>("arena_standard", "ArenaStandard") },
                { program.GetLocalizedString("Item_Brawl"), new Tuple <string, string>("brawl", "Brawl") },
                { program.GetLocalizedString("Item_Historic_Bo3"), new Tuple <string, string>("historic_bo3", "Historic") },
                { program.GetLocalizedString("Item_Historic_Bo1"), new Tuple <string, string>("historic_bo1", "Historic") }
            };

            program.SendUsageStats();
        }
コード例 #2
0
        /// <summary>
        /// Initialize various state variables.
        /// </summary>
        /// <param name="app">The program.</param>
        public static void InitializeState(this IDeckAdvisorProgram program)
        {
            program.Logger.Debug("InitializeState() Called - {0}", program.ApplicationName);

            bool saveState = false;

            program.Format.Value = program.CurrentApp.State.LastFormat;
            if (string.IsNullOrWhiteSpace(program.Format.Value) || !program.FormatMappings.ContainsKey(program.Format.Value))
            {
                program.Format.Value = program.GetLocalizedString("Item_Standard");
                program.CurrentApp.State.LastFormat = program.Format.Value;
                saveState = true;
            }

            program.Sort.Value = program.CurrentApp.State.LastSort;
            List <string> sortStrings = new List <string>()
            {
                program.GetLocalizedString("Item_Default"),
                program.GetLocalizedString("Item_BoosterCost"),
                program.GetLocalizedString("Item_BoosterCostIgnoringWildcards"),
                program.GetLocalizedString("Item_BoosterCostIgnoringCollection"),
                program.GetLocalizedString("Item_DeckScore"),
                program.GetLocalizedString("Item_WinRate"),
                program.GetLocalizedString("Item_MythicRareCount"),
                program.GetLocalizedString("Item_RareCount"),
                program.GetLocalizedString("Item_UncommonCount"),
                program.GetLocalizedString("Item_CommonCount")
            };

            if (string.IsNullOrWhiteSpace(program.Sort.Value) || !sortStrings.Contains(program.Sort.Value))
            {
                program.Sort.Value = program.GetLocalizedString("Item_Default");
                program.CurrentApp.State.LastSort = program.Sort.Value;
                saveState = true;
            }

            program.SortDir.Value = program.CurrentApp.State.LastSortDir;
            List <string> sortDirStrings = new List <string>()
            {
                program.GetLocalizedString("Item_Default"),
                program.GetLocalizedString("Item_Ascending"),
                program.GetLocalizedString("Item_Descending")
            };

            if (string.IsNullOrWhiteSpace(program.SortDir.Value) || !sortDirStrings.Contains(program.SortDir.Value))
            {
                program.SortDir.Value = program.GetLocalizedString("Item_Default");
                program.CurrentApp.State.LastSortDir = program.SortDir.Value;
                saveState = true;
            }

            program.RotationProof.Value = program.CurrentApp.State.RotationProof;
            program.CardText.Value      = program.CurrentApp.State.CardTextFilter;

            int fontSize = program.CurrentApp.State.FontSize;

            if (fontSize < 8 || fontSize > 24)
            {
                program.SelectedFontSize.Value    = 12;
                program.CurrentApp.State.FontSize = program.SelectedFontSize.Value;
                saveState = true;
            }
            else
            {
                program.SelectedFontSize.Value = fontSize;
            }

            if (saveState)
            {
                program.CurrentApp.SaveState();
            }
        }