private bool setPersonSettingAttributeField(SettingAttribute attr) { PersonalSettingAttribute person_attr = PersonalSettings.GetPersonalSettingAttribute(attr); if (person_attr == null) return false; m_PersonalSettingAttribute = person_attr; return true; }
public GlobalSettingEntity(SettingAttribute attribute) { m_SettingAttribute = new SettingAttribute(attribute.SettingType, attribute.SettingName); }
/// <summary> /// Получить значение глобального аналога персональной настройки /// </summary> /// <param name="attribute">Атрибут персональной настройки</param> /// <returns>Значение глобального аналога персональной настройки</returns> public static object GetGlobalAnalogueOfPersonalSetting(SettingAttribute attribute) { try { PersonalSettingAttribute person_attr = GetPersonalSettingAttribute(attribute); if (person_attr != null && person_attr.HasGlobalAnalogue) { PropertyInfo global_property = GetPropertyBySettingAttributeName(typeof(GlobalSettings), person_attr.GlobalAnalogue); if (global_property != null) return global_property.GetValue(GlobalSettings.Instance, null); } } catch { } return new object(); }
/// <summary> /// Проверить, совпадает ли значение персональной (пользовательской) настройки со значением аналогичной глобальной настройки /// </summary> /// <param name="attribute">Атрибут персональной настройки</param> /// <param name="value">Значение персональной настройки</param> /// <returns>true - если значение персональной и глобальной настроек совпадают, false - в противном случае</returns> public static bool IsGlobalEqual(SettingAttribute attribute, object value) { try { object global_value = GetGlobalAnalogueOfPersonalSetting(attribute); if (string.Equals(global_value.ToString(), value.ToString())) return true; } catch {} return false; }
/// <summary> /// Получить атрибут персональной настройки ( PersonalSettingAttribute ) по ключу /// </summary> /// <param name="attribute">Атрибут персональной настройки</param> /// <returns>PersonalSettingAttribute - если настройка была найдена среди свойств класса PersonalSettings, null - в противном случае</returns> public static PersonalSettingAttribute GetPersonalSettingAttribute(SettingAttribute attribute) { PersonalSettingAttribute person_attribute = attribute as PersonalSettingAttribute; if (person_attribute != null) { PersonalSettingAttribute result = new PersonalSettingAttribute(person_attribute.SettingName); result.GlobalAnalogue = person_attribute.GlobalAnalogue; return result; } else return attribute.SettingType == SettingType.Personal ? GetPersonalSettingAttribute(attribute.SettingName) : null; }
public PersonalSettingEntity(SettingAttribute setting_attr, PersonAttribute person_attr) { m_PersonAttribute = person_attr; if (!setPersonSettingAttributeField(setting_attr)) throw new Exception("Invalid setting type of personal setting."); }
public PersonalSettingEntity(SettingAttribute setting_attr, object value) { m_PersonAttribute.StringField = value.ToString(); if (!setPersonSettingAttributeField(setting_attr)) throw new Exception("Invalid setting type of personal setting."); }