コード例 #1
0
        public override void Start(PomodoroController controller)
        {
            TimeSpan elapsedFullMinutes  = new TimeSpan(0, 0, MinutesInState - MinuteCountDown, 0);
            TimeSpan elapsedTime         = PauseTime.Subtract(StartTime).Subtract(PreviousState.TotalPauseTimeSpan);
            TimeSpan totalPauseTimeSpan  = DateTime.Now.Subtract(StartTime).Subtract(elapsedTime);
            double   minuteTimerTimeLeft = MilisecondsPerMinute - elapsedTime.Subtract(elapsedFullMinutes).TotalMilliseconds;

            Console.WriteLine($"{nameof(Paused)}");
            Console.WriteLine($"   elapsedFullMinutes  = {elapsedFullMinutes.TotalMilliseconds}");
            Console.WriteLine($"   elapsedTime         = {elapsedTime.TotalMilliseconds}");
            Console.WriteLine($"   totalPauseTimeSpan  = {totalPauseTimeSpan.TotalMilliseconds}");
            Console.WriteLine($"   minuteTimerTimeLeft = {minuteTimerTimeLeft}");

            controller.State = PreviousState;
            controller.State.Start(minuteTimerTimeLeft, totalPauseTimeSpan);
        }
コード例 #2
0
        public Stopwatch Resume()
        {
            if (IsRunning && IsPaused)
            {
                if (PauseTime != null)
                {
                    StartTime.Add(PauseTime.Subtract(DateTime.Now));
                }
                IsPaused = false;
                CompositionTarget.Rendering += Tick;
                if (Resumed != null)
                {
                    Resumed(this);
                }
            }

            return(this);
        }