CEWorkbench.Controls.TimelineControl.OnMouseShowPathInfo C# (CSharp) Method

OnMouseShowPathInfo() private method

private OnMouseShowPathInfo ( object sender, System.Windows.Input.MouseEventArgs e ) : void
sender object
e System.Windows.Input.MouseEventArgs
return void
        private void OnMouseShowPathInfo(object sender, MouseEventArgs e)
        {
            var polyLine = (Polyline)sender;
            Point mousePos = Mouse.GetPosition(cGraphContent);
            double timeInSecond = mousePos.X * LenghtInSeconds / (cGraphContent.Width);

            if (fatigueInfoList.Count == 0)
            {
                polyLine.ToolTip = "No Fatigue Information";
                return;
            }

            var selectedFatigue = fatigueInfoList.OrderBy(fatigue => Math.Abs(fatigue.TotalTimeInSeconds - timeInSecond)).First();
            string averageEndurance = "Infinity";
            ArmData armData = selectedFatigue.RightData;
            if (selectedFatigue.SelectedArm == Arm.LeftArm)
                armData = selectedFatigue.LeftData;

            if (armData.AvgEndurance < 3000)
                averageEndurance = armData.AvgEndurance.ToString("F2");
            polyLine.ToolTip = string.Format("CE: {0} %\nTime: {1} sec\nAvg Strength: {2} %\nAvg Endurance: {3} sec",
                                                                    armData.ConsumedEndurance.ToString("F2"),
                                                                    selectedFatigue.TotalTimeInSeconds.ToString("F2"),
                                                                    armData.ArmStrength.ToString("F2"),
                                                                    averageEndurance);
        }