Beispiel #1
0
        static AppConfig()
        {
            ConfigSetting   = new ToolSetting();
            ModifiedSetting = new ToolSetting();
            // Add tool default configurations
            string assemplayName = System.Reflection.Assembly.GetExecutingAssembly().Location;
            string modulePath    = Path.GetDirectoryName(assemplayName);

            ConfigSetting.SetValue("ModuleDirectory", modulePath);
            ConfigSetting.SetValue("WorkingDirectory", modulePath);

            SetProjectBasePath(modulePath);

            //ConfigSetting.ImportEnvironmentVariables();
            ConfigSetting.ImportParameters();

            string roamingPath       = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
            string exeName           = Path.GetFileNameWithoutExtension(assemplayName);
            string defaultConfigPath = Path.Combine(modulePath, "0.default_" + exeName + ".cfg");

            if (File.Exists(defaultConfigPath))
            {
                LoadDefaultConfig(defaultConfigPath);
            }

            LocalConfigPath = Path.Combine(roamingPath, exeName, exeName + ".cfg");
            LoadLocalConfig(LocalConfigPath);
        }
Beispiel #2
0
        public ToolSetting Clone()
        {
            ToolSetting newSetting = new ToolSetting();

            foreach (var config in m_Configurations)
            {
                var valueSet = config.Value as Dictionary <string, object>;
                if (valueSet != null)
                {
                    var newValueSet = new Dictionary <string, object>(valueSet);
                    newSetting.m_Configurations.Add(config.Key, newValueSet);
                }
                else
                {
                    newSetting.m_Configurations.Add(config.Key, config.Value);
                }
            }

            return(newSetting);
        }