private void panel1_MouseMove(object sender, MouseEventArgs e) { if (!panel1.Capture) { CropOrigin o = getOrigin(e.X, e.Y); switch (o) { case CropOrigin.Bottom: case CropOrigin.Top: panel1.Cursor = Cursors.HSplit; return; case CropOrigin.Left: case CropOrigin.Right: panel1.Cursor = Cursors.VSplit; return; default: panel1.Cursor = Cursors.Default; return; } } else { switch (currentOrigin) { case CropOrigin.Bottom: cropBottom = (panel1.ClientSize.Height - 1) - e.Y; return; case CropOrigin.Top: cropTop = e.Y; return; case CropOrigin.Left: cropLeft = e.X; return; case CropOrigin.Right: cropRight = (panel1.ClientSize.Width - 1) - e.X; return; default: return; } } }
private void panel1_MouseDown(object sender, MouseEventArgs e) { currentOrigin = getOrigin(e.X, e.Y); }