From a10440a45c40652b13e883aec832a0c8ded685e8 Mon Sep 17 00:00:00 2001 From: John T Date: Sun, 5 Nov 2017 18:47:46 -0500 Subject: Added a half-complete ShiftFS and did some code cleanup --- ShiftOS.Engine/Misc/Tools.cs | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 ShiftOS.Engine/Misc/Tools.cs (limited to 'ShiftOS.Engine/Misc/Tools.cs') diff --git a/ShiftOS.Engine/Misc/Tools.cs b/ShiftOS.Engine/Misc/Tools.cs new file mode 100644 index 0000000..6430084 --- /dev/null +++ b/ShiftOS.Engine/Misc/Tools.cs @@ -0,0 +1,29 @@ +using System; +using System.Drawing; +using System.Runtime.InteropServices; + +namespace ShiftOS.Engine.Misc +{ + /// + /// Random class full of unassorted [but also uncategorizable] tools. + /// + public static class Tools + { + public static Random Rnd = new Random(); + + [DllImport("user32.dll", CharSet = CharSet.Auto)] + public static extern bool DestroyIcon(IntPtr handle); + + public static Icon ToIcon(this Bitmap bm) + { + var tempicon = Icon.FromHandle(bm.GetHicon()); + + var newIcon = tempicon.Clone() as Icon; + + //for some reason this exists + DestroyIcon(tempicon.Handle); + + return newIcon; + } + } +} \ No newline at end of file -- cgit v1.2.3