namespace Zinnia.Data.Collection.List
{
using System;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
///
/// Allows observing changes to a of s.
///
public class GameObjectRelationObservableList : DefaultObservableList
{
///
/// A relationship between a key and its associated value .
///
[Serializable]
public class Relation
{
[Tooltip("The GameObject acting as the key.")]
[SerializeField]
private GameObject key;
///
/// The acting as the key.
///
public GameObject Key
{
get
{
return key;
}
set
{
key = value;
}
}
[Tooltip("The GameObject acting as the value.")]
[SerializeField]
private GameObject value;
///
/// The acting as the value.
///
public GameObject Value
{
get
{
return value;
}
set
{
this.value = value;
}
}
///
/// Clears .
///
public virtual void ClearKey()
{
Key = default;
}
///
/// Clears .
///
public virtual void ClearValue()
{
Value = default;
}
}
///
/// Defines the event with the .
///
[Serializable]
public class UnityEvent : UnityEvent { }
}
}