WatchThis.Controllers.SlideshowDriver.NextSlide C# (CSharp) Method

NextSlide() private method

private NextSlide ( ) : void
return void
		private void NextSlide()
		{
			Task.Factory.StartNew( () =>
			{
				if (Model.MediaList.Count == 0)
				{
					BeginEnumerate();
				}
				else
				{
				    if (State != DriverState.Stopped)
				    {
				        if (State == DriverState.Paused)
				        {
				            SetupTimer();
				        }
				        ResetTimer();

				        if (_recentIndex.HasValue)
				        {
				            ++_recentIndex;
				            if (_recentIndex < _recent.Count)
				            {
								ShowImage(_recent[_recentIndex.Value]);
				            }
				            else
				            {
				                _recentIndex = null;
				            }
				        }

				        if (!_recentIndex.HasValue)
				        {
							ShowImage(NextRandom());
				        }
				    }
				}
			});
		}