Files
bluflame/4kgfx/smallwin.h
2026-04-18 22:31:51 +02:00

189 lines
5.6 KiB
C

#pragma once
extern "C"
{
#define HANDLE void*
#define DECLARE_HANDLE(name) typedef HANDLE name
#define WINGDIAPI __declspec(dllimport)
#define WINUSERAPI __declspec(dllimport)
#define WINBASEAPI __declspec(dllimport)
#define WINAPI __stdcall
#define NULL 0
#define APIENTRY WINAPI
#define PFD_DOUBLEBUFFER 0x00000001
#define PFD_STEREO 0x00000002
#define PFD_DRAW_TO_WINDOW 0x00000004
#define PFD_DRAW_TO_BITMAP 0x00000008
#define PFD_SUPPORT_GDI 0x00000010
#define PFD_SUPPORT_OPENGL 0x00000020
#define PFD_GENERIC_FORMAT 0x00000040
#define PFD_NEED_PALETTE 0x00000080
#define PFD_NEED_SYSTEM_PALETTE 0x00000100
#define PFD_SWAP_EXCHANGE 0x00000200
#define PFD_SWAP_COPY 0x00000400
#define PFD_SWAP_LAYER_BUFFERS 0x00000800
#define PFD_GENERIC_ACCELERATED 0x00001000
#define PFD_SUPPORT_DIRECTDRAW 0x00002000
#define PFD_DIRECT3D_ACCELERATED 0x00004000
#define PFD_SUPPORT_COMPOSITION 0x00008000
#define PFD_TYPE_RGBA 0
#define PFD_TYPE_COLORINDEX 1
#define WS_OVERLAPPED 0x00000000L
#define WS_POPUP 0x80000000L
#define WS_CHILD 0x40000000L
#define WS_MINIMIZE 0x20000000L
#define WS_VISIBLE 0x10000000L
#define WS_DISABLED 0x08000000L
#define WS_CLIPSIBLINGS 0x04000000L
#define WS_CLIPCHILDREN 0x02000000L
#define WS_MAXIMIZE 0x01000000L
#define WS_CAPTION 0x00C00000L
#define WS_BORDER 0x00800000L
#define WS_DLGFRAME 0x00400000L
#define WS_VSCROLL 0x00200000L
#define WS_HSCROLL 0x00100000L
#define WS_SYSMENU 0x00080000L
#define WS_THICKFRAME 0x00040000L
#define WS_GROUP 0x00020000L
#define WS_TABSTOP 0x00010000L
#define CDS_UPDATEREGISTRY 0x00000001
#define CDS_TEST 0x00000002
#define CDS_FULLSCREEN 0x00000004
#define CDS_GLOBAL 0x00000008
#define CDS_SET_PRIMARY 0x00000010
#define CDS_VIDEOPARAMETERS 0x00000020
#define WGL_CONTEXT_DEBUG_BIT_ARB 0x00000001
#define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
#define WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091
#define WGL_CONTEXT_MINOR_VERSION_ARB 0x2092
#define WGL_CONTEXT_LAYER_PLANE_ARB 0x2093
#define WGL_CONTEXT_FLAGS_ARB 0x2094
typedef int (WINAPI *PROC)();
typedef unsigned long DWORD;
typedef unsigned short WORD;
typedef unsigned short USHORT;
typedef unsigned char BYTE;
typedef char CHAR;
typedef unsigned int UINT;
typedef long LONG;
typedef const char* LPCSTR;
typedef void VOID;
typedef float FLOAT;
typedef __int64 INT64;
typedef int INT;
typedef int INT32;
typedef long BOOL;
typedef void *HDC;
typedef void *HGLRC;
typedef void *HWND;
typedef void *HMENU;
typedef void *HINSTANCE;
typedef void *LPVOID;
typedef struct tagRECT
{
LONG left;
LONG top;
LONG right;
LONG bottom;
} RECT;
typedef struct _POINTL
{
long x;
long y;
} POINTL, *PPOINTL;
typedef struct _devicemodeA {
BYTE dmDeviceName[32];
WORD dmSpecVersion;
WORD dmDriverVersion;
WORD dmSize;
WORD dmDriverExtra;
DWORD dmFields;
union {
struct {
short dmOrientation;
short dmPaperSize;
short dmPaperLength;
short dmPaperWidth;
short dmScale;
short dmCopies;
short dmDefaultSource;
short dmPrintQuality;
} a;
struct {
POINTL dmPosition;
DWORD dmDisplayOrientation;
DWORD dmDisplayFixedOutput;
} b;
} c;
short dmColor;
short dmDuplex;
short dmYResolution;
short dmTTOption;
short dmCollate;
BYTE dmFormName[32];
WORD dmLogPixels;
DWORD dmBitsPerPel;
DWORD dmPelsWidth;
DWORD dmPelsHeight;
union {
DWORD dmDisplayFlags;
DWORD dmNup;
};
DWORD dmDisplayFrequency;
} DEVMODE;
typedef struct tagPIXELFORMATDESCRIPTOR
{
WORD nSize;
WORD nVersion;
DWORD dwFlags;
BYTE 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;
DWORD dwLayerMask;
DWORD dwVisibleMask;
DWORD dwDamageMask;
} PIXELFORMATDESCRIPTOR;
__declspec(dllimport) int WINAPI wglGetProcAddress(LPCSTR);
__declspec(dllimport) HGLRC WINAPI wglCreateContext(HDC);
__declspec(dllimport) long WINAPI wglMakeCurrent(HDC, HGLRC);
__declspec(dllimport) HDC WINAPI GetDC(HWND hWnd);
__declspec(dllimport) HWND WINAPI CreateWindowExA(DWORD dwExStyle, LPCSTR lpClassName, LPCSTR lpWindowName, DWORD dwStyle, int X, int Y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam);
__declspec(dllimport) long WINAPI SetPixelFormat(HDC hdc, int format, const PIXELFORMATDESCRIPTOR * ppfd);
__declspec(dllimport) int WINAPI ChoosePixelFormat(HDC hdc, const PIXELFORMATDESCRIPTOR *ppfd);
__declspec(dllimport) int WINAPI ShowCursor(long bShow);
__declspec(dllimport) long WINAPI SwapBuffers(HDC);
__declspec(dllimport) short WINAPI GetAsyncKeyState(int vKey);
__declspec(dllimport) __declspec(noreturn) void WINAPI ExitProcess(unsigned int uExitCode);
__declspec(dllimport) long WINAPI ChangeDisplaySettingsA(DEVMODE* lpDevMode, DWORD dwFlags);
__declspec(dllimport) void WINAPI OutputDebugStringA(LPCSTR lpOutputString);
__declspec(dllimport) void WINAPI DebugBreak(VOID);
}