/// <inheritdoc/> public virtual void RegisterActionItem(ViewModelActionItem actionItem) { if (changes.Contains(actionItem)) { throw new ArgumentException(@"The given action item is already registered.", nameof(actionItem)); } changes.Add(actionItem); }
/// <inheritdoc/> public virtual void DiscardActionItem(ViewModelActionItem actionItem) { var removed = changes.Remove(actionItem); if (!removed) { throw new ArgumentException(@"The given action item was not registered.", nameof(actionItem)); } }
/// <inheritdoc/> public virtual void DiscardActionItem(ViewModelActionItem actionItem) { bool removed = changes.Remove(actionItem); if (!removed) { throw new ArgumentException(@"The given action item was not registered.", "actionItem"); } UpdateDirtiness(); }
internal void RegisterAction(string observableNodePath, ViewModelActionItem actionItem) { // This must be done before adding the action item to the stack! NotifyNodeChanged(observableNodePath); ActionStack.Add(actionItem); }
protected void RegisterValueChangedAction(string path, ViewModelActionItem actionItem) { Owner.RegisterAction(path, actionItem); }