#ifndef GDI_WINDOW_H #define GDI_WINDOW_H #include #define GDI_GWL_USERDATA (-21) #define GDI_GWL_EXSTYLE (-20) #define GDI_GWL_STYLE (-16) #define GDI_GWL_ID (-12) #define GDI_GWL_HINSTANCE (-6) #define GDI_GWL_WNDPROC (-4) typedef struct _gdi_point { int32_t x; int32_t y; } gdi_point; typedef struct _gdi_rect { int32_t left; int32_t top; int32_t right; int32_t bottom; } gdi_rect; typedef struct _gdi_msg { void * hwnd; uint32_t message; uintptr_t wparam; intptr_t lparam; uint32_t time; gdi_point pt; } gdi_msg; typedef int32_t __stdcall gdi_peek_message( gdi_msg * msg, void * hwnd, uint32_t msg_filter_min, uint32_t msg_filter_max, uint32_t remove_msg); typedef gdi_peek_message gdi_peek_message_ansi; typedef gdi_peek_message gdi_peek_message_utf16; typedef int32_t __stdcall gdi_get_system_metrics( int32_t index); typedef int32_t __stdcall gdi_is_iconic( void * hwnd); typedef int32_t __stdcall gdi_is_zoomed( void * hwnd); typedef int32_t __stdcall gdi_move_window( void * hwnd, int32_t x, int32_t y, int32_t nwindth, int32_t nheight, int32_t repaint); typedef int32_t __stdcall gdi_set_window_pos( void * hwnd, void * hwnd_insert_after, int32_t x, int32_t y, int32_t cx, int32_t cy, uint32_t flags); typedef int32_t __stdcall gdi_get_window_rect( void * hwnd, gdi_rect * rect); typedef int32_t __stdcall gdi_get_client_rect( void * hwnd, gdi_rect * rect); typedef void * __stdcall gdi_get_desktop_window(void); typedef int32_t __stdcall gdi_set_window_long_ptr( void * hwnd, int32_t index, intptr_t new_long); typedef gdi_set_window_long_ptr gdi_set_window_long_ptr_ansi; typedef gdi_set_window_long_ptr gdi_set_window_long_ptr_utf16; #endif