コード例 #1
0
        static void OnPrepareStampForSerialization(SerializedItem stamp, IItemProperties properties)
        {
            SerializedStampEventArgs serializedStampEventArgs = new SerializedStampEventArgs();

            serializedStampEventArgs.Item       = stamp;
            serializedStampEventArgs.Properties = properties;
            PrepareItemForSerialization?.Invoke(null, serializedStampEventArgs);
        }
コード例 #2
0
        public static SerializedItem From(IItemProperties itemProperties)
        {
            SerializedItem serializedItem = new SerializedItem();

            serializedItem.GetValuesFrom(itemProperties);
            OnPrepareStampForSerialization(serializedItem, itemProperties);
            return(serializedItem);
        }
コード例 #3
0
 void SerializeStamps(List <IItemProperties> selectedStamps)
 {
     storedStamps.Clear();
     foreach (IItemProperties stampProperties in selectedStamps)
     {
         SerializedItem serializedStamp = SerializedItem.From(stampProperties);
         storedStamps.Add(JsonConvert.SerializeObject(serializedStamp));
     }
 }
コード例 #4
0
        List <Guid> DeserializeStoredStamps(Map map)
        {
            List <Guid>           guidsRestored    = new List <Guid>();
            List <SerializedItem> serializedStamps = new List <SerializedItem>();

            foreach (string storedStamp in storedStamps)
            {
                SerializedItem serializedStamp = JsonConvert.DeserializeObject <SerializedItem>(storedStamp);
                serializedStamps.Add(serializedStamp);
                guidsRestored.Add(serializedStamp.Guid);
            }
            map.ReconstituteItems(map.Items, serializedStamps);
            return(guidsRestored);
        }
コード例 #5
0
 public void AddChild(SerializedItem serializedStamp)
 {
     Children.Add(serializedStamp);
 }
コード例 #6
0
 void OnAddItem(List <IItemProperties> items, SerializedItem serializedItem)
 {
     reconstituteStampsEventArgs.Items          = items;
     reconstituteStampsEventArgs.SerializedItem = serializedItem;
     ReconstitutingItems?.Invoke(this, reconstituteStampsEventArgs);
 }
コード例 #7
0
 SerializedItem NewSerializedStamp(IItemProperties stampProperties)
 {
     return(SerializedItem.From(stampProperties));
 }