/* date = May 27th 2022 9:22 pm */ #ifndef WIN32_GFX_IMPL_H #define WIN32_GFX_IMPL_H //////////////////////////////// // NOTE(allen): W32 Graphics Types typedef struct W32_Window{ struct W32_Window *next; HWND wnd; WINDOWPLACEMENT place; B32 supports_resizing; // applications void *user_data; // graphics system implementors void *equipped_data; GFX_WindowReleaseFunc *release_func; } W32_Window; #define W32_GRAPHICS_WINDOW_CLASS_NAME L"mr4th-graphics" //////////////////////////////// // NOTE(allen): W32 Graphics Functions link_function W32_Window* gfx_w32_window_from_handle(GFX_Window *window); link_function GFX_Window* gfx_w32_handle_from_hwnd(HWND wnd); //////////////////////////////// // NOTE(allen): W32 Window Procedure link_function LRESULT gfx_w32_window_proc(HWND, UINT, WPARAM, LPARAM); #endif //WIN32_GFX_IMPL_H