public bool TryGetExtraCastedStyleProperty(string p_name, out T p_styleProperty) { StyleProperty v_property = null; var v_sucess = ExtraStylePropertiesMap.TryGetValue(p_name, out v_property); p_styleProperty = v_property as T; return(v_sucess); }
protected virtual bool LoadGenericStyles(StyleData p_styleData) { //Cache StyleData Asset _styleData = p_styleData; var v_template = p_styleData != null ? p_styleData.Asset : null; if (v_template != null) { Dictionary <string, StyleProperty>[] v_otherStyleMaps = new Dictionary <string, StyleProperty>[] { v_template.ExtraStylePropertiesMap }; Dictionary <string, StyleProperty>[] v_selfStyleMaps = new Dictionary <string, StyleProperty>[] { ExtraStylePropertiesMap }; for (int i = 0; i < v_otherStyleMaps.Length; i++) { //Apply Style Properties foreach (var v_pair in v_otherStyleMaps[i]) { StyleProperty v_selfStyleProperty = null; v_selfStyleMaps[i].TryGetValue(v_pair.Key, out v_selfStyleProperty); if (v_selfStyleProperty != null && v_pair.Value != null) { var v_otherStyleProperty = v_pair.Value; v_selfStyleProperty.LoadStyles(v_otherStyleProperty); //Disable/Enable GameObject based in Template (prevent apply if selfStyleProperty.Target is self transform) if (v_selfStyleProperty.Target != this.transform && v_selfStyleProperty.Target != null && v_otherStyleProperty.Target != null) { StyleUtils.ApplyObjectActive(v_selfStyleProperty.Target, v_otherStyleProperty.Target); } //Apply Graphic if Supported if (v_selfStyleProperty.UseStyleGraphic) { StyleUtils.ApplyGraphic(v_selfStyleProperty.Target, v_otherStyleProperty.Target); } } } } var v_metaType = StyleMetaType.GetOrCreateStyleMetaType(GetType()); v_metaType.ApplyStyleDataToTarget(this, p_styleData); #if UNITY_EDITOR UnityEditor.EditorUtility.SetDirty(this); #endif return(true); } return(false); }
public virtual bool LoadStyles(StyleProperty p_styleProperty) { var v_metaType = StyleMetaType.GetOrCreateStyleMetaType(GetType()); return(v_metaType.ApplyTemplateToTarget(this, p_styleProperty)); }
public bool TryGetExtraStyleProperty(string p_name, out StyleProperty p_styleProperty) { return(ExtraStylePropertiesMap.TryGetValue(p_name, out p_styleProperty)); }