| 12345678910111213141516171819202122232425262728293031323334 | 
							- using System;
 
- using System.Collections.Generic;
 
- using UnityEngine;
 
- namespace EnhancedHierarchy {
 
-     [Serializable]
 
-     public sealed class IconList : List<IconBase>, ISerializationCallbackReceiver {
 
-         [SerializeField]
 
-         private IconData[] data;
 
-         public IconList() { }
 
-         public IconList(IEnumerable<IconBase> collection) : base(collection) { }
 
-         public void OnAfterDeserialize() {
 
-             if (data == null)
 
-                 return;
 
-             Clear();
 
-             for (var i = 0; i < data.Length; i++)
 
-                 Add(data[i].Icon);
 
-         }
 
-         public void OnBeforeSerialize() {
 
-             data = new IconData[Count];
 
-             for (var i = 0; i < data.Length; i++)
 
-                 data[i] = new IconData() { Icon = this[i] };
 
-         }
 
-     }
 
- }
 
 
  |