private void ResetMouse() { currentMouseTask = MouseTasks.None; this.Cursor = Cursors.Default; }
private void pbxImage_MouseMove(object sender, MouseEventArgs e) { if (pbxImage.Image != null) { if (currentMouseTask == MouseTasks.ResizeImageVertical) { mouseEnd.Y = e.Location.Y; int heightChange = mouseEnd.Y - mouseStart.Y; mouseStart = mouseEnd; ChangeSize(heightChange, EditorImage.ResizeTypes.Pixels, EditorImage.ResizeDirections.Vertical); } else if (currentMouseTask == MouseTasks.ResizeImageHorizontal) { mouseEnd.X = e.Location.X; int widthChange = mouseEnd.X - mouseStart.X; mouseStart = mouseEnd; ChangeSize(widthChange, EditorImage.ResizeTypes.Pixels, EditorImage.ResizeDirections.Horizontal); } else if (currentMouseTask == MouseTasks.MoveCrop) { mouseEnd.X = e.Location.X; mouseEnd.Y = e.Location.Y; int moveX = mouseEnd.X - mouseStart.X; int moveY = mouseEnd.Y - mouseStart.Y; mouseStart.X = mouseEnd.X; mouseStart.Y = mouseEnd.Y; currentImage.MoveCrop(moveX, moveY); pbxImage.Invalidate(); // Needed } else { // Look for borders currentMouseTask = MouseTasks.None; if (currentImage.HasCrop == true) { BorderHelper.Border border = cropBorderHelper.getBorder(e.Location); if (border != BorderHelper.Border.Exterior && border != BorderHelper.Border.Interior) { this.Cursor = System.Windows.Forms.Cursors.SizeAll; currentMouseTask = MouseTasks.ReadyMoveCrop; } } if (pbxImage.Image != null) { BorderHelper.Border border = imgBorderHelper.getBorder(e.Location); if (border != BorderHelper.Border.Exterior) { if (border == BorderHelper.Border.Bottom) { this.Cursor = System.Windows.Forms.Cursors.HSplit; currentMouseTask = MouseTasks.ReadyResizeImageVertical; } else if (border == BorderHelper.Border.Right) { this.Cursor = System.Windows.Forms.Cursors.VSplit; currentMouseTask = MouseTasks.ReadyResizeImageHorizontal; } } } } if (currentMouseTask == MouseTasks.None) this.Cursor = Cursors.Default; } }
private void pbxImage_MouseUp(object sender, MouseEventArgs e) { currentMouseTask = MouseTasks.None; this.Cursor = Cursors.Default; if (currentImage.HasCrop) { if (currentImage.Crop.GetRectangle().Bottom > currentImage.GetRectangle().Bottom || currentImage.Crop.GetRectangle().Right > currentImage.GetRectangle().Right) { int heightAdjust, widthAdjust; heightAdjust = currentImage.Crop.GetRectangle().Height; widthAdjust = currentImage.Crop.GetRectangle().Width; RefitForCrop(); } } }
private void pbxImage_MouseDown(object sender, MouseEventArgs e) { if (pbxImage.Image != null) { if (currentMouseTask == MouseTasks.ReadyResizeImageVertical) { currentMouseTask = MouseTasks.ResizeImageVertical; mouseStart.Y = e.Location.Y; } else if (currentMouseTask == MouseTasks.ReadyResizeImageHorizontal) { currentMouseTask = MouseTasks.ResizeImageHorizontal; mouseStart.X = e.Location.X; } else if (currentMouseTask == MouseTasks.ReadyMoveCrop) { currentMouseTask = MouseTasks.MoveCrop; mouseStart.X = e.Location.X; mouseStart.Y = e.Location.Y; } } }