muffin v7.5.6
This commit is contained in:
parent
6266f9e6b7
commit
addf2d530f
619 changed files with 264792 additions and 446022 deletions
79
LLib/LLib.ImGui/WindowFlash.cs
Normal file
79
LLib/LLib.ImGui/WindowFlash.cs
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
using System.CodeDom.Compiler;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace LLib.ImGui;
|
||||
|
||||
public static class WindowFlash
|
||||
{
|
||||
private struct FLASHWINFO
|
||||
{
|
||||
public uint cbSize;
|
||||
|
||||
public nint hwnd;
|
||||
|
||||
public uint dwFlags;
|
||||
|
||||
public uint uCount;
|
||||
|
||||
public uint dwTimeout;
|
||||
}
|
||||
|
||||
private const uint FLASHW_ALL = 3u;
|
||||
|
||||
private const uint FLASHW_TIMERNOFG = 12u;
|
||||
|
||||
[LibraryImport("user32.dll")]
|
||||
[DefaultDllImportSearchPaths(DllImportSearchPath.System32)]
|
||||
[GeneratedCode("Microsoft.Interop.LibraryImportGenerator", "10.0.14.37416")]
|
||||
[SkipLocalsInit]
|
||||
[return: MarshalAs(UnmanagedType.Bool)]
|
||||
private unsafe static bool FlashWindowEx(ref FLASHWINFO pwfi)
|
||||
{
|
||||
int num;
|
||||
fixed (FLASHWINFO* _pwfi_native = &pwfi)
|
||||
{
|
||||
num = __PInvoke(_pwfi_native);
|
||||
}
|
||||
return num != 0;
|
||||
[DllImport("user32.dll", EntryPoint = "FlashWindowEx", ExactSpelling = true)]
|
||||
[DefaultDllImportSearchPaths(DllImportSearchPath.System32)]
|
||||
static extern unsafe int __PInvoke(FLASHWINFO* __pwfi_native);
|
||||
}
|
||||
|
||||
public static void Flash(nint hwnd, uint count = 3u)
|
||||
{
|
||||
int num = ((hwnd != 0) ? (-1584485795) : (-1584485796));
|
||||
while (true)
|
||||
{
|
||||
int num2 = num;
|
||||
int num3 = -1584485795;
|
||||
int num4 = num2;
|
||||
int num5 = num4 + num3;
|
||||
int num6 = num4 & num3;
|
||||
switch (num5 - (num6 + num6))
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
FLASHWINFO pwfi = new FLASHWINFO
|
||||
{
|
||||
cbSize = (uint)Marshal.SizeOf<FLASHWINFO>(),
|
||||
hwnd = hwnd,
|
||||
dwFlags = ((count == 0) ? 15u : 3u),
|
||||
uCount = count,
|
||||
dwTimeout = 0u
|
||||
};
|
||||
FlashWindowEx(ref pwfi);
|
||||
return;
|
||||
}
|
||||
case 1:
|
||||
return;
|
||||
case 2:
|
||||
goto IL_0093;
|
||||
}
|
||||
continue;
|
||||
IL_0093:
|
||||
num = -1584485796;
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue