예제 #1
0
        public override void WriteData(SerializedObject objSerializedObject)
        {
            base.WriteData(objSerializedObject);

            if (_objItems.Count > 0)
            {
                SerializedObject objChildren = objSerializedObject.Objects.Add("Items");

                SerializedObjectCollection objObjects = objChildren.Objects;
                SerializedValueCollection  objValues  = objChildren.Values;

                SerializedValueType enuSerializedValueType = SerializedValueTypeHelper.GetTypeFromSystemType(typeof(TObjectType));
                foreach (TObjectType objChildItem in _objItems)
                {
                    if (enuSerializedValueType != SerializedValueType.Unknown)
                    {
                        objValues.Add("Item", objChildItem);
                    }
                    else if (objChildItem is ICustomSerializer)
                    {
                        objObjects.Add("Item", (ICustomSerializer)objChildItem);
                    }
                    else
                    {
                        objObjects.Add("Item", new SerializedWrapperObject(objChildItem));
                    }
                }
            }
        }
예제 #2
0
        public override void WriteData(SerializedObject objSerializedObject)
        {
            base.WriteData(objSerializedObject);

            SerializedObject objSettings = objSerializedObject.Objects.Add("Settings");

            foreach (KeyValuePair <string, object> objKeyValuePair in Settings)
            {
                SerializedValueType enuValueType = SerializedValueTypeHelper.GetTypeFromObject(objKeyValuePair.Value);
                if (enuValueType != SerializedValueType.Unknown)
                {
                    objSettings.Values.Add(objKeyValuePair.Key, objKeyValuePair.Value);
                }
                else if (objKeyValuePair.Value is ICustomSerializer)
                {
                    objSettings.Objects.Add(objKeyValuePair.Key, (ICustomSerializer)objKeyValuePair.Value);
                }
                else
                {
                    objSettings.Objects.Add(objKeyValuePair.Key, new SerializedWrapperObject(objKeyValuePair.Value));
                }
            }
        }