예제 #1
0
        /// <summary>
        /// Reads a new setting from a file.
        /// </summary>
        /// <param name="filePath">Filepath of the settings file</param>
        /// <returns></returns>
        public static Settings Load(string filePath)
        {
            var settings = new Settings();

            if (File.Exists(filePath))
            {
                var     text = File.ReadAllText(filePath);
                IniData ini  = IniData.Deserialize(text);
                foreach (var section in ini.Content)
                {
                    var id = section.Key;
                    if (id == "General")
                    {
                        if (section.Value.ContainsKey("Language"))
                        {
                            LanguageManager.getInstance().Language = section.Value["Language"];
                        }
                    }
                    else if (id == "Keyboard")
                    {
                        settings.mappers[id] = KeyboardToXInputMapper.Parse(section.Value);
                    }
                    else
                    {
                        settings.mappers[id] = DirectToXInputMapper.Parse(section.Value);
                    }
                }
            }
            return(settings);
        }
예제 #2
0
 private LanguageManager(string filePath)
 {
     data     = IniData.Deserialize(Properties.Resources.languages).Content;
     Language = "English";
 }