diff --git a/ShareX.HelpersLib/Helpers/ImageHelpers.cs b/ShareX.HelpersLib/Helpers/ImageHelpers.cs
index 919c34121..08b18eda2 100644
--- a/ShareX.HelpersLib/Helpers/ImageHelpers.cs
+++ b/ShareX.HelpersLib/Helpers/ImageHelpers.cs
@@ -522,10 +522,8 @@ public static Bitmap DrawBackgroundImage(Bitmap bmp, Bitmap backgroundImage, boo
if (tile)
{
- using (TextureBrush brush = new TextureBrush(backgroundImage))
+ using (TextureBrush brush = new TextureBrush(backgroundImage, WrapMode.Tile))
{
- brush.WrapMode = WrapMode.Tile;
-
if (center)
{
int tileX = (bmpResult.Width - backgroundImage.Width) / 2 % backgroundImage.Width;
diff --git a/ShareX.ImageEffectsLib/Adjustments/Alpha.cs b/ShareX.ImageEffectsLib/Adjustments/Alpha.cs
index 139a32968..5a7e6fef5 100644
--- a/ShareX.ImageEffectsLib/Adjustments/Alpha.cs
+++ b/ShareX.ImageEffectsLib/Adjustments/Alpha.cs
@@ -49,5 +49,10 @@ public override Bitmap Apply(Bitmap bmp)
return ColorMatrixManager.Alpha(Value, Addition).Apply(bmp);
}
}
+
+ protected override string GetSummary()
+ {
+ return $"{Value}, {Addition}";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Adjustments/Brightness.cs b/ShareX.ImageEffectsLib/Adjustments/Brightness.cs
index 97b8eaeaf..0dda83161 100644
--- a/ShareX.ImageEffectsLib/Adjustments/Brightness.cs
+++ b/ShareX.ImageEffectsLib/Adjustments/Brightness.cs
@@ -46,5 +46,10 @@ public override Bitmap Apply(Bitmap bmp)
return ColorMatrixManager.Brightness(Value).Apply(bmp);
}
}
+
+ protected override string GetSummary()
+ {
+ return Value.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Adjustments/Colorize.cs b/ShareX.ImageEffectsLib/Adjustments/Colorize.cs
index c81f32b14..581021e9b 100644
--- a/ShareX.ImageEffectsLib/Adjustments/Colorize.cs
+++ b/ShareX.ImageEffectsLib/Adjustments/Colorize.cs
@@ -50,5 +50,10 @@ public override Bitmap Apply(Bitmap bmp)
return ColorMatrixManager.Colorize(Color, Value).Apply(bmp);
}
}
+
+ protected override string GetSummary()
+ {
+ return $"{Color.R}, {Color.G}, {Color.B}";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Adjustments/Contrast.cs b/ShareX.ImageEffectsLib/Adjustments/Contrast.cs
index 568728d07..6518e95cb 100644
--- a/ShareX.ImageEffectsLib/Adjustments/Contrast.cs
+++ b/ShareX.ImageEffectsLib/Adjustments/Contrast.cs
@@ -46,5 +46,10 @@ public override Bitmap Apply(Bitmap bmp)
return ColorMatrixManager.Contrast(Value).Apply(bmp);
}
}
+
+ protected override string GetSummary()
+ {
+ return Value.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Adjustments/Gamma.cs b/ShareX.ImageEffectsLib/Adjustments/Gamma.cs
index e77a823af..91e8f0a90 100644
--- a/ShareX.ImageEffectsLib/Adjustments/Gamma.cs
+++ b/ShareX.ImageEffectsLib/Adjustments/Gamma.cs
@@ -46,5 +46,10 @@ public override Bitmap Apply(Bitmap bmp)
return ColorMatrixManager.ChangeGamma(bmp, Value);
}
}
+
+ protected override string GetSummary()
+ {
+ return Value.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Adjustments/Grayscale.cs b/ShareX.ImageEffectsLib/Adjustments/Grayscale.cs
index e19fc6e0f..f404f4730 100644
--- a/ShareX.ImageEffectsLib/Adjustments/Grayscale.cs
+++ b/ShareX.ImageEffectsLib/Adjustments/Grayscale.cs
@@ -46,5 +46,10 @@ public override Bitmap Apply(Bitmap bmp)
return ColorMatrixManager.Grayscale(Value).Apply(bmp);
}
}
+
+ protected override string GetSummary()
+ {
+ return Value.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Adjustments/Hue.cs b/ShareX.ImageEffectsLib/Adjustments/Hue.cs
index 54fbd2988..c05958913 100644
--- a/ShareX.ImageEffectsLib/Adjustments/Hue.cs
+++ b/ShareX.ImageEffectsLib/Adjustments/Hue.cs
@@ -46,5 +46,10 @@ public override Bitmap Apply(Bitmap bmp)
return ColorMatrixManager.Hue(Angle).Apply(bmp);
}
}
+
+ protected override string GetSummary()
+ {
+ return Angle + "°";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Adjustments/Saturation.cs b/ShareX.ImageEffectsLib/Adjustments/Saturation.cs
index 7f6d9f836..9ce606f1f 100644
--- a/ShareX.ImageEffectsLib/Adjustments/Saturation.cs
+++ b/ShareX.ImageEffectsLib/Adjustments/Saturation.cs
@@ -46,5 +46,10 @@ public override Bitmap Apply(Bitmap bmp)
return ColorMatrixManager.Saturation(Value).Apply(bmp);
}
}
+
+ protected override string GetSummary()
+ {
+ return Value.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Adjustments/Sepia.cs b/ShareX.ImageEffectsLib/Adjustments/Sepia.cs
index 8265150e6..132475e03 100644
--- a/ShareX.ImageEffectsLib/Adjustments/Sepia.cs
+++ b/ShareX.ImageEffectsLib/Adjustments/Sepia.cs
@@ -46,5 +46,10 @@ public override Bitmap Apply(Bitmap bmp)
return ColorMatrixManager.Sepia(Value).Apply(bmp);
}
}
+
+ protected override string GetSummary()
+ {
+ return Value.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Drawings/DrawBackground.cs b/ShareX.ImageEffectsLib/Drawings/DrawBackground.cs
index a42caeb0d..048eabd19 100644
--- a/ShareX.ImageEffectsLib/Drawings/DrawBackground.cs
+++ b/ShareX.ImageEffectsLib/Drawings/DrawBackground.cs
@@ -69,5 +69,15 @@ public override Bitmap Apply(Bitmap bmp)
return ImageHelpers.FillBackground(bmp, Color);
}
}
+
+ protected override string GetSummary()
+ {
+ if (!UseGradient)
+ {
+ return $"{Color.R}, {Color.G}, {Color.B}";
+ }
+
+ return null;
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Drawings/DrawBackgroundImage.cs b/ShareX.ImageEffectsLib/Drawings/DrawBackgroundImage.cs
index cc9795264..7d45bf664 100644
--- a/ShareX.ImageEffectsLib/Drawings/DrawBackgroundImage.cs
+++ b/ShareX.ImageEffectsLib/Drawings/DrawBackgroundImage.cs
@@ -51,5 +51,15 @@ public override Bitmap Apply(Bitmap bmp)
{
return ImageHelpers.DrawBackgroundImage(bmp, ImageFilePath, Center, Tile);
}
+
+ protected override string GetSummary()
+ {
+ if (!string.IsNullOrEmpty(ImageFilePath))
+ {
+ return FileHelpers.GetFileNameSafe(ImageFilePath);
+ }
+
+ return null;
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Drawings/DrawBorder.cs b/ShareX.ImageEffectsLib/Drawings/DrawBorder.cs
index 3a9a67007..ca1273a98 100644
--- a/ShareX.ImageEffectsLib/Drawings/DrawBorder.cs
+++ b/ShareX.ImageEffectsLib/Drawings/DrawBorder.cs
@@ -88,5 +88,10 @@ public override Bitmap Apply(Bitmap bmp)
return ImageHelpers.DrawBorder(bmp, Color, Size, Type, DashStyle);
}
+
+ protected override string GetSummary()
+ {
+ return Size + "px";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Drawings/DrawCheckerboard.cs b/ShareX.ImageEffectsLib/Drawings/DrawCheckerboard.cs
index 5513aea4b..706f9418f 100644
--- a/ShareX.ImageEffectsLib/Drawings/DrawCheckerboard.cs
+++ b/ShareX.ImageEffectsLib/Drawings/DrawCheckerboard.cs
@@ -63,5 +63,10 @@ public override Bitmap Apply(Bitmap bmp)
{
return ImageHelpers.DrawCheckers(bmp, Size, Color, Color2);
}
+
+ protected override string GetSummary()
+ {
+ return $"{Size}x{Size}";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Drawings/DrawImage.cs b/ShareX.ImageEffectsLib/Drawings/DrawImage.cs
index 0f1547842..377588f8e 100644
--- a/ShareX.ImageEffectsLib/Drawings/DrawImage.cs
+++ b/ShareX.ImageEffectsLib/Drawings/DrawImage.cs
@@ -174,5 +174,15 @@ public override Bitmap Apply(Bitmap bmp)
return bmp;
}
+
+ protected override string GetSummary()
+ {
+ if (!string.IsNullOrEmpty(ImageLocation))
+ {
+ return FileHelpers.GetFileNameSafe(ImageLocation);
+ }
+
+ return null;
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Drawings/DrawParticles.cs b/ShareX.ImageEffectsLib/Drawings/DrawParticles.cs
index 17f632c08..f6047cad4 100644
--- a/ShareX.ImageEffectsLib/Drawings/DrawParticles.cs
+++ b/ShareX.ImageEffectsLib/Drawings/DrawParticles.cs
@@ -220,5 +220,15 @@ private void DrawImage(Image img, Image img2, Graphics g)
g.PixelOffsetMode = PixelOffsetMode.Default;
}
+
+ protected override string GetSummary()
+ {
+ if (!string.IsNullOrEmpty(ImageFolder))
+ {
+ return FileHelpers.GetFileNameSafe(ImageFolder);
+ }
+
+ return null;
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Drawings/DrawText.cs b/ShareX.ImageEffectsLib/Drawings/DrawText.cs
index 6a8b251d1..f5e2c5bfd 100644
--- a/ShareX.ImageEffectsLib/Drawings/DrawText.cs
+++ b/ShareX.ImageEffectsLib/Drawings/DrawText.cs
@@ -240,5 +240,15 @@ public override Bitmap Apply(Bitmap bmp)
return bmp;
}
+
+ protected override string GetSummary()
+ {
+ if (!string.IsNullOrEmpty(Text))
+ {
+ return Text.Truncate(20, "...");
+ }
+
+ return null;
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Drawings/DrawTextEx.cs b/ShareX.ImageEffectsLib/Drawings/DrawTextEx.cs
index 301489a39..a867ae5db 100644
--- a/ShareX.ImageEffectsLib/Drawings/DrawTextEx.cs
+++ b/ShareX.ImageEffectsLib/Drawings/DrawTextEx.cs
@@ -298,5 +298,15 @@ public override Bitmap Apply(Bitmap bmp)
return bmp;
}
}
+
+ protected override string GetSummary()
+ {
+ if (!string.IsNullOrEmpty(Text))
+ {
+ return Text.Truncate(20, "...");
+ }
+
+ return null;
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Filters/Blur.cs b/ShareX.ImageEffectsLib/Filters/Blur.cs
index a0b669307..4fd1a17d0 100644
--- a/ShareX.ImageEffectsLib/Filters/Blur.cs
+++ b/ShareX.ImageEffectsLib/Filters/Blur.cs
@@ -61,5 +61,10 @@ public override Bitmap Apply(Bitmap bmp)
ImageHelpers.ApplyBoxBlur(bmp, Radius);
return bmp;
}
+
+ protected override string GetSummary()
+ {
+ return Radius.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Filters/ColorDepth.cs b/ShareX.ImageEffectsLib/Filters/ColorDepth.cs
index 98424bddb..d888c8b8e 100644
--- a/ShareX.ImageEffectsLib/Filters/ColorDepth.cs
+++ b/ShareX.ImageEffectsLib/Filters/ColorDepth.cs
@@ -57,5 +57,17 @@ public override Bitmap Apply(Bitmap bmp)
ImageHelpers.ColorDepth(bmp, BitsPerChannel);
return bmp;
}
+
+ protected override string GetSummary()
+ {
+ string summary = BitsPerChannel + " bit";
+
+ if (BitsPerChannel > 1)
+ {
+ summary += "s";
+ }
+
+ return summary;
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Filters/GaussianBlur.cs b/ShareX.ImageEffectsLib/Filters/GaussianBlur.cs
index 0d084d584..82c812dcc 100644
--- a/ShareX.ImageEffectsLib/Filters/GaussianBlur.cs
+++ b/ShareX.ImageEffectsLib/Filters/GaussianBlur.cs
@@ -83,5 +83,10 @@ public override Bitmap Apply(Bitmap bmp)
return kernelVert.Apply(horizPass);
}
}
+
+ protected override string GetSummary()
+ {
+ return Size.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Filters/Glow.cs b/ShareX.ImageEffectsLib/Filters/Glow.cs
index fc090d1b7..9c5440a82 100644
--- a/ShareX.ImageEffectsLib/Filters/Glow.cs
+++ b/ShareX.ImageEffectsLib/Filters/Glow.cs
@@ -110,5 +110,10 @@ public override Bitmap Apply(Bitmap bmp)
{
return ImageHelpers.AddGlow(bmp, Size, Strength, Color, Offset, UseGradient ? Gradient : null);
}
+
+ protected override string GetSummary()
+ {
+ return Size.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Filters/Outline.cs b/ShareX.ImageEffectsLib/Filters/Outline.cs
index d6cce39b1..edb9b33c8 100644
--- a/ShareX.ImageEffectsLib/Filters/Outline.cs
+++ b/ShareX.ImageEffectsLib/Filters/Outline.cs
@@ -77,5 +77,10 @@ public override Bitmap Apply(Bitmap bmp)
{
return ImageHelpers.Outline(bmp, Size, Color, Padding, OutlineOnly);
}
+
+ protected override string GetSummary()
+ {
+ return Size.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Filters/Pixelate.cs b/ShareX.ImageEffectsLib/Filters/Pixelate.cs
index a383e77e8..95b16a58e 100644
--- a/ShareX.ImageEffectsLib/Filters/Pixelate.cs
+++ b/ShareX.ImageEffectsLib/Filters/Pixelate.cs
@@ -75,5 +75,10 @@ public override Bitmap Apply(Bitmap bmp)
ImageHelpers.Pixelate(bmp, Size, BorderSize, BorderColor);
return bmp;
}
+
+ protected override string GetSummary()
+ {
+ return Size.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Filters/Reflection.cs b/ShareX.ImageEffectsLib/Filters/Reflection.cs
index 0421ee323..930b5f528 100644
--- a/ShareX.ImageEffectsLib/Filters/Reflection.cs
+++ b/ShareX.ImageEffectsLib/Filters/Reflection.cs
@@ -94,5 +94,10 @@ public override Bitmap Apply(Bitmap bmp)
{
return ImageHelpers.DrawReflection(bmp, Percentage, MaxAlpha, MinAlpha, Offset, Skew, SkewSize);
}
+
+ protected override string GetSummary()
+ {
+ return Percentage.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Filters/Shadow.cs b/ShareX.ImageEffectsLib/Filters/Shadow.cs
index 446681726..737648854 100644
--- a/ShareX.ImageEffectsLib/Filters/Shadow.cs
+++ b/ShareX.ImageEffectsLib/Filters/Shadow.cs
@@ -83,5 +83,10 @@ public override Bitmap Apply(Bitmap bmp)
{
return ImageHelpers.AddShadow(bmp, Opacity, Size, Darkness + 1, Color, Offset, AutoResize);
}
+
+ protected override string GetSummary()
+ {
+ return Size.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Filters/Slice.cs b/ShareX.ImageEffectsLib/Filters/Slice.cs
index 111c1962f..ff0bc0e54 100644
--- a/ShareX.ImageEffectsLib/Filters/Slice.cs
+++ b/ShareX.ImageEffectsLib/Filters/Slice.cs
@@ -86,5 +86,10 @@ public override Bitmap Apply(Bitmap bmp)
return ImageHelpers.Slice(bmp, minSliceHeight, maxSliceHeight, minSliceShift, maxSliceShift);
}
}
+
+ protected override string GetSummary()
+ {
+ return $"{MinSliceHeight}, {MaxSliceHeight}";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Filters/TornEdge.cs b/ShareX.ImageEffectsLib/Filters/TornEdge.cs
index aa0f92a8d..159660c54 100644
--- a/ShareX.ImageEffectsLib/Filters/TornEdge.cs
+++ b/ShareX.ImageEffectsLib/Filters/TornEdge.cs
@@ -54,5 +54,10 @@ public override Bitmap Apply(Bitmap bmp)
{
return ImageHelpers.TornEdges(bmp, Depth, Range, Sides, CurvedEdges, true);
}
+
+ protected override string GetSummary()
+ {
+ return $"{Depth}, {Range}";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Filters/WaveEdge.cs b/ShareX.ImageEffectsLib/Filters/WaveEdge.cs
index 397f11376..444fb8170 100644
--- a/ShareX.ImageEffectsLib/Filters/WaveEdge.cs
+++ b/ShareX.ImageEffectsLib/Filters/WaveEdge.cs
@@ -51,5 +51,10 @@ public override Bitmap Apply(Bitmap bmp)
{
return ImageHelpers.WavyEdges(bmp, Depth, Range, Sides);
}
+
+ protected override string GetSummary()
+ {
+ return $"{Depth}, {Range}";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Forms/ImageEffectsForm.cs b/ShareX.ImageEffectsLib/Forms/ImageEffectsForm.cs
index 9d31f3cbc..492e8eaa4 100644
--- a/ShareX.ImageEffectsLib/Forms/ImageEffectsForm.cs
+++ b/ShareX.ImageEffectsLib/Forms/ImageEffectsForm.cs
@@ -335,6 +335,30 @@ private void UpdateControlStates()
btnEffectRemove.Enabled = btnEffectDuplicate.Enabled = lvEffects.SelectedItems.Count > 0;
}
+ private void UpdateEffectName()
+ {
+ ImageEffectPreset preset = GetSelectedPreset();
+
+ if (preset != null)
+ {
+ if (lvEffects.SelectedItems.Count > 0)
+ {
+ ListViewItem lvi = lvEffects.SelectedItems[0];
+
+ if (lvi.Tag is ImageEffect imageEffect)
+ {
+ string text = imageEffect.ToString();
+
+ if (lvi.Text != text)
+ {
+ lvi.Text = text;
+ txtEffectName.SetWatermark(imageEffect.ToString());
+ }
+ }
+ }
+ }
+ }
+
private void GeneratePreviewImage(int padding)
{
if (pbResult.ClientSize.Width > 0 && pbResult.ClientSize.Height > 0)
@@ -680,7 +704,7 @@ private void lvEffects_SelectedIndexChanged(object sender, EventArgs e)
if (lvi.Tag is ImageEffect imageEffect)
{
txtEffectName.Text = imageEffect.Name;
- txtEffectName.SetWatermark(imageEffect.GetType().GetDescription());
+ txtEffectName.SetWatermark(imageEffect.ToString());
pgSettings.SelectedObject = imageEffect;
}
}
@@ -714,6 +738,7 @@ private void lvEffects_KeyDown(object sender, KeyEventArgs e)
private void pgSettings_PropertyValueChanged(object s, PropertyValueChangedEventArgs e)
{
+ UpdateEffectName();
UpdatePreview();
}
diff --git a/ShareX.ImageEffectsLib/Forms/ImageEffectsForm.resx b/ShareX.ImageEffectsLib/Forms/ImageEffectsForm.resx
index ee1ec8eb7..f82f84bb4 100644
--- a/ShareX.ImageEffectsLib/Forms/ImageEffectsForm.resx
+++ b/ShareX.ImageEffectsLib/Forms/ImageEffectsForm.resx
@@ -171,6 +171,15 @@
126, 17
+
+ 131, 48
+
+
+ cmsLoadImage
+
+
+ System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
130, 22
@@ -183,15 +192,6 @@
From clipboard
-
- 131, 48
-
-
- cmsLoadImage
-
-
- System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
True
@@ -226,7 +226,7 @@
184, 24
- 144, 20
+ 192, 20
8
@@ -250,7 +250,7 @@
NoControl
- 960, 552
+ 1096, 552
120, 24
@@ -280,7 +280,7 @@
NoControl
- 832, 552
+ 968, 552
120, 24
@@ -399,6 +399,9 @@
17
+
+ 260, 17
+
NoControl
@@ -411,9 +414,6 @@
3
-
- 260, 17
-
New
@@ -648,6 +648,9 @@
7
+
+ 260, 17
+
Top, Bottom, Left
@@ -655,7 +658,7 @@
False
- 336, 56
+ 384, 56
288, 488
@@ -712,7 +715,7 @@
NoControl
- 333, 8
+ 381, 8
67, 13
@@ -736,7 +739,7 @@
3
- 336, 24
+ 384, 24
288, 20
@@ -760,10 +763,10 @@
Top, Bottom, Left, Right
- 632, 8
+ 680, 8
- 450, 536
+ 536, 536
19
@@ -772,7 +775,7 @@
pbResult
- ShareX.HelpersLib.MyPictureBox, ShareX.HelpersLib, Version=13.7.2.0, Culture=neutral, PublicKeyToken=null
+ ShareX.HelpersLib.MyPictureBox, ShareX.HelpersLib, Version=15.0.1.0, Culture=neutral, PublicKeyToken=null
$this
@@ -783,9 +786,6 @@
Top, Bottom, Left
-
- 164
-
8, 53
@@ -799,7 +799,7 @@
lvPresets
- ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=13.7.2.0, Culture=neutral, PublicKeyToken=null
+ ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=15.0.1.0, Culture=neutral, PublicKeyToken=null
$this
@@ -807,6 +807,9 @@
13
+
+ 164
+
Bottom, Left
@@ -832,7 +835,7 @@
mbLoadImage
- ShareX.HelpersLib.MenuButton, ShareX.HelpersLib, Version=13.7.2.0, Culture=neutral, PublicKeyToken=null
+ ShareX.HelpersLib.MenuButton, ShareX.HelpersLib, Version=15.0.1.0, Culture=neutral, PublicKeyToken=null
$this
@@ -843,14 +846,11 @@
Top, Bottom, Left
-
- 50
-
184, 101
- 144, 443
+ 192, 443
15
@@ -859,7 +859,7 @@
lvEffects
- ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=13.7.2.0, Culture=neutral, PublicKeyToken=null
+ ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=15.0.1.0, Culture=neutral, PublicKeyToken=null
$this
@@ -867,6 +867,9 @@
26
+
+ 50
+
True
@@ -877,10 +880,7 @@
96, 96
- 1089, 585
-
-
- NoControl
+ 1224, 585
600, 400
diff --git a/ShareX.ImageEffectsLib/ImageEffect.cs b/ShareX.ImageEffectsLib/ImageEffect.cs
index d37bbc66b..eb243b8ee 100644
--- a/ShareX.ImageEffectsLib/ImageEffect.cs
+++ b/ShareX.ImageEffectsLib/ImageEffect.cs
@@ -46,6 +46,11 @@ protected ImageEffect()
public abstract Bitmap Apply(Bitmap bmp);
+ protected virtual string GetSummary()
+ {
+ return null;
+ }
+
public override string ToString()
{
if (!string.IsNullOrEmpty(Name))
@@ -53,7 +58,15 @@ public override string ToString()
return Name;
}
- return GetType().GetDescription();
+ string name = GetType().GetDescription();
+ string summary = GetSummary();
+
+ if (!string.IsNullOrEmpty(summary))
+ {
+ name = $"{name}: {summary}";
+ }
+
+ return name;
}
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Manipulations/AutoCrop.cs b/ShareX.ImageEffectsLib/Manipulations/AutoCrop.cs
index 6b6c529f9..7a46de01a 100644
--- a/ShareX.ImageEffectsLib/Manipulations/AutoCrop.cs
+++ b/ShareX.ImageEffectsLib/Manipulations/AutoCrop.cs
@@ -48,5 +48,15 @@ public override Bitmap Apply(Bitmap bmp)
{
return ImageHelpers.AutoCropImage(bmp, true, Sides, Padding);
}
+
+ protected override string GetSummary()
+ {
+ if (Padding > 0)
+ {
+ return Padding.ToString();
+ }
+
+ return null;
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Manipulations/Canvas.cs b/ShareX.ImageEffectsLib/Manipulations/Canvas.cs
index 2c2e6f8f5..63be32d1f 100644
--- a/ShareX.ImageEffectsLib/Manipulations/Canvas.cs
+++ b/ShareX.ImageEffectsLib/Manipulations/Canvas.cs
@@ -81,5 +81,15 @@ public override Bitmap Apply(Bitmap bmp)
bmp.Dispose();
return bmpResult;
}
+
+ protected override string GetSummary()
+ {
+ if (Margin.All == -1)
+ {
+ return $"{Margin.Left}, {Margin.Top}, {Margin.Right}, {Margin.Bottom}";
+ }
+
+ return Margin.All.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Manipulations/Crop.cs b/ShareX.ImageEffectsLib/Manipulations/Crop.cs
index bcfb2e888..af38d7c87 100644
--- a/ShareX.ImageEffectsLib/Manipulations/Crop.cs
+++ b/ShareX.ImageEffectsLib/Manipulations/Crop.cs
@@ -61,5 +61,15 @@ public override Bitmap Apply(Bitmap bmp)
return ImageHelpers.CropBitmap(bmp, new Rectangle(Margin.Left, Margin.Top, bmp.Width - Margin.Horizontal, bmp.Height - Margin.Vertical));
}
+
+ protected override string GetSummary()
+ {
+ if (Margin.All == -1)
+ {
+ return $"{Margin.Left}, {Margin.Top}, {Margin.Right}, {Margin.Bottom}";
+ }
+
+ return Margin.All.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Manipulations/Flip.cs b/ShareX.ImageEffectsLib/Manipulations/Flip.cs
index 4b68c645e..ada4e0de7 100644
--- a/ShareX.ImageEffectsLib/Manipulations/Flip.cs
+++ b/ShareX.ImageEffectsLib/Manipulations/Flip.cs
@@ -66,5 +66,10 @@ public override Bitmap Apply(Bitmap bmp)
return bmp;
}
+
+ protected override string GetSummary()
+ {
+ return $"{Horizontally}, {Vertically}";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Manipulations/ForceProportions.cs b/ShareX.ImageEffectsLib/Manipulations/ForceProportions.cs
index 2f3750c80..c9e945fdb 100644
--- a/ShareX.ImageEffectsLib/Manipulations/ForceProportions.cs
+++ b/ShareX.ImageEffectsLib/Manipulations/ForceProportions.cs
@@ -119,5 +119,10 @@ public override Bitmap Apply(Bitmap bmp)
return bmp;
}
+
+ protected override string GetSummary()
+ {
+ return $"{ProportionalWidth}, {ProportionalHeight}";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Manipulations/Resize.cs b/ShareX.ImageEffectsLib/Manipulations/Resize.cs
index 441158787..70dbba88f 100644
--- a/ShareX.ImageEffectsLib/Manipulations/Resize.cs
+++ b/ShareX.ImageEffectsLib/Manipulations/Resize.cs
@@ -68,5 +68,24 @@ public override Bitmap Apply(Bitmap bmp)
return ImageHelpers.ResizeImage(bmp, size);
}
+
+ protected override string GetSummary()
+ {
+ string summary = Width.ToString();
+
+ if (Width > 0)
+ {
+ summary += "px";
+ }
+
+ summary += ", " + Height.ToString();
+
+ if (Height > 0)
+ {
+ summary += "px";
+ }
+
+ return summary;
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Manipulations/Rotate.cs b/ShareX.ImageEffectsLib/Manipulations/Rotate.cs
index 5053ce2b1..b0ce818db 100644
--- a/ShareX.ImageEffectsLib/Manipulations/Rotate.cs
+++ b/ShareX.ImageEffectsLib/Manipulations/Rotate.cs
@@ -57,5 +57,10 @@ public override Bitmap Apply(Bitmap bmp)
return ImageHelpers.RotateImage(bmp, Angle, Upsize, Clip);
}
}
+
+ protected override string GetSummary()
+ {
+ return Angle + "°";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Manipulations/RoundedCorners.cs b/ShareX.ImageEffectsLib/Manipulations/RoundedCorners.cs
index f13699d31..12810cefb 100644
--- a/ShareX.ImageEffectsLib/Manipulations/RoundedCorners.cs
+++ b/ShareX.ImageEffectsLib/Manipulations/RoundedCorners.cs
@@ -56,5 +56,10 @@ public override Bitmap Apply(Bitmap bmp)
{
return ImageHelpers.RoundedCorners(bmp, CornerRadius);
}
+
+ protected override string GetSummary()
+ {
+ return CornerRadius.ToString();
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Manipulations/Scale.cs b/ShareX.ImageEffectsLib/Manipulations/Scale.cs
index c7c366dbb..3c0e1143e 100644
--- a/ShareX.ImageEffectsLib/Manipulations/Scale.cs
+++ b/ShareX.ImageEffectsLib/Manipulations/Scale.cs
@@ -56,5 +56,24 @@ public override Bitmap Apply(Bitmap bmp)
return ImageHelpers.ResizeImage(bmp, size);
}
+
+ protected override string GetSummary()
+ {
+ string summary = WidthPercentage.ToString();
+
+ if (WidthPercentage > 0)
+ {
+ summary += "%";
+ }
+
+ summary += ", " + HeightPercentage.ToString();
+
+ if (HeightPercentage > 0)
+ {
+ summary += "%";
+ }
+
+ return summary;
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ImageEffectsLib/Manipulations/Skew.cs b/ShareX.ImageEffectsLib/Manipulations/Skew.cs
index a57288054..c54232154 100644
--- a/ShareX.ImageEffectsLib/Manipulations/Skew.cs
+++ b/ShareX.ImageEffectsLib/Manipulations/Skew.cs
@@ -51,5 +51,10 @@ public override Bitmap Apply(Bitmap bmp)
return ImageHelpers.AddSkew(bmp, Horizontally, Vertically);
}
+
+ protected override string GetSummary()
+ {
+ return $"{Horizontally}px, {Vertically}px";
+ }
}
}
\ No newline at end of file
diff --git a/ShareX.ScreenCaptureLib/Shapes/Tool/CutOutTool.cs b/ShareX.ScreenCaptureLib/Shapes/Tool/CutOutTool.cs
index cf8893a50..83841c701 100644
--- a/ShareX.ScreenCaptureLib/Shapes/Tool/CutOutTool.cs
+++ b/ShareX.ScreenCaptureLib/Shapes/Tool/CutOutTool.cs
@@ -25,6 +25,7 @@
using ShareX.HelpersLib;
using System.Drawing;
+using System.Drawing.Drawing2D;
using System.Windows.Forms;
namespace ShareX.ScreenCaptureLib
@@ -135,7 +136,7 @@ public override void OnUpdate()
public override void OnDraw(Graphics g)
{
using (Image selectionHighlightPattern = ImageHelpers.CreateCheckerPattern(1, 1, Color.FromArgb(128, Color.LightGray), Color.FromArgb(128, Color.Gray)))
- using (Brush selectionHighlightBrush = new TextureBrush(selectionHighlightPattern, System.Drawing.Drawing2D.WrapMode.Tile))
+ using (Brush selectionHighlightBrush = new TextureBrush(selectionHighlightPattern, WrapMode.Tile))
{
g.FillRectangle(selectionHighlightBrush, CutOutRectangle);
}