Nexus.Client.Games.Settings.RequiredDirectoriesControlVM.SaveSettings C# (CSharp) Method

SaveSettings() public method

Persists the settings on this control.
public SaveSettings ( bool p_booDelaySettings ) : void
p_booDelaySettings bool Whether the settings should be delayed until the next application restart.
return void
		public void SaveSettings(bool p_booDelaySettings)
		{
			if (!String.Equals(EnvironmentInfo.Settings.InstallInfoFolder[GameModeDescriptor.ModeId], InstallInfoDirectory))
			{
				if (p_booDelaySettings)
					EnvironmentInfo.Settings.DelayedSettings[GameModeDescriptor.ModeId].Add(String.Format("InstallInfoFolder~{0}", GameModeDescriptor.ModeId), InstallInfoDirectory);
				else
					EnvironmentInfo.Settings.InstallInfoFolder[GameModeDescriptor.ModeId] = InstallInfoDirectory;
			}
			if (!String.Equals(EnvironmentInfo.Settings.ModFolder[GameModeDescriptor.ModeId], ModDirectory))
			{
				if (p_booDelaySettings)
					EnvironmentInfo.Settings.DelayedSettings[GameModeDescriptor.ModeId].Add(String.Format("ModFolder~{0}", GameModeDescriptor.ModeId), ModDirectory);
				else
					EnvironmentInfo.Settings.ModFolder[GameModeDescriptor.ModeId] = ModDirectory;
			}
			if (m_booRequiredTool)
			{
				if (!String.Equals(EnvironmentInfo.Settings.ToolFolder[GameModeDescriptor.ModeId], ToolDirectory))
				{
					EnvironmentInfo.Settings.ToolFolder[GameModeDescriptor.ModeId] = ToolDirectory;
				}
			}

			SaveRegistry(GameModeDescriptor.ModeId, ModDirectory, InstallInfoDirectory);

			EnvironmentInfo.Settings.Save();
		}
	}