File Annotation

Not logged in
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: /***********************************************************************\
4e2933c620 2015-04-21        kinaba: *                                windef.d                               *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                       Windows API header module                       *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                 Translated from MinGW Windows headers                 *
4e2933c620 2015-04-21        kinaba: *                           by Stewart Gordon                           *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                       Placed into public domain                       *
4e2933c620 2015-04-21        kinaba: \***********************************************************************/
c2b7a98c21 2011-02-23        kinaba: module win32.windef;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: public import win32.winnt;
4e2933c620 2015-04-21        kinaba: private import win32.w32api;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: const size_t MAX_PATH = 260;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: ushort MAKEWORD(ubyte a, ubyte b)
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba:     return cast(ushort) ((b << 8) | a);
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: uint MAKELONG(ushort a, ushort b)
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba:     return cast(uint) ((b << 16) | a);
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: ushort LOWORD(uint l)
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba:     return cast(ushort) l;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: ushort HIWORD(uint l)
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba:     return cast(ushort) (l >>> 16);
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: ubyte LOBYTE(ushort w)
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba:     return cast(ubyte) w;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: ubyte HIBYTE(ushort w)
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba:     return cast(ubyte) (w >>> 8);
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: /+ template max(T) {
4e2933c620 2015-04-21        kinaba:     T max(T a, T b)
4e2933c620 2015-04-21        kinaba:     {
4e2933c620 2015-04-21        kinaba:         return a > b ? a : b;
4e2933c620 2015-04-21        kinaba:     }
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: template min(T) {
4e2933c620 2015-04-21        kinaba:     T min(T a, T b)
4e2933c620 2015-04-21        kinaba:     {
4e2933c620 2015-04-21        kinaba:         return a < b ? a : b;
4e2933c620 2015-04-21        kinaba:     }
4e2933c620 2015-04-21        kinaba: } +/
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: enum NULL = null;
4e2933c620 2015-04-21        kinaba: //~ alias null NULL;
4e2933c620 2015-04-21        kinaba: //~ const void  *NULL = null;
4e2933c620 2015-04-21        kinaba: alias ubyte  BYTE;
4e2933c620 2015-04-21        kinaba: alias ubyte *PBYTE, LPBYTE;
4e2933c620 2015-04-21        kinaba: alias ushort USHORT, WORD, ATOM;
4e2933c620 2015-04-21        kinaba: alias ushort*PUSHORT, PWORD, LPWORD;
4e2933c620 2015-04-21        kinaba: alias uint   ULONG, DWORD, UINT, COLORREF;
4e2933c620 2015-04-21        kinaba: alias uint  *PULONG, PDWORD, LPDWORD, PUINT, LPUINT;
4e2933c620 2015-04-21        kinaba: alias int WINBOOL, BOOL, INT, LONG, HFILE, HRESULT;
4e2933c620 2015-04-21        kinaba: alias int*PWINBOOL, LPWINBOOL, PBOOL, LPBOOL, PINT, LPINT, LPLONG;
4e2933c620 2015-04-21        kinaba: alias float FLOAT;
4e2933c620 2015-04-21        kinaba: alias float*PFLOAT;
4e2933c620 2015-04-21        kinaba: alias CPtr!(void) PCVOID, LPCVOID;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: alias UINT_PTR WPARAM;
4e2933c620 2015-04-21        kinaba: alias LONG_PTR LPARAM, LRESULT;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: alias HANDLE HGLOBAL, HLOCAL, GLOBALHANDLE, LOCALHANDLE, HGDIOBJ, HACCEL,
4e2933c620 2015-04-21        kinaba:              HBITMAP, HBRUSH, HCOLORSPACE, HDC, HGLRC, HDESK, HENHMETAFILE, HFONT,
4e2933c620 2015-04-21        kinaba:              HICON, HINSTANCE, HKEY, HMENU, HMETAFILE, HMODULE, HMONITOR, HPALETTE, HPEN,
4e2933c620 2015-04-21        kinaba:              HRGN, HRSRC, HSTR, HTASK, HWND, HWINSTA, HKL, HCURSOR;
4e2933c620 2015-04-21        kinaba: alias HANDLE*PHKEY;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: static
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: if (WINVER >= 0x500)
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba:     alias HANDLE HTERMINAL, HWINEVENTHOOK;
4e2933c620 2015-04-21        kinaba: }
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: alias extern (Windows) int function() FARPROC, NEARPROC, PROC;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct RECT
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba:     LONG left;
4e2933c620 2015-04-21        kinaba:     LONG top;
4e2933c620 2015-04-21        kinaba:     LONG right;
4e2933c620 2015-04-21        kinaba:     LONG bottom;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias RECT RECTL;
4e2933c620 2015-04-21        kinaba: alias RECT*PRECT, LPRECT, PRECTL, LPRECTL;
4e2933c620 2015-04-21        kinaba: alias CPtr!(RECT) LPCRECT, LPCRECTL;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct POINT
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba:     LONG x;
4e2933c620 2015-04-21        kinaba:     LONG y;
4e2933c620 2015-04-21        kinaba:     alias x e1;
4e2933c620 2015-04-21        kinaba:     alias y e2;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias POINT POINTL;
4e2933c620 2015-04-21        kinaba: alias POINT*PPOINT, LPPOINT, PPOINTL, LPPOINTL;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct SIZE
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba:     LONG cx;
4e2933c620 2015-04-21        kinaba:     LONG cy;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias SIZE SIZEL;
4e2933c620 2015-04-21        kinaba: alias SIZE*PSIZE, LPSIZE, PSIZEL, LPSIZEL;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: struct POINTS
4e2933c620 2015-04-21        kinaba: {
4e2933c620 2015-04-21        kinaba:     SHORT x;
4e2933c620 2015-04-21        kinaba:     SHORT y;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias POINTS*PPOINTS, LPPOINTS;
c2b7a98c21 2011-02-23        kinaba: 
4e2933c620 2015-04-21        kinaba: enum : BOOL {
4e2933c620 2015-04-21        kinaba:     FALSE = 0,
4e2933c620 2015-04-21        kinaba:     TRUE  = 1
4e2933c620 2015-04-21        kinaba: }