private void LoadSettingControls(ConfigData configData) { var settingControls = new List <ISettingControl>(); tabCategories.SuspendLayout(); tabCategories.Hide(); tabCategories.TabPages.Clear(); foreach (var category in configData.SettingCategories.Values) { tabCategories.TabPages.Add(SettingCategoryTabPage.Create(category, toolTip, cmGameSetting, c => settingControls.Add(c))); } tabCategories.ResumeLayout(); tabCategories.Show(); foreach (var setting in _settingControls) { if (setting.HasValue) { settingControls.UpdateByKey(setting.Model.Key, setting.Value); } } DisposableUtils.Dispose(_settingControls); _settingControls = settingControls; bool anyDataAvailable = settingControls.Count != 0; btnSave.Enabled = anyDataAvailable; btnResetAll.Enabled = anyDataAvailable; btnResetPage.Enabled = anyDataAvailable; }
private void ResetAtPageSettings() => SettingCategoryTabPage.GetSettings(tabCategories.SelectedTab).ClearValues();