public void AddExecuteUseCaseSentence( GenericManager manager, UseCaseSentenceViewModel sentence, List <MethodParameterReferenceViewModel> parentInputParameters, List <MethodParameterReferenceViewModel> parentOutputParameters) { foreach (var item in SentenceGrid.Children.OfType <ExecuteUseCaseSentenceView>()) { item.UpdatedUseCase -= Instance_UpdatedUseCase; } SentenceGrid.Children.Clear(); var instance = new ExecuteUseCaseSentenceView() { ExecuteUseCaseSentenceInputData = new ExecuteUseCaseSentenceInputData() { Sentence = sentence, GenericManager = manager, ParentInputParameters = parentInputParameters, ParentOutputParameters = parentOutputParameters, } }; instance.UpdatedUseCase += Instance_UpdatedUseCase; SentenceGrid.Children.Add(instance); }
private void InitializeCommands() { AddSentenceCommand = new RelayCommandHandled((input) => { if (SelectedSentenceType.Value == (int)UseCaseSentence.SentenceType.ExecuteRepositoryMethod) { var newSentence = new UseCaseSentenceViewModel() { Type = UseCaseSentence.SentenceType.ExecuteRepositoryMethod }; UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences .Add(newSentence); _view.RaiseMovedUpUseCaseSentenceEvent(newSentence); } if (SelectedSentenceType.Value == (int)UseCaseSentence.SentenceType.ExecuteUseCase) { var newSentence = new UseCaseSentenceViewModel() { Type = UseCaseSentence.SentenceType.ExecuteUseCase }; UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences .Add(newSentence); _view.RaiseMovedUpUseCaseSentenceEvent(newSentence); } }, (input) => { return(SelectedSentenceType != null); }); RegisterCommand(AddSentenceCommand); }
public void CopiedUseCaseSentence(UseCaseSentenceViewModel sentence) { if (IsItemInList(sentence)) { _view.RaiseCopiedUseCaseSentenceEvent(sentence); } }
private void UpdatedBasicSentence(UseCaseSentenceViewModel data) { var sentence = Mapper.Map <UseCaseSentence>(BasicSentence); SetCurrentSentenceFromUseCase(sentence); CheckIfSentenceIsOk(); }
public void DeletedUseCaseSentence(UseCaseSentenceViewModel sentence) { if (IsItemInList(sentence)) { UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences.Remove(sentence); _view.RaiseDeletedUseCaseSentenceEvent(sentence); } }
public MethodParameterReferenceViewModel( UseCaseSentenceViewModel sentence, MethodParameterViewModel methodParameter) { Sentence = sentence; MethodParameter = methodParameter ?? throw new ArgumentNullException(nameof(methodParameter)); ReferenceType = MethodParameterReferenceType.UseCaseSentence; }
public void UpdatedUseCaseSentenceInputParameters(UseCaseSentenceViewModel sentence, List <MethodParameterReferenceValueViewModel> newSentence) { if (IsItemInList(sentence)) { sentence.ReferencedInputParametersValues = newSentence; _view.RaiseUpdateUseCaseSentenceEvent(sentence); } }
private void RaiseRouteEventWithCurrentSentence(RoutedEvent routedEvent, UseCaseSentenceViewModel sentenceViewModel) { RoutedEventArgs args = new UpdatedUseCaseSentenceEventArgs() { UseCaseViewModel = sentenceViewModel, }; args.RoutedEvent = routedEvent; RaiseEvent(args); }
public void MovedDownUseCaseSentence(UseCaseSentenceViewModel sentence) { if (IsItemInList(sentence)) { var index = IndexInList(sentence); UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences.RemoveAt(index); UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences.Insert(index + 1, sentence); _view.RaiseMovedUpUseCaseSentenceEvent(sentence); } }
public void PastedUseCaseSentence(UseCaseSentenceViewModel sentence) { if (IsItemInList(sentence)) { var clonedSentence = UseCaseSentenceCollectionManagerInputData.GenericManager.ParserService.Clone(sentence); var listItems = new List <UseCaseSentenceViewModel>(SentenceCollection.Sentences); listItems.Add(clonedSentence); UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences = listItems; _view.RaisePastedUseCaseSentenceEvent(sentence); } }
public void RaiseUpdateUseCaseSentenceEvent(UseCaseSentence useCaseSentence, UseCaseSentenceViewModel useCaseSentenceViewModel) { RoutedEventArgs args = new UpdatedUseCaseSentenceEventArgs() { UseCase = useCaseSentence, UseCaseViewModel = useCaseSentenceViewModel, }; args.RoutedEvent = UpdatedUseCaseEvent; RaiseEvent(args); }
public void UpdatedUseCaseSentence(UseCaseSentenceViewModel sentence, UseCaseSentence newSentence) { if (IsItemInList(sentence)) { var newList = new List <UseCaseSentenceViewModel>(UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences); var index = IndexInList(sentence); var newViewModel = Mapper.Map <UseCaseSentenceViewModel>(newSentence); if (index > -1) { newList[index] = newViewModel; } else { newList.Add(newViewModel); } UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences = newList; _view.RaiseUpdateUseCaseSentenceEvent(newViewModel); } }
public void RaiseUpdateUseCaseSentenceEvent(UseCaseSentenceViewModel useCaseViewModel) { RaiseRouteEventWithCurrentSentence(UpdatedUseCaseEvent, useCaseViewModel); }
private void UpdatedSentence(UseCaseSentenceViewModel data) { }
public void MovedDownUseCase(UseCaseSentenceViewModel useCase) { UpdateUseCaseContent(); }
public bool GetCanDelete(UseCaseSentenceViewModel sentence) { return(true); }
private int IndexInList(UseCaseSentenceViewModel sentence) { return(UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences.IndexOf(sentence)); }
public List <MethodParameterReferenceViewModel> GetOutputParametersForSentence(UseCaseSentenceViewModel sentence) { var parameters = new List <MethodParameterReferenceViewModel>(); parameters.AddRange(UseCaseSentenceCollectionManagerInputData.ParentOutputParameters); var allSentences = UseCaseSentenceCollectionManagerInputData .SentenceCollection .Sentences; var index = allSentences.IndexOf(sentence); for (int i = 0; i < index; i++) { var targetSentence = allSentences[i]; parameters.AddRange(targetSentence.OutputParameters.Select(k => new MethodParameterReferenceViewModel(targetSentence, k))); } return(parameters); }
public bool GetCanMoveDown(UseCaseSentenceViewModel sentence) { return(SentenceCollection?.Sentences.Last() != sentence); }
public void RaiseDeletedUseCaseSentenceEvent(UseCaseSentenceViewModel sentenceViewModel) { RaiseRouteEventWithCurrentSentence(DeletedUseCaseEvent, sentenceViewModel); }
public void RaiseUpdateUseCaseSentenceEvent(List <MethodParameterReferenceValueViewModel> parameters, UseCaseSentenceViewModel viewmodel) { RoutedEventArgs args = new UpdatedUseCaseSentenceEventArgs() { Parameters = parameters, UseCaseViewModel = viewmodel, Type = UpdatedUseCaseSentenceEventArgs.UpdateType.InputParameters, }; args.RoutedEvent = UpdatedUseCaseEvent; RaiseEvent(args); }
public void RaiseMovedDownUseCaseSentenceEvent(UseCaseSentenceViewModel sentenceViewModel) { RaiseRouteEventWithCurrentSentence(MovedDownUseCaseEvent, sentenceViewModel); }
public void CopiedUseCase(UseCaseSentenceViewModel useCase) { UseCaseContext.CopiedSentence = useCase; UpdateUseCaseContent(); }
private void SetSentence(UseCaseSentenceViewModel data) { ViewModel.Sentence = data; }
public void DeletedUseCase(UseCaseSentenceViewModel useCase) { UpdateUseCaseContent(); }
private bool IsItemInList(UseCaseSentenceViewModel sentence) { return(UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences.IndexOf(sentence) > -1); }
public bool GetCanPaste(UseCaseSentenceViewModel sentence) { return(UseCaseContext != null && UseCaseContext.CopiedSentence != null); }