Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
 public void CopiedUseCaseSentence(UseCaseSentenceViewModel sentence)
 {
     if (IsItemInList(sentence))
     {
         _view.RaiseCopiedUseCaseSentenceEvent(sentence);
     }
 }
Esempio n. 4
0
        private void UpdatedBasicSentence(UseCaseSentenceViewModel data)
        {
            var sentence = Mapper.Map <UseCaseSentence>(BasicSentence);

            SetCurrentSentenceFromUseCase(sentence);
            CheckIfSentenceIsOk();
        }
Esempio n. 5
0
 public void DeletedUseCaseSentence(UseCaseSentenceViewModel sentence)
 {
     if (IsItemInList(sentence))
     {
         UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences.Remove(sentence);
         _view.RaiseDeletedUseCaseSentenceEvent(sentence);
     }
 }
Esempio n. 6
0
 public MethodParameterReferenceViewModel(
     UseCaseSentenceViewModel sentence,
     MethodParameterViewModel methodParameter)
 {
     Sentence        = sentence;
     MethodParameter = methodParameter ?? throw new ArgumentNullException(nameof(methodParameter));
     ReferenceType   = MethodParameterReferenceType.UseCaseSentence;
 }
Esempio n. 7
0
 public void UpdatedUseCaseSentenceInputParameters(UseCaseSentenceViewModel sentence, List <MethodParameterReferenceValueViewModel> newSentence)
 {
     if (IsItemInList(sentence))
     {
         sentence.ReferencedInputParametersValues = newSentence;
         _view.RaiseUpdateUseCaseSentenceEvent(sentence);
     }
 }
Esempio n. 8
0
        private void RaiseRouteEventWithCurrentSentence(RoutedEvent routedEvent, UseCaseSentenceViewModel sentenceViewModel)
        {
            RoutedEventArgs args = new UpdatedUseCaseSentenceEventArgs()
            {
                UseCaseViewModel = sentenceViewModel,
            };

            args.RoutedEvent = routedEvent;
            RaiseEvent(args);
        }
Esempio n. 9
0
 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);
     }
 }
Esempio n. 10
0
 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);
     }
 }
Esempio n. 11
0
        public void RaiseUpdateUseCaseSentenceEvent(UseCaseSentence useCaseSentence, UseCaseSentenceViewModel useCaseSentenceViewModel)
        {
            RoutedEventArgs args = new UpdatedUseCaseSentenceEventArgs()
            {
                UseCase          = useCaseSentence,
                UseCaseViewModel = useCaseSentenceViewModel,
            };

            args.RoutedEvent = UpdatedUseCaseEvent;
            RaiseEvent(args);
        }
Esempio n. 12
0
 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);
     }
 }
Esempio n. 13
0
 public void RaiseUpdateUseCaseSentenceEvent(UseCaseSentenceViewModel useCaseViewModel)
 {
     RaiseRouteEventWithCurrentSentence(UpdatedUseCaseEvent, useCaseViewModel);
 }
Esempio n. 14
0
 private void UpdatedSentence(UseCaseSentenceViewModel data)
 {
 }
Esempio n. 15
0
 public void MovedDownUseCase(UseCaseSentenceViewModel useCase)
 {
     UpdateUseCaseContent();
 }
Esempio n. 16
0
 public bool GetCanDelete(UseCaseSentenceViewModel sentence)
 {
     return(true);
 }
Esempio n. 17
0
 private int IndexInList(UseCaseSentenceViewModel sentence)
 {
     return(UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences.IndexOf(sentence));
 }
Esempio n. 18
0
        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);
        }
Esempio n. 19
0
 public bool GetCanMoveDown(UseCaseSentenceViewModel sentence)
 {
     return(SentenceCollection?.Sentences.Last() != sentence);
 }
Esempio n. 20
0
 public void RaiseDeletedUseCaseSentenceEvent(UseCaseSentenceViewModel sentenceViewModel)
 {
     RaiseRouteEventWithCurrentSentence(DeletedUseCaseEvent, sentenceViewModel);
 }
Esempio n. 21
0
        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);
        }
Esempio n. 22
0
 public void RaiseMovedDownUseCaseSentenceEvent(UseCaseSentenceViewModel sentenceViewModel)
 {
     RaiseRouteEventWithCurrentSentence(MovedDownUseCaseEvent, sentenceViewModel);
 }
Esempio n. 23
0
 public void CopiedUseCase(UseCaseSentenceViewModel useCase)
 {
     UseCaseContext.CopiedSentence = useCase;
     UpdateUseCaseContent();
 }
Esempio n. 24
0
 private void SetSentence(UseCaseSentenceViewModel data)
 {
     ViewModel.Sentence = data;
 }
Esempio n. 25
0
 public void DeletedUseCase(UseCaseSentenceViewModel useCase)
 {
     UpdateUseCaseContent();
 }
Esempio n. 26
0
 private bool IsItemInList(UseCaseSentenceViewModel sentence)
 {
     return(UseCaseSentenceCollectionManagerInputData.SentenceCollection.Sentences.IndexOf(sentence) > -1);
 }
Esempio n. 27
0
 public bool GetCanPaste(UseCaseSentenceViewModel sentence)
 {
     return(UseCaseContext != null && UseCaseContext.CopiedSentence != null);
 }