Source code of Windows XP (NT5)
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.
 
 
 
 
 
 

154 lines
4.4 KiB

/*
* WIN1632.H
*
* Macros and other definitions that assist in porting between Win16
* and Win32 applications. Define WIN32 to enable 32-bit versions.
*
* Copyright (c)1993 Microsoft Corporation, All Rights Reserved
*
* Kraig Brockschmidt, Software Design Engineer
* Microsoft Systems Developer Relations
*
* Internet : [email protected]
* Compuserve: INTERNET>[email protected]
*/
#ifndef _BOOK1632_H_
#define _BOOK1632_H_
//Macros to handle control message packing between Win16 and Win32
#ifdef WIN32
#define MAKEPOINT MAKEPOINTS
#ifndef COMMANDPARAMS
#define COMMANDPARAMS(wID, wCode, hWndMsg) \
WORD wID = LOWORD(wParam); \
WORD wCode = HIWORD(wParam); \
HWND hWndMsg = (HWND)(UINT)lParam;
#endif //COMMANDPARAMS
#ifndef SendCommand
#define SendCommand(hWnd, wID, wCode, hControl) \
SendMessage(hWnd, WM_COMMAND, MAKELONG(wID, wCode) \
, (LPARAM)hControl)
#endif //SendCommand
#ifndef MENUSELECTPARAMS
#define MENUSELECTPARAMS(wID, wFlags, hMenu) \
WORD wID = LOWORD(wParam); \
WORD wFlags = HIWORD(wParam); \
HMENU hMenu = (HMENU)lParam;
#endif //MENUSELECTPARAMS
#ifndef SendMenuSelect
#define SendMenuSelect(hWnd, wID, wFlags, hMenu) \
SendMessage(hWnd, WM_MENUSELECT, MAKELONG(wID, wFlags) \
, (LPARAM)hMenu)
#endif //SendMenuSelect
#ifndef SendScrollPosition
#define SendScrollPosition(hWnd, iMsg, iPos) \
SendMessage(hWnd, iMsg, MAKELONG(SB_THUMBPOSITION, iPos), 0)
#endif //SendScrollPosition
#ifndef ScrollThumbPosition
#define ScrollThumbPosition(w, l) HIWORD(w)
#endif //ScrollThumbPosition
#ifndef GETWINDOWINSTANCE
#define GETWINDOWINSTANCE(h) (HINSTANCE)GetWindowLong(h, GWL_HINSTANCE)
#endif //GETWINDOWINSTANCE
#ifndef GETWINDOWID
#define GETWINDOWID(h) (UINT)GetWindowLong(h, GWW_ID)
#endif //GETWINDOWID
#ifndef POINTFROMLPARAM
#define POINTFROMLPARAM(p, l) {p.x=(LONG)(SHORT)LOWORD(l); \
p.y=(LONG)(SHORT)HIWORD(l);}
#endif //POINTEFROMLPARAM
#ifndef EXPORT
#define EXPORT
#endif //EXPORT
#ifndef MDIREFRESHMENU
#define MDIREFRESHMENU(h) SendMessage(h, WM_MDIREFRESHMENU, 0, 0L)
#endif //MDIREFRESHMENU
//****END WIN32
#else
//****START !WIN32
#ifndef COMMANDPARAMS
#define COMMANDPARAMS(wID, wCode, hWndMsg) \
WORD wID = LOWORD(wParam); \
WORD wCode = HIWORD(lParam); \
HWND hWndMsg = (HWND)(UINT)lParam;
#endif //COMMANDPARAMS
#ifndef SendCommand
#define SendCommand(hWnd, wID, wCode, hControl) \
SendMessage(hWnd, WM_COMMAND, wID \
, MAKELONG(hControl, wCode))
#endif //SendCommand
#ifndef MENUSELECTPARAMS
#define MENUSELECTPARAMS(wID, wFlags, hMenu) \
WORD wID = LOWORD(wParam); \
WORD wFlags = LOWORD(lParam); \
HMENU hMenu = (HMENU)HIWORD(lParam);
#endif //MENUSELECTPARAMS
#ifndef SendMenuSelect
#define SendMenuSelect(hWnd, wID, wFlags, hMenu) \
SendMessage(hWnd, WM_MENUSELECT, wID \
, MAKELONG(wFlags, hMenu))
#endif //SendMenuSelect
#ifndef SendScrollPosition
#define SendScrollPosition(hWnd, iMsg, iPos) \
SendMessage(hWnd, iMsg, SB_THUMBPOSITION, MAKELONG(iPos, 0))
#endif //Send ScrollPosition
#ifndef ScrollThumbPosition
#define ScrollThumbPosition(w, l) LOWORD(l)
#endif //ScrollThumbPosition
#ifndef GETWINDOWINSTANCE
#define GETWINDOWINSTANCE(h) (HINSTANCE)GetWindowWord(h, GWW_HINSTANCE)
#endif //GETWINDOWINSTANCE
#ifndef GETWINDOWID
#define GETWINDOWID(h) (UINT)GetWindowWord(h, GWW_ID)
#endif //GETWINDOWID
#ifndef POINTFROMLPARAM
#define POINTFROMLPARAM(p, l) {p.x=LOWORD(l); p.y=HIWORD(l);}
#endif //POINTEFROMLPARAM
#ifndef EXPORT
#define EXPORT __export
#endif //EXPORT
#ifndef MDIREFRESHMENU
#define MDIREFRESHMENU(h) SendMessage(h, WM_MDISETMENU, TRUE, 0L)
#endif //MDIREFRESHMENU
#endif //!WIN32
#endif //_BOOK1632_H_