/// <summary>
        /// Clones this instance.
        /// </summary>
        /// <returns>
        /// A deep copy of this instance.
        /// </returns>
        /// <exception cref="System.NotImplementedException"></exception>
        public override ActionViewModelBase Clone()
        {
            var conditionalAction = new SendToWindowAction();

            return(new SendToWindowActionViewModel(conditionalAction, ActionDescriptor, _allDescriptors)
            {
                OutputWindowName = OutputWindowName,
                SendToAllWindows = SendToAllWindows,
                ActionsToExecute = ActionsToExecute.Clone(conditionalAction.ActionsToExecute)
            });
        }
        /// <summary>
        /// Clones this instance.
        /// </summary>
        /// <returns>A deep copy of this instance.</returns>
        public override ActionViewModelBase Clone()
        {
            var conditionalAction = new ConditionalAction();

            return(new ConditionalActionViewModel(conditionalAction, ActionDescriptor, _allDescriptors, ParameterDescriptions)
            {
                LeftConditionParameter = LeftConditionParameter.Clone(),
                RightConditionParameter = RightConditionParameter.Clone(),
                Condition = Condition,
                ActionsToExecute = ActionsToExecute.Clone(conditionalAction.ActionsToExecute)
            });
        }