private void graphViewer_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == System.Windows.Forms.MouseButtons.Middle)
{
double differenceX = e.X - mPreviousMouseX;
double differenceY = e.Y - mPreviousMouseY;
differenceX = Math.Min(Math.Max(differenceX, -kMaxDrag), kMaxDrag);
differenceY = Math.Min(Math.Max(differenceY, -kMaxDrag), kMaxDrag);
mPreviousMouseX = e.X;
mPreviousMouseY = e.Y;
graphViewer.Pan(differenceX, differenceY);
}
}