AnimatGuiCtrls.Controls.TimeRuler.OnCurrentFrameMoved C# (CSharp) Method

OnCurrentFrameMoved() private method

private OnCurrentFrameMoved ( KeyFrame frameSelected ) : void
frameSelected KeyFrame
return void
		internal void OnCurrentFrameMoved(KeyFrame frameSelected)
		{
			KeyFrameEventArgs e = new KeyFrameEventArgs(frameSelected);
			if (CurrentFrameMoved != null) CurrentFrameMoved(this, e);
		}

Usage Example

        public override void EndMove(System.Windows.Forms.MouseEventArgs e, TimeRuler ruler)
        {
            int iMousePosition = ((ruler.Orientation == enumOrientation.orHorizontal) ? e.X : e.Y);
            long lNewMillisecond = (long) ruler.PixelToScaleValue(iMousePosition);

            KeyFrame keyClosest = ruler.KeyFrames.FindClosest(KeyFrame.enumKeyFrameType.Snapshot, lNewMillisecond, true);

            //If we can not find a single frame close to the current end position that is within the current time zone then move
            //it back to the currenttime. Otherwise move it to the closest key frame.
            if(keyClosest != null)
            {
                SetTimes(keyClosest.StartMillisecond);
                ruler.CurrentMillisecond = keyClosest.StartMillisecond;
                ruler.OnCurrentFrameMoved(keyClosest);
            }
            else
            {
                SetTimes(ruler.ActualMillisecond);
                ruler.CurrentMillisecond = ruler.ActualMillisecond;
                ruler.OnCurrentFrameMoved(null);
            }

            ruler.RedrawBitmap();
        }