You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
141 lines
7.1 KiB
141 lines
7.1 KiB
#ifdef WIN32
|
|
|
|
// Shouldn't be using these things.
|
|
#define _huge
|
|
#define _export
|
|
#define _loadds
|
|
#define SELECTOROF(x) ((UINT)(x))
|
|
#define OFFSETOF(x) ((UINT)(x))
|
|
#define ISLPTR(pv) ((BOOL)pv)
|
|
#define MAKELP(hmem,off) ((LPVOID)((LPBYTE)hmem+off))
|
|
#define MAKELRESULTFROMUINT(i) ((LRESULT)i)
|
|
#define ISVALIDHINSTANCE(hinst) ((BOOL)hinst)
|
|
|
|
#define DATASEG_READONLY
|
|
#define DATASEG_PERINSTANCE
|
|
#define DATASEG_SHARED
|
|
|
|
#define GetWindowInt GetWindowLong
|
|
#define SetWindowInt SetWindowLong
|
|
#define SetWindowID(hwnd,id) SetWindowLong(hwnd, GWL_ID, id)
|
|
|
|
#define CopyIcon(hInst, hIcon) CopyIcon(hIcon)
|
|
#define LOADICONEX(hInst, hInst2, a, b, c, d) LoadIconEx(hInst2, a, b, c, d)
|
|
#define SHELLEXECUTE(a, b, c, d, e, f) ShellExecuteEx(a, b, c, d, e, NULL, f)
|
|
|
|
#define ISVALIDLIBRARY(hLib) (hLib != NULL)
|
|
|
|
#else // WIN32
|
|
|
|
#define ISLPTR(pv) (SELECTOROF(pv))
|
|
#define MAKELRESULTFROMUINT(i) MAKELRESULT(i,0)
|
|
#define ISVALIDHINSTANCE(hinst) ((UINT)hinst>=(UINT)HINSTANCE_ERROR)
|
|
|
|
#define DATASEG_READONLY "_TEXT"
|
|
#define DATASEG_PERINSTANCE
|
|
#define DATASEG_SHARED
|
|
|
|
#define GetWindowInt GetWindowWord
|
|
#define SetWindowInt SetWindowWord
|
|
#define SetWindowID(hwnd,id) SetWindowWord(hwnd, GWW_ID, id)
|
|
|
|
#define MAKEPOINTS(l) (*((POINTS FAR*)&(l)))
|
|
|
|
#define LOADICONEX(hInst, hInst2, a, b, c, d) LoadIconEx(hInst, hInst2, a, b, c, d)
|
|
#define SHELLEXECUTE(a, b, c, d, e, f) ShellExecute(a, b, c, d, e, f)
|
|
|
|
#define ISVALIDLIBRARY(hLib) (hLib >= HINSTANCE_ERROR)
|
|
|
|
#endif // WIN32
|
|
|
|
#ifdef WIN32
|
|
|
|
/*****************************************************************************\
|
|
* PWIN32.H - PORTABILITY MAPPING HEADER FILE
|
|
*
|
|
* This file provides macros to map portable windows code to its 32 bit form.
|
|
\*****************************************************************************/
|
|
|
|
/*-----------------------------------USER------------------------------------*/
|
|
|
|
/* HELPER MACROS */
|
|
|
|
#define MAPVALUE(v16, v32) (v32)
|
|
#define MAPTYPE(v16, v32) v32
|
|
#define MAKEMPOINT(l) (*((MPOINT *)&(l)))
|
|
#define MPOINT2POINT(mpt,pt) ((pt).x = (mpt).x, (pt).y = (mpt).y)
|
|
#define POINT2MPOINT(pt, mpt) ((mpt).x = (SHORT)(pt).x, (mpt).y = (SHORT)(pt).y)
|
|
#define LONG2POINT(l, pt) ((pt).x = (SHORT)LOWORD(l), (pt).y = (SHORT)HIWORD(l))
|
|
|
|
#define SETWINDOWUINT(hwnd, index, ui) (UINT)SetWindowLong(hwnd, index, (LONG)(ui))
|
|
#define GETWINDOWUINT(hwnd, index) (UINT)GetWindowLong(hwnd, index)
|
|
#define SETCLASSUINT(hwnd, index, ui) (UINT)SetClassLong(hwnd, index, (LONG)(ui))
|
|
#define GETCLASSUINT(hwnd, index) (UINT)GetClassLong(hwnd, index)
|
|
|
|
#define GETCBCLSEXTRA(hwnd) GETCLASSUINT(hwnd, GCL_CBCLSEXTRA)
|
|
#define SETCBCLSEXTRA(hwnd, cb) SETCLASSUINT(hwnd, GCL_CBCLSEXTRA, cb)
|
|
#define GETCBWNDEXTRA(hwnd) GETCLASSUINT(hwnd, GCL_CBWNDEXTRA)
|
|
#define SETCBWNDEXTRA(hwnd, cb) SETCLASSUINT(hwnd, GCL_CBWNDEXTRA, cb)
|
|
#define GETCLASSBRBACKGROUND(hwnd) (HBRUSH)GETCLASSUINT(hwnd, GCL_HBRBACKGROUND)
|
|
#define SETCLASSBRBACKGROUND(hwnd, h) (HBRUSH)SETCLASSUINT(hwnd, GCL_HBRBACKGROUND, h)
|
|
#define GETCLASSCURSOR(hwnd) (HCURSOR)GETCLASSUINT(hwnd, GCL_HCURSOR)
|
|
#define SETCLASSCURSOR(hwnd, h) (HCURSOR)SETCLASSUINT(hwnd, GCL_HCURSOR, h)
|
|
#define GETCLASSHMODULE(hwnd) (HMODULE)GETCLASSUINT(hwnd, GCL_HMODULE)
|
|
#define SETCLASSHMODULE(hwnd, h) (HMODULE)SETCLASSUINT(hwnd, GCL_HMODULE, h)
|
|
#define GETCLASSICON(hwnd) (HICON)GETCLASSUINT((hwnd), GCL_HICON)
|
|
#define SETCLASSICON(hwnd, h) (HICON)SETCLASSUINT((hwnd), GCL_HICON, h)
|
|
#define GETCLASSSTYLE(hwnd) GETCLASSUINT((hwnd), GCL_STYLE)
|
|
#define SETCLASSSTYLE(hwnd, style) SETCLASSUINT((hwnd), GCL_STYLE, style)
|
|
#define GETHWNDINSTANCE(hwnd) (HINSTANCE)GETWINDOWUINT((hwnd), GWL_HINSTANCE)
|
|
#define SETHWNDINSTANCE(hwnd, h) (HINSTANCE)SETWINDOWUINT((hwnd), GWL_HINSTANCE, h)
|
|
#define GETHWNDPARENT(hwnd) (HWND)GETWINDOWUINT((hwnd), GWL_HWNDPARENT)
|
|
#define SETHWNDPARENT(hwnd, h) (HWND)SETWINDOWUINT((hwnd), GWL_HWNDPARENT, h)
|
|
#define GETWINDOWID(hwnd) GETWINDOWUINT((hwnd), GWL_ID)
|
|
#define SETWINDOWID(hwnd, id) SETWINDOWUINT((hwnd), GWL_ID, id)
|
|
|
|
#else
|
|
|
|
/*****************************************************************************\
|
|
* PWIN16.H - PORTABILITY MAPPING HEADER FILE
|
|
*
|
|
* This file provides macros to map portable windows code to its 16 bit form.
|
|
\*****************************************************************************/
|
|
|
|
/*-----------------------------------USER------------------------------------*/
|
|
|
|
/* HELPER MACROS */
|
|
|
|
#define MAPVALUE(v16, v32) (v16)
|
|
#define MAPTYPE(v16, v32) v16
|
|
#define MAKEMPOINT(l) (*((MPOINT FAR *)&(l)))
|
|
#define MPOINT2POINT(mpt, pt) (pt = *(POINT FAR *)&(mpt))
|
|
#define POINT2MPOINT(pt, mpt) (mpt = *(MPOINT FAR *)&(pt))
|
|
#define LONG2POINT(l, pt) ((pt).x = (INT)LOWORD(l), (pt).y = (INT)HIWORD(l))
|
|
|
|
#define GETWINDOWUINT(hwnd, index) (UINT)GetWindowWord(hwnd, index)
|
|
#define SETWINDOWUINT(hwnd, index, ui) (UINT)SetWindowWord(hwnd, index, (WORD)(ui))
|
|
#define SETCLASSUINT(hwnd, index, ui) (UINT)SetClassWord(hwnd, index, (WORD)(ui))
|
|
#define GETCLASSUINT(hwnd, index) (UINT)GetClassWord(hwnd, index)
|
|
|
|
#define GETCBCLSEXTRA(hwnd) GETCLASSUINT(hwnd, GCW_CBCLSEXTRA)
|
|
#define SETCBCLSEXTRA(hwnd, cb) SETCLASSUINT(hwnd, GCW_CBCLSEXTRA, cb)
|
|
#define GETCBWNDEXTRA(hwnd) GETCLASSUINT(hwnd, GCW_CBWNDEXTRA)
|
|
#define SETCBWNDEXTRA(hwnd, cb) SETCLASSUINT(hwnd, GCW_CBWNDEXTRA, cb)
|
|
#define GETCLASSBRBACKGROUND(hwnd) (HBRUSH)GETCLASSUINT(hwnd, GCW_HBRBACKGROUND)
|
|
#define SETCLASSBRBACKGROUND(hwnd, h) (HBRUSH)SETCLASSUINT(hwnd, GCW_HBRBACKGROUND, h)
|
|
#define GETCLASSCURSOR(hwnd) (HCURSOR)GETCLASSUINT(hwnd, GCW_HCURSOR)
|
|
#define SETCLASSCURSOR(hwnd, h) (HCURSOR)SETCLASSUINT(hwnd, GCW_HCURSOR, h)
|
|
#define GETCLASSHMODULE(hwnd) (HMODULE)GETCLASSUINT(hwnd, GCW_HMODULE)
|
|
#define SETCLASSHMODULE(hwnd, h) (HMODULE)SETCLASSUINT(hwnd, GCW_HMODULE, h)
|
|
#define GETCLASSICON(hwnd) (HICON)GETCLASSUINT((hwnd), GCW_HICON)
|
|
#define SETCLASSICON(hwnd, h) (HICON)SETCLASSUINT((hwnd), GCW_HICON, h)
|
|
#define GETCLASSSTYLE(hwnd) GETCLASSUINT((hwnd), GCW_STYLE)
|
|
#define SETCLASSSTYLE(hwnd, style) SETCLASSUINT((hwnd), GCW_STYLE, style)
|
|
#define GETHWNDINSTANCE(hwnd) (HMODULE)GETWINDOWUINT((hwnd), GWW_HINSTANCE)
|
|
#define SETHWNDINSTANCE(hwnd, h) (HMODULE)SETWINDOWUINT((hwnd), GWW_HINSTANCE, h)
|
|
#define GETHWNDPARENT(hwnd) (HWND)GETWINDOWUINT((hwnd), GWW_HWNDPARENT)
|
|
#define SETHWNDPARENT(hwnd, h) (HWND)SETWINDOWUINT((hwnd), GWW_HWNDPARENT, h)
|
|
#define GETWINDOWID(hwnd) GETWINDOWUINT((hwnd), GWW_ID)
|
|
#define SETWINDOWID(hwnd, id) SETWINDOWUINT((hwnd), GWW_ID, id)
|
|
|
|
#endif // WIN32
|