mirror of
https://github.com/ShareX/ShareX.git
synced 2024-10-02 18:26:27 +13:00
Removed DrawFinal from BaseDrawing, renamed Draw to OnDraw
This commit is contained in:
parent
ea9f3f2312
commit
1233a7e29c
13 changed files with 47 additions and 62 deletions
|
@ -208,13 +208,13 @@ protected override void Draw(Graphics g)
|
|||
// Draw effect shapes
|
||||
foreach (BaseEffectShape effectShape in ShapeManager.EffectShapes)
|
||||
{
|
||||
effectShape.Draw(g);
|
||||
effectShape.OnDraw(g);
|
||||
}
|
||||
|
||||
// Draw drawing shapes
|
||||
foreach (BaseDrawingShape drawingShape in ShapeManager.DrawingShapes)
|
||||
{
|
||||
drawingShape.Draw(g);
|
||||
drawingShape.OnDraw(g);
|
||||
}
|
||||
|
||||
// Draw animated rectangle on hover area
|
||||
|
|
|
@ -32,15 +32,27 @@ You should have received a copy of the GNU General Public License
|
|||
|
||||
namespace ShareX.ScreenCaptureLib
|
||||
{
|
||||
public class ArrowDrawingShape : LineDrawingShape
|
||||
public class ArrowDrawingShape : BaseDrawingShape
|
||||
{
|
||||
public override ShapeType ShapeType { get; } = ShapeType.DrawingArrow;
|
||||
public override NodeType NodeType { get; } = NodeType.Line;
|
||||
|
||||
public override Pen CreatePen()
|
||||
public override void OnDraw(Graphics g)
|
||||
{
|
||||
Pen pen = base.CreatePen();
|
||||
pen.CustomEndCap = new AdjustableArrowCap(4, 6);
|
||||
return pen;
|
||||
if (BorderSize > 0 && BorderColor.A > 0)
|
||||
{
|
||||
g.SmoothingMode = SmoothingMode.HighQuality;
|
||||
|
||||
using (Pen pen = new Pen(BorderColor, BorderSize))
|
||||
using (AdjustableArrowCap arrowCap = new AdjustableArrowCap(4, 6))
|
||||
{
|
||||
pen.CustomEndCap = arrowCap;
|
||||
|
||||
g.DrawLine(pen, StartPosition, EndPosition);
|
||||
}
|
||||
|
||||
g.SmoothingMode = SmoothingMode.None;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -53,21 +53,6 @@ public override void ApplyShapeConfig()
|
|||
AnnotationOptions.FillColor = FillColor;
|
||||
}
|
||||
|
||||
public virtual void Draw(Graphics g)
|
||||
{
|
||||
using (Pen borderPen = new Pen(Color.Black))
|
||||
using (Pen borderDotPen = new Pen(Color.White))
|
||||
{
|
||||
borderDotPen.DashPattern = new float[] { 2, 2 };
|
||||
|
||||
g.DrawRectangleProper(borderPen, Rectangle);
|
||||
g.DrawRectangleProper(borderDotPen, Rectangle);
|
||||
}
|
||||
}
|
||||
|
||||
public virtual void DrawFinal(Graphics g, Bitmap bmp)
|
||||
{
|
||||
Draw(g);
|
||||
}
|
||||
public abstract void OnDraw(Graphics g);
|
||||
}
|
||||
}
|
|
@ -38,7 +38,7 @@ public class EllipseDrawingShape : BaseDrawingShape
|
|||
{
|
||||
public override ShapeType ShapeType { get; } = ShapeType.DrawingEllipse;
|
||||
|
||||
public override void Draw(Graphics g)
|
||||
public override void OnDraw(Graphics g)
|
||||
{
|
||||
g.SmoothingMode = SmoothingMode.HighQuality;
|
||||
|
||||
|
|
|
@ -37,13 +37,13 @@ public class LineDrawingShape : BaseDrawingShape
|
|||
public override ShapeType ShapeType { get; } = ShapeType.DrawingLine;
|
||||
public override NodeType NodeType { get; } = NodeType.Line;
|
||||
|
||||
public override void Draw(Graphics g)
|
||||
public override void OnDraw(Graphics g)
|
||||
{
|
||||
if (BorderSize > 0 && BorderColor.A > 0)
|
||||
{
|
||||
g.SmoothingMode = SmoothingMode.HighQuality;
|
||||
|
||||
using (Pen pen = CreatePen())
|
||||
using (Pen pen = new Pen(BorderColor, BorderSize))
|
||||
{
|
||||
g.DrawLine(pen, StartPosition, EndPosition);
|
||||
}
|
||||
|
@ -51,10 +51,5 @@ public override void Draw(Graphics g)
|
|||
g.SmoothingMode = SmoothingMode.None;
|
||||
}
|
||||
}
|
||||
|
||||
public virtual Pen CreatePen()
|
||||
{
|
||||
return new Pen(BorderColor, BorderSize);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -38,7 +38,7 @@ public class RectangleDrawingShape : BaseDrawingShape
|
|||
{
|
||||
public override ShapeType ShapeType { get; } = ShapeType.DrawingRectangle;
|
||||
|
||||
public override void Draw(Graphics g)
|
||||
public override void OnDraw(Graphics g)
|
||||
{
|
||||
if (FillColor.A > 0)
|
||||
{
|
||||
|
|
|
@ -51,7 +51,7 @@ public override void ApplyShapeConfig()
|
|||
AnnotationOptions.RoundedRectangleRadius = (int)Radius;
|
||||
}
|
||||
|
||||
public override void Draw(Graphics g)
|
||||
public override void OnDraw(Graphics g)
|
||||
{
|
||||
Brush brush = null;
|
||||
Pen pen = null;
|
||||
|
|
|
@ -58,14 +58,7 @@ public override void ApplyShapeConfig()
|
|||
AnnotationOptions.TextFillColor = FillColor;
|
||||
}
|
||||
|
||||
public override void Draw(Graphics g)
|
||||
{
|
||||
base.Draw(g);
|
||||
|
||||
DrawFinal(g, null);
|
||||
}
|
||||
|
||||
public override void DrawFinal(Graphics g, Bitmap bmp)
|
||||
public override void OnDraw(Graphics g)
|
||||
{
|
||||
if (FillColor.A > 0)
|
||||
{
|
||||
|
@ -96,6 +89,16 @@ public override void DrawFinal(Graphics g, Bitmap bmp)
|
|||
}
|
||||
}
|
||||
|
||||
public override void OnShapeCreated()
|
||||
{
|
||||
UpdateText();
|
||||
}
|
||||
|
||||
public override void OnShapeDoubleClicked()
|
||||
{
|
||||
UpdateText();
|
||||
}
|
||||
|
||||
private void UpdateText()
|
||||
{
|
||||
Manager.PauseForm();
|
||||
|
@ -109,15 +112,5 @@ private void UpdateText()
|
|||
|
||||
Manager.ResumeForm();
|
||||
}
|
||||
|
||||
public override void OnShapeCreated()
|
||||
{
|
||||
UpdateText();
|
||||
}
|
||||
|
||||
public override void OnShapeDoubleClicked()
|
||||
{
|
||||
UpdateText();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -33,11 +33,11 @@ namespace ShareX.ScreenCaptureLib
|
|||
{
|
||||
public abstract class BaseEffectShape : BaseShape
|
||||
{
|
||||
public abstract void Draw(Graphics g);
|
||||
public abstract void OnDraw(Graphics g);
|
||||
|
||||
public virtual void DrawFinal(Graphics g, Bitmap bmp)
|
||||
public virtual void OnDrawFinal(Graphics g, Bitmap bmp)
|
||||
{
|
||||
Draw(g);
|
||||
OnDraw(g);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -50,7 +50,7 @@ public override void ApplyShapeConfig()
|
|||
AnnotationOptions.BlurRadius = BlurRadius;
|
||||
}
|
||||
|
||||
public override void Draw(Graphics g)
|
||||
public override void OnDraw(Graphics g)
|
||||
{
|
||||
if (BlurRadius > 1)
|
||||
{
|
||||
|
@ -77,7 +77,7 @@ public override void Draw(Graphics g)
|
|||
}
|
||||
}
|
||||
|
||||
public override void DrawFinal(Graphics g, Bitmap bmp)
|
||||
public override void OnDrawFinal(Graphics g, Bitmap bmp)
|
||||
{
|
||||
if (BlurRadius > 1)
|
||||
{
|
||||
|
|
|
@ -50,7 +50,7 @@ public override void ApplyShapeConfig()
|
|||
AnnotationOptions.HighlightColor = HighlightColor;
|
||||
}
|
||||
|
||||
public override void Draw(Graphics g)
|
||||
public override void OnDraw(Graphics g)
|
||||
{
|
||||
using (Brush brush = new SolidBrush(Color.FromArgb(100, HighlightColor)))
|
||||
{
|
||||
|
@ -74,7 +74,7 @@ public override void Draw(Graphics g)
|
|||
}
|
||||
}
|
||||
|
||||
public override void DrawFinal(Graphics g, Bitmap bmp)
|
||||
public override void OnDrawFinal(Graphics g, Bitmap bmp)
|
||||
{
|
||||
using (Bitmap croppedImage = ImageHelpers.CropBitmap(bmp, Rectangle))
|
||||
{
|
||||
|
|
|
@ -50,7 +50,7 @@ public override void ApplyShapeConfig()
|
|||
AnnotationOptions.PixelateSize = PixelSize;
|
||||
}
|
||||
|
||||
public override void Draw(Graphics g)
|
||||
public override void OnDraw(Graphics g)
|
||||
{
|
||||
if (PixelSize > 1)
|
||||
{
|
||||
|
@ -77,7 +77,7 @@ public override void Draw(Graphics g)
|
|||
}
|
||||
}
|
||||
|
||||
public override void DrawFinal(Graphics g, Bitmap bmp)
|
||||
public override void OnDrawFinal(Graphics g, Bitmap bmp)
|
||||
{
|
||||
if (PixelSize > 1)
|
||||
{
|
||||
|
|
|
@ -1159,7 +1159,7 @@ public Image RenderOutputImage(Image img)
|
|||
{
|
||||
if (shape != null)
|
||||
{
|
||||
shape.DrawFinal(g, bmp);
|
||||
shape.OnDrawFinal(g, bmp);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1167,7 +1167,7 @@ public Image RenderOutputImage(Image img)
|
|||
{
|
||||
if (shape != null)
|
||||
{
|
||||
shape.DrawFinal(g, bmp);
|
||||
shape.OnDraw(g);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue