// the public constructors are used to create an object with settings from the UI public UserPrefs(FaRPrefs mFaRPrefs, EditPrefs mEditprefs, ListPrefs mList, SkipPrefs mSkipOptions, GeneralPrefs mGeneral, DabPrefs mDisambiguation, ModulePrefs mModule, ExternalProgramPrefs mExternalProgram, SpecialFilterPrefs mSpecial, ToolsPrefs mTool, Dictionary <string, Plugin.IAWBPlugin> plugins) { LanguageCode = Variables.LangCode; Project = Variables.Project; CustomProject = Variables.CustomProject; Protocol = Variables.Protocol; FindAndReplace = mFaRPrefs; Editprefs = mEditprefs; List = mList; SkipOptions = mSkipOptions; General = mGeneral; Disambiguation = mDisambiguation; Module = mModule; ExternalProgram = mExternalProgram; Special = mSpecial; Tool = mTool; foreach (KeyValuePair <string, Plugin.IAWBPlugin> a in plugins) { Plugin.Add(new PluginPrefs(a.Key, a.Value.SaveSettings())); } }