mirror of
https://github.com/ShareX/ShareX.git
synced 2024-10-01 09:47:22 +13:00
Added rotate and flip functions, removed RemoveOutsideShapes usage
This commit is contained in:
parent
cb91274d00
commit
240a8ceb6c
2 changed files with 13 additions and 12 deletions
|
@ -1318,10 +1318,7 @@ public void CropArea(Rectangle rect)
|
|||
if (img != null)
|
||||
{
|
||||
form.InitBackground(img);
|
||||
|
||||
MoveAll(form.ImageRectangle.X - rect.X, form.ImageRectangle.Y - rect.Y);
|
||||
RemoveOutsideShapes();
|
||||
|
||||
isAnnotated = true;
|
||||
}
|
||||
}
|
||||
|
@ -1357,18 +1354,22 @@ private void CanvasSize()
|
|||
if (img != null)
|
||||
{
|
||||
Rectangle oldRect = form.ImageRectangle;
|
||||
|
||||
form.InitBackground(img);
|
||||
|
||||
MoveAll(form.ImageRectangle.X - oldRect.X + canvas.Left, form.ImageRectangle.Y - oldRect.Y + canvas.Top);
|
||||
RemoveOutsideShapes();
|
||||
|
||||
isAnnotated = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void RotateImage(RotateFlipType type)
|
||||
{
|
||||
Image clone = (Image)form.Image.Clone();
|
||||
clone.RotateFlip(type);
|
||||
form.InitBackground(clone);
|
||||
isAnnotated = true;
|
||||
}
|
||||
|
||||
private void OnCurrentShapeChanged(BaseShape shape)
|
||||
{
|
||||
if (CurrentShapeChanged != null)
|
||||
|
|
|
@ -617,29 +617,29 @@ private void CreateToolbar()
|
|||
|
||||
ToolStripMenuItem tsmiRotate90Clockwise = new ToolStripMenuItem("Rotate 90° clockwise");
|
||||
tsmiRotate90Clockwise.Image = Resources.arrow_circle;
|
||||
tsmiRotate90Clockwise.MouseDown += (sender, e) => CanvasSize();
|
||||
tsmiRotate90Clockwise.MouseDown += (sender, e) => RotateImage(RotateFlipType.Rotate90FlipNone);
|
||||
tsddbImage.DropDownItems.Add(tsmiRotate90Clockwise);
|
||||
|
||||
ToolStripMenuItem tsmiRotate90CounterClockwise = new ToolStripMenuItem("Rotate 90° counter clockwise");
|
||||
tsmiRotate90CounterClockwise.Image = Resources.arrow_circle_135_left;
|
||||
tsmiRotate90CounterClockwise.MouseDown += (sender, e) => CanvasSize();
|
||||
tsmiRotate90CounterClockwise.MouseDown += (sender, e) => RotateImage(RotateFlipType.Rotate270FlipNone);
|
||||
tsddbImage.DropDownItems.Add(tsmiRotate90CounterClockwise);
|
||||
|
||||
ToolStripMenuItem tsmiRotate180 = new ToolStripMenuItem("Rotate 180°");
|
||||
tsmiRotate180.Image = Resources.arrow_circle_double;
|
||||
tsmiRotate180.MouseDown += (sender, e) => CanvasSize();
|
||||
tsmiRotate180.MouseDown += (sender, e) => RotateImage(RotateFlipType.Rotate180FlipNone);
|
||||
tsddbImage.DropDownItems.Add(tsmiRotate180);
|
||||
|
||||
tsddbImage.DropDownItems.Add(new ToolStripSeparator());
|
||||
|
||||
ToolStripMenuItem tsmiFlipHorizontal = new ToolStripMenuItem("Flip horizontal");
|
||||
tsmiFlipHorizontal.Image = Resources.layer_flip;
|
||||
tsmiFlipHorizontal.MouseDown += (sender, e) => CanvasSize();
|
||||
tsmiFlipHorizontal.MouseDown += (sender, e) => RotateImage(RotateFlipType.RotateNoneFlipX);
|
||||
tsddbImage.DropDownItems.Add(tsmiFlipHorizontal);
|
||||
|
||||
ToolStripMenuItem tsmiFlipVertical = new ToolStripMenuItem("Flip vertical");
|
||||
tsmiFlipVertical.Image = Resources.layer_flip_vertical;
|
||||
tsmiFlipVertical.MouseDown += (sender, e) => CanvasSize();
|
||||
tsmiFlipVertical.MouseDown += (sender, e) => RotateImage(RotateFlipType.RotateNoneFlipY);
|
||||
tsddbImage.DropDownItems.Add(tsmiFlipVertical);
|
||||
|
||||
#endregion
|
||||
|
|
Loading…
Reference in a new issue