public override void MoveFrame(System.Windows.Forms.MouseEventArgs e, TimeRuler ruler)
{
int iMousePosition = ((ruler.Orientation == enumOrientation.orHorizontal) ? e.X : e.Y);
long lNewMillisecond = (long) ruler.PixelToScaleValue(iMousePosition);
if(lNewMillisecond > ruler.CurrentMillisecond)
{
int iStartDist = DistanceFromHandle(e, ruler, _StartMillisecond);
int iEndDist = DistanceFromHandle(e, ruler, _EndMillisecond);
if(iStartDist < iEndDist)
{
if(_StartMillisecond > ruler.CurrentMillisecond &&
!ruler.KeyFrames.Overlaps(lNewMillisecond, this._EndMillisecond, this))
_StartMillisecond = lNewMillisecond;
}
else
{
if(_EndMillisecond > ruler.CurrentMillisecond &&
!ruler.KeyFrames.Overlaps(this._StartMillisecond, lNewMillisecond, this))
_EndMillisecond = lNewMillisecond;
}
ruler.RedrawBitmap();
}
}