public bool IsEqual(VFXPropertyAttributes other) { if (m_Flag != other.m_Flag) { return(false); } if (m_AllAttributes == null) { return(other.m_AllAttributes == null); } if (other.m_AllAttributes == null) { return(false); } if (m_AllAttributes.Length != other.m_AllAttributes.Length) { return(false); } for (int i = 0; i < m_AllAttributes.Length; ++i) { if (!m_AllAttributes[i].Equals(other.m_AllAttributes[i])) { return(false); } } return(true); }
public void UpdateAttributes(VFXPropertyAttributes attributes, bool notify) { m_FieldInfoCache = null; // this is call by syncslot. at this point the type of our master slot might have changed. m_Property.attributes = attributes; if (notify) { Invalidate(InvalidationCause.kUIChanged); } }
public void UpdateAttributes(VFXPropertyAttributes attributes, bool notify) { if (notify) { if (!m_Property.attributes.IsEqual(attributes)) { m_Property.attributes = attributes; Invalidate(InvalidationCause.kUIChangedTransient); // TODO This will trigger a setDirty while it shouldn't as property attributes are not serialized } } else // fast path without comparison { m_Property.attributes = attributes; } }
public void UpdateAttributes(VFXPropertyAttributes attributes) { m_FieldInfoCache = null; // this is call by syncslot. at this point the type of our master slot might have changed. m_Property.attributes = attributes; }
public VFXProperty(Type type, string name, VFXPropertyAttributes attributes) { m_serializedType = type; this.name = name; this.attributes = attributes; }