diff --git a/ShareX.HelpersLib/Colors/ColorUserControl.cs b/ShareX.HelpersLib/Colors/ColorUserControl.cs index b7722c407..22c9d2f77 100644 --- a/ShareX.HelpersLib/Colors/ColorUserControl.cs +++ b/ShareX.HelpersLib/Colors/ColorUserControl.cs @@ -156,10 +156,7 @@ private void EventMouseEnter(object sender, EventArgs e) { if (this is ColorBox) { - using (MemoryStream cursorStream = new MemoryStream(Resources.Crosshair)) - { - Cursor = new Cursor(cursorStream); - } + Cursor = Helpers.CreateCursor(Resources.Crosshair); } } diff --git a/ShareX.HelpersLib/Helpers/Helpers.cs b/ShareX.HelpersLib/Helpers/Helpers.cs index 5bf9ecc11..a1c6a1ed5 100644 --- a/ShareX.HelpersLib/Helpers/Helpers.cs +++ b/ShareX.HelpersLib/Helpers/Helpers.cs @@ -1120,5 +1120,13 @@ public static string GetWindowsProductName() return Environment.OSVersion.VersionString; } + + public static Cursor CreateCursor(byte[] data) + { + using (MemoryStream ms = new MemoryStream(data)) + { + return new Cursor(ms); + } + } } } \ No newline at end of file diff --git a/ShareX.ScreenCaptureLib/Forms/BaseRegionForm.cs b/ShareX.ScreenCaptureLib/Forms/BaseRegionForm.cs index d665c7a4d..195a5939e 100644 --- a/ShareX.ScreenCaptureLib/Forms/BaseRegionForm.cs +++ b/ShareX.ScreenCaptureLib/Forms/BaseRegionForm.cs @@ -66,11 +66,7 @@ public BaseRegionForm() InitializeComponent(); Icon = ShareXResources.Icon; - - using (MemoryStream cursorStream = new MemoryStream(Resources.Crosshair)) - { - Cursor = new Cursor(cursorStream); - } + Cursor = Helpers.CreateCursor(Resources.Crosshair); drawableObjects = new List(); Config = new RegionCaptureOptions(); diff --git a/ShareX.ScreenCaptureLib/Forms/RectangleRegionAnnotateForm.cs b/ShareX.ScreenCaptureLib/Forms/RectangleRegionAnnotateForm.cs index 58a95108f..69396e15a 100644 --- a/ShareX.ScreenCaptureLib/Forms/RectangleRegionAnnotateForm.cs +++ b/ShareX.ScreenCaptureLib/Forms/RectangleRegionAnnotateForm.cs @@ -89,11 +89,7 @@ public RectangleRegionAnnotateForm(RectangleAnnotateOptions options) InitializeComponent(); Icon = ShareXResources.Icon; - - using (MemoryStream cursorStream = new MemoryStream(Resources.Crosshair)) - { - Cursor = new Cursor(cursorStream); - } + Cursor = Helpers.CreateCursor(Resources.Crosshair); timer = new Timer { Interval = 10 }; timer.Tick += timer_Tick; diff --git a/ShareX.ScreenCaptureLib/Forms/RectangleRegionLightForm.cs b/ShareX.ScreenCaptureLib/Forms/RectangleRegionLightForm.cs index bbe75d936..8dddb44bd 100644 --- a/ShareX.ScreenCaptureLib/Forms/RectangleRegionLightForm.cs +++ b/ShareX.ScreenCaptureLib/Forms/RectangleRegionLightForm.cs @@ -69,11 +69,7 @@ public RectangleRegionLightForm() InitializeComponent(); Icon = ShareXResources.Icon; - - using (MemoryStream cursorStream = new MemoryStream(Resources.Crosshair)) - { - Cursor = new Cursor(cursorStream); - } + Cursor = Helpers.CreateCursor(Resources.Crosshair); timer = new Timer { Interval = 10 }; timer.Tick += timer_Tick; diff --git a/ShareX.ScreenCaptureLib/Forms/RectangleRegionTransparentForm.cs b/ShareX.ScreenCaptureLib/Forms/RectangleRegionTransparentForm.cs index 456600ec4..eded30ce6 100644 --- a/ShareX.ScreenCaptureLib/Forms/RectangleRegionTransparentForm.cs +++ b/ShareX.ScreenCaptureLib/Forms/RectangleRegionTransparentForm.cs @@ -82,17 +82,13 @@ public RectangleRegionTransparentForm() StartPosition = FormStartPosition.Manual; Bounds = ScreenRectangle; Text = "ShareX - " + Resources.RectangleTransparent_RectangleTransparent_Rectangle_capture_transparent; + Cursor = Helpers.CreateCursor(Resources.Crosshair); Shown += RectangleTransparent_Shown; KeyUp += RectangleTransparent_KeyUp; MouseDown += RectangleTransparent_MouseDown; MouseUp += RectangleTransparent_MouseUp; - using (MemoryStream cursorStream = new MemoryStream(Resources.Crosshair)) - { - Cursor = new Cursor(cursorStream); - } - timer = new Timer { Interval = 10 }; timer.Tick += timer_Tick; timer.Start();