Added gdi32.zig and More user32 definitions
parent
022a71ca7d
commit
1e23a3cd91
|
@ -19,6 +19,7 @@ pub const psapi = @import("windows/psapi.zig");
|
||||||
pub const shell32 = @import("windows/shell32.zig");
|
pub const shell32 = @import("windows/shell32.zig");
|
||||||
pub const user32 = @import("windows/user32.zig");
|
pub const user32 = @import("windows/user32.zig");
|
||||||
pub const ws2_32 = @import("windows/ws2_32.zig");
|
pub const ws2_32 = @import("windows/ws2_32.zig");
|
||||||
|
pub const gdi32 = @import("windows/gdi32.zig");
|
||||||
|
|
||||||
pub usingnamespace @import("windows/bits.zig");
|
pub usingnamespace @import("windows/bits.zig");
|
||||||
|
|
||||||
|
|
|
@ -34,6 +34,8 @@ pub const HINSTANCE = *@OpaqueType();
|
||||||
pub const HMENU = *@OpaqueType();
|
pub const HMENU = *@OpaqueType();
|
||||||
pub const HMODULE = *@OpaqueType();
|
pub const HMODULE = *@OpaqueType();
|
||||||
pub const HWND = *@OpaqueType();
|
pub const HWND = *@OpaqueType();
|
||||||
|
pub const HDC = *@OpaqueType();
|
||||||
|
pub const HGLRC = *@OpaqueType();
|
||||||
pub const FARPROC = *@OpaqueType();
|
pub const FARPROC = *@OpaqueType();
|
||||||
pub const INT = c_int;
|
pub const INT = c_int;
|
||||||
pub const LPBYTE = *BYTE;
|
pub const LPBYTE = *BYTE;
|
||||||
|
|
|
@ -0,0 +1,45 @@
|
||||||
|
usingnamespace @import("bits.zig");
|
||||||
|
|
||||||
|
pub const PIXELFORMATDESCRIPTOR = extern struct {
|
||||||
|
nSize: WORD = @sizeOf(PIXELFORMATDESCRIPTOR),
|
||||||
|
nVersion: WORD,
|
||||||
|
dwFlags: DWORD,
|
||||||
|
iPixelType: BYTE,
|
||||||
|
cColorBits: BYTE,
|
||||||
|
cRedBits: BYTE,
|
||||||
|
cRedShift: BYTE,
|
||||||
|
cGreenBits: BYTE,
|
||||||
|
cGreenShift: BYTE,
|
||||||
|
cBlueBits: BYTE,
|
||||||
|
cBlueShift: BYTE,
|
||||||
|
cAlphaBits: BYTE,
|
||||||
|
cAlphaShift: BYTE,
|
||||||
|
cAccumBits: BYTE,
|
||||||
|
cAccumRedBits: BYTE,
|
||||||
|
cAccumGreenBits: BYTE,
|
||||||
|
cAccumBlueBits: BYTE,
|
||||||
|
cAccumAlphaBits: BYTE,
|
||||||
|
cDepthBits: BYTE,
|
||||||
|
cStencilBits: BYTE,
|
||||||
|
cAuxBuffers: BYTE,
|
||||||
|
iLayerType: BYTE,
|
||||||
|
bReserved: BYTE,
|
||||||
|
dwLayerMask: DWORD,
|
||||||
|
dwVisibleMask: DWORD,
|
||||||
|
dwDamageMask: DWORD,
|
||||||
|
};
|
||||||
|
|
||||||
|
pub extern "gdi32" fn SetPixelFormat(
|
||||||
|
hdc: ?HDC,
|
||||||
|
format: i32,
|
||||||
|
ppfd: ?*const PIXELFORMATDESCRIPTOR,
|
||||||
|
) callconv(.Stdcall) bool;
|
||||||
|
|
||||||
|
pub extern "gdi32" fn ChoosePixelFormat(
|
||||||
|
hdc: ?HDC,
|
||||||
|
ppfd: ?*const PIXELFORMATDESCRIPTOR,
|
||||||
|
) callconv(.Stdcall) i32;
|
||||||
|
|
||||||
|
pub extern "gdi32" fn SwapBuffers(hdc: ?HDC) callconv(.Stdcall) bool;
|
||||||
|
pub extern "gdi32" fn wglCreateContext(hdc: ?HDC) callconv(.Stdcall) ?HGLRC;
|
||||||
|
pub extern "gdi32" fn wglMakeCurrent(hdc: ?HDC, hglrc: ?HGLRC) callconv(.Stdcall) bool;
|
|
@ -1,5 +1,104 @@
|
||||||
usingnamespace @import("bits.zig");
|
usingnamespace @import("bits.zig");
|
||||||
|
|
||||||
|
// PM
|
||||||
|
pub const PM_REMOVE = 0x0001;
|
||||||
|
pub const PM_NOREMOVE = 0x0000;
|
||||||
|
pub const PM_NOYIELD = 0x0002;
|
||||||
|
|
||||||
|
// WM
|
||||||
|
pub const WM_NULL = 0x0000;
|
||||||
|
pub const WM_CREATE = 0x0001;
|
||||||
|
pub const WM_DESTROY = 0x0002;
|
||||||
|
pub const WM_MOVE = 0x0003;
|
||||||
|
pub const WM_SIZE = 0x0005;
|
||||||
|
|
||||||
|
pub const WM_ACTIVATE = 0x0006;
|
||||||
|
pub const WM_PAINT = 0x000F;
|
||||||
|
pub const WM_CLOSE = 0x0010;
|
||||||
|
pub const WM_QUIT = 0x0012;
|
||||||
|
pub const WM_SETFOCUS = 0x0007;
|
||||||
|
|
||||||
|
pub const WM_KILLFOCUS = 0x0008;
|
||||||
|
pub const WM_ENABLE = 0x000A;
|
||||||
|
pub const WM_SETREDRAW = 0x000B;
|
||||||
|
|
||||||
|
pub const WM_SYSCOLORCHANGE = 0x0015;
|
||||||
|
pub const WM_SHOWWINDOW = 0x0018;
|
||||||
|
|
||||||
|
pub const WM_WINDOWPOSCHANGING = 0x0046;
|
||||||
|
pub const WM_WINDOWPOSCHANGED = 0x0047;
|
||||||
|
pub const WM_POWER = 0x0048;
|
||||||
|
|
||||||
|
pub const WM_CONTEXTMENU = 0x007B;
|
||||||
|
pub const WM_STYLECHANGING = 0x007C;
|
||||||
|
pub const WM_STYLECHANGED = 0x007D;
|
||||||
|
pub const WM_DISPLAYCHANGE = 0x007E;
|
||||||
|
pub const WM_GETICON = 0x007F;
|
||||||
|
pub const WM_SETICON = 0x0080;
|
||||||
|
|
||||||
|
pub const WM_INPUT_DEVICE_CHANGE = 0x00fe;
|
||||||
|
pub const WM_INPUT = 0x00FF;
|
||||||
|
pub const WM_KEYFIRST = 0x0100;
|
||||||
|
pub const WM_KEYDOWN = 0x0100;
|
||||||
|
pub const WM_KEYUP = 0x0101;
|
||||||
|
pub const WM_CHAR = 0x0102;
|
||||||
|
pub const WM_DEADCHAR = 0x0103;
|
||||||
|
pub const WM_SYSKEYDOWN = 0x0104;
|
||||||
|
pub const WM_SYSKEYUP = 0x0105;
|
||||||
|
pub const WM_SYSCHAR = 0x0106;
|
||||||
|
pub const WM_SYSDEADCHAR = 0x0107;
|
||||||
|
pub const WM_UNICHAR = 0x0109;
|
||||||
|
pub const WM_KEYLAST = 0x0109;
|
||||||
|
|
||||||
|
pub const WM_COMMAND = 0x0111;
|
||||||
|
pub const WM_SYSCOMMAND = 0x0112;
|
||||||
|
pub const WM_TIMER = 0x0113;
|
||||||
|
|
||||||
|
pub const WM_MOUSEFIRST = 0x0200;
|
||||||
|
pub const WM_MOUSEMOVE = 0x0200;
|
||||||
|
pub const WM_LBUTTONDOWN = 0x0201;
|
||||||
|
pub const WM_LBUTTONUP = 0x0202;
|
||||||
|
pub const WM_LBUTTONDBLCLK = 0x0203;
|
||||||
|
pub const WM_RBUTTONDOWN = 0x0204;
|
||||||
|
pub const WM_RBUTTONUP = 0x0205;
|
||||||
|
pub const WM_RBUTTONDBLCLK = 0x0206;
|
||||||
|
pub const WM_MBUTTONDOWN = 0x0207;
|
||||||
|
pub const WM_MBUTTONUP = 0x0208;
|
||||||
|
pub const WM_MBUTTONDBLCLK = 0x0209;
|
||||||
|
pub const WM_MOUSEWHEEL = 0x020A;
|
||||||
|
pub const WM_XBUTTONDOWN = 0x020B;
|
||||||
|
pub const WM_XBUTTONUP = 0x020C;
|
||||||
|
pub const WM_XBUTTONDBLCLK = 0x020D;
|
||||||
|
|
||||||
|
// WA
|
||||||
|
pub const WA_INACTIVE = 0;
|
||||||
|
pub const WA_ACTIVE = 0x0006;
|
||||||
|
pub const WM_ACTIVATE = 0x0006;
|
||||||
|
|
||||||
|
// WS
|
||||||
|
pub const WS_OVERLAPPED = 0x00000000;
|
||||||
|
pub const WS_CAPTION = 0x00C00000;
|
||||||
|
pub const WS_SYSMENU = 0x00080000;
|
||||||
|
pub const WS_THICKFRAME = 0x00040000;
|
||||||
|
pub const WS_MINIMIZEBOX = 0x00020000;
|
||||||
|
pub const WS_MAXIMIZEBOX = 0x00010000;
|
||||||
|
|
||||||
|
// PFD
|
||||||
|
pub const PFD_DRAW_TO_WINDOW = 0x00000004;
|
||||||
|
pub const PFD_SUPPORT_OPENGL = 0x00000020;
|
||||||
|
pub const PFD_DOUBLEBUFFER = 0x00000001;
|
||||||
|
pub const PFD_MAIN_PLANE = 0;
|
||||||
|
pub const PFD_TYPE_RGBA = 0;
|
||||||
|
|
||||||
|
// CS
|
||||||
|
pub const CS_HREDRAW = 0x0002;
|
||||||
|
pub const CS_VREDRAW = 0x0001;
|
||||||
|
pub const CS_OWNDC = 0x0020;
|
||||||
|
|
||||||
|
// SW
|
||||||
|
pub const SW_HIDE = 0;
|
||||||
|
pub const SW_SHOW = 5;
|
||||||
|
|
||||||
pub const WNDPROC = fn (HWND, UINT, WPARAM, LPARAM) callconv(.Stdcall) LRESULT;
|
pub const WNDPROC = fn (HWND, UINT, WPARAM, LPARAM) callconv(.Stdcall) LRESULT;
|
||||||
|
|
||||||
pub const WNDCLASSEXA = extern struct {
|
pub const WNDCLASSEXA = extern struct {
|
||||||
|
@ -17,6 +116,20 @@ pub const WNDCLASSEXA = extern struct {
|
||||||
hIconSm: ?HICON,
|
hIconSm: ?HICON,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
pub const POINT = extern struct {
|
||||||
|
x: c_long, y: c_long
|
||||||
|
};
|
||||||
|
|
||||||
|
pub const MSG = extern struct {
|
||||||
|
hWnd: ?HWND,
|
||||||
|
message: UINT,
|
||||||
|
wParam: WPARAM,
|
||||||
|
lParam: LPARAM,
|
||||||
|
time: DWORD,
|
||||||
|
pt: POINT,
|
||||||
|
lPrivate: DWORD,
|
||||||
|
};
|
||||||
|
|
||||||
pub extern "user32" fn CreateWindowExA(
|
pub extern "user32" fn CreateWindowExA(
|
||||||
dwExStyle: DWORD,
|
dwExStyle: DWORD,
|
||||||
lpClassName: LPCSTR,
|
lpClassName: LPCSTR,
|
||||||
|
@ -32,6 +145,28 @@ pub extern "user32" fn CreateWindowExA(
|
||||||
lpParam: ?LPVOID,
|
lpParam: ?LPVOID,
|
||||||
) callconv(.Stdcall) ?HWND;
|
) callconv(.Stdcall) ?HWND;
|
||||||
|
|
||||||
pub extern "user32" fn DefWindowProcA(HWND, Msg: UINT, WPARAM, LPARAM) callconv(.Stdcall) LRESULT;
|
|
||||||
|
|
||||||
pub extern "user32" fn RegisterClassExA(*const WNDCLASSEXA) callconv(.Stdcall) c_ushort;
|
pub extern "user32" fn RegisterClassExA(*const WNDCLASSEXA) callconv(.Stdcall) c_ushort;
|
||||||
|
pub extern "user32" fn DefWindowProcA(HWND, Msg: UINT, WPARAM, LPARAM) callconv(.Stdcall) LRESULT;
|
||||||
|
pub extern "user32" fn GetModuleHandleA(lpModuleName: ?LPCSTR) callconv(.Stdcall) HMODULE;
|
||||||
|
pub extern "user32" fn ShowWindow(hWnd: ?HWND, nCmdShow: i32) callconv(.Stdcall) bool;
|
||||||
|
pub extern "user32" fn UpdateWindow(hWnd: ?HWND) callconv(.Stdcall) bool;
|
||||||
|
pub extern "user32" fn GetDC(hWnd: ?HWND) callconv(.Stdcall) ?HDC;
|
||||||
|
|
||||||
|
pub extern "user32" fn PeekMessageA(
|
||||||
|
lpMsg: ?*MSG,
|
||||||
|
hWnd: ?HWND,
|
||||||
|
wMsgFilterMin: UINT,
|
||||||
|
wMsgFilterMax: UINT,
|
||||||
|
wRemoveMsg: UINT,
|
||||||
|
) callconv(.Stdcall) bool;
|
||||||
|
|
||||||
|
pub extern "user32" fn GetMessageA(
|
||||||
|
lpMsg: ?*MSG,
|
||||||
|
hWnd: ?HWND,
|
||||||
|
wMsgFilterMin: UINT,
|
||||||
|
wMsgFilterMax: UINT,
|
||||||
|
) callconv(.Stdcall) bool;
|
||||||
|
|
||||||
|
pub extern "user32" fn TranslateMessage(lpMsg: *const MSG) callconv(.Stdcall) bool;
|
||||||
|
pub extern "user32" fn DispatchMessageA(lpMsg: *const MSG) callconv(.Stdcall) LRESULT;
|
||||||
|
pub extern "user32" fn PostQuitMessage(nExitCode: i32) callconv(.Stdcall) void;
|
Loading…
Reference in New Issue