예제 #1
0
        private void AddAction([NotNull] ActionViewModelBase actionToAdd)
        {
            Assert.ArgumentNotNull(actionToAdd, "actionToAdd");

            actionToAdd.PropertyChanged   += HandleActionDescriptionChange;
            actionToAdd.ActionTypeChanged += ChangeActionType;
            _actions.Add(actionToAdd);
            _originalActions.Add(actionToAdd.Action);
            OnPropertyChanged("ActionsCollectionEmpty");
        }
예제 #2
0
        private void RemoveAction([NotNull] ActionViewModelBase actionToRemove)
        {
            Assert.ArgumentNotNull(actionToRemove, "actionToRemove");

            actionToRemove.ActionTypeChanged -= ChangeActionType;
            actionToRemove.PropertyChanged   -= HandleActionDescriptionChange;
            _originalActions.Remove(actionToRemove.Action);
            _actions.Remove(actionToRemove);
            OnPropertyChanged("ActionsDescription");
            OnPropertyChanged("ActionsCollectionEmpty");
        }
예제 #3
0
        private void ChangeActionType([NotNull] ActionViewModelBase action, [NotNull] ActionDescription newactiontype)
        {
            Assert.ArgumentNotNull(action, "action");
            Assert.ArgumentNotNull(newactiontype, "newactiontype");

            var currentIndex = Actions.IndexOf(action);

            RemoveAction(action);
            AddAction(newactiontype, currentIndex);
            OnPropertyChanged("ActionsCollectionEmpty");
        }