/// <summary> /// Initializes a new instance of the <see cref="OutputToMainWindowActionViewModel"/> class. /// </summary> /// <param name="action">The action.</param> /// <param name="actionDescriptor">The action descriptor.</param> /// <param name="parameterDescriptions">The parameter descriptions.</param> /// <param name="allDescriptions">All descriptions.</param> public OutputToMainWindowActionViewModel([NotNull] OutputToMainWindowAction action, [NotNull] ActionDescription actionDescriptor, [NotNull] IEnumerable <ParameterDescription> parameterDescriptions, [NotNull] IEnumerable <ActionDescription> allDescriptions) : base(action, actionDescriptor, parameterDescriptions, allDescriptions) { Assert.ArgumentNotNull(action, "action"); Assert.ArgumentNotNull(actionDescriptor, "actionDescriptor"); Assert.ArgumentNotNull(parameterDescriptions, "parameterDescriptions"); Assert.ArgumentNotNull(allDescriptions, "allDescriptions"); _action = action; }
/// <summary> /// Clones this instance. /// </summary> /// <returns>A deep copy of this instance.</returns> public override ActionViewModelBase Clone() { var outputToMainWindowAction = new OutputToMainWindowAction(); return(new OutputToMainWindowActionViewModel(outputToMainWindowAction, ActionDescriptor, ParametersModel.ParameterDescriptions, AllActionDescriptions) { BackgroundColor = BackgroundColor, TextColor = TextColor, TextToOutput = TextToOutput, ParametersModel = ParametersModel.Clone(outputToMainWindowAction.Parameters) }); }