コード例 #1
0
 public StudyTimer()
 {
     DispatcherTimer = new DispatcherTimer {
         Interval = new TimeSpan(0, 0, 1)
     };
     DispatcherTimer.Tick += DispatcherTimerOnTick;
     RandomQuoteGenerator  = new RandomQuoteGenerator();
 }
コード例 #2
0
        private void DispatcherTimerOnTick(object sender, EventArgs eventArgs)
        {
            if (TimerValue != OriginalValue)
            {
                TimerValue++;
            }
            if (TimerValue != OriginalValue)
            {
                return;
            }
            if (DispatcherTimer == null)
            {
                return;
            }

            DispatcherTimer.Stop();


            if (NumberOfCycles % 4 == 0 && NumberOfCycles != 0)
            {
                if (OriginalValue == LongBreak)
                {
                    OriginalValue = StudyDuration;
                    TimerValue    = 0;
                    MessageBox.Show("Study time");
                    UpNext = "Up next: short break";
                    NumberOfCycles++;
                }
                else if (OriginalValue == StudyDuration)
                {
                    OriginalValue = LongBreak;
                    TimerValue    = 0;
                    MessageBox.Show("Long break");
                    UpNext = "Up next: study time";
                }
            }
            else
            {
                if (OriginalValue == ShortBreak)
                {
                    OriginalValue = StudyDuration;
                    TimerValue    = 0;
                    MessageBox.Show("Study time");

                    if ((NumberOfCycles + 1) % 4 == 0 && NumberOfCycles != 0)
                    {
                        UpNext = "Up next: long break";
                    }
                    else
                    {
                        UpNext = "Up next: short break";
                    }
                    NumberOfCycles++;
                }
                else if (OriginalValue == StudyDuration)
                {
                    OriginalValue = ShortBreak;
                    TimerValue    = 0;
                    MessageBox.Show("Short break");
                    UpNext = "Up next: study time";
                }
            }

            Quote = RandomQuoteGenerator.GetRandomQuote();

            DispatcherTimer.Start();
        }