|
|
1.1.1.3 ! root 1: // Microsoft Foundation Classes C++ library. ! 2: // Copyright (C) 1992 Microsoft Corporation, ! 3: // All rights reserved. ! 4: ! 5: // This source code is only intended as a supplement to the ! 6: // Microsoft Foundation Classes Reference and Microsoft ! 7: // QuickHelp documentation provided with the library. ! 8: // See these sources for detailed information regarding the ! 9: // Microsoft Foundation Classes product. ! 10: 1.1 root 11: #ifndef WINVER 12: #error Please do not include this file independently, #include <afxwin.h> 13: #endif 14: 1.1.1.3 ! root 15: // WM_CTLCOLOR for 16 bit API compatability. 1.1 root 16: #define WM_CTLCOLOR 0x0019 17: 1.1.1.3 ! root 18: // We emulate HTASK for compatibility, even though Win32 has no notion of it. 1.1.1.2 root 19: DECLARE_HANDLE(HTASK); 20: 1.1.1.3 ! root 21: // Windows NT uses macros to stub these out, which breaks C++ code. 1.1 root 22: #undef GetSysModalWindow 23: inline HWND GetSysModalWindow(void) 24: { return NULL;} 25: 26: #undef SetSysModalWindow 27: inline HWND SetSysModalWindow(HWND) 28: { return NULL; } 29: 1.1.1.3 ! root 30: // Windows NT uses macros with parameters for these, which breaks C++ code. ! 31: 1.1 root 32: #undef GetNextWindow 33: inline HWND GetNextWindow(HWND hWnd, UINT uFlag) 34: { return ::GetWindow(hWnd, uFlag); } 35: 36: #undef MessageBox 37: inline int MessageBox(HWND hWnd, LPCSTR lpText, LPCSTR lpTitle, UINT fuStyle) 38: #ifdef UNICODE 39: { return ::MessageBoxExW(hWnd, lpText, lpTitle, fuStyle, 0); } 40: #else 41: { return ::MessageBoxExA(hWnd, lpText, lpTitle, fuStyle, 0); } 42: #endif 43: 1.1.1.3 ! root 44: // These are necessary because WINDOWS.H is not included consistently ! 45: // when the CString class is defined, but is included when the CString ! 46: // class is implemented. ! 47: ! 48: #undef LoadString ! 49: inline int LoadString(HINSTANCE hInstance, UINT uID, ! 50: LPSTR lpBuffer, int nBufferMax) 1.1 root 51: #ifdef UNICODE 1.1.1.3 ! root 52: { return ::LoadStringW(hInstance, uID, lpBuffer, nBufferMax); } 1.1 root 53: #else 1.1.1.3 ! root 54: { return ::LoadStringA(hInstance, uID, lpBuffer, nBufferMax); } ! 55: #endif ! 56: ! 57: #undef AnsiToOem ! 58: inline BOOL AnsiToOem(LPCSTR lpcstr, LPSTR lpstr) ! 59: { return ::CharToOemA(lpcstr, lpstr); } ! 60: ! 61: #undef OemToAnsi ! 62: inline BOOL OemToAnsi(LPCSTR lpcstr, LPSTR lpstr) ! 63: { return ::OemToCharA(lpcstr, lpstr); } ! 64: ! 65: ////////////////////////////////////////////////////////////////////////////// ! 66: // NOTE: ! 67: // The remaining declarations and definitions will not be present in ! 68: // the final product. These are a required because of textual inconsistencies ! 69: // in the Windows NT interface files. Please ignore these. ! 70: ! 71: //REVIEW_NT: maybe someday NT will add these to their headers! ! 72: ! 73: extern "C" ! 74: { ! 75: BOOL WINAPI SubtractRect(RECT FAR*, const RECT FAR*, const RECT FAR*); ! 76: } 1.1 root 77: 1.1.1.2 root 78: /////////////////////////////////////////////////////////////////////////////
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.