/// <summary>
        /// Detaches a trigger from this object.
        /// </summary>
        /// <param name="trigger">The trigger to detach from this object.</param>
        internal void DetachTrigger(UvssTrigger trigger)
        {
            if (attachedTriggers == null)
            {
                throw new InvalidOperationException();
            }

            attachedTriggers.Remove(trigger);
        }
        /// <summary>
        /// Attaches a trigger to this object.
        /// </summary>
        /// <param name="trigger">The trigger to attach to this object.</param>
        internal void AttachTrigger(UvssTrigger trigger)
        {
            if (attachedTriggers == null)
            {
                attachedTriggers = new List <UvssTrigger>();
            }

            attachedTriggers.Add(trigger);
        }