private PracticeResultItem CreateResult()
        {
            var practiceResultKeyInfos = this.PracticeKeyInfoViewModels
                                         .Select(
                viewModel =>
                new PracticeResultKeyInfo
            {
                ExpectedKey      = viewModel.ExpectedKey.Value,
                KeyInputtedCount = viewModel.KeyInputtedCount.Value,
                KeyMistakedCount = viewModel.KeyMistakedCount.Value,
            })
                                         .ToList();
            var result = new PracticeResultItem(practiceResultKeyInfos)
            {
                OdaiText      = this.OdaiText.Value,
                YomiText      = this.YomiText.Value,
                StartDateTime = this.startDateTime,
                EndDateTime   = DateTime.Now,
            };

            return(result);
        }
 private void SubscribePracticeItemResulted(PracticeResultItem resultItem)
 {
     this.CurrentResultContentViewModel?.AddPracticeResultItem(resultItem);
     this.booleanNotifier.SwitchValueWith(_ => DebugLog.Print($"次のスイッチ"));
 }
Example #3
0
 internal void AddPracticeResultItem(PracticeResultItem practiceResultItem)
 {
     this.PracticeResultItems.Add(practiceResultItem);
 }
        public void PublishPracticeItemResulted(PracticeResultItem result)
        {
            var eh = Interlocked.CompareExchange(ref this.PracticeItemResulted, null, null);

            eh?.Invoke(result);
        }