using System; using UnityEngine; namespace UIWidgetsSamples { [Serializable] public class ListViewCustomSampleItemDescription { [SerializeField] public Sprite Icon; [SerializeField] public string Name; [SerializeField] public int Progress; public override int GetHashCode() { return Icon.GetHashCode() ^ Name.GetHashCode() ^ Progress; } public override bool Equals(object obj) { ListViewCustomSampleItemDescription listViewCustomSampleItemDescription = obj as ListViewCustomSampleItemDescription; if (listViewCustomSampleItemDescription == null) { return false; } if ((listViewCustomSampleItemDescription.Icon == null && Icon != null) || (listViewCustomSampleItemDescription.Icon != null && Icon == null)) { return false; } return Name == listViewCustomSampleItemDescription.Name && Progress == listViewCustomSampleItemDescription.Progress && Icon.Equals(listViewCustomSampleItemDescription.Icon); } } }