Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
WINDOWS.H
Package: watsock.zip [view]
Upload User: qiye66666
Upload Date: 2007-01-03
Package Size: 202k
Code Size: 117k
Category:
TCP/IP Stack
Development Platform:
Visual C++
- #if !defined( __WINDOWS_H )
- #define __WINDOWS_H
- /****************************************************************************/
- /* */
- /* WINDOWS.H - */
- /* */
- /* Include file for Windows 3.0 applications */
- /* */
- /****************************************************************************/
- #ifndef RC_INVOKED
- #pragma option -a-
- #pragma warn -bbf
- #endif
- #if defined( __cplusplus )
- extern "C" {
- #endif /* __cplusplus */
- /* If defined, the following flags inhibit definition
- * of the indicated items.
- *
- * NOGDICAPMASKS - CC_*, LC_*, PC_*, CP_*, TC_*, RC_
- * NOVIRTUALKEYCODES - VK_*
- * NOWINMESSAGES - WM_*, EM_*, LB_*, CB_*
- * NOWINSTYLES - WS_*, CS_*, ES_*, LBS_*, SBS_*, CBS_*
- * NOSYSMETRICS - SM_*
- * NOMENUS - MF_*
- * NOICONS - IDI_*
- * NOKEYSTATES - MK_*
- * NOSYSCOMMANDS - SC_*
- * NORASTEROPS - Binary and Tertiary raster ops
- * NOSHOWWINDOW - SW_*
- * OEMRESOURCE - OEM Resource values
- * NOATOM - Atom Manager routines
- * NOCLIPBOARD - Clipboard routines
- * NOCOLOR - Screen colors
- * NOCTLMGR - Control and Dialog routines
- * NODRAWTEXT - DrawText() and DT_*
- * NOGDI - All GDI defines and routines
- * NOKERNEL - All KERNEL defines and routines
- * NOUSER - All USER defines and routines
- * NOMB - MB_* and MessageBox()
- * NOMEMMGR - GMEM_*, LMEM_*, GHND, LHND, associated routines
- * NOMETAFILE - typedef METAFILEPICT
- * NOMINMAX - Macros min(a,b) and max(a,b)
- * NOMSG - typedef MSG and associated routines
- * NOOPENFILE - OpenFile(), OemToAnsi, AnsiToOem, and OF_*
- * NOSCROLL - SB_* and scrolling routines
- * NOSOUND - Sound driver routines
- * NOTEXTMETRIC - typedef TEXTMETRIC and associated routines
- * NOWH - SetWindowsHook and WH_*
- * NOWINOFFSETS - GWL_*, GCL_*, associated routines
- * NOCOMM - COMM driver routines
- * NOKANJI - Kanji support stuff.
- * NOHELP - Help engine interface.
- * NOPROFILER - Profiler interface.
- * NODEFERWINDOWPOS - DeferWindowPos routines
- */
- #ifdef RC_INVOKED
- /* Turn off a bunch of stuff to ensure that RC files compile OK. */
- #define NOATOM
- #define NOGDI
- #define NOGDICAPMASKS
- #define NOMETAFILE
- #define NOMINMAX
- #define NOMSG
- #define NOOPENFILE
- #define NORASTEROPS
- #define NOSCROLL
- #define NOSOUND
- #define NOSYSMETRICS
- #define NOTEXTMETRIC
- #define NOWH
- #define NOCOMM
- #define NOKANJI
- #endif /* RC_INVOKED */
- /*--------------------------------------------------------------------------*/
- /* General Purpose Defines */
- /*--------------------------------------------------------------------------*/
- #ifndef NULL
- #if defined(__TINY__) || defined(__SMALL__) || defined(__MEDIUM__)
- #define NULL 0
- #else
- #define NULL 0L
- #endif
- #endif
- #define FALSE 0
- #define TRUE 1
- #define FAR far
- #define NEAR near
- #define LONG long
- #define VOID void
- #define PASCAL pascal
- #if !defined( NOMINMAX ) && !defined( __cplusplus )
- #ifndef max
- #define max(a,b) (((a) > (b)) ? (a) : (b))
- #endif
- #ifndef min
- #define min(a,b) (((a) < (b)) ? (a) : (b))
- #endif
- #endif /* NOMINMAX */
- #define MAKELONG(a, b) ((LONG)(((WORD)(a)) | (((DWORD)((WORD)(b))) << 16)))
- #define LOWORD(l) ((WORD)(l))
- #define HIWORD(l) ((WORD)((DWORD)(l) >> 16))
- #define LOBYTE(w) ((BYTE)(w))
- #define HIBYTE(w) ((BYTE)((WORD)(w) >> 8))
- typedef int BOOL;
- typedef unsigned char BYTE;
- typedef unsigned int WORD;
- typedef unsigned long DWORD;
- typedef char near *PSTR;
- typedef char near *NPSTR;
- typedef char far *LPSTR;
- typedef BYTE near *PBYTE;
- typedef BYTE far *LPBYTE;
- typedef int near *PINT;
- typedef int far *LPINT;
- typedef WORD near *PWORD;
- typedef WORD far *LPWORD;
- typedef long near *PLONG;
- typedef long far *LPLONG;
- typedef DWORD near *PDWORD;
- typedef DWORD far *LPDWORD;
- typedef void far *LPVOID;
- #ifndef WIN_INTERNAL
- typedef WORD HANDLE;
- typedef HANDLE HWND;
- #endif
- typedef HANDLE *PHANDLE;
- typedef HANDLE NEAR *SPHANDLE;
- typedef HANDLE FAR *LPHANDLE;
- typedef HANDLE GLOBALHANDLE;
- typedef HANDLE LOCALHANDLE;
- typedef int (FAR PASCAL *FARPROC)();
- typedef int (NEAR PASCAL *NEARPROC)();
- typedef HANDLE HSTR;
- typedef HANDLE HICON;
- typedef HANDLE HDC;
- typedef HANDLE HMENU;
- typedef HANDLE HPEN;
- typedef HANDLE HFONT;
- typedef HANDLE HBRUSH;
- typedef HANDLE HBITMAP;
- typedef HANDLE HCURSOR;
- typedef HANDLE HRGN;
- typedef HANDLE HPALETTE;
- typedef DWORD COLORREF;
- #ifndef WIN_INTERNAL
- typedef struct tagRECT
- {
- int left;
- int top;
- int right;
- int bottom;
- } RECT;
- #endif
- typedef RECT *PRECT;
- typedef RECT NEAR *NPRECT;
- typedef RECT FAR *LPRECT;
- typedef struct tagPOINT
- {
- int x;
- int y;
- } POINT;
- typedef POINT *PPOINT;
- typedef POINT NEAR *NPPOINT;
- typedef POINT FAR *LPPOINT;
- /*--------------------------------------------------------------------------*/
- /* KERNEL Section */
- /*--------------------------------------------------------------------------*/
- #ifndef NOKERNEL
- /* Loader Routines */
- WORD FAR PASCAL GetVersion(void);
- WORD FAR PASCAL GetNumTasks(void);
- HANDLE FAR PASCAL GetCodeHandle(FARPROC);
- void FAR PASCAL GetCodeInfo(FARPROC lpProc, LPVOID lpSegInfo);
- HANDLE FAR PASCAL GetModuleHandle(LPSTR);
- int FAR PASCAL GetModuleUsage(HANDLE);
- int FAR PASCAL GetModuleFileName(HANDLE, LPSTR, int);
- int FAR PASCAL GetInstanceData(HANDLE, NPSTR, int);
- FARPROC FAR PASCAL GetProcAddress(HANDLE, LPSTR);
- FARPROC FAR PASCAL MakeProcInstance(FARPROC, HANDLE);
- void FAR PASCAL FreeProcInstance(FARPROC);
- HANDLE FAR PASCAL LoadLibrary(LPSTR);
- HANDLE FAR PASCAL LoadModule(LPSTR, LPVOID);
- BOOL FAR PASCAL FreeModule(HANDLE);
- void FAR PASCAL FreeLibrary(HANDLE);
- DWORD FAR PASCAL GetFreeSpace(WORD);
- WORD FAR PASCAL WinExec(LPSTR, WORD);
- void FAR PASCAL DebugBreak(void);
- void FAR PASCAL OutputDebugString(LPSTR);
- void FAR PASCAL SwitchStackBack(void);
- void FAR PASCAL SwitchStackTo(WORD, WORD, WORD);
- WORD FAR PASCAL GetCurrentPDB(void);
- #ifndef NOOPENFILE
- /* OpenFile() Structure */
- typedef struct tagOFSTRUCT
- {
- BYTE cBytes;
- BYTE fFixedDisk;
- WORD nErrCode;
- BYTE reserved[4];
- BYTE szPathName[128];
- } OFSTRUCT;
- typedef OFSTRUCT *POFSTRUCT;
- typedef OFSTRUCT NEAR *NPOFSTRUCT;
- typedef OFSTRUCT FAR *LPOFSTRUCT;
- /* OpenFile() Flags */
- #define OF_READ 0x0000
- #define OF_WRITE 0x0001
- #define OF_READWRITE 0x0002
- #define OF_SHARE_COMPAT 0x0000
- #define OF_SHARE_EXCLUSIVE 0x0010
- #define OF_SHARE_DENY_WRITE 0x0020
- #define OF_SHARE_DENY_READ 0x0030
- #define OF_SHARE_DENY_NONE 0x0040
- #define OF_PARSE 0x0100
- #define OF_DELETE 0x0200
- #define OF_VERIFY 0x0400
- #define OF_CANCEL 0x0800
- #define OF_CREATE 0x1000
- #define OF_PROMPT 0x2000
- #define OF_EXIST 0x4000
- #define OF_REOPEN 0x8000
- int FAR PASCAL OpenFile(LPSTR, LPOFSTRUCT, WORD);
- /* GetTempFileName() Flags */
- #define TF_FORCEDRIVE (BYTE)0x80
- BYTE FAR PASCAL GetTempDrive(BYTE);
- int FAR PASCAL GetTempFileName(BYTE, LPSTR, WORD, LPSTR);
- WORD FAR PASCAL SetHandleCount(WORD);
- WORD FAR PASCAL GetDriveType(int);
- /* GetDriveType return values */
- #define DRIVE_REMOVABLE 2
- #define DRIVE_FIXED 3
- #define DRIVE_REMOTE 4
- #endif /* NOOPENFILE */
- #ifndef NOMEMMGR
- /* Global Memory Flags */
- #define GMEM_FIXED 0x0000
- #define GMEM_MOVEABLE 0x0002
- #define GMEM_NOCOMPACT 0x0010
- #define GMEM_NODISCARD 0x0020
- #define GMEM_ZEROINIT 0x0040
- #define GMEM_MODIFY 0x0080
- #define GMEM_DISCARDABLE 0x0100
- #define GMEM_NOT_BANKED 0x1000
- #define GMEM_SHARE 0x2000
- #define GMEM_DDESHARE 0x2000
- #define GMEM_NOTIFY 0x4000
- #define GMEM_LOWER GMEM_NOT_BANKED
- #define GHND (GMEM_MOVEABLE | GMEM_ZEROINIT)
- #define GPTR (GMEM_FIXED | GMEM_ZEROINIT)
- #define GlobalDiscard(h) GlobalReAlloc(h, 0L, GMEM_MOVEABLE)
- HANDLE FAR PASCAL GlobalAlloc(WORD, DWORD);
- DWORD FAR PASCAL GlobalCompact(DWORD);
- HANDLE FAR PASCAL GlobalFree(HANDLE);
- DWORD FAR PASCAL GlobalHandle(WORD);
- LPSTR FAR PASCAL GlobalLock(HANDLE);
- HANDLE FAR PASCAL GlobalReAlloc(HANDLE, DWORD, WORD);
- DWORD FAR PASCAL GlobalSize(HANDLE);
- BOOL FAR PASCAL GlobalUnlock(HANDLE);
- WORD FAR PASCAL GlobalFlags(HANDLE);
- LPSTR FAR PASCAL GlobalWire(HANDLE);
- BOOL FAR PASCAL GlobalUnWire(HANDLE);
- BOOL FAR PASCAL GlobalUnlock(HANDLE);
- HANDLE FAR PASCAL GlobalLRUNewest(HANDLE);
- HANDLE FAR PASCAL GlobalLRUOldest(HANDLE);
- VOID FAR PASCAL GlobalNotify(FARPROC);
- WORD FAR PASCAL GlobalPageLock(HANDLE);
- WORD FAR PASCAL GlobalPageUnlock(HANDLE);
- VOID FAR PASCAL GlobalFix(HANDLE);
- BOOL FAR PASCAL GlobalUnfix(HANDLE);
- DWORD FAR PASCAL GlobalDosAlloc(DWORD);
- WORD FAR PASCAL GlobalDosFree(WORD);
- /* Flags returned by GlobalFlags (in addition to GMEM_DISCARDABLE) */
- #define GMEM_DISCARDED 0x4000
- #define GMEM_LOCKCOUNT 0x00FF
- #define LockData(dummy) LockSegment(0xFFFF)
- #define UnlockData(dummy) UnlockSegment(0xFFFF)
- HANDLE FAR PASCAL LockSegment(WORD);
- HANDLE FAR PASCAL UnlockSegment(WORD);
- /* Local Memory Flags */
- #define LMEM_FIXED 0x0000
- #define LMEM_MOVEABLE 0x0002
- #define LMEM_NOCOMPACT 0x0010
- #define LMEM_NODISCARD 0x0020
- #define LMEM_ZEROINIT 0x0040
- #define LMEM_MODIFY 0x0080
- #define LMEM_DISCARDABLE 0x0F00
- #define LHND (LMEM_MOVEABLE | LMEM_ZEROINIT)
- #define LPTR (LMEM_FIXED | LMEM_ZEROINIT)
- #define NONZEROLHND (LMEM_MOVEABLE)
- #define NONZEROLPTR (LMEM_FIXED)
- #define LNOTIFY_OUTOFMEM 0
- #define LNOTIFY_MOVE 1
- #define LNOTIFY_DISCARD 2
- #define LocalDiscard(h) LocalReAlloc(h, 0, LMEM_MOVEABLE)
- HANDLE FAR PASCAL LocalAlloc(WORD, WORD);
- WORD FAR PASCAL LocalCompact(WORD);
- HANDLE FAR PASCAL LocalFree(HANDLE);
- HANDLE FAR PASCAL LocalHandle(WORD);
- BOOL FAR PASCAL LocalInit( WORD, WORD, WORD);
- char NEAR * FAR PASCAL LocalLock(HANDLE);
- FARPROC FAR PASCAL LocalNotify(FARPROC);
- HANDLE FAR PASCAL LocalReAlloc(HANDLE, WORD, WORD);
- WORD FAR PASCAL LocalSize(HANDLE);
- BOOL FAR PASCAL LocalUnlock(HANDLE);
- WORD FAR PASCAL LocalFlags(HANDLE);
- WORD FAR PASCAL LocalShrink(HANDLE, WORD);
- /* Flags returned by LocalFlags (in addition to LMEM_DISCARDABLE) */
- #define LMEM_DISCARDED 0x4000
- #define LMEM_LOCKCOUNT 0x00FF
- #endif /* NOMEMMGR */
- LONG FAR PASCAL SetSwapAreaSize(WORD);
- LPSTR FAR PASCAL ValidateFreeSpaces(void);
- VOID FAR PASCAL LimitEmsPages(DWORD);
- BOOL FAR PASCAL SetErrorMode(WORD);
- VOID FAR PASCAL ValidateCodeSegments(void);
- LPSTR FAR PASCAL GetDOSEnvironment(void);
- WORD FAR PASCAL AllocDStoCSAlias(WORD);
- WORD FAR PASCAL AllocSelector(WORD);
- WORD FAR PASCAL ChangeSelector(WORD, WORD);
- WORD FAR PASCAL FreeSelector(WORD);
- #define UnlockResource(h) GlobalUnlock(h)
- HANDLE FAR PASCAL FindResource(HANDLE, LPSTR, LPSTR);
- HANDLE FAR PASCAL LoadResource(HANDLE, HANDLE);
- BOOL FAR PASCAL FreeResource(HANDLE);
- LPSTR FAR PASCAL LockResource(HANDLE);
- FARPROC FAR PASCAL SetResourceHandler(HANDLE, LPSTR, FARPROC);
- HANDLE FAR PASCAL AllocResource(HANDLE, HANDLE, DWORD);
- WORD FAR PASCAL SizeofResource(HANDLE, HANDLE);
- int FAR PASCAL AccessResource(HANDLE, HANDLE);
- #define MAKEINTRESOURCE(i) (LPSTR)((DWORD)((WORD)(i)))
- #ifndef NORESOURCE
- /* Predefined Resource Types */
- #define RT_CURSOR MAKEINTRESOURCE(1)
- #define RT_BITMAP MAKEINTRESOURCE(2)
- #define RT_ICON MAKEINTRESOURCE(3)
- #define RT_MENU MAKEINTRESOURCE(4)
- #define RT_DIALOG MAKEINTRESOURCE(5)
- #define RT_STRING MAKEINTRESOURCE(6)
- #define RT_FONTDIR MAKEINTRESOURCE(7)
- #define RT_FONT MAKEINTRESOURCE(8)
- #define RT_ACCELERATOR MAKEINTRESOURCE(9)
- #define RT_RCDATA MAKEINTRESOURCE(10)
- #endif /* NORESOURCE */
- void FAR PASCAL Yield(void);
- HANDLE FAR PASCAL GetCurrentTask(void);
- #ifndef NOATOM
- typedef WORD ATOM;
- #define MAKEINTATOM(i) (LPSTR)((DWORD)((WORD)(i)))
- BOOL FAR PASCAL InitAtomTable(int);
- ATOM FAR PASCAL AddAtom(LPSTR);
- ATOM FAR PASCAL DeleteAtom(ATOM);
- ATOM FAR PASCAL FindAtom(LPSTR);
- WORD FAR PASCAL GetAtomName(ATOM, LPSTR, int);
- ATOM FAR PASCAL GlobalAddAtom(LPSTR);
- ATOM FAR PASCAL GlobalDeleteAtom(ATOM);
- ATOM FAR PASCAL GlobalFindAtom(LPSTR);
- WORD FAR PASCAL GlobalGetAtomName(ATOM, LPSTR, int);
- HANDLE FAR PASCAL GetAtomHandle(ATOM);
- #endif /* NOATOM */
- /* User Profile Routines */
- WORD FAR PASCAL GetProfileInt(LPSTR, LPSTR, int);
- int FAR PASCAL GetProfileString(LPSTR, LPSTR, LPSTR, LPSTR, int);
- BOOL FAR PASCAL WriteProfileString(LPSTR, LPSTR, LPSTR);
- WORD FAR PASCAL GetPrivateProfileInt(LPSTR, LPSTR, int, LPSTR);
- int FAR PASCAL GetPrivateProfileString(LPSTR, LPSTR, LPSTR, LPSTR, int, LPSTR);
- BOOL FAR PASCAL WritePrivateProfileString(LPSTR, LPSTR, LPSTR, LPSTR);
- WORD FAR PASCAL GetWindowsDirectory(LPSTR,WORD);
- WORD FAR PASCAL GetSystemDirectory(LPSTR,WORD);
- /* Catch() and Throw() */
- typedef int CATCHBUF[9];
- typedef int FAR *LPCATCHBUF;
- int FAR PASCAL Catch(LPCATCHBUF);
- void FAR PASCAL Throw(LPCATCHBUF, int);
- void FAR PASCAL FatalAppExit(int, LPSTR);
- void FAR PASCAL FatalExit(int);
- void FAR PASCAL SwapRecording(WORD);
- /* Character Translation Routines */
- int FAR PASCAL AnsiToOem(LPSTR, LPSTR);
- BOOL FAR PASCAL OemToAnsi(LPSTR, LPSTR);
- void FAR PASCAL AnsiToOemBuff(LPSTR, LPSTR, int);
- void FAR PASCAL OemToAnsiBuff(LPSTR, LPSTR, int);
- LPSTR FAR PASCAL AnsiUpper(LPSTR);
- WORD FAR PASCAL AnsiUpperBuff(LPSTR, WORD);
- LPSTR FAR PASCAL AnsiLower(LPSTR);
- WORD FAR PASCAL AnsiLowerBuff(LPSTR, WORD);
- LPSTR FAR PASCAL AnsiNext(LPSTR);
- LPSTR FAR PASCAL AnsiPrev(LPSTR, LPSTR);
- /* Keyboard Information Routines */
- #ifndef NOKEYBOARDINFO
- DWORD FAR PASCAL OemKeyScan(WORD);
- WORD FAR PASCAL VkKeyScan(WORD);
- int FAR PASCAL GetKeyboardType(int);
- WORD FAR PASCAL MapVirtualKey(WORD, WORD);
- int FAR PASCAL GetKBCodePage();
- int FAR PASCAL GetKeyNameText(LONG, LPSTR, int);
- int FAR PASCAL ToAscii(WORD wVirtKey, WORD wScanCode, LPSTR lpKeyState, LPVOID lpChar, WORD wFlags);
- #endif
- #ifndef NOLANGUAGE
- /* Language dependent Routines */
- BOOL FAR PASCAL IsCharAlpha(char);
- BOOL FAR PASCAL IsCharAlphaNumeric(char);
- BOOL FAR PASCAL IsCharUpper(char);
- BOOL FAR PASCAL IsCharLower(char);
- #endif
- LONG FAR PASCAL GetWinFlags(void);
- #define WF_PMODE 0x0001
- #define WF_CPU286 0x0002
- #define WF_CPU386 0x0004
- #define WF_CPU486 0x0008
- #define WF_STANDARD 0x0010
- #define WF_WIN286 0x0010
- #define WF_ENHANCED 0x0020
- #define WF_WIN386 0x0020
- #define WF_CPU086 0x0040
- #define WF_CPU186 0x0080
- #define WF_LARGEFRAME 0x0100
- #define WF_SMALLFRAME 0x0200
- #define WF_80x87 0x0400
- /* WEP fSystemExit flag values */
- #define WEP_SYSTEM_EXIT 1
- #define WEP_FREE_DLL 0
- #ifdef OEMRESOURCE
- /* OEM Resource Ordinal Numbers */
- #define OBM_CLOSE 32754
- #define OBM_UPARROW 32753
- #define OBM_DNARROW 32752
- #define OBM_RGARROW 32751
- #define OBM_LFARROW 32750
- #define OBM_REDUCE 32749
- #define OBM_ZOOM 32748
- #define OBM_RESTORE 32747
- #define OBM_REDUCED 32746
- #define OBM_ZOOMD 32745
- #define OBM_RESTORED 32744
- #define OBM_UPARROWD 32743
- #define OBM_DNARROWD 32742
- #define OBM_RGARROWD 32741
- #define OBM_LFARROWD 32740
- #define OBM_MNARROW 32739
- #define OBM_COMBO 32738
- #define OBM_OLD_CLOSE 32767
- #define OBM_SIZE 32766
- #define OBM_OLD_UPARROW 32765
- #define OBM_OLD_DNARROW 32764
- #define OBM_OLD_RGARROW 32763
- #define OBM_OLD_LFARROW 32762
- #define OBM_BTSIZE 32761
- #define OBM_CHECK 32760
- #define OBM_CHECKBOXES 32759
- #define OBM_BTNCORNERS 32758
- #define OBM_OLD_REDUCE 32757
- #define OBM_OLD_ZOOM 32756
- #define OBM_OLD_RESTORE 32755
- #define OCR_NORMAL 32512
- #define OCR_IBEAM 32513
- #define OCR_WAIT 32514
- #define OCR_CROSS 32515
- #define OCR_UP 32516
- #define OCR_SIZE 32640
- #define OCR_ICON 32641
- #define OCR_SIZENWSE 32642
- #define OCR_SIZENESW 32643
- #define OCR_SIZEWE 32644
- #define OCR_SIZENS 32645
- #define OCR_SIZEALL 32646
- #define OCR_ICOCUR 32647
- #define OIC_SAMPLE 32512
- #define OIC_HAND 32513
- #define OIC_QUES 32514
- #define OIC_BANG 32515
- #define OIC_NOTE 32516
- #endif /* OEMRESOURCE */
- #endif /* NOKERNEL */
- /*--------------------------------------------------------------------------*/
- /* GDI Section */
- /*--------------------------------------------------------------------------*/
- #ifndef NOGDI
- #ifndef NORASTEROPS
- /* Binary raster ops */
- #define R2_BLACK 1 /* 0 */
- #define R2_NOTMERGEPEN 2 /* DPon */
- #define R2_MASKNOTPEN 3 /* DPna */
- #define R2_NOTCOPYPEN 4 /* PN */
- #define R2_MASKPENNOT 5 /* PDna */
- #define R2_NOT 6 /* Dn */
- #define R2_XORPEN 7 /* DPx */
- #define R2_NOTMASKPEN 8 /* DPan */
- #define R2_MASKPEN 9 /* DPa */
- #define R2_NOTXORPEN 10 /* DPxn */
- #define R2_NOP 11 /* D */
- #define R2_MERGENOTPEN 12 /* DPno */
- #define R2_COPYPEN 13 /* P */
- #define R2_MERGEPENNOT 14 /* PDno */
- #define R2_MERGEPEN 15 /* DPo */
- #define R2_WHITE 16 /* 1 */
- /* Ternary raster operations */
- #define SRCCOPY (DWORD)0x00CC0020UL /* dest = source */
- #define SRCPAINT (DWORD)0x00EE0086UL /* dest = source OR dest */
- #define SRCAND (DWORD)0x008800C6UL /* dest = source AND dest */
- #define SRCINVERT (DWORD)0x00660046UL /* dest = source XOR dest */
- #define SRCERASE (DWORD)0x00440328UL /* dest = source AND (NOT dest ) */
- #define NOTSRCCOPY (DWORD)0x00330008UL /* dest = (NOT source) */
- #define NOTSRCERASE (DWORD)0x001100A6UL /* dest = (NOT src) AND (NOT dest) */
- #define MERGECOPY (DWORD)0x00C000CAUL /* dest = (source AND pattern) */
- #define MERGEPAINT (DWORD)0x00BB0226UL /* dest = (NOT source) OR dest */
- #define PATCOPY (DWORD)0x00F00021UL /* dest = pattern */
- #define PATPAINT (DWORD)0x00FB0A09UL /* dest = DPSnoo */
- #define PATINVERT (DWORD)0x005A0049UL /* dest = pattern XOR dest */
- #define DSTINVERT (DWORD)0x00550009UL /* dest = (NOT dest) */
- #define BLACKNESS (DWORD)0x00000042UL /* dest = BLACK */
- #define WHITENESS (DWORD)0x00FF0062UL /* dest = WHITE */
- #endif /* NORASTEROPS */
- /* StretchBlt() Modes */
- #define BLACKONWHITE 1
- #define WHITEONBLACK 2
- #define COLORONCOLOR 3
- /* PolyFill() Modes */
- #define ALTERNATE 1
- #define WINDING 2
- /* Text Alignment Options */
- #define TA_NOUPDATECP 0
- #define TA_UPDATECP 1
- #define TA_LEFT 0
- #define TA_RIGHT 2
- #define TA_CENTER 6
- #define TA_TOP 0
- #define TA_BOTTOM 8
- #define TA_BASELINE 24
- #define ETO_GRAYED 1
- #define ETO_OPAQUE 2
- #define ETO_CLIPPED 4
- #define ASPECT_FILTERING 0x0001
- #ifndef NOMETAFILE
- /* Metafile Functions */
- #define META_SETBKCOLOR 0x0201
- #define META_SETBKMODE 0x0102
- #define META_SETMAPMODE 0x0103
- #define META_SETROP2 0x0104
- #define META_SETRELABS 0x0105
- #define META_SETPOLYFILLMODE 0x0106
- #define META_SETSTRETCHBLTMODE 0x0107
- #define META_SETTEXTCHAREXTRA 0x0108
- #define META_SETTEXTCOLOR 0x0209
- #define META_SETTEXTJUSTIFICATION 0x020A
- #define META_SETWINDOWORG 0x020B
- #define META_SETWINDOWEXT 0x020C
- #define META_SETVIEWPORTORG 0x020D
- #define META_SETVIEWPORTEXT 0x020E
- #define META_OFFSETWINDOWORG 0x020F
- #define META_SCALEWINDOWEXT 0x0400
- #define META_OFFSETVIEWPORTORG 0x0211
- #define META_SCALEVIEWPORTEXT 0x0412
- #define META_LINETO 0x0213
- #define META_MOVETO 0x0214
- #define META_EXCLUDECLIPRECT 0x0415
- #define META_INTERSECTCLIPRECT 0x0416
- #define META_ARC 0x0817
- #define META_ELLIPSE 0x0418
- #define META_FLOODFILL 0x0419
- #define META_PIE 0x081A
- #define META_RECTANGLE 0x041B
- #define META_ROUNDRECT 0x061C
- #define META_PATBLT 0x061D
- #define META_SAVEDC 0x001E
- #define META_SETPIXEL 0x041F
- #define META_OFFSETCLIPRGN 0x0220
- #define META_TEXTOUT 0x0521
- #define META_BITBLT 0x0922
- #define META_STRETCHBLT 0x0B23
- #define META_POLYGON 0x0324
- #define META_POLYLINE 0x0325
- #define META_ESCAPE 0x0626
- #define META_RESTOREDC 0x0127
- #define META_FILLREGION 0x0228
- #define META_FRAMEREGION 0x0429
- #define META_INVERTREGION 0x012A
- #define META_PAINTREGION 0x012B
- #define META_SELECTCLIPREGION 0x012C
- #define META_SELECTOBJECT 0x012D
- #define META_SETTEXTALIGN 0x012E
- #define META_DRAWTEXT 0x062F
- #define META_CHORD 0x0830
- #define META_SETMAPPERFLAGS 0x0231
- #define META_EXTTEXTOUT 0x0a32
- #define META_SETDIBTODEV 0x0d33
- #define META_SELECTPALETTE 0x0234
- #define META_REALIZEPALETTE 0x0035
- #define META_ANIMATEPALETTE 0x0436
- #define META_SETPALENTRIES 0x0037
- #define META_POLYPOLYGON 0x0538
- #define META_RESIZEPALETTE 0x0139
- #define META_DIBBITBLT 0x0940
- #define META_DIBSTRETCHBLT 0x0b41
- #define META_DIBCREATEPATTERNBRUSH 0x0142
- #define META_STRETCHDIB 0x0f43
- #define META_DELETEOBJECT 0x01f0
- #define META_CREATEPALETTE 0x00f7
- #define META_CREATEBRUSH 0x00F8
- #define META_CREATEPATTERNBRUSH 0x01F9
- #define META_CREATEPENINDIRECT 0x02FA
- #define META_CREATEFONTINDIRECT 0x02FB
- #define META_CREATEBRUSHINDIRECT 0x02FC
- #define META_CREATEBITMAPINDIRECT 0x02FD
- #define META_CREATEBITMAP 0x06FE
- #define META_CREATEREGION 0x06FF
- #endif /* NOMETAFILE */
- /* GDI Escapes */
- #define NEWFRAME 1
- #define ABORTDOC 2
- #define NEXTBAND 3
- #define SETCOLORTABLE 4
- #define GETCOLORTABLE 5
- #define FLUSHOUTPUT 6
- #define DRAFTMODE 7
- #define QUERYESCSUPPORT 8
- #define SETABORTPROC 9
- #define STARTDOC 10
- #define ENDDOC 11
- #define GETPHYSPAGESIZE 12
- #define GETPRINTINGOFFSET 13
- #define GETSCALINGFACTOR 14
- #define MFCOMMENT 15
- #define GETPENWIDTH 16
- #define SETCOPYCOUNT 17
- #define SELECTPAPERSOURCE 18
- #define DEVICEDATA 19
- #define PASSTHROUGH 19
- #define GETTECHNOLGY 20
- #define GETTECHNOLOGY 20
- #define SETENDCAP 21
- #define SETLINEJOIN 22
- #define SETMITERLIMIT 23
- #define BANDINFO 24
- #define DRAWPATTERNRECT 25
- #define GETVECTORPENSIZE 26
- #define GETVECTORBRUSHSIZE 27
- #define ENABLEDUPLEX 28
- #define GETSETPAPERBINS 29
- #define GETSETPRINTORIENT 30
- #define ENUMPAPERBINS 31
- #define SETDIBSCALING 32
- #define EPSPRINTING 33
- #define ENUMPAPERMETRICS 34
- #define GETSETPAPERMETRICS 35
- #define POSTSCRIPT_DATA 37
- #define POSTSCRIPT_IGNORE 38
- #define GETEXTENDEDTEXTMETRICS 256
- #define GETEXTENTTABLE 257
- #define GETPAIRKERNTABLE 258
- #define GETTRACKKERNTABLE 259
- #define EXTTEXTOUT 512
- #define ENABLERELATIVEWIDTHS 768
- #define ENABLEPAIRKERNING 769
- #define SETKERNTRACK 770
- #define SETALLJUSTVALUES 771
- #define SETCHARSET 772
- #define STRETCHBLT 2048
- #define BEGIN_PATH 4096
- #define CLIP_TO_PATH 4097
- #define END_PATH 4098
- #define EXT_DEVICE_CAPS 4099
- #define RESTORE_CTM 4100
- #define SAVE_CTM 4101
- #define SET_ARC_DIRECTION 4102
- #define SET_BACKGROUND_COLOR 4103
- #define SET_POLY_MODE 4104
- #define SET_SCREEN_ANGLE 4105
- #define SET_SPREAD 4106
- #define TRANSFORM_CTM 4107
- #define SET_CLIP_BOX 4108
- #define SET_BOUNDS 4109
- #define SET_MIRROR_MODE 4110
- /* Spooler Error Codes */
- #define SP_NOTREPORTED 0x4000
- #define SP_ERROR (-1)
- #define SP_APPABORT (-2)
- #define SP_USERABORT (-3)
- #define SP_OUTOFDISK (-4)
- #define SP_OUTOFMEMORY (-5)
- #define PR_JOBSTATUS 0x0000
- /* Object Definitions for EnumObjects() */
- #define OBJ_PEN 1
- #define OBJ_BRUSH 2
- /* Bitmap Header Definition */
- typedef struct tagBITMAP
- {
- int bmType;
- int bmWidth;
- int bmHeight;
- int bmWidthBytes;
- BYTE bmPlanes;
- BYTE bmBitsPixel;
- LPSTR bmBits;
- } BITMAP;
- typedef BITMAP *PBITMAP;
- typedef BITMAP NEAR *NPBITMAP;
- typedef BITMAP FAR *LPBITMAP;
- typedef struct tagRGBTRIPLE {
- BYTE rgbtBlue;
- BYTE rgbtGreen;
- BYTE rgbtRed;
- } RGBTRIPLE;
- typedef struct tagRGBQUAD {
- BYTE rgbBlue;
- BYTE rgbGreen;
- BYTE rgbRed;
- BYTE rgbReserved;
- } RGBQUAD;
- /* structures for defining DIBs */
- typedef struct tagBITMAPCOREHEADER {
- DWORD bcSize; /* used to get to color table */
- WORD bcWidth;
- WORD bcHeight;
- WORD bcPlanes;
- WORD bcBitCount;
- } BITMAPCOREHEADER;
- typedef BITMAPCOREHEADER FAR *LPBITMAPCOREHEADER;
- typedef BITMAPCOREHEADER *PBITMAPCOREHEADER;
- typedef struct tagBITMAPINFOHEADER{
- DWORD biSize;
- DWORD biWidth;
- DWORD biHeight;
- WORD biPlanes;
- WORD biBitCount;
- DWORD biCompression;
- DWORD biSizeImage;
- DWORD biXPelsPerMeter;
- DWORD biYPelsPerMeter;
- DWORD biClrUsed;
- DWORD biClrImportant;
- } BITMAPINFOHEADER;
- typedef BITMAPINFOHEADER FAR *LPBITMAPINFOHEADER;
- typedef BITMAPINFOHEADER *PBITMAPINFOHEADER;
- /* constants for the biCompression field */
- #define BI_RGB 0L
- #define BI_RLE8 1L
- #define BI_RLE4 2L
- typedef struct tagBITMAPINFO {
- BITMAPINFOHEADER bmiHeader;
- RGBQUAD bmiColors[1];
- } BITMAPINFO;
- typedef BITMAPINFO FAR *LPBITMAPINFO;
- typedef BITMAPINFO *PBITMAPINFO;
- typedef struct tagBITMAPCOREINFO {
- BITMAPCOREHEADER bmciHeader;
- RGBTRIPLE bmciColors[1];
- } BITMAPCOREINFO;
- typedef BITMAPCOREINFO FAR *LPBITMAPCOREINFO;
- typedef BITMAPCOREINFO *PBITMAPCOREINFO;
- typedef struct tagBITMAPFILEHEADER {
- WORD bfType;
- DWORD bfSize;
- WORD bfReserved1;
- WORD bfReserved2;
- DWORD bfOffBits;
- } BITMAPFILEHEADER;
- typedef BITMAPFILEHEADER FAR *LPBITMAPFILEHEADER;
- typedef BITMAPFILEHEADER *PBITMAPFILEHEADER;
- #define MAKEPOINT(l) (*((POINT FAR *)&(l)))
- #ifndef NOMETAFILE
- /* Clipboard Metafile Picture Structure */
- typedef struct tagHANDLETABLE
- {
- HANDLE objectHandle[1];
- } HANDLETABLE;
- typedef HANDLETABLE *PHANDLETABLE;
- typedef HANDLETABLE FAR *LPHANDLETABLE;
- typedef struct tagMETARECORD
- {
- DWORD rdSize;
- WORD rdFunction;
- WORD rdParm[1];
- } METARECORD;
- typedef METARECORD *PMETARECORD;
- typedef METARECORD FAR *LPMETARECORD;
- typedef struct tagMETAFILEPICT
- {
- int mm;
- int xExt;
- int yExt;
- HANDLE hMF;
- } METAFILEPICT;
- typedef METAFILEPICT FAR *LPMETAFILEPICT;
- typedef struct tagMETAHEADER
- {
- WORD mtType;
- WORD mtHeaderSize;
- WORD mtVersion;
- DWORD mtSize;
- WORD mtNoObjects;
- DWORD mtMaxRecord;
- WORD mtNoParameters;
- } METAHEADER;
- #endif /* NOMETAFILE */
- #ifndef NOTEXTMETRIC
- typedef struct tagTEXTMETRIC
- {
- int tmHeight;
- int tmAscent;
- int tmDescent;
- int tmInternalLeading;
- int tmExternalLeading;
- int tmAveCharWidth;
- int tmMaxCharWidth;
- int tmWeight;
- BYTE tmItalic;
- BYTE tmUnderlined;
- BYTE tmStruckOut;
- BYTE tmFirstChar;
- BYTE tmLastChar;
- BYTE tmDefaultChar;
- BYTE tmBreakChar;
- BYTE tmPitchAndFamily;
- BYTE tmCharSet;
- int tmOverhang;
- int tmDigitizedAspectX;
- int tmDigitizedAspectY;
- } TEXTMETRIC;
- typedef TEXTMETRIC *PTEXTMETRIC;
- typedef TEXTMETRIC NEAR *NPTEXTMETRIC;
- typedef TEXTMETRIC FAR *LPTEXTMETRIC;
- #endif /* NOTEXTMETRIC */
- /* GDI Logical Objects: */
- /* Pel Array */
- typedef struct tagPELARRAY
- {
- int paXCount;
- int paYCount;
- int paXExt;
- int paYExt;
- BYTE paRGBs;
- } PELARRAY;
- typedef PELARRAY *PPELARRAY;
- typedef PELARRAY NEAR *NPPELARRAY;
- typedef PELARRAY FAR *LPPELARRAY;
- /* Logical Brush (or Pattern) */
- typedef struct tagLOGBRUSH
- {
- WORD lbStyle;
- DWORD lbColor;
- int lbHatch;
- } LOGBRUSH;
- typedef LOGBRUSH *PLOGBRUSH;
- typedef LOGBRUSH NEAR *NPLOGBRUSH;
- typedef LOGBRUSH FAR *LPLOGBRUSH;
- typedef LOGBRUSH PATTERN;
- typedef PATTERN *PPATTERN;
- typedef PATTERN NEAR *NPPATTERN;
- typedef PATTERN FAR *LPPATTERN;
- /* Logical Pen */
- typedef struct tagLOGPEN
- {
- WORD lopnStyle;
- POINT lopnWidth;
- DWORD lopnColor;
- } LOGPEN;
- typedef LOGPEN *PLOGPEN;
- typedef LOGPEN NEAR *NPLOGPEN;
- typedef LOGPEN FAR *LPLOGPEN;
- typedef struct tagPALETTEENTRY {
- BYTE peRed;
- BYTE peGreen;
- BYTE peBlue;
- BYTE peFlags;
- } PALETTEENTRY;
- typedef PALETTEENTRY FAR *LPPALETTEENTRY;
- /* Logical Palette */
- typedef struct tagLOGPALETTE {
- WORD palVersion;
- WORD palNumEntries;
- PALETTEENTRY palPalEntry[1];
- } LOGPALETTE;
- typedef LOGPALETTE *PLOGPALETTE;
- typedef LOGPALETTE NEAR *NPLOGPALETTE;
- typedef LOGPALETTE FAR *LPLOGPALETTE;
- /* Logical Font */
- #define LF_FACESIZE 32
- typedef struct tagLOGFONT
- {
- int lfHeight;
- int lfWidth;
- int lfEscapement;
- int lfOrientation;
- int lfWeight;
- BYTE lfItalic;
- BYTE lfUnderline;
- BYTE lfStrikeOut;
- BYTE lfCharSet;
- BYTE lfOutPrecision;
- BYTE lfClipPrecision;
- BYTE lfQuality;
- BYTE lfPitchAndFamily;
- BYTE lfFaceName[LF_FACESIZE];
- } LOGFONT;
- typedef LOGFONT *PLOGFONT;
- typedef LOGFONT NEAR *NPLOGFONT;
- typedef LOGFONT FAR *LPLOGFONT;
- #define OUT_DEFAULT_PRECIS 0
- #define OUT_STRING_PRECIS 1
- #define OUT_CHARACTER_PRECIS 2
- #define OUT_STROKE_PRECIS 3
- #define CLIP_DEFAULT_PRECIS 0
- #define CLIP_CHARACTER_PRECIS 1
- #define CLIP_STROKE_PRECIS 2
- #define DEFAULT_QUALITY 0
- #define DRAFT_QUALITY 1
- #define PROOF_QUALITY 2
- #define DEFAULT_PITCH 0
- #define FIXED_PITCH 1
- #define VARIABLE_PITCH 2
- #define ANSI_CHARSET 0
- #define SYMBOL_CHARSET 2
- #define SHIFTJIS_CHARSET 128
- #define OEM_CHARSET 255
- /* Font Families */
- #define FF_DONTCARE (0<<4) /* Don't care or don't know. */
- #define FF_ROMAN (1<<4) /* Variable stroke width, serifed. */
- /* Times Roman, Century Schoolbook, etc. */
- #define FF_SWISS (2<<4) /* Variable stroke width, sans-serifed. */
- /* Helvetica, Swiss, etc. */
- #define FF_MODERN (3<<4) /* Constant stroke width, serifed or sans-serifed. */
- /* Pica, Elite, Courier, etc. */
- #define FF_SCRIPT (4<<4) /* Cursive, etc. */
- #define FF_DECORATIVE (5<<4) /* Old English, etc. */
- /* Font Weights */
- #define FW_DONTCARE 0
- #define FW_THIN 100
- #define FW_EXTRALIGHT 200
- #define FW_LIGHT 300
- #define FW_NORMAL 400
- #define FW_MEDIUM 500
- #define FW_SEMIBOLD 600
- #define FW_BOLD 700
- #define FW_EXTRABOLD 800
- #define FW_HEAVY 900
- #define FW_ULTRALIGHT FW_EXTRALIGHT
- #define FW_REGULAR FW_NORMAL
- #define FW_DEMIBOLD FW_SEMIBOLD
- #define FW_ULTRABOLD FW_EXTRABOLD
- #define FW_BLACK FW_HEAVY
- /* EnumFonts Masks */
- #define RASTER_FONTTYPE 0x0001
- #define DEVICE_FONTTYPE 0X0002
- #define RGB(r,g,b) ((DWORD)(((BYTE)(r)|((WORD)(g)<<8))|(((DWORD)(BYTE)(b))<<16)))
- #define PALETTERGB(r,g,b) (0x02000000UL | RGB(r,g,b))
- #define PALETTEINDEX(i) ((DWORD)(0x01000000UL | (WORD)(i)))
- #define GetRValue(rgb) ((BYTE)(rgb))
- #define GetGValue(rgb) ((BYTE)(((WORD)(rgb)) >> 8))
- #define GetBValue(rgb) ((BYTE)((rgb)>>16))
- /* Background Modes */
- #define TRANSPARENT 1
- #define OPAQUE 2
- /* Mapping Modes */
- #define MM_TEXT 1
- #define MM_LOMETRIC 2
- #define MM_HIMETRIC 3
- #define MM_LOENGLISH 4
- #define MM_HIENGLISH 5
- #define MM_TWIPS 6
- #define MM_ISOTROPIC 7
- #define MM_ANISOTROPIC 8
- /* Coordinate Modes */
- #define ABSOLUTE 1
- #define RELATIVE 2
- /* Stock Logical Objects */
- #define WHITE_BRUSH 0
- #define LTGRAY_BRUSH 1
- #define GRAY_BRUSH 2
- #define DKGRAY_BRUSH 3
- #define BLACK_BRUSH 4
- #define NULL_BRUSH 5
- #define HOLLOW_BRUSH NULL_BRUSH
- #define WHITE_PEN 6
- #define BLACK_PEN 7
- #define NULL_PEN 8
- #define OEM_FIXED_FONT 10
- #define ANSI_FIXED_FONT 11
- #define ANSI_VAR_FONT 12
- #define SYSTEM_FONT 13
- #define DEVICE_DEFAULT_FONT 14
- #define DEFAULT_PALETTE 15
- #define SYSTEM_FIXED_FONT 16
- /* Brush Styles */
- #define BS_SOLID 0
- #define BS_NULL 1
- #define BS_HOLLOW BS_NULL
- #define BS_HATCHED 2
- #define BS_PATTERN 3
- #define BS_INDEXED 4
- #define BS_DIBPATTERN 5
- /* Hatch Styles */
- #define HS_HORIZONTAL 0 /* ----- */
- #define HS_VERTICAL 1 /* ||||| */
- #define HS_FDIAGONAL 2 /* \\ */
- #define HS_BDIAGONAL 3 /* ///// */
- #define HS_CROSS 4 /* +++++ */
- #define HS_DIAGCROSS 5 /* xxxxx */
- /* Pen Styles */
- #define PS_SOLID 0
- #define PS_DASH 1 /* ------- */
- #define PS_DOT 2 /* ....... */
- #define PS_DASHDOT 3 /* _._._._ */
- #define PS_DASHDOTDOT 4 /* _.._.._ */
- #define PS_NULL 5
- #define PS_INSIDEFRAME 6
- /* Device Parameters for GetDeviceCaps() */
- #define DRIVERVERSION 0 /* Device driver version */
- #define TECHNOLOGY 2 /* Device classification */
- #define HORZSIZE 4 /* Horizontal size in millimeters */
- #define VERTSIZE 6 /* Vertical size in millimeters */
- #define HORZRES 8 /* Horizontal width in pixels */
- #define VERTRES 10 /* Vertical width in pixels */
- #define BITSPIXEL 12 /* Number of bits per pixel */
- #define PLANES 14 /* Number of planes */
- #define NUMBRUSHES 16 /* Number of brushes the device has */
- #define NUMPENS 18 /* Number of pens the device has */
- #define NUMMARKERS 20 /* Number of markers the device has */
- #define NUMFONTS 22 /* Number of fonts the device has */
- #define NUMCOLORS 24 /* Number of colors the device supports */
- #define PDEVICESIZE 26 /* Size required for device descriptor */
- #define CURVECAPS 28 /* Curve capabilities */
- #define LINECAPS 30 /* Line capabilities */
- #define POLYGONALCAPS 32 /* Polygonal capabilities */
- #define TEXTCAPS 34 /* Text capabilities */
- #define CLIPCAPS 36 /* Clipping capabilities */
- #define RASTERCAPS 38 /* Bitblt capabilities */
- #define ASPECTX 40 /* Length of the X leg */
- #define ASPECTY 42 /* Length of the Y leg */
- #define ASPECTXY 44 /* Length of the hypotenuse */
- #define LOGPIXELSX 88 /* Logical pixels/inch in X */
- #define LOGPIXELSY 90 /* Logical pixels/inch in Y */
- #define SIZEPALETTE 104 /* Number of entries in physical palette */
- #define NUMRESERVED 106 /* Number of reserved entries in palette */
- #define COLORRES 108 /* Actual color resolution */
- #ifndef NOGDICAPMASKS
- /* Device Capability Masks: */
- /* Device Technologies */
- #define DT_PLOTTER 0 /* Vector plotter */
- #define DT_RASDISPLAY 1 /* Raster display */
- #define DT_RASPRINTER 2 /* Raster printer */
- #define DT_RASCAMERA 3 /* Raster camera */
- #define DT_CHARSTREAM 4 /* Character-stream, PLP */
- #define DT_METAFILE 5 /* Metafile, VDM */
- #define DT_DISPFILE 6 /* Display-file */
- /* Curve Capabilities */
- #define CC_NONE 0 /* Curves not supported */
- #define CC_CIRCLES 1 /* Can do circles */
- #define CC_PIE 2 /* Can do pie wedges */
- #define CC_CHORD 4 /* Can do chord arcs */
- #define CC_ELLIPSES 8 /* Can do ellipese */
- #define CC_WIDE 16 /* Can do wide lines */
- #define CC_STYLED 32 /* Can do styled lines */
- #define CC_WIDESTYLED 64 /* Can do wide styled lines */
- #define CC_INTERIORS 128 /* Can do interiors */
- /* Line Capabilities */
- #define LC_NONE 0 /* Lines not supported */
- #define LC_POLYLINE 2 /* Can do polylines */
- #define LC_MARKER 4 /* Can do markers */
- #define LC_POLYMARKER 8 /* Can do polymarkers */
- #define LC_WIDE 16 /* Can do wide lines */
- #define LC_STYLED 32 /* Can do styled lines */
- #define LC_WIDESTYLED 64 /* Can do wide styled lines */
- #define LC_INTERIORS 128 /* Can do interiors */
- /* Polygonal Capabilities */
- #define PC_NONE 0 /* Polygonals not supported */
- #define PC_POLYGON 1 /* Can do polygons */
- #define PC_RECTANGLE 2 /* Can do rectangles */
- #define PC_WINDPOLYGON 4 /* Can do winding polygons */
- #define PC_TRAPEZOID 4 /* Can do trapezoids */
- #define PC_SCANLINE 8 /* Can do scanlines */
- #define PC_WIDE 16 /* Can do wide borders */
- #define PC_STYLED 32 /* Can do styled borders */
- #define PC_WIDESTYLED 64 /* Can do wide styled borders */
- #define PC_INTERIORS 128 /* Can do interiors */
- /* Polygonal Capabilities */
- #define CP_NONE 0 /* No clipping of output */
- #define CP_RECTANGLE 1 /* Output clipped to rects */
- /* Text Capabilities */
- #define TC_OP_CHARACTER 0x0001 /* Can do OutputPrecision CHARACTER */
- #define TC_OP_STROKE 0x0002 /* Can do OutputPrecision STROKE */
- #define TC_CP_STROKE 0x0004 /* Can do ClipPrecision STROKE */
- #define TC_CR_90 0x0008 /* Can do CharRotAbility 90 */
- #define TC_CR_ANY 0x0010 /* Can do CharRotAbility ANY */
- #define TC_SF_X_YINDEP 0x0020 /* Can do ScaleFreedom X_YINDEPENDENT */
- #define TC_SA_DOUBLE 0x0040 /* Can do ScaleAbility DOUBLE */
- #define TC_SA_INTEGER 0x0080 /* Can do ScaleAbility INTEGER */
- #define TC_SA_CONTIN 0x0100 /* Can do ScaleAbility CONTINUOUS */
- #define TC_EA_DOUBLE 0x0200 /* Can do EmboldenAbility DOUBLE */
- #define TC_IA_ABLE 0x0400 /* Can do ItalisizeAbility ABLE */
- #define TC_UA_ABLE 0x0800 /* Can do UnderlineAbility ABLE */
- #define TC_SO_ABLE 0x1000 /* Can do StrikeOutAbility ABLE */
- #define TC_RA_ABLE 0x2000 /* Can do RasterFontAble ABLE */
- #define TC_VA_ABLE 0x4000 /* Can do VectorFontAble ABLE */
- #define TC_RESERVED 0x8000
- #endif /* NOGDICAPMASKS */
- /* Raster Capabilities */
- #define RC_BITBLT 1 /* Can do standard BLT. */
- #define RC_BANDING 2 /* Device requires banding support */
- #define RC_SCALING 4 /* Device requires scaling support */
- #define RC_BITMAP64 8 /* Device can support >64K bitmap */
- #define RC_GDI20_OUTPUT 0x0010 /* has 2.0 output calls */
- #define RC_DI_BITMAP 0x0080 /* supports DIB to memory */
- #define RC_PALETTE 0x0100 /* supports a palette */
- #define RC_DIBTODEV 0x0200 /* supports DIBitsToDevice */
- #define RC_BIGFONT 0x0400 /* supports >64K fonts */
- #define RC_STRETCHBLT 0x0800 /* supports StretchBlt */
- #define RC_FLOODFILL 0x1000 /* supports FloodFill */
- #define RC_STRETCHDIB 0x2000 /* supports StretchDIBits */
- /* palette entry flags */
- #define PC_RESERVED 0x01 /* palette index used for animation */
- #define PC_EXPLICIT 0x02 /* palette index is explicit to device */
- #define PC_NOCOLLAPSE 0x04 /* do not match color to system palette */
- /* DIB color table identifiers */
- #define DIB_RGB_COLORS 0 /* color table in RGBTriples */
- #define DIB_PAL_COLORS 1 /* color table in palette indices */
- /* constants for Get/SetSystemPaletteUse() */
- #define SYSPAL_STATIC 1
- #define SYSPAL_NOSTATIC 2
- /* constants for CreateDIBitmap */
- #define CBM_INIT 0x04L /* initialize bitmap */
- #ifndef NODRAWTEXT
- /* DrawText() Format Flags */
- #define DT_TOP 0x0000
- #define DT_LEFT 0x0000
- #define DT_CENTER 0x0001
- #define DT_RIGHT 0x0002
- #define DT_VCENTER 0x0004
- #define DT_BOTTOM 0x0008
- #define DT_WORDBREAK 0x0010
- #define DT_SINGLELINE 0x0020
- #define DT_EXPANDTABS 0x0040
- #define DT_TABSTOP 0x0080
- #define DT_NOCLIP 0x0100
- #define DT_EXTERNALLEADING 0x0200
- #define DT_CALCRECT 0x0400
- #define DT_NOPREFIX 0x0800
- #define DT_INTERNAL 0x1000
- int FAR PASCAL DrawText(HDC, LPSTR, int, LPRECT, WORD);
- BOOL FAR PASCAL DrawIcon(HDC, int, int, HICON);
- #endif /* NODRAWTEXT */
- /* ExtFloodFill style flags */
- #define FLOODFILLBORDER 0
- #define FLOODFILLSURFACE 1
- HDC FAR PASCAL GetWindowDC(HWND);
- HDC FAR PASCAL GetDC(HWND);
- int FAR PASCAL ReleaseDC(HWND, HDC);
- HDC FAR PASCAL CreateDC(LPSTR, LPSTR, LPSTR, LPSTR);
- HDC FAR PASCAL CreateIC(LPSTR, LPSTR, LPSTR, LPSTR);
- HDC FAR PASCAL CreateCompatibleDC(HDC);
- BOOL FAR PASCAL DeleteDC(HDC);
- int FAR PASCAL SaveDC(HDC);
- BOOL FAR PASCAL RestoreDC(HDC, int);
- DWORD FAR PASCAL MoveTo(HDC, int, int);
- DWORD FAR PASCAL GetCurrentPosition(HDC);
- BOOL FAR PASCAL LineTo(HDC, int, int);
- DWORD FAR PASCAL GetDCOrg(HDC);
- int FAR PASCAL MulDiv(int, int, int);
- BOOL FAR PASCAL ExtTextOut(HDC, int, int, WORD, LPRECT, LPSTR, WORD, LPINT);
- BOOL FAR PASCAL Polyline(HDC, LPPOINT, int);
- BOOL FAR PASCAL Polygon(HDC, LPPOINT, int);
- BOOL FAR PASCAL PolyPolygon(HDC, LPPOINT, LPINT, int);
- BOOL FAR PASCAL Rectangle(HDC, int, int, int, int);
- BOOL FAR PASCAL RoundRect(HDC, int, int, int, int, int, int);
- BOOL FAR PASCAL Ellipse(HDC, int, int, int, int);
- BOOL FAR PASCAL Arc(HDC, int, int, int, int, int, int, int, int);
- BOOL FAR PASCAL Chord(HDC, int, int, int, int, int, int, int, int);
- BOOL FAR PASCAL Pie(HDC, int, int, int, int, int, int, int, int);
- BOOL FAR PASCAL PatBlt(HDC, int, int, int, int, DWORD);
- BOOL FAR PASCAL BitBlt(HDC, int, int, int, int, HDC, int, int, DWORD);
- BOOL FAR PASCAL StretchBlt(HDC, int, int, int, int, HDC, int, int, int, int, DWORD);
- BOOL FAR PASCAL TextOut(HDC, int, int, LPSTR, int);
- LONG FAR PASCAL TabbedTextOut(HDC, int, int, LPSTR, int, int, LPINT, int);
- BOOL FAR PASCAL GetCharWidth(HDC, WORD, WORD, LPINT);
- DWORD FAR PASCAL SetPixel( HDC, int, int, DWORD);
- DWORD FAR PASCAL GetPixel( HDC, int, int);
- BOOL FAR PASCAL FloodFill( HDC, int, int, DWORD);
- BOOL FAR PASCAL ExtFloodFill(HDC, int, int, DWORD, WORD);
- void FAR PASCAL LineDDA(int, int, int, int, FARPROC, LPSTR);
- HANDLE FAR PASCAL GetStockObject(int);
- HPEN FAR PASCAL CreatePen(int, int, DWORD);
- HPEN FAR PASCAL CreatePenIndirect(LOGPEN FAR *);
- HBRUSH FAR PASCAL CreateSolidBrush(DWORD);
- HBRUSH FAR PASCAL CreateHatchBrush(int,DWORD);
- DWORD FAR PASCAL SetBrushOrg(HDC, int, int);
- DWORD FAR PASCAL GetBrushOrg(HDC);
- HBRUSH FAR PASCAL CreatePatternBrush(HBITMAP);
- HBRUSH FAR PASCAL CreateBrushIndirect(LOGBRUSH FAR *);
- HBITMAP FAR PASCAL CreateBitmap(int, int, BYTE, BYTE, LPSTR);
- HBITMAP FAR PASCAL CreateBitmapIndirect(BITMAP FAR *);
- HBITMAP FAR PASCAL CreateCompatibleBitmap(HDC, int, int);
- HBITMAP FAR PASCAL CreateDiscardableBitmap(HDC, int, int);
- LONG FAR PASCAL SetBitmapBits(HBITMAP, DWORD, LPSTR);
- LONG FAR PASCAL GetBitmapBits(HBITMAP, LONG, LPSTR);
- DWORD FAR PASCAL SetBitmapDimension(HBITMAP, int, int);
- DWORD FAR PASCAL GetBitmapDimension(HBITMAP);
- HFONT FAR PASCAL CreateFont(int, int, int, int, int, BYTE, BYTE, BYTE, BYTE, BYTE, BYTE, BYTE, BYTE, LPSTR);
- HFONT FAR PASCAL CreateFontIndirect(LOGFONT FAR *);
- int FAR PASCAL SelectClipRgn(HDC, HRGN);
- HRGN FAR PASCAL CreateRectRgn(int, int, int, int);
- void FAR PASCAL SetRectRgn(HRGN, int, int, int, int);
- HRGN FAR PASCAL CreateRectRgnIndirect(LPRECT);
- HRGN FAR PASCAL CreateEllipticRgnIndirect(LPRECT);
- HRGN FAR PASCAL CreateEllipticRgn(int, int, int, int);
- HRGN FAR PASCAL CreatePolygonRgn(LPPOINT, int, int);
- HRGN FAR PASCAL CreatePolyPolygonRgn(LPPOINT, LPINT, int, int);
- HRGN FAR PASCAL CreateRoundRectRgn(int, int, int, int, int, int);
- int FAR PASCAL GetObject(HANDLE, int, LPSTR);
- BOOL FAR PASCAL DeleteObject(HANDLE);
- HANDLE FAR PASCAL SelectObject(HDC, HANDLE);
- BOOL FAR PASCAL UnrealizeObject(HBRUSH);
- DWORD FAR PASCAL SetBkColor(HDC, DWORD);
- DWORD FAR PASCAL GetBkColor(HDC);
- int FAR PASCAL SetBkMode(HDC, int);
- int FAR PASCAL GetBkMode(HDC);
- DWORD FAR PASCAL SetTextColor(HDC, DWORD);
- DWORD FAR PASCAL GetTextColor(HDC);
- WORD FAR PASCAL SetTextAlign(HDC, WORD);
- WORD FAR PASCAL GetTextAlign(HDC);
- DWORD FAR PASCAL SetMapperFlags(HDC, DWORD);
- DWORD FAR PASCAL GetAspectRatioFilter(HDC);
- DWORD FAR PASCAL GetNearestColor(HDC, DWORD);
- int FAR PASCAL SetROP2(HDC, int);
- int FAR PASCAL GetROP2(HDC);
- int FAR PASCAL SetStretchBltMode(HDC, int);
- int FAR PASCAL GetStretchBltMode(HDC);
- int FAR PASCAL SetPolyFillMode(HDC, int);
- int FAR PASCAL GetPolyFillMode(HDC);
- int FAR PASCAL SetMapMode(HDC, int);
- int FAR PASCAL GetMapMode(HDC);
- DWORD FAR PASCAL SetWindowOrg(HDC, int, int);
- DWORD FAR PASCAL GetWindowOrg(HDC);
- DWORD FAR PASCAL SetWindowExt(HDC, int, int);
- DWORD FAR PASCAL GetWindowExt(HDC);
- DWORD FAR PASCAL SetViewportOrg(HDC, int, int);
- DWORD FAR PASCAL GetViewportOrg(HDC);
- DWORD FAR PASCAL SetViewportExt(HDC, int, int);
- DWORD FAR PASCAL GetViewportExt(HDC);
- DWORD FAR PASCAL OffsetViewportOrg(HDC, int, int);
- DWORD FAR PASCAL ScaleViewportExt(HDC, int, int, int, int);
- DWORD FAR PASCAL OffsetWindowOrg(HDC, int, int);
- DWORD FAR PASCAL ScaleWindowExt(HDC, int, int, int, int);
- int FAR PASCAL GetClipBox(HDC, LPRECT);
- int FAR PASCAL IntersectClipRect(HDC, int, int, int, int);
- int FAR PASCAL OffsetClipRgn(HDC, int, int);
- int FAR PASCAL ExcludeClipRect(HDC, int, int, int, int);
- BOOL FAR PASCAL PtVisible(HDC, int, int);
- int FAR PASCAL CombineRgn(HRGN, HRGN, HRGN, int);
- BOOL FAR PASCAL EqualRgn(HRGN, HRGN);
- int FAR PASCAL OffsetRgn(HRGN, int, int);
- int FAR PASCAL GetRgnBox(HRGN, LPRECT);
- int FAR PASCAL SetTextJustification(HDC, int, int);
- DWORD FAR PASCAL GetTextExtent(HDC, LPSTR, int);
- DWORD FAR PASCAL GetTabbedTextExtent(HDC, LPSTR, int, int, LPINT);
- int FAR PASCAL SetTextCharacterExtra(HDC, int);
- int FAR PASCAL GetTextCharacterExtra(HDC);
- HANDLE FAR PASCAL GetMetaFile(LPSTR);
- BOOL FAR PASCAL DeleteMetaFile(HANDLE);
- HANDLE FAR PASCAL CopyMetaFile(HANDLE, LPSTR);
- #ifndef NOMETAFILE
- void FAR PASCAL PlayMetaFileRecord(HDC, LPHANDLETABLE, LPMETARECORD, WORD);
- BOOL FAR PASCAL EnumMetaFile(HDC, LOCALHANDLE, FARPROC, BYTE FAR *);
- #endif
- BOOL FAR PASCAL PlayMetaFile(HDC, HANDLE);
- int FAR PASCAL Escape(HDC, int, int, LPSTR, LPSTR);
- int FAR PASCAL EnumFonts(HDC, LPSTR, FARPROC, LPSTR);
- int FAR PASCAL EnumObjects(HDC, int, FARPROC, LPSTR);
- int FAR PASCAL GetTextFace(HDC, int, LPSTR);
- #ifndef NOTEXTMETRIC
- BOOL FAR PASCAL GetTextMetrics(HDC, LPTEXTMETRIC );
- #endif
- int FAR PASCAL GetDeviceCaps(HDC, int);
- int FAR PASCAL SetEnvironment(LPSTR, LPSTR, WORD);
- int FAR PASCAL GetEnvironment(LPSTR, LPSTR, WORD);
- BOOL FAR PASCAL DPtoLP(HDC, LPPOINT, int);
- BOOL FAR PASCAL LPtoDP(HDC, LPPOINT, int);
- HANDLE FAR PASCAL CreateMetaFile(LPSTR);
- HANDLE FAR PASCAL CloseMetaFile(HANDLE);
- HANDLE FAR PASCAL GetMetaFileBits(HANDLE);
- HANDLE FAR PASCAL SetMetaFileBits(HANDLE);
- int FAR PASCAL SetDIBits(HDC,HANDLE,WORD,WORD,LPSTR,LPBITMAPINFO,WORD);
- int FAR PASCAL GetDIBits(HDC,HANDLE,WORD,WORD,LPSTR,LPBITMAPINFO,WORD);
- int FAR PASCAL SetDIBitsToDevice(HDC,WORD,WORD,WORD,WORD,
- WORD,WORD,WORD,WORD,
- LPSTR,LPBITMAPINFO,WORD);
- HBITMAP FAR PASCAL CreateDIBitmap(HDC,LPBITMAPINFOHEADER,DWORD,LPSTR,
- LPBITMAPINFO,WORD);
- HBRUSH FAR PASCAL CreateDIBPatternBrush(HANDLE,WORD);
- int FAR PASCAL StretchDIBits(HDC, WORD, WORD, WORD, WORD, WORD,
- WORD, WORD, WORD, LPSTR, LPBITMAPINFO, WORD, DWORD);
- HPALETTE FAR PASCAL CreatePalette (LPLOGPALETTE);
- HPALETTE FAR PASCAL SelectPalette (HDC,HPALETTE, BOOL) ;
- WORD FAR PASCAL RealizePalette (HDC) ;
- int FAR PASCAL UpdateColors (HDC) ;
- void FAR PASCAL AnimatePalette(HPALETTE, WORD, WORD, LPPALETTEENTRY);
- WORD FAR PASCAL SetPaletteEntries(HPALETTE,WORD,WORD,LPPALETTEENTRY);
- WORD FAR PASCAL GetPaletteEntries(HPALETTE,WORD,WORD,LPPALETTEENTRY);
- WORD FAR PASCAL GetNearestPaletteIndex(HPALETTE, DWORD);
- BOOL FAR PASCAL ResizePalette(HPALETTE, WORD);
- WORD FAR PASCAL GetSystemPaletteEntries(HDC,WORD,WORD,LPPALETTEENTRY);
- WORD FAR PASCAL GetSystemPaletteUse(HDC, WORD);
- WORD FAR PASCAL SetSystemPaletteUse(HDC, WORD);
- #endif /* NOGDI */
- /*--------------------------------------------------------------------------*/
- /* USER Section */
- /*--------------------------------------------------------------------------*/
- #ifndef NOUSER
- int FAR PASCAL wvsprintf(LPSTR,LPSTR,LPSTR);
- #define wsprintf WSPRINTF
- int FAR cdecl wsprintf(LPSTR,LPSTR,...);
- #ifndef NOSCROLL
- /* Scroll Bar Constants */
- #define SB_HORZ 0
- #define SB_VERT 1
- #define SB_CTL 2
- #define SB_BOTH 3
- /* Scroll Bar Commands */
- #define SB_LINEUP 0
- #define SB_LINEDOWN 1
- #define SB_PAGEUP 2
- #define SB_PAGEDOWN 3
- #define SB_THUMBPOSITION 4
- #define SB_THUMBTRACK 5
- #define SB_TOP 6
- #define SB_BOTTOM 7
- #define SB_ENDSCROLL 8
- #endif /* NOSCROLL */
- #ifndef NOSHOWWINDOW
- /* ShowWindow() Commands */
- #define SW_HIDE 0
- #define SW_SHOWNORMAL 1
- #define SW_NORMAL 1
- #define SW_SHOWMINIMIZED 2
- #define SW_SHOWMAXIMIZED 3
- #define SW_MAXIMIZE 3
- #define SW_SHOWNOACTIVATE 4
- #define SW_SHOW 5
- #define SW_MINIMIZE 6
- #define SW_SHOWMINNOACTIVE 7
- #define SW_SHOWNA 8
- #define SW_RESTORE 9
- /* Old ShowWindow() Commands */
- #define HIDE_WINDOW 0
- #define SHOW_OPENWINDOW 1
- #define SHOW_ICONWINDOW 2
- #define SHOW_FULLSCREEN 3
- #define SHOW_OPENNOACTIVATE 4
- /* Identifiers for the WM_SHOWWINDOW message */
- #define SW_PARENTCLOSING 1
- #define SW_OTHERZOOM 2
- #define SW_PARENTOPENING 3
- #define SW_OTHERUNZOOM 4
- #endif /* NOSHOWWINDOW */
- /* Region Flags */
- #define ERROR 0
- #define NULLREGION 1
- #define SIMPLEREGION 2
- #define COMPLEXREGION 3
- /* CombineRgn() Styles */
- #define RGN_AND 1
- #define RGN_OR 2
- #define RGN_XOR 3
- #define RGN_DIFF 4
- #define RGN_COPY 5
- #ifndef NOVIRTUALKEYCODES
- /* Virtual Keys, Standard Set */
- #define VK_LBUTTON 0x01
- #define VK_RBUTTON 0x02
- #define VK_CANCEL 0x03
- #define VK_MBUTTON 0x04 /* NOT contiguous with L & RBUTTON */
- #define VK_BACK 0x08
- #define VK_TAB 0x09
- #define VK_CLEAR 0x0C
- #define VK_RETURN 0x0D
- #define VK_SHIFT 0x10
- #define VK_CONTROL 0x11
- #define VK_MENU 0x12
- #define VK_PAUSE 0x13
- #define VK_CAPITAL 0x14
- #define VK_ESCAPE 0x1B
- #define VK_SPACE 0x20
- #define VK_PRIOR 0x21
- #define VK_NEXT 0x22
- #define VK_END 0x23
- #define VK_HOME 0x24
- #define VK_LEFT 0x25
- #define VK_UP 0x26
- #define VK_RIGHT 0x27
- #define VK_DOWN 0x28
- #define VK_SELECT 0x29
- #define VK_PRINT 0x2A
- #define VK_EXECUTE 0x2B
- #define VK_SNAPSHOT 0x2C
- /* #define VK_COPY 0x2C not used by keyboards. */
- #define VK_INSERT 0x2D
- #define VK_DELETE 0x2E
- #define VK_HELP 0x2F
- /* VK_A thru VK_Z are the same as their ASCII equivalents: 'A' thru 'Z' */
- /* VK_0 thru VK_9 are the same as their ASCII equivalents: '0' thru '9' */
- #define VK_NUMPAD0 0x60
- #define VK_NUMPAD1 0x61
- #define VK_NUMPAD2 0x62
- #define VK_NUMPAD3 0x63
- #define VK_NUMPAD4 0x64
- #define VK_NUMPAD5 0x65
- #define VK_NUMPAD6 0x66
- #define VK_NUMPAD7 0x67
- #define VK_NUMPAD8 0x68
- #define VK_NUMPAD9 0x69
- #define VK_MULTIPLY 0x6A
- #define VK_ADD 0x6B
- #define VK_SEPARATOR 0x6C
- #define VK_SUBTRACT 0x6D
- #define VK_DECIMAL 0x6E
- #define VK_DIVIDE 0x6F
- #define VK_F1 0x70
- #define VK_F2 0x71
- #define VK_F3 0x72
- #define VK_F4 0x73
- #define VK_F5 0x74
- #define VK_F6 0x75
- #define VK_F7 0x76
- #define VK_F8 0x77
- #define VK_F9 0x78
- #define VK_F10 0x79
- #define VK_F11 0x7A
- #define VK_F12 0x7B
- #define VK_F13 0x7C
- #define VK_F14 0x7D
- #define VK_F15 0x7E
- #define VK_F16 0x7F
- #define VK_NUMLOCK 0x90
- #endif /* NOVIRTUALKEYCODES */
- #ifndef NOWH
- /* SetWindowsHook() codes */
- #define WH_MSGFILTER (-1)
- #define WH_JOURNALRECORD 0
- #define WH_JOURNALPLAYBACK 1
- #define WH_KEYBOARD 2
- #define WH_GETMESSAGE 3
- #define WH_CALLWNDPROC 4
- #define WH_CBT 5
- #define WH_SYSMSGFILTER 6
- #define WH_WINDOWMGR 7
- /* Hook Codes */
- #define HC_LPLPFNNEXT (-2)
- #define HC_LPFNNEXT (-1)
- #define HC_ACTION 0
- #define HC_GETNEXT 1
- #define HC_SKIP 2
- #define HC_NOREM 3
- #define HC_NOREMOVE 3
- #define HC_SYSMODALON 4
- #define HC_SYSMODALOFF 5
- /* CBT Hook Codes */
- #define HCBT_MOVESIZE 0
- #define HCBT_MINMAX 1
- #define HCBT_QS 2
- /* WH_MSGFILTER Filter Proc Codes */
- #define MSGF_DIALOGBOX 0
- #define MSGF_MESSAGEBOX 1
- #define MSGF_MENU 2
- #define MSGF_MOVE 3
- #define MSGF_SIZE 4
- #define MSGF_SCROLLBAR 5
- #define MSGF_NEXTWINDOW 6
- /* Window Manager Hook Codes */
- #define WC_INIT 1
- #define WC_SWP 2
- #define WC_DEFWINDOWPROC 3
- #define WC_MINMAX 4
- #define WC_MOVE 5
- #define WC_SIZE 6
- #define WC_DRAWCAPTION 7
- /* Message Structure used in Journaling */
- typedef struct tagEVENTMSG
- {
- WORD message;
- WORD paramL;
- WORD paramH;
- DWORD time;
- } EVENTMSG;
- typedef EVENTMSG *PEVENTMSGMSG;
- typedef EVENTMSG NEAR *NPEVENTMSGMSG;
- typedef EVENTMSG FAR *LPEVENTMSGMSG;
- #endif /* NOWH */
- typedef struct tagWNDCLASS
- {
- WORD style;
- LONG (FAR PASCAL *lpfnWndProc)( HWND, WORD, WORD, LONG );
- int cbClsExtra;
- int cbWndExtra;
- HANDLE hInstance;
- HICON hIcon;
- HCURSOR hCursor;
- HBRUSH hbrBackground;
- LPSTR lpszMenuName;
- LPSTR lpszClassName;
- } WNDCLASS;
- typedef WNDCLASS *PWNDCLASS;
- typedef WNDCLASS NEAR *NPWNDCLASS;
- typedef WNDCLASS FAR *LPWNDCLASS;
- #ifndef NOMSG
- /* Message structure */
- typedef struct tagMSG
- {
- HWND hwnd;
- WORD message;
- WORD wParam;
- LONG lParam;
- DWORD time;
- POINT pt;
- } MSG;
- typedef MSG *PMSG;
- typedef MSG NEAR *NPMSG;
- typedef MSG FAR *LPMSG;
- #endif /* NOMSG */
- #ifndef NOWINOFFSETS
- /* Window field offsets for GetWindowLong() and GetWindowWord() */
- #define GWL_WNDPROC (-4)
- #define GWW_HINSTANCE (-6)
- #define GWW_HWNDPARENT (-8)
- #define GWW_ID (-12)
- #define GWL_STYLE (-16)
- #define GWL_EXSTYLE (-20)
- /* Class field offsets for GetClassLong() and GetClassWord() */
- #define GCL_MENUNAME (-8)
- #define GCW_HBRBACKGROUND (-10)
- #define GCW_HCURSOR (-12)
- #define GCW_HICON (-14)
- #define GCW_HMODULE (-16)
- #define GCW_CBWNDEXTRA (-18)
- #define GCW_CBCLSEXTRA (-20)
- #define GCL_WNDPROC (-24)
- #define GCW_STYLE (-26)
- #endif /* NOWINOFFSETS */
- #ifndef NOWINMESSAGES
- /* Window Messages */
- #define WM_NULL 0x0000
- #define WM_CREATE 0x0001
- #define WM_DESTROY 0x0002
- #define WM_MOVE 0x0003
- #define WM_SIZE 0x0005
- #define WM_ACTIVATE 0x0006
- #define WM_SETFOCUS 0x0007
- #define WM_KILLFOCUS 0x0008
- #define WM_ENABLE 0x000A
- #define WM_SETREDRAW 0x000B
- #define WM_SETTEXT 0x000C
- #define WM_GETTEXT 0x000D
- #define WM_GETTEXTLENGTH 0x000E
- #define WM_PAINT 0x000F
- #define WM_CLOSE 0x0010
- #define WM_QUERYENDSESSION 0x0011
- #define WM_QUIT 0x0012
- #define WM_QUERYOPEN 0x0013
- #define WM_ERASEBKGND 0x0014
- #define WM_SYSCOLORCHANGE 0x0015
- #define WM_ENDSESSION 0x0016
- #define WM_SHOWWINDOW 0x0018
- #define WM_CTLCOLOR 0x0019
- #define WM_WININICHANGE 0x001A
- #define WM_DEVMODECHANGE 0x001B
- #define WM_ACTIVATEAPP 0x001C
- #define WM_FONTCHANGE 0x001D
- #define WM_TIMECHANGE 0x001E
- #define WM_CANCELMODE 0x001F
- #define WM_SETCURSOR 0x0020
- #define WM_MOUSEACTIVATE 0x0021
- #define WM_CHILDACTIVATE 0x0022
- #define WM_QUEUESYNC 0x0023
- #define WM_GETMINMAXINFO 0x0024
- #define WM_PAINTICON 0x0026
- #define WM_ICONERASEBKGND 0x0027
- #define WM_NEXTDLGCTL 0x0028
- #define WM_SPOOLERSTATUS 0x002A
- #define WM_DRAWITEM 0x002B
- #define WM_MEASUREITEM 0x002C
- #define WM_DELETEITEM 0x002D
- #define WM_VKEYTOITEM 0x002E
- #define WM_CHARTOITEM 0x002F
- #define WM_SETFONT 0x0030
- #define WM_GETFONT 0x0031
- #define WM_QUERYDRAGICON 0x0037
- #define WM_COMPAREITEM 0x0039
- #define WM_COMPACTING 0x0041
- #define WM_NCCREATE 0x0081
- #define WM_NCDESTROY 0x0082
- #define WM_NCCALCSIZE 0x0083
- #define WM_NCHITTEST 0x0084
- #define WM_NCPAINT 0x0085
- #define WM_NCACTIVATE 0x0086
- #define WM_GETDLGCODE 0x0087
- #define WM_NCMOUSEMOVE 0x00A0
- #define WM_NCLBUTTONDOWN 0x00A1
- #define WM_NCLBUTTONUP 0x00A2
- #define WM_NCLBUTTONDBLCLK 0x00A3
- #define WM_NCRBUTTONDOWN 0x00A4
- #define WM_NCRBUTTONUP 0x00A5
- #define WM_NCRBUTTONDBLCLK 0x00A6
- #define WM_NCMBUTTONDOWN 0x00A7
- #define WM_NCMBUTTONUP 0x00A8
- #define WM_NCMBUTTONDBLCLK 0x00A9
- #define WM_KEYFIRST 0x0100
- #define WM_KEYDOWN 0x0100
- #define WM_KEYUP 0x0101
- #define WM_CHAR 0x0102
- #define WM_DEADCHAR 0x0103
- #define WM_SYSKEYDOWN 0x0104
- #define WM_SYSKEYUP 0x0105
- #define WM_SYSCHAR 0x0106
- #define WM_SYSDEADCHAR 0x0107
- #define WM_KEYLAST 0x0108
- #define WM_INITDIALOG 0x0110
- #define WM_COMMAND 0x0111
- #define WM_SYSCOMMAND 0x0112
- #define WM_TIMER 0x0113
- #define WM_HSCROLL 0x0114
- #define WM_VSCROLL 0x0115
- #define WM_INITMENU 0x0116
- #define WM_INITMENUPOPUP 0x0117
- #define WM_MENUSELECT 0x011F
- #define WM_MENUCHAR 0x0120
- #define WM_ENTERIDLE 0x0121
- #define WM_MOUSEFIRST 0x0200
- #define WM_MOUSEMOVE 0x0200
- #define WM_LBUTTONDOWN 0x0201
- #define WM_LBUTTONUP 0x0202
- #define WM_LBUTTONDBLCLK 0x0203
- #define WM_RBUTTONDOWN 0x0204
- #define WM_RBUTTONUP 0x0205
- #define WM_RBUTTONDBLCLK 0x0206
- #define WM_MBUTTONDOWN 0x0207
- #define WM_MBUTTONUP 0x0208
- #define WM_MBUTTONDBLCLK 0x0209
- #define WM_MOUSELAST 0x0209
- #define WM_PARENTNOTIFY 0x0210
- #define WM_MDICREATE 0x0220
- #define WM_MDIDESTROY 0x0221
- #define WM_MDIACTIVATE 0x0222
- #define WM_MDIRESTORE 0x0223
- #define WM_MDINEXT 0x0224
- #define WM_MDIMAXIMIZE 0x0225
- #define WM_MDITILE 0x0226
- #define WM_MDICASCADE 0x0227
- #define WM_MDIICONARRANGE 0x0228
- #define WM_MDIGETACTIVE 0x0229
- #define WM_MDISETMENU 0x0230
- #define WM_CUT 0x0300
- #define WM_COPY 0x0301
- #define WM_PASTE 0x0302
- #define WM_CLEAR 0x0303
- #define WM_UNDO 0x0304
- #define WM_RENDERFORMAT 0x0305
- #define WM_RENDERALLFORMATS 0x0306
- #define WM_DESTROYCLIPBOARD 0x0307
- #define WM_DRAWCLIPBOARD 0x0308
- #define WM_PAINTCLIPBOARD 0x0309
- #define WM_VSCROLLCLIPBOARD 0x030A
- #define WM_SIZECLIPBOARD 0x030B
- #define WM_ASKCBFORMATNAME 0x030C
- #define WM_CHANGECBCHAIN 0x030D
- #define WM_HSCROLLCLIPBOARD 0x030E
- #define WM_QUERYNEWPALETTE 0x030F
- #define WM_PALETTEISCHANGING 0x0310
- #define WM_PALETTECHANGED 0x0311
- /* NOTE: All Message Numbers below 0x0400 are RESERVED. */
- /* Private Window Messages Start Here: */
- #define WM_USER 0x0400
- #ifndef NONCMESSAGES
- /* WM_SYNCTASK Commands */
- #define ST_BEGINSWP 0
- #define ST_ENDSWP 1
- /* WinWhere() Area Codes */
- #define HTERROR (-2)
- #define HTTRANSPARENT (-1)
- #define HTNOWHERE 0
- #define HTCLIENT 1
- #define HTCAPTION 2
- #define HTSYSMENU 3
- #define HTGROWBOX 4
- #define HTSIZE HTGROWBOX
- #define HTMENU 5
- #define HTHSCROLL 6
- #define HTVSCROLL 7
- #define HTREDUCE 8
- #define HTZOOM 9
- #define HTLEFT 10
- #define HTRIGHT 11
- #define HTTOP 12
- #define HTTOPLEFT 13
- #define HTTOPRIGHT 14
- #define HTBOTTOM 15
- #define HTBOTTOMLEFT 16
- #define HTBOTTOMRIGHT 17
- #define HTSIZEFIRST HTLEFT
- #define HTSIZELAST HTBOTTOMRIGHT
- #endif /* NONCMESSAGES */
- /* WM_MOUSEACTIVATE Return Codes */
- #define MA_ACTIVATE 1
- #define MA_ACTIVATEANDEAT 2
- #define MA_NOACTIVATE 3
- WORD FAR PASCAL RegisterWindowMessage(LPSTR);
- /* Size Message Commands */
- #define SIZENORMAL 0
- #define SIZEICONIC 1
- #define SIZEFULLSCREEN 2
- #define SIZEZOOMSHOW 3
- #define SIZEZOOMHIDE 4
- #ifndef NOKEYSTATES
- /* Key State Masks for Mouse Messages */
- #define MK_LBUTTON 0x0001
- #define MK_RBUTTON 0x0002
- #define MK_SHIFT 0x0004
- #define MK_CONTROL 0x0008
- #define MK_MBUTTON 0x0010
- #endif /* NOKEYSTATES */
- #endif /* NOWINMESSAGES */
- #ifndef NOWINSTYLES
- /* Window Styles */
- #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 /* WS_BORDER | WS_DLGFRAME */
- #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 WS_MINIMIZEBOX 0x00020000L
- #define WS_MAXIMIZEBOX 0x00010000L
- #define WS_TILED WS_OVERLAPPED
- #define WS_ICONIC WS_MINIMIZE
- #define WS_SIZEBOX WS_THICKFRAME
- /* Common Window Styles */
- #define WS_OVERLAPPEDWINDOW (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
- #define WS_POPUPWINDOW (WS_POPUP | WS_BORDER | WS_SYSMENU)
- #define WS_CHILDWINDOW (WS_CHILD)
- #define WS_TILEDWINDOW (WS_OVERLAPPEDWINDOW)
- /* Extended Window Styles */
- #define WS_EX_DLGMODALFRAME 0x00000001L
- #define WS_EX_NOPARENTNOTIFY 0x00000004L
- /* Class styles */
- #define CS_VREDRAW 0x0001
- #define CS_HREDRAW 0x0002
- #define CS_KEYCVTWINDOW 0x0004
- #define CS_DBLCLKS 0x0008
- /* 0x0010 -- no longer used */
- #define CS_OWNDC 0x0020
- #define CS_CLASSDC 0x0040
- #define CS_PARENTDC 0x0080
- #define CS_NOKEYCVT 0x0100
- #define CS_NOCLOSE 0x0200
- #define CS_SAVEBITS 0x0800
- #define CS_BYTEALIGNCLIENT 0x1000
- #define CS_BYTEALIGNWINDOW 0x2000
- #define CS_GLOBALCLASS 0x4000 /* Global window class */
- #endif /* NOWINSTYLES */
- #ifndef NOCLIPBOARD
- /* Predefined Clipboard Formats */
- #define CF_TEXT 1
- #define CF_BITMAP 2
- #define CF_METAFILEPICT 3
- #define CF_SYLK 4
- #define CF_DIF 5
- #define CF_TIFF 6
- #define CF_OEMTEXT 7
- #define CF_DIB 8
- #define CF_PALETTE 9
- #define CF_OWNERDISPLAY 0x0080
- #define CF_DSPTEXT 0x0081
- #define CF_DSPBITMAP 0x0082
- #define CF_DSPMETAFILEPICT 0x0083
- /* "Private" formats don't get GlobalFree()'d */
- #define CF_PRIVATEFIRST 0x0200
- #define CF_PRIVATELAST 0x02FF
- /* "GDIOBJ" formats do get DeleteObject()'d */
- #define CF_GDIOBJFIRST 0x0300
- #define CF_GDIOBJLAST 0x03FF
- #endif /* NOCLIPBOARD */
- typedef struct tagPAINTSTRUCT
- {
- HDC hdc;
- BOOL fErase;
- RECT rcPaint;
- BOOL fRestore;
- BOOL fIncUpdate;
- BYTE rgbReserved[16];
- } PAINTSTRUCT;
- typedef PAINTSTRUCT *PPAINTSTRUCT;
- typedef PAINTSTRUCT NEAR *NPPAINTSTRUCT;
- typedef PAINTSTRUCT FAR *LPPAINTSTRUCT;
- typedef struct tagCREATESTRUCT
- {
- LPSTR lpCreateParams;
- HANDLE hInstance;
- HANDLE hMenu;
- HWND hwndParent;
- int cy;
- int cx;
- int y;
- int x;
- LONG style;
- LPSTR lpszName;
- LPSTR lpszClass;
- DWORD dwExStyle;
- } CREATESTRUCT;
- typedef CREATESTRUCT FAR *LPCREATESTRUCT;
- /* Owner draw control types */
- #define ODT_MENU 1
- #define ODT_LISTBOX 2
- #define ODT_COMBOBOX 3
- #define ODT_BUTTON 4
- /* Owner draw actions */
- #define ODA_DRAWENTIRE 0x0001
- #define ODA_SELECT 0x0002
- #define ODA_FOCUS 0x0004
- /* Owner draw state */
- #define ODS_SELECTED 0x0001
- #define ODS_GRAYED 0x0002
- #define ODS_DISABLED 0x0004
- #define ODS_CHECKED 0x0008
- #define ODS_FOCUS 0x0010
- /* MEASUREITEMSTRUCT for ownerdraw */
- typedef struct tagMEASUREITEMSTRUCT
- {
- WORD CtlType;
- WORD CtlID;
- WORD itemID;
- WORD itemWidth;
- WORD itemHeight;
- DWORD itemData;
- } MEASUREITEMSTRUCT;
- typedef MEASUREITEMSTRUCT NEAR *PMEASUREITEMSTRUCT;
- typedef MEASUREITEMSTRUCT FAR *LPMEASUREITEMSTRUCT;
- /* DRAWITEMSTRUCT for ownerdraw */
- typedef struct tagDRAWITEMSTRUCT
- {
- WORD CtlType;
- WORD CtlID;
- WORD itemID;
- WORD itemAction;
- WORD itemState;
- HWND hwndItem;
- HDC hDC;
- RECT rcItem;
- DWORD itemData;
- } DRAWITEMSTRUCT;
- typedef DRAWITEMSTRUCT NEAR *PDRAWITEMSTRUCT;
- typedef DRAWITEMSTRUCT FAR *LPDRAWITEMSTRUCT;
- /* DELETEITEMSTRUCT for ownerdraw */
- typedef struct tagDELETEITEMSTRUCT
- {
- WORD CtlType;
- WORD CtlID;
- WORD itemID;
- HWND hwndItem;
- DWORD itemData;
- } DELETEITEMSTRUCT;
- typedef DELETEITEMSTRUCT NEAR *PDELETEITEMSTRUCT;
- typedef DELETEITEMSTRUCT FAR *LPDELETEITEMSTRUCT;
- /* COMPAREITEMSTUCT for ownerdraw sorting */
- typedef struct tagCOMPAREITEMSTRUCT
- {
- WORD CtlType;
- WORD CtlID;
- HWND hwndItem;
- WORD itemID1;
- DWORD itemData1;
- WORD itemID2;
- DWORD itemData2;
- } COMPAREITEMSTRUCT;
- typedef COMPAREITEMSTRUCT NEAR *PCOMPAREITEMSTRUCT;
- typedef COMPAREITEMSTRUCT FAR *LPCOMPAREITEMSTRUCT;
- #ifndef NOMSG
- /* Message Function Templates */
- BOOL FAR PASCAL GetMessage(LPMSG, HWND, WORD, WORD);
- BOOL FAR PASCAL TranslateMessage(LPMSG);
- LONG FAR PASCAL DispatchMessage(LPMSG);
- BOOL FAR PASCAL PeekMessage(LPMSG, HWND, WORD, WORD, WORD);
- /* PeekMessage() Options */
- #define PM_NOREMOVE 0x0000
- #define PM_REMOVE 0x0001
- #define PM_NOYIELD 0x0002
- #endif /* NOMSG */
- #ifdef WIN_INTERNAL
- #ifndef LSTRING
- #define NOLSTRING
- #endif
- #ifndef LFILEIO
- #define NOLFILEIO
- #endif
- #endif
- #ifndef NOLSTRING
- int FAR PASCAL lstrcmp( LPSTR, LPSTR );
- int FAR PASCAL lstrcmpi( LPSTR, LPSTR );
- LPSTR FAR PASCAL lstrcpy( LPSTR, LPSTR );
- LPSTR FAR PASCAL lstrcat( LPSTR, LPSTR );
- int FAR PASCAL lstrlen( LPSTR );
- #endif /* NOLSTRING */
- #ifndef NOLFILEIO
- int FAR PASCAL _lopen( LPSTR, int );
- int FAR PASCAL _lclose( int );
- int FAR PASCAL _lcreat( LPSTR, int );
- LONG FAR PASCAL _llseek( int, long, int );
- WORD FAR PASCAL _lread( int, LPSTR, int );
- WORD FAR PASCAL _lwrite( int, LPSTR, int );
- #define READ 0 /* Flags for _lopen */
- #define WRITE 1
- #define READ_WRITE 2
- #endif /* NOLFILEIO */
- BOOL FAR PASCAL ExitWindows(DWORD dwReserved, WORD wReturnCode);
- BOOL FAR PASCAL SwapMouseButton(BOOL);
- DWORD FAR PASCAL GetMessagePos(void);
- LONG FAR PASCAL GetMessageTime(void);
- HWND FAR PASCAL GetSysModalWindow(void);
- HWND FAR PASCAL SetSysModalWindow(HWND);
- LONG FAR PASCAL SendMessage(HWND, WORD, WORD, LONG);
- BOOL FAR PASCAL PostMessage(HWND, WORD, WORD, LONG);
- BOOL FAR PASCAL PostAppMessage(HANDLE, WORD, WORD, LONG);
- void FAR PASCAL ReplyMessage(LONG);
- void FAR PASCAL WaitMessage(void);
- LONG FAR PASCAL DefWindowProc(HWND, WORD, WORD, LONG);
- void FAR PASCAL PostQuitMessage(int);
- LONG FAR PASCAL CallWindowProc(FARPROC, HWND, WORD, WORD, LONG);
- BOOL FAR PASCAL InSendMessage(void);
- WORD FAR PASCAL GetDoubleClickTime(void);
- void FAR PASCAL SetDoubleClickTime(WORD);
- BOOL FAR PASCAL RegisterClass(LPWNDCLASS);
- BOOL FAR PASCAL UnregisterClass(LPSTR, HANDLE);
- BOOL FAR PASCAL GetClassInfo(HANDLE, LPSTR, LPWNDCLASS);
- BOOL FAR PASCAL SetMessageQueue(int);
- #define CW_USEDEFAULT ((int)0x8000)
- HWND FAR PASCAL CreateWindow(LPSTR, LPSTR, DWORD, int, int, int, int, HWND, HMENU, HANDLE, LPSTR);
- HWND FAR PASCAL CreateWindowEx(DWORD, LPSTR, LPSTR, DWORD, int, int, int, int, HWND, HMENU, HANDLE, LPSTR);
- BOOL FAR PASCAL IsWindow(HWND);
- BOOL FAR PASCAL IsChild(HWND, HWND);
- BOOL FAR PASCAL DestroyWindow(HWND);
- BOOL FAR PASCAL ShowWindow(HWND, int);
- BOOL FAR PASCAL FlashWindow(HWND, BOOL);
- void FAR PASCAL ShowOwnedPopups(HWND, BOOL);
- BOOL FAR PASCAL OpenIcon(HWND);
- void FAR PASCAL CloseWindow(HWND);
- void FAR PASCAL MoveWindow(HWND, int, int, int, int, BOOL);
- void FAR PASCAL SetWindowPos(HWND, HWND, int, int, int, int, WORD);
- #ifndef NODEFERWINDOWPOS
- HANDLE FAR PASCAL BeginDeferWindowPos(int nNumWindows);
- HANDLE FAR PASCAL DeferWindowPos(HANDLE hWinPosInfo, HWND hWnd, HWND hWndInsertAfter, int x, int y, int cx, int cy, WORD wFlags);
- void FAR PASCAL EndDeferWindowPos(HANDLE hWinPosInfo);
- #endif /* NODEFERWINDOWPOS */
- BOOL FAR PASCAL IsWindowVisible(HWND);
- BOOL FAR PASCAL IsIconic(HWND);
- BOOL FAR PASCAL AnyPopup(void);
- void FAR PASCAL BringWindowToTop(HWND);
- BOOL FAR PASCAL IsZoomed(HWND);
- /* SetWindowPos Flags */
- #define SWP_NOSIZE 0x0001
- #define SWP_NOMOVE 0x0002
- #define SWP_NOZORDER 0x0004
- #define SWP_NOREDRAW 0x0008
- #define SWP_NOACTIVATE 0x0010
- #define SWP_DRAWFRAME 0x0020
- #define SWP_SHOWWINDOW 0x0040
- #define SWP_HIDEWINDOW 0x0080
- #define SWP_NOCOPYBITS 0x0100
- #define SWP_NOREPOSITION 0x0200
- #ifndef NOCTLMGR
- HWND FAR PASCAL CreateDialog(HANDLE, LPSTR, HWND, FARPROC);
- HWND FAR PASCAL CreateDialogIndirect(HANDLE, LPSTR, HWND, FARPROC);
- HWND FAR PASCAL CreateDialogParam(HANDLE, LPSTR, HWND, FARPROC, LONG);
- HWND FAR PASCAL CreateDialogIndirectParam(HANDLE, LPSTR, HWND, FARPROC, LONG);
- int FAR PASCAL DialogBox(HANDLE, LPSTR, HWND, FARPROC);
- int FAR PASCAL DialogBoxIndirect(HANDLE, HANDLE, HWND, FARPROC);
- int FAR PASCAL DialogBoxParam(HANDLE, LPSTR, HWND, FARPROC, LONG);
- int FAR PASCAL DialogBoxIndirectParam(HANDLE, HANDLE, HWND, FARPROC, LONG);
- void FAR PASCAL EndDialog(HWND, int);
- HWND FAR PASCAL GetDlgItem(HWND, int);
- void FAR PASCAL SetDlgItemInt(HWND, int, WORD, BOOL);
- WORD FAR PASCAL GetDlgItemInt(HWND, int, BOOL FAR *, BOOL);
- void FAR PASCAL SetDlgItemText(HWND, int, LPSTR);
- int FAR PASCAL GetDlgItemText(HWND, int, LPSTR, int);
- void FAR PASCAL CheckDlgButton(HWND, int, WORD);
- void FAR PASCAL CheckRadioButton(HWND, int, int, int);
- WORD FAR PASCAL IsDlgButtonChecked(HWND, int);
- LONG FAR PASCAL SendDlgItemMessage(HWND, int, WORD, WORD, LONG);
- HWND FAR PASCAL GetNextDlgGroupItem(HWND, HWND, BOOL);
- HWND FAR PASCAL GetNextDlgTabItem(HWND, HWND, BOOL);
- int FAR PASCAL GetDlgCtrlID(HWND);
- long FAR PASCAL GetDialogBaseUnits(void);
- LONG FAR PASCAL DefDlgProc(HWND, WORD, WORD, LONG);
- #define DLGWINDOWEXTRA 30 /* Window extra byted needed for private dialog classes */
- #endif /* NOCTLMGR */
- #ifndef NOMSG
- BOOL FAR PASCAL CallMsgFilter(LPMSG, int);
- #endif
- #ifndef NOCLIPBOARD
- /* Clipboard Manager Functions */
- BOOL FAR PASCAL OpenClipboard(HWND);
- BOOL FAR PASCAL CloseClipboard(void);
- HWND FAR PASCAL GetClipboardOwner(void);
- HWND FAR PASCAL SetClipboardViewer(HWND);
- HWND FAR PASCAL GetClipboardViewer(void);
- BOOL FAR PASCAL ChangeClipboardChain(HWND, HWND);
- HANDLE FAR PASCAL SetClipboardData(WORD, HANDLE);
- HANDLE FAR PASCAL GetClipboardData(WORD);
- WORD FAR PASCAL RegisterClipboardFormat(LPSTR);
- int FAR PASCAL CountClipboardFormats(void);
- WORD FAR PASCAL EnumClipboardFormats(WORD);
- int FAR PASCAL GetClipboardFormatName(WORD, LPSTR, int);
- BOOL FAR PASCAL EmptyClipboard(void);
- BOOL FAR PASCAL IsClipboardFormatAvailable(WORD);
- int FAR PASCAL GetPriorityClipboardFormat(WORD FAR *, int);
- #endif /* NOCLIPBOARD */
- HWND FAR PASCAL SetFocus(HWND);
- HWND FAR PASCAL GetFocus(void);
- HWND FAR PASCAL GetActiveWindow(void);
- int FAR PASCAL GetKeyState(int);
- int FAR PASCAL GetAsyncKeyState(int);
- void FAR PASCAL GetKeyboardState(BYTE FAR *);
- void FAR PASCAL SetKeyboardState(BYTE FAR *);
- BOOL FAR PASCAL EnableHardwareInput(BOOL);
- BOOL FAR PASCAL GetInputState(void);
- HWND FAR PASCAL GetCapture(void);
- HWND FAR PASCAL SetCapture(HWND);
- void FAR PASCAL ReleaseCapture(void);
- /* Windows Functions */
- WORD FAR PASCAL SetTimer(HWND, int, WORD, FARPROC);
- BOOL FAR PASCAL KillTimer(HWND, int);
- BOOL FAR PASCAL EnableWindow(HWND,BOOL);
- BOOL FAR PASCAL IsWindowEnabled(HWND);
- HANDLE FAR PASCAL LoadAccelerators(HANDLE, LPSTR);
- #ifndef NOMSG
- int FAR PASCAL TranslateAccelerator(HWND, HANDLE, LPMSG);
- #endif
- #ifndef NOSYSMETRICS
- /* GetSystemMetrics() codes */
- #define SM_CXSCREEN 0
- #define SM_CYSCREEN 1
- #define SM_CXVSCROLL 2
- #define SM_CYHSCROLL 3
- #define SM_CYCAPTION 4
- #define SM_CXBORDER 5
- #define SM_CYBORDER 6
- #define SM_CXDLGFRAME 7
- #define SM_CYDLGFRAME 8
- #define SM_CYVTHUMB 9
- #define SM_CXHTHUMB 10
- #define SM_CXICON 11
- #define SM_CYICON 12
- #define SM_CXCURSOR 13
- #define SM_CYCURSOR 14
- #define SM_CYMENU 15
- #define SM_CXFULLSCREEN 16
- #define SM_CYFULLSCREEN 17
- #define SM_CYKANJIWINDOW 18
- #define SM_MOUSEPRESENT 19
- #define SM_CYVSCROLL 20
- #define SM_CXHSCROLL 21
- #define SM_DEBUG 22
- #define SM_SWAPBUTTON 23
- #define SM_RESERVED1 24
- #define SM_RESERVED2 25
- #define SM_RESERVED3 26
- #define SM_RESERVED4 27
- #define SM_CXMIN 28
- #define SM_CYMIN 29
- #define SM_CXSIZE 30
- #define SM_CYSIZE 31
- #define SM_CXFRAME 32
- #define SM_CYFRAME 33
- #define SM_CXMINTRACK 34
- #define SM_CYMINTRACK 35
- #define SM_CMETRICS 36
- int FAR PASCAL GetSystemMetrics(int);
- #endif /* NOSYSMETRICS */
- #ifndef NOMENUS
- HMENU FAR PASCAL LoadMenu(HANDLE, LPSTR);
- HMENU FAR PASCAL LoadMenuIndirect(LPSTR);
- HMENU FAR PASCAL GetMenu(HWND);
- BOOL FAR PASCAL SetMenu(HWND, HMENU);
- BOOL FAR PASCAL ChangeMenu(HMENU, WORD, LPSTR, WORD, WORD);
- BOOL FAR PASCAL HiliteMenuItem(HWND, HMENU, WORD, WORD);
- int FAR PASCAL GetMenuString(HMENU, WORD, LPSTR, int, WORD);
- WORD FAR PASCAL GetMenuState(HMENU, WORD, WORD);
- void FAR PASCAL DrawMenuBar(HWND);
- HMENU FAR PASCAL GetSystemMenu(HWND, BOOL);
- HMENU FAR PASCAL CreateMenu(void);
- HMENU FAR PASCAL CreatePopupMenu(void);
- BOOL FAR PASCAL DestroyMenu(HMENU);
- BOOL FAR PASCAL CheckMenuItem(HMENU, WORD, WORD);
- BOOL FAR PASCAL EnableMenuItem(HMENU, WORD, WORD);
- HMENU FAR PASCAL GetSubMenu(HMENU, int);
- WORD FAR PASCAL GetMenuItemID(HMENU, int);
- WORD FAR PASCAL GetMenuItemCount(HMENU);
- BOOL FAR PASCAL InsertMenu(HMENU, WORD, WORD, WORD, LPSTR);
- BOOL FAR PASCAL AppendMenu(HMENU, WORD, WORD, LPSTR);
- BOOL FAR PASCAL ModifyMenu(HMENU, WORD, WORD, WORD, LPSTR);
- BOOL FAR PASCAL RemoveMenu(HMENU, WORD, WORD);
- BOOL FAR PASCAL DeleteMenu(HMENU, WORD, WORD);
- BOOL FAR PASCAL SetMenuItemBitmaps(HMENU, WORD, WORD, HBITMAP, HBITMAP);
- LONG FAR PASCAL GetMenuCheckMarkDimensions(void);
- BOOL FAR PASCAL TrackPopupMenu(HMENU, WORD, int, int, int, HWND, LPRECT);
- #endif /* NOMENUS */
- BOOL FAR PASCAL GrayString(HDC, HBRUSH, FARPROC, DWORD, int, int, int, int, int);
- void FAR PASCAL UpdateWindow(HWND);
- HWND FAR PASCAL SetActiveWindow(HWND);
- HDC FAR PASCAL BeginPaint(HWND, LPPAINTSTRUCT);
- void FAR PASCAL EndPaint(HWND, LPPAINTSTRUCT);
- BOOL FAR PASCAL GetUpdateRect(HWND, LPRECT, BOOL);
- int FAR PASCAL GetUpdateRgn(HWND, HRGN, BOOL);
- int FAR PASCAL ExcludeUpdateRgn(HDC, HWND);
- void FAR PASCAL InvalidateRect(HWND, LPRECT, BOOL);
- void FAR PASCAL ValidateRect(HWND, LPRECT);
- void FAR PASCAL InvalidateRgn(HWND, HRGN, BOOL);
- void FAR PASCAL ValidateRgn(HWND, HRGN);
- void FAR PASCAL ScrollWindow(HWND, int, int, LPRECT, LPRECT);
- BOOL FAR PASCAL ScrollDC(HDC, int, int, LPRECT, LPRECT, HRGN, LPRECT);
- #ifndef NOSCROLL
- int FAR PASCAL SetScrollPos(HWND, int, int, BOOL);
- int FAR PASCAL GetScrollPos(HWND, int);
- void FAR PASCAL SetScrollRange(HWND, int, int, int, BOOL);
- void FAR PASCAL GetScrollRange(HWND, int, LPINT, LPINT);
- void FAR PASCAL ShowScrollBar(HWND, WORD, BOOL);
- #endif
- BOOL FAR PASCAL SetProp(HWND, LPSTR, HANDLE);
- HANDLE FAR PASCAL GetProp(HWND, LPSTR);
- HANDLE FAR PASCAL RemoveProp(HWND, LPSTR);
- int FAR PASCAL EnumProps(HWND, FARPROC);
- void FAR PASCAL SetWindowText(HWND, LPSTR);
- int FAR PASCAL GetWindowText(HWND, LPSTR, int);
- int FAR PASCAL GetWindowTextLength(HWND);
- void FAR PASCAL GetClientRect(HWND, LPRECT);
- void FAR PASCAL GetWindowRect(HWND, LPRECT);
- void FAR PASCAL AdjustWindowRect(LPRECT, LONG, BOOL);
- void FAR PASCAL AdjustWindowRectEx(LPRECT, LONG, BOOL, DWORD);
- #ifndef NOMB
- /* MessageBox() Flags */
- #define MB_OK 0x0000
- #define MB_OKCANCEL 0x0001
- #define MB_ABORTRETRYIGNORE 0x0002
- #define MB_YESNOCANCEL 0x0003
- #define MB_YESNO 0x0004
- #define MB_RETRYCANCEL 0x0005
- #define MB_ICONHAND 0x0010
- #define MB_ICONQUESTION 0x0020
- #define MB_ICONEXCLAMATION 0x0030
- #define MB_ICONASTERISK 0x0040
- #define MB_ICONINFORMATION MB_ICONASTERISK
- #define MB_ICONSTOP MB_ICONHAND
- #define MB_DEFBUTTON1 0x0000
- #define MB_DEFBUTTON2 0x0100
- #define MB_DEFBUTTON3 0x0200
- #define MB_APPLMODAL 0x0000
- #define MB_SYSTEMMODAL 0x1000
- #define MB_TASKMODAL 0x2000
- #define MB_NOFOCUS 0x8000
- #define MB_TYPEMASK 0x000F
- #define MB_ICONMASK 0x00F0
- #define MB_DEFMASK 0x0F00
- #define MB_MODEMASK 0x3000
- #define MB_MISCMASK 0xC000
- int FAR PASCAL MessageBox(HWND, LPSTR, LPSTR, WORD);
- void FAR PASCAL MessageBeep(WORD);
- #endif /* NOMB */
- int FAR PASCAL ShowCursor(BOOL);
- void FAR PASCAL SetCursorPos(int, int);
- HCURSOR FAR PASCAL SetCursor(HCURSOR);
- void FAR PASCAL GetCursorPos(LPPOINT);
- void FAR PASCAL ClipCursor(LPRECT);
- void FAR PASCAL CreateCaret(HWND, HBITMAP, int, int);
- WORD FAR PASCAL GetCaretBlinkTime(void);
- void FAR PASCAL SetCaretBlinkTime(WORD);
- void FAR PASCAL DestroyCaret(void);
- void FAR PASCAL HideCaret(HWND);
- void FAR PASCAL ShowCaret(HWND);
- void FAR PASCAL SetCaretPos(int, int);
- void FAR PASCAL GetCaretPos(LPPOINT);
- void FAR PASCAL ClientToScreen(HWND, LPPOINT);
- void FAR PASCAL ScreenToClient(HWND, LPPOINT);
- HWND FAR PASCAL WindowFromPoint(POINT);
- HWND FAR PASCAL ChildWindowFromPoint(HWND, POINT);
- #ifndef NOCOLOR
- /* Color Types */
- #define CTLCOLOR_MSGBOX 0
- #define CTLCOLOR_EDIT 1
- #define CTLCOLOR_LISTBOX 2
- #define CTLCOLOR_BTN 3
- #define CTLCOLOR_DLG 4
- #define CTLCOLOR_SCROLLBAR 5
- #define CTLCOLOR_STATIC 6
- #define CTLCOLOR_MAX 8 /* three bits max */
- #define COLOR_SCROLLBAR 0
- #define COLOR_BACKGROUND 1
- #define COLOR_ACTIVECAPTION 2
- #define COLOR_INACTIVECAPTION 3
- #define COLOR_MENU 4
- #define COLOR_WINDOW 5
- #define COLOR_WINDOWFRAME 6
- #define COLOR_MENUTEXT 7
- #define COLOR_WINDOWTEXT 8
- #define COLOR_CAPTIONTEXT 9
- #define COLOR_ACTIVEBORDER 10
- #define COLOR_INACTIVEBORDER 11
- #define COLOR_APPWORKSPACE 12
- #define COLOR_HIGHLIGHT 13
- #define COLOR_HIGHLIGHTTEXT 14
- #define COLOR_BTNFACE 15
- #define COLOR_BTNSHADOW 16
- #define COLOR_GRAYTEXT 17
- #define COLOR_BTNTEXT 18
- #define COLOR_ENDCOLORS COLOR_BTNTEXT
- DWORD FAR PASCAL GetSysColor(int);
- void FAR PASCAL SetSysColors(int, LPINT, LONG FAR *);
- #endif /* NOCOLOR */
- BOOL FAR PASCAL FillRgn(HDC, HRGN, HBRUSH);
- BOOL FAR PASCAL FrameRgn(HDC, HRGN, HBRUSH, int, int);
- BOOL FAR PASCAL InvertRgn(HDC, HRGN);
- BOOL FAR PASCAL PaintRgn(HDC, HRGN);
- BOOL FAR PASCAL PtInRegion(HRGN, int, int);
- void FAR PASCAL DrawFocusRect(HDC, LPRECT);
- int FAR PASCAL FillRect(HDC, LPRECT, HBRUSH);
- int FAR PASCAL FrameRect(HDC, LPRECT, HBRUSH);
- void FAR PASCAL InvertRect(HDC, LPRECT);
- void FAR PASCAL SetRect(LPRECT, int, int, int, int);
- void FAR PASCAL SetRectEmpty(LPRECT);
- int FAR PASCAL CopyRect(LPRECT, LPRECT);
- void FAR PASCAL InflateRect(LPRECT, int, int);
- int FAR PASCAL IntersectRect(LPRECT, LPRECT, LPRECT);
- int FAR PASCAL UnionRect(LPRECT, LPRECT, LPRECT);
- void FAR PASCAL OffsetRect(LPRECT, int, int);
- BOOL FAR PASCAL IsRectEmpty(LPRECT);
- BOOL FAR PASCAL EqualRect(LPRECT, LPRECT);
- BOOL FAR PASCAL PtInRect(LPRECT, POINT);
- BOOL FAR PASCAL RectVisible(HDC, LPRECT);
- BOOL FAR PASCAL RectInRegion(HRGN, LPRECT);
- DWORD FAR PASCAL GetCurrentTime(void);
- DWORD FAR PASCAL GetTickCount(void);
- #ifndef NOWINOFFSETS
- WORD FAR PASCAL GetWindowWord(HWND, int);
- WORD FAR PASCAL SetWindowWord(HWND, int, WORD);
- LONG FAR PASCAL GetWindowLong(HWND, int);
- LONG FAR PASCAL SetWindowLong(HWND, int, LONG);
- WORD FAR PASCAL GetClassWord(HWND, int);
- WORD FAR PASCAL SetClassWord(HWND, int, WORD);
- LONG FAR PASCAL GetClassLong(HWND, int);
- LONG FAR PASCAL SetClassLong(HWND, int, LONG);
- HWND FAR PASCAL GetDesktopHwnd(void);
- HWND FAR PASCAL GetDesktopWindow(void);
- #endif /* NOWINOFFSETS */
- HWND FAR PASCAL GetParent(HWND);
- HWND FAR PASCAL SetParent(HWND, HWND);
- BOOL FAR PASCAL EnumChildWindows(HWND, FARPROC, LONG);
- HWND FAR PASCAL FindWindow(LPSTR, LPSTR);
- BOOL FAR PASCAL EnumWindows(FARPROC, LONG);
- BOOL FAR PASCAL EnumTaskWindows(HANDLE, FARPROC, LONG);
- int FAR PASCAL GetClassName(HWND, LPSTR, int);
- HWND FAR PASCAL GetTopWindow(HWND);
- HWND FAR PASCAL GetNextWindow(HWND, WORD);
- HANDLE FAR PASCAL GetWindowTask(HWND);
- HWND FAR PASCAL GetLastActivePopup(HWND);
- /* GetWindow() Constants */
- #define GW_HWNDFIRST 0
- #define GW_HWNDLAST 1
- #define GW_HWNDNEXT 2
- #define GW_HWNDPREV 3
- #define GW_OWNER 4
- #define GW_CHILD 5
- HWND FAR PASCAL GetWindow(HWND, WORD);
- #ifndef NOWH
- FARPROC FAR PASCAL SetWindowsHook(int, FARPROC);
- BOOL FAR PASCAL UnhookWindowsHook(int, FARPROC);
- DWORD FAR PASCAL DefHookProc(int, WORD, DWORD, FARPROC FAR *);
- #endif
- #ifndef NOMENUS
- /* Menu flags for Add/Check/EnableMenuItem() */
- #define MF_INSERT 0x0000
- #define MF_CHANGE 0x0080
- #define MF_APPEND 0x0100
- #define MF_DELETE 0x0200
- #define MF_REMOVE 0x1000
- #define MF_BYCOMMAND 0x0000
- #define MF_BYPOSITION 0x0400
- #define MF_SEPARATOR 0x0800
- #define MF_ENABLED 0x0000
- #define MF_GRAYED 0x0001
- #define MF_DISABLED 0x0002
- #define MF_UNCHECKED 0x0000
- #define MF_CHECKED 0x0008
- #define MF_USECHECKBITMAPS 0x0200
- #define MF_STRING 0x0000
- #define MF_BITMAP 0x0004
- #define MF_OWNERDRAW 0x0100
- #define MF_POPUP 0x0010
- #define MF_MENUBARBREAK 0x0020
- #define MF_MENUBREAK 0x0040
- #define MF_UNHILITE 0x0000
- #define MF_HILITE 0x0080
- #define MF_SYSMENU 0x2000
- #define MF_HELP 0x4000
- #define MF_MOUSESELECT 0x8000
- /* Menu item resource format */
- typedef struct
- {
- WORD versionNumber;
- WORD offset;
- } MENUITEMTEMPLATEHEADER;
- typedef struct
- {
- WORD mtOption;
- WORD mtID;
- char mtString[1];
- } MENUITEMTEMPLATE;
- #define MF_END 0x0080
- #endif /* NOMENUS */
- #ifndef NOSYSCOMMANDS
- /* System Menu Command Values */
- #define SC_SIZE 0xF000
- #define SC_MOVE 0xF010
- #define SC_MINIMIZE 0xF020
- #define SC_MAXIMIZE 0xF030
- #define SC_NEXTWINDOW 0xF040
- #define SC_PREVWINDOW 0xF050
- #define SC_CLOSE 0xF060
- #define SC_VSCROLL 0xF070
- #define SC_HSCROLL 0xF080
- #define SC_MOUSEMENU 0xF090
- #define SC_KEYMENU 0xF100
- #define SC_ARRANGE 0xF110
- #define SC_RESTORE 0xF120
- #define SC_TASKLIST 0xF130
- #define SC_ICON SC_MINIMIZE
- #define SC_ZOOM SC_MAXIMIZE
- #endif /* NOSYSCOMMANDS */
- /* Resource Loading Routines */
- HBITMAP FAR PASCAL LoadBitmap(HANDLE, LPSTR);
- HCURSOR FAR PASCAL LoadCursor(HANDLE, LPSTR);
- HCURSOR FAR PASCAL CreateCursor(HANDLE, int, int, int, int, LPSTR, LPSTR);
- BOOL FAR PASCAL DestroyCursor(HCURSOR);
- /* Standard Cursor IDs */
- #define IDC_ARROW MAKEINTRESOURCE(32512)
- #define IDC_IBEAM MAKEINTRESOURCE(32513)
- #define IDC_WAIT MAKEINTRESOURCE(32514)
- #define IDC_CROSS MAKEINTRESOURCE(32515)
- #define IDC_UPARROW MAKEINTRESOURCE(32516)
- #define IDC_SIZE MAKEINTRESOURCE(32640)
- #define IDC_ICON MAKEINTRESOURCE(32641)
- #define IDC_SIZENWSE MAKEINTRESOURCE(32642)
- #define IDC_SIZENESW MAKEINTRESOURCE(32643)
- #define IDC_SIZEWE MAKEINTRESOURCE(32644)
- #define IDC_SIZENS MAKEINTRESOURCE(32645)
- HICON FAR PASCAL LoadIcon(HANDLE, LPSTR);
- HICON FAR PASCAL CreateIcon(HANDLE, int, int, BYTE, BYTE, LPSTR, LPSTR);
- BOOL FAR PASCAL DestroyIcon(HICON);
- #define ORD_LANGDRIVER 1 /* The ordinal number for the entry point of
- ** language drivers.
- */
- #ifndef NOICONS
- /* Standard Icon IDs */
- #define IDI_APPLICATION MAKEINTRESOURCE(32512)
- #define IDI_HAND MAKEINTRESOURCE(32513)
- #define IDI_QUESTION MAKEINTRESOURCE(32514)
- #define IDI_EXCLAMATION MAKEINTRESOURCE(32515)
- #define IDI_ASTERISK MAKEINTRESOURCE(32516)
- #endif /* NOICONS */
- int FAR PASCAL LoadString(HANDLE, WORD, LPSTR, int);
- int FAR PASCAL AddFontResource(LPSTR);
- BOOL FAR PASCAL RemoveFontResource(LPSTR);
- #ifndef NOKANJI
- #define CP_HWND 0
- #define CP_OPEN 1
- #define CP_DIRECT 2
- /* VK from the keyboard driver */
- #define VK_KANA 0x15
- #define VK_ROMAJI 0x16
- #define VK_ZENKAKU 0x17
- #define VK_HIRAGANA 0x18
- #define VK_KANJI 0x19
- /* VK to send to Applications */
- #define VK_CONVERT 0x1C
- #define VK_NONCONVERT 0x1D
- #define VK_ACCEPT 0x1E
- #define VK_MODECHANGE 0x1F
- /* Conversion function numbers */
- #define KNJ_START 0x01
- #define KNJ_END 0x02
- #define KNJ_QUERY 0x03
- #define KNJ_LEARN_MODE 0x10
- #define KNJ_GETMODE 0x11
- #define KNJ_SETMODE 0x12
- #define KNJ_CODECONVERT 0x20
- #define KNJ_CONVERT 0x21
- #define KNJ_NEXT 0x22
- #define KNJ_PREVIOUS 0x23
- #define KNJ_ACCEPT 0x24
- #define KNJ_LEARN 0x30
- #define KNJ_REGISTER 0x31
- #define KNJ_REMOVE 0x32
- #define KNJ_CHANGE_UDIC 0x33
- /* NOTE: DEFAULT = 0
- * JIS1 = 1
- * JIS2 = 2
- * SJIS2 = 3
- * JIS1KATAKANA = 4
- * SJIS2HIRAGANA = 5
- * SJIS2KATAKANA = 6
- * OEM = F
- */
- #define KNJ_JIS1toJIS1KATAKANA 0x14
- #define KNJ_JIS1toSJIS2 0x13
- #define KNJ_JIS1toSJIS2HIRAGANA 0x15
- #define KNJ_JIS1toSJIS2KATAKANA 0x16
- #define KNJ_JIS1toDEFAULT 0x10
- #define KNJ_JIS1toSJIS2OEM 0x1F
- #define KNJ_JIS2toSJIS2 0x23
- #define KNJ_SJIS2toJIS2 0x32
- #define KNJ_MD_ALPHA 0x01
- #define KNJ_MD_HIRAGANA 0x02
- #define KNJ_MD_HALF 0x04
- #define KNJ_MD_JIS 0x08
- #define KNJ_MD_SPECIAL 0x10
- #define KNJ_CVT_NEXT 0x01
- #define KNJ_CVT_PREV 0x02
- #define KNJ_CVT_KATAKANA 0x03
- #define KNJ_CVT_HIRAGANA 0x04
- #define KNJ_CVT_JIS1 0x05
- #define KNJ_CVT_SJIS2 0x06
- #define KNJ_CVT_DEFAULT 0x07
- #define KNJ_CVT_TYPED 0x08
- typedef struct
- {
- int fnc;
- int wParam;
- LPSTR lpSource;
- LPSTR lpDest;
- int wCount;
- LPSTR lpReserved1;
- LPSTR lpReserved2;
- } KANJISTRUCT, FAR *LPKANJISTRUCT;
- int FAR PASCAL ConvertRequest(HWND, LPKANJISTRUCT);
- BOOL FAR PASCAL SetConvertParams(int, int);
- VOID FAR PASCAL SetConvertHook(BOOL);
- #endif
- /* Key Conversion Window */
- BOOL FAR PASCAL IsTwoByteCharPrefix(char);
- /* Dialog Box Command IDs */
- #define IDOK 1
- #define IDCANCEL 2
- #define IDABORT 3
- #define IDRETRY 4
- #define IDIGNORE 5
- #define IDYES 6
- #define IDNO 7
- #ifndef NOCTLMGR
- /* Control Manager Structures and Definitions */
- #ifndef NOWINSTYLES
- /* Edit Control Styles */
- #define ES_LEFT 0x0000L
- #define ES_CENTER 0x0001L
- #define ES_RIGHT 0x0002L
- #define ES_MULTILINE 0x0004L
- #define ES_UPPERCASE 0x0008L
- #define ES_LOWERCASE 0x0010L
- #define ES_PASSWORD 0x0020L
- #define ES_AUTOVSCROLL 0x0040L
- #define ES_AUTOHSCROLL 0x0080L
- #define ES_NOHIDESEL 0x0100L
- #define ES_OEMCONVERT 0x0400L
- #endif /* NOWINSTYLES */
- /* Edit Control Notification Codes */
- #define EN_SETFOCUS 0x0100
- #define EN_KILLFOCUS 0x0200
- #define EN_CHANGE 0x0300
- #define EN_UPDATE 0x0400
- #define EN_ERRSPACE 0x0500
- #define EN_MAXTEXT 0x0501
- #define EN_HSCROLL 0x0601
- #define EN_VSCROLL 0x0602
- #ifndef NOWINMESSAGES
- /* Edit Control Messages */
- #define EM_GETSEL (WM_USER+0)
- #define EM_SETSEL (WM_USER+1)
- #define EM_GETRECT (WM_USER+2)
- #define EM_SETRECT (WM_USER+3)
- #define EM_SETRECTNP (WM_USER+4)
- #define EM_SCROLL (WM_USER+5)
- #define EM_LINESCROLL (WM_USER+6)
- #define EM_GETMODIFY (WM_USER+8)
- #define EM_SETMODIFY (WM_USER+9)
- #define EM_GETLINECOUNT (WM_USER+10)
- #define EM_LINEINDEX (WM_USER+11)
- #define EM_SETHANDLE (WM_USER+12)
- #define EM_GETHANDLE (WM_USER+13)
- #define EM_GETTHUMB (WM_USER+14)
- #define EM_LINELENGTH (WM_USER+17)
- #define EM_REPLACESEL (WM_USER+18)
- #define EM_SETFONT (WM_USER+19)
- #define EM_GETLINE (WM_USER+20)
- #define EM_LIMITTEXT (WM_USER+21)
- #define EM_CANUNDO (WM_USER+22)
- #define EM_UNDO (WM_USER+23)
- #define EM_FMTLINES (WM_USER+24)
- #define EM_LINEFROMCHAR (WM_USER+25)
- #define EM_SETWORDBREAK (WM_USER+26)
- #define EM_SETTABSTOPS (WM_USER+27)
- #define EM_SETPASSWORDCHAR (WM_USER+28)
- #define EM_EMPTYUNDOBUFFER (WM_USER+29)
- #define EM_MSGMAX (WM_USER+30)
- #endif /* NOWINMESSAGES */
- /* Button Control Styles */
- #define BS_PUSHBUTTON 0x00L
- #define BS_DEFPUSHBUTTON 0x01L
- #define BS_CHECKBOX 0x02L
- #define BS_AUTOCHECKBOX 0x03L
- #define BS_RADIOBUTTON 0x04L
- #define BS_3STATE 0x05L
- #define BS_AUTO3STATE 0x06L
- #define BS_GROUPBOX 0x07L
- #define BS_USERBUTTON 0x08L
- #define BS_AUTORADIOBUTTON 0x09L
- #define BS_PUSHBOX 0x0AL
- #define BS_OWNERDRAW 0x0BL
- #define BS_LEFTTEXT 0x20L
- /* User Button Notification Codes */
- #define BN_CLICKED 0
- #define BN_PAINT 1
- #define BN_HILITE 2
- #define BN_UNHILITE 3
- #define BN_DISABLE 4
- #define BN_DOUBLECLICKED 5
- /* Button Control Messages */
- #define BM_GETCHECK (WM_USER+0)
- #define BM_SETCHECK (WM_USER+1)
- #define BM_GETSTATE (WM_USER+2)
- #define BM_SETSTATE (WM_USER+3)
- #define BM_SETSTYLE (WM_USER+4)
- /* Static Control Constants */
- #define SS_LEFT 0x00L
- #define SS_CENTER 0x01L
- #define SS_RIGHT 0x02L
- #define SS_ICON 0x03L
- #define SS_BLACKRECT 0x04L
- #define SS_GRAYRECT 0x05L
- #define SS_WHITERECT 0x06L
- #define SS_BLACKFRAME 0x07L
- #define SS_GRAYFRAME 0x08L
- #define SS_WHITEFRAME 0x09L
- #define SS_USERITEM 0x0AL
- #define SS_SIMPLE 0x0BL
- #define SS_LEFTNOWORDWRAP 0x0CL
- #define SS_NOPREFIX 0x80L /* Don't do "&" character translation */
- /* Dialog Manager Routines */
- #ifndef NOMSG
- BOOL FAR PASCAL IsDialogMessage(HWND, LPMSG);
- #endif
- void FAR PASCAL MapDialogRect(HWND, LPRECT);
- int FAR PASCAL DlgDirList(HWND, LPSTR, int, int, WORD);
- BOOL FAR PASCAL DlgDirSelect(HWND, LPSTR, int);
- int FAR PASCAL DlgDirListComboBox(HWND, LPSTR, int, int, WORD);
- BOOL FAR PASCAL DlgDirSelectComboBox(HWND, LPSTR, int);
- /* Dialog Styles */
- #define DS_ABSALIGN 0x01L
- #define DS_SYSMODAL 0x02L
- #define DS_LOCALEDIT 0x20L /* Edit items get Local storage. */
- #define DS_SETFONT 0x40L /* User specified font for Dlg controls */
- #define DS_MODALFRAME 0x80L /* Can be combined with WS_CAPTION */
- #define DS_NOIDLEMSG 0x100L /* WM_ENTERIDLE message will not be sent */
- #define DM_GETDEFID (WM_USER+0)
- #define DM_SETDEFID (WM_USER+1)
- #define DC_HASDEFID 0x534B
- /* Dialog Codes */
- #define DLGC_WANTARROWS 0x0001 /* Control wants arrow keys */
- #define DLGC_WANTTAB 0x0002 /* Control wants tab keys */
- #define DLGC_WANTALLKEYS 0x0004 /* Control wants all keys */
- #define DLGC_WANTMESSAGE 0x0004 /* Pass message to control */
- #define DLGC_HASSETSEL 0x0008 /* Understands EM_SETSEL message */
- #define DLGC_DEFPUSHBUTTON 0x0010 /* Default pushbutton */
- #define DLGC_UNDEFPUSHBUTTON 0x0020 /* Non-default pushbutton */
- #define DLGC_RADIOBUTTON 0x0040 /* Radio button */
- #define DLGC_WANTCHARS 0x0080 /* Want WM_CHAR messages */
- #define DLGC_STATIC 0x0100 /* Static item: don't include */
- #define DLGC_BUTTON 0x2000 /* Button item: can be checked */
- #define LB_CTLCODE 0L
- /* Listbox Return Values */
- #define LB_OKAY 0
- #define LB_ERR (-1)
- #define LB_ERRSPACE (-2)
- /*
- ** The idStaticPath parameter to DlgDirList can have the following values
- ** ORed if the list box should show other details of the files along with
- ** the name of the files;
- */
- /* all other details also will be returned */
- /* Listbox Notification Codes */
- #define LBN_ERRSPACE (-2)
- #define LBN_SELCHANGE 1
- #define LBN_DBLCLK 2
- #define LBN_SELCANCEL 3
- #define LBN_SETFOCUS 4
- #define LBN_KILLFOCUS 5
- #ifndef NOWINMESSAGES
- /* Listbox messages */
- #define LB_ADDSTRING (WM_USER+1)
- #define LB_INSERTSTRING (WM_USER+2)
- #define LB_DELETESTRING (WM_USER+3)
- #define LB_RESETCONTENT (WM_USER+5)
- #define LB_SETSEL (WM_USER+6)
- #define LB_SETCURSEL (WM_USER+7)
- #define LB_GETSEL (WM_USER+8)
- #define LB_GETCURSEL (WM_USER+9)
- #define LB_GETTEXT (WM_USER+10)
- #define LB_GETTEXTLEN (WM_USER+11)
- #define LB_GETCOUNT (WM_USER+12)
- #define LB_SELECTSTRING (WM_USER+13)
- #define LB_DIR (WM_USER+14)
- #define LB_GETTOPINDEX (WM_USER+15)
- #define LB_FINDSTRING (WM_USER+16)
- #define LB_GETSELCOUNT (WM_USER+17)
- #define LB_GETSELITEMS (WM_USER+18)
- #define LB_SETTABSTOPS (WM_USER+19)
- #define LB_GETHORIZONTALEXTENT (WM_USER+20)
- #define LB_SETHORIZONTALEXTENT (WM_USER+21)
- #define LB_SETCOLUMNWIDTH (WM_USER+22)
- #define LB_SETTOPINDEX (WM_USER+24)
- #define LB_GETITEMRECT (WM_USER+25)
- #define LB_GETITEMDATA (WM_USER+26)
- #define LB_SETITEMDATA (WM_USER+27)
- #define LB_SELITEMRANGE (WM_USER+28)
- #define LB_MSGMAX (WM_USER+33)
- #endif /* NOWINMESSAGES */
- #ifndef NOWINSTYLES
- /* Listbox Styles */
- #define LBS_NOTIFY 0x0001L
- #define LBS_SORT 0x0002L
- #define LBS_NOREDRAW 0x0004L
- #define LBS_MULTIPLESEL 0x0008L
- #define LBS_OWNERDRAWFIXED 0x0010L
- #define LBS_OWNERDRAWVARIABLE 0x0020L
- #define LBS_HASSTRINGS 0x0040L
- #define LBS_USETABSTOPS 0x0080L
- #define LBS_NOINTEGRALHEIGHT 0x0100L
- #define LBS_MULTICOLUMN 0x0200L
- #define LBS_WANTKEYBOARDINPUT 0x0400L
- #define LBS_EXTENDEDSEL 0x0800L
- #define LBS_STANDARD (LBS_NOTIFY | LBS_SORT | WS_VSCROLL | WS_BORDER)
- #endif /* NOWINSTYLES */
- /* Combo Box return Values */
- #define CB_OKAY 0
- #define CB_ERR (-1)
- #define CB_ERRSPACE (-2)
- /* Combo Box Notification Codes */
- #define CBN_ERRSPACE (-1)
- #define CBN_SELCHANGE 1
- #define CBN_DBLCLK 2
- #define CBN_SETFOCUS 3
- #define CBN_KILLFOCUS 4
- #define CBN_EDITCHANGE 5
- #define CBN_EDITUPDATE 6
- #define CBN_DROPDOWN 7
- /* Combo Box styles */
- #ifndef NOWINSTYLES
- #define CBS_SIMPLE 0x0001L
- #define CBS_DROPDOWN 0x0002L
- #define CBS_DROPDOWNLIST 0x0003L
- #define CBS_OWNERDRAWFIXED 0x0010L
- #define CBS_OWNERDRAWVARIABLE 0x0020L
- #define CBS_AUTOHSCROLL 0x0040L
- #define CBS_OEMCONVERT 0x0080L
- #define CBS_SORT 0x0100L
- #define CBS_HASSTRINGS 0x0200L
- #define CBS_NOINTEGRALHEIGHT 0x0400L
- #endif /* NOWINSTYLES */
- /* Combo Box messages */
- #ifndef NOWINMESSAGES
- #define CB_GETEDITSEL (WM_USER+0)
- #define CB_LIMITTEXT (WM_USER+1)
- #define CB_SETEDITSEL (WM_USER+2)
- #define CB_ADDSTRING (WM_USER+3)
- #define CB_DELETESTRING (WM_USER+4)
- #define CB_DIR (WM_USER+5)
- #define CB_GETCOUNT (WM_USER+6)
- #define CB_GETCURSEL (WM_USER+7)
- #define CB_GETLBTEXT (WM_USER+8)
- #define CB_GETLBTEXTLEN (WM_USER+9)
- #define CB_INSERTSTRING (WM_USER+10)
- #define CB_RESETCONTENT (WM_USER+11)
- #define CB_FINDSTRING (WM_USER+12)
- #define CB_SELECTSTRING (WM_USER+13)
- #define CB_SETCURSEL (WM_USER+14)
- #define CB_SHOWDROPDOWN (WM_USER+15)
- #define CB_GETITEMDATA (WM_USER+16)
- #define CB_SETITEMDATA (WM_USER+17)
- #define CB_GETDROPPEDCONTROLRECT (WM_USER+18)
- #define CB_MSGMAX (WM_USER+19)
- #endif /* NOWINMESSAGES */
- #ifndef NOWINSTYLES
- /* Scroll Bar Styles */
- #define SBS_HORZ 0x0000L
- #define SBS_VERT 0x0001L
- #define SBS_TOPALIGN 0x0002L
- #define SBS_LEFTALIGN 0x0002L
- #define SBS_BOTTOMALIGN 0x0004L
- #define SBS_RIGHTALIGN 0x0004L
- #define SBS_SIZEBOXTOPLEFTALIGN 0x0002L
- #define SBS_SIZEBOXBOTTOMRIGHTALIGN 0x0004L
- #define SBS_SIZEBOX 0x0008L
- #endif /* NOWINSTYLES */
- #endif /* NOCTLMGR */
- #ifndef NOSOUND
- int FAR PASCAL OpenSound(void);
- void FAR PASCAL CloseSound(void);
- int FAR PASCAL SetVoiceQueueSize(int, int);
- int FAR PASCAL SetVoiceNote(int, int, int, int);
- int FAR PASCAL SetVoiceAccent(int, int, int, int, int);
- int FAR PASCAL SetVoiceEnvelope(int, int, int);
- int FAR PASCAL SetSoundNoise(int, int);
- int FAR PASCAL SetVoiceSound(int, LONG, int);
- int FAR PASCAL StartSound(void);
- int FAR PASCAL StopSound(void);
- int FAR PASCAL WaitSoundState(int);
- int FAR PASCAL SyncAllVoices(void);
- int FAR PASCAL CountVoiceNotes(int);
- LPINT FAR PASCAL GetThresholdEvent(void);
- int FAR PASCAL GetThresholdStatus(void);
- int FAR PASCAL SetVoiceThreshold(int, int);
- /* WaitSoundState() Constants */
- #define S_QUEUEEMPTY 0
- #define S_THRESHOLD 1
- #define S_ALLTHRESHOLD 2
- /* Accent Modes */
- #define S_NORMAL 0
- #define S_LEGATO 1
- #define S_STACCATO 2
- /* SetSoundNoise() Sources */
- #define S_PERIOD512 0 /* Freq = N/512 high pitch, less coarse hiss */
- #define S_PERIOD1024 1 /* Freq = N/1024 */
- #define S_PERIOD2048 2 /* Freq = N/2048 low pitch, more coarse hiss */
- #define S_PERIODVOICE 3 /* Source is frequency from voice channel (3) */
- #define S_WHITE512 4 /* Freq = N/512 high pitch, less coarse hiss */
- #define S_WHITE1024 5 /* Freq = N/1024 */
- #define S_WHITE2048 6 /* Freq = N/2048 low pitch, more coarse hiss */
- #define S_WHITEVOICE 7 /* Source is frequency from voice channel (3) */
- #define S_SERDVNA (-1) /* Device not available */
- #define S_SEROFM (-2) /* Out of memory */
- #define S_SERMACT (-3) /* Music active */
- #define S_SERQFUL (-4) /* Queue full */
- #define S_SERBDNT (-5) /* Invalid note */
- #define S_SERDLN (-6) /* Invalid note length */
- #define S_SERDCC (-7) /* Invalid note count */
- #define S_SERDTP (-8) /* Invalid tempo */
- #define S_SERDVL (-9) /* Invalid volume */
- #define S_SERDMD (-10) /* Invalid mode */
- #define S_SERDSH (-11) /* Invalid shape */
- #define S_SERDPT (-12) /* Invalid pitch */
- #define S_SERDFQ (-13) /* Invalid frequency */
- #define S_SERDDR (-14) /* Invalid duration */
- #define S_SERDSR (-15) /* Invalid source */
- #define S_SERDST (-16) /* Invalid state */
- #endif /* NOSOUND */
- #ifndef NOCOMM
- #define NOPARITY 0
- #define ODDPARITY 1
- #define EVENPARITY 2
- #define MARKPARITY 3
- #define SPACEPARITY 4
- #define ONESTOPBIT 0
- #define ONE5STOPBITS 1
- #define TWOSTOPBITS 2
- #define IGNORE 0 /* Ignore signal */
- #define INFINITE 0xFFFF /* Infinite timeout */
- /* Error Flags */
- #define CE_RXOVER 0x0001 /* Receive Queue overflow */
- #define CE_OVERRUN 0x0002 /* Receive Overrun Error */
- #define CE_RXPARITY 0x0004 /* Receive Parity Error */
- #define CE_FRAME 0x0008 /* Receive Framing error */
- #define CE_BREAK 0x0010 /* Break Detected */
- #define CE_CTSTO 0x0020 /* CTS Timeout */
- #define CE_DSRTO 0x0040 /* DSR Timeout */
- #define CE_RLSDTO 0x0080 /* RLSD Timeout */
- #define CE_TXFULL 0x0100 /* TX Queue is full */
- #define CE_PTO 0x0200 /* LPTx Timeout */
- #define CE_IOE 0x0400 /* LPTx I/O Error */
- #define CE_DNS 0x0800 /* LPTx Device not selected */
- #define CE_OOP 0x1000 /* LPTx Out-Of-Paper */
- #define CE_MODE 0x8000 /* Requested mode unsupported */
- #define IE_BADID (-1) /* Invalid or unsupported id */
- #define IE_OPEN (-2) /* Device Already Open */
- #define IE_NOPEN (-3) /* Device Not Open */
- #define IE_MEMORY (-4) /* Unable to allocate queues */
- #define IE_DEFAULT (-5) /* Error in default parameters */
- #define IE_HARDWARE (-10) /* Hardware Not Present */
- #define IE_BYTESIZE (-11) /* Illegal Byte Size */
- #define IE_BAUDRATE (-12) /* Unsupported BaudRate */
- /* Events */
- #define EV_RXCHAR 0x0001 /* Any Character received */
- #define EV_RXFLAG 0x0002 /* Received certain character */
- #define EV_TXEMPTY 0x0004 /* Transmitt Queue Empty */
- #define EV_CTS 0x0008 /* CTS changed state */
- #define EV_DSR 0x0010 /* DSR changed state */
- #define EV_RLSD 0x0020 /* RLSD changed state */
- #define EV_BREAK 0x0040 /* BREAK received */
- #define EV_ERR 0x0080 /* Line status error occurred */
- #define EV_RING 0x0100 /* Ring signal detected */
- #define EV_PERR 0x0200 /* Printer error occured */
- /* Escape Functions */
- #define SETXOFF 1 /* Simulate XOFF received */
- #define SETXON 2 /* Simulate XON received */
- #define SETRTS 3 /* Set RTS high */
- #define CLRRTS 4 /* Set RTS low */
- #define SETDTR 5 /* Set DTR high */
- #define CLRDTR 6 /* Set DTR low */
- #define RESETDEV 7 /* Reset device if possible */
- #define LPTx 0x80 /* Set if ID is for LPT device */
- typedef struct tagDCB
- {
- BYTE Id; /* Internal Device ID */
- WORD BaudRate; /* Baud rate at which runing */
- BYTE ByteSize; /* Number of bits/byte, 4-8 */
- BYTE Parity; /* 0-4=None,Odd,Even,Mark,Space */
- BYTE StopBits; /* 0,1,2 = 1, 1.5, 2 */
- WORD RlsTimeout; /* Timeout for RLSD to be set */
- WORD CtsTimeout; /* Timeout for CTS to be set */
- WORD DsrTimeout; /* Timeout for DSR to be set */
- BYTE fBinary: 1; /* Binary Mode (skip EOF check */
- BYTE fRtsDisable:1; /* Don't assert RTS at init time */
- BYTE fParity: 1; /* Enable parity checking */
- BYTE fOutxCtsFlow:1; /* CTS handshaking on output */
- BYTE fOutxDsrFlow:1; /* DSR handshaking on output */
- BYTE fDummy: 2; /* Reserved */
- BYTE fDtrDisable:1; /* Don't assert DTR at init time */
- BYTE fOutX: 1; /* Enable output X-ON/X-OFF */
- BYTE fInX: 1; /* Enable input X-ON/X-OFF */
- BYTE fPeChar: 1; /* Enable Parity Err Replacement */
- BYTE fNull: 1; /* Enable Null stripping */
- BYTE fChEvt: 1; /* Enable Rx character event. */
- BYTE fDtrflow: 1; /* DTR handshake on input */
- BYTE fRtsflow: 1; /* RTS handshake on input */
- BYTE fDummy2: 1;
- char XonChar; /* Tx and Rx X-ON character */
- char XoffChar; /* Tx and Rx X-OFF character */
- WORD XonLim; /* Transmit X-ON threshold */
- WORD XoffLim; /* Transmit X-OFF threshold */
- char PeChar; /* Parity error replacement char */
- char EofChar; /* End of Input character */
- char EvtChar; /* Received Event character */
- WORD TxDelay; /* Amount of time between chars */
- } DCB;
- typedef struct tagCOMSTAT
- {
- BYTE fCtsHold: 1; /* Transmit is on CTS hold */
- BYTE fDsrHold: 1; /* Transmit is on DSR hold */
- BYTE fRlsdHold: 1; /* Transmit is on RLSD hold */
- BYTE fXoffHold: 1; /* Received handshake */
- BYTE fXoffSent: 1; /* Issued handshake */
- BYTE fEof: 1; /* End of file character found */
- BYTE fTxim: 1; /* Character being transmitted */
- WORD cbInQue; /* count of characters in Rx Queue */
- WORD cbOutQue; /* count of characters in Tx Queue */
- } COMSTAT;
- int FAR PASCAL OpenComm(LPSTR, WORD, WORD);
- int FAR PASCAL SetCommState(DCB FAR *);
- int FAR PASCAL GetCommState(int, DCB FAR *);
- int FAR PASCAL ReadComm(int, LPSTR, int);
- int FAR PASCAL UngetCommChar(int, char);
- int FAR PASCAL WriteComm(int, LPSTR, int);
- int FAR PASCAL CloseComm(int);
- int FAR PASCAL GetCommError(int, COMSTAT FAR *);
- int FAR PASCAL BuildCommDCB(LPSTR, DCB FAR *);
- int FAR PASCAL TransmitCommChar(int, char);
- WORD FAR * FAR PASCAL SetCommEventMask(int, WORD);
- WORD FAR PASCAL GetCommEventMask(int, int);
- int FAR PASCAL SetCommBreak(int);
- int FAR PASCAL ClearCommBreak(int);
- int FAR PASCAL FlushComm(int, int);
- int FAR PASCAL EscapeCommFunction(int, int);
- #endif /* NOCOMM */
- #ifndef NOMDI
- typedef struct tagMDICREATESTRUCT
- {
- LPSTR szClass;
- LPSTR szTitle;
- HANDLE hOwner;
- int x,y;
- int cx,cy;
- LONG style;
- LONG lParam; /* app-defined stuff */
- } MDICREATESTRUCT;
- typedef MDICREATESTRUCT FAR * LPMDICREATESTRUCT;
- typedef struct tagCLIENTCREATESTRUCT
- {
- HANDLE hWindowMenu;
- WORD idFirstChild;
- } CLIENTCREATESTRUCT;
- typedef CLIENTCREATESTRUCT FAR * LPCLIENTCREATESTRUCT;
- LONG FAR PASCAL DefFrameProc(HWND,HWND,WORD,WORD,LONG);
- LONG FAR PASCAL DefMDIChildProc(HWND,WORD,WORD,LONG);
- #ifndef NOMSG
- BOOL FAR PASCAL TranslateMDISysAccel(HWND,LPMSG);
- #endif
- WORD FAR PASCAL ArrangeIconicWindows(HWND);
- #endif /* NOMDI */
- #endif /* NOUSER */
- #ifndef NOHELP
- /* Help engine section. */
- /* Commands to pass WinHelp() */
- #define HELP_CONTEXT 0x0001 /* Display topic in ulTopic */
- #define HELP_QUIT 0x0002 /* Terminate help */
- #define HELP_INDEX 0x0003 /* Display index */
- #define HELP_HELPONHELP 0x0004 /* Display help on using help */
- #define HELP_SETINDEX 0x0005 /* Set the current Index for multi index help */
- #define HELP_KEY 0x0101 /* Display topic for keyword in offabData */
- #define HELP_MULTIKEY 0x0201
- BOOL FAR PASCAL WinHelp(HWND hwndMain, LPSTR lpszHelp, WORD usCommand, DWORD ulData);
- typedef struct tagMULTIKEYHELP
- {
- WORD mkSize;
- BYTE mkKeylist;
- BYTE szKeyphrase[1];
- } MULTIKEYHELP;
- #endif /* NOHELP */
- #ifndef NOPROFILER
- /* function declarations for profiler routines contained in Windows libraries */
- int far pascal ProfInsChk(void);
- void far pascal ProfSetup(int,int);
- void far pascal ProfSampRate(int,int);
- void far pascal ProfStart(void);
- void far pascal ProfStop(void);
- void far pascal ProfClear(void);
- void far pascal ProfFlush(void);
- void far pascal ProfFinish(void);
- #endif /* NOPROFILER */
- int PASCAL WinMain( HANDLE, HANDLE, LPSTR, int );
- int FAR PASCAL LibMain( HANDLE, WORD, WORD, LPSTR );
- #if defined( __cplusplus )
- }
- #endif /* __cplusplus */
- #ifndef RC_INVOKED
- #pragma option -a.
- #pragma warn .bbf
- #endif
- #endif /* __WINDOWS_H */