CSharpUtils.Process.ProcessBaseCore.Animate C# (CSharp) Method

Animate() protected method

protected Animate ( System.TimeSpan Time, Action StepAction ) : void
Time System.TimeSpan
StepAction Action
return void
		protected void Animate(TimeSpan Time, Action<float> StepAction)
		{
			Stopwatch Stopwatch = new Stopwatch();
			//Stopwatch.
			//Stopwatch.StartNew();
			Stopwatch.Start();
			//var Start = DateTime.Now;
			//var End = Start + Time;

			StepAction(0);
			while (true)
			{
				var ElapsedPercent = (float)((double)Stopwatch.ElapsedMilliseconds / (double)Time.TotalMilliseconds);
				//Console.WriteLine(Stopwatch.Elapsed.TotalMilliseconds);
				if (ElapsedPercent >= 1)
				{
					StepAction(1);
					break;
				}
				else
				{
					StepAction(ElapsedPercent);
				}
				Yield();
			}
		}