Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

558 lines
12 KiB

/*
| SCC Viewer Technology - Include
|
| Include: SCCVW.H
| Environment: Portable
| Function: Primary definitions for Viewer Technology Specification 4.0
|
*/
#ifndef SCCVW_H
#define SCCVW_H
#ifdef WINDOWS
#include "sccvw_w.h"
#endif
#ifdef MAC
#include "sccvw_m.h"
#endif
#include "sccid.h"
#include "sccio.h"
/*
| Messages TO SCCVIEWER window
*/
#define SCCVW_FIRSTTOMESSAGE SCCVW_START+1000
#define SCCVW_OPENFILE SCCVW_START+1000 // OK
#define SCCVW_CLOSEFILE SCCVW_START+1001 // OK
#define SCCVW_SETFONTS SCCVW_START+1002 // OK
#define SCCVW_SETDEFAULTVIEW SCCVW_START+1003 // OK
#define SCCVW_COPYTOCLIP SCCVW_START+1004 // OK
#define SCCVW_SETIDLEBITMAP SCCVW_START+1005 // OK
#define SCCVW_SETUSERFLAGS SCCVW_START+1008 // OK
#define SCCVW_GETFILEINFO SCCVW_START+1010 // Modify OK
#define SCCVW_GETCLIPINFO SCCVW_START+1013 // OK
#define SCCVW_SEARCH SCCVW_START+1017 // OK
#define SCCVW_SEARCHNEXT SCCVW_START+1018 // OK
#define SCCVW_GETDISPLAYINFO SCCVW_START+1019 // OK
#define SCCVW_GETUSERFLAGS SCCVW_START+1020 // OK
#define SCCVW_ADDOPTIONSTOMENU SCCVW_START+1021 // OK
#define SCCVW_DOMENUITEM SCCVW_START+1022 // OK
#define SCCVW_GETIDLEBITMAP SCCVW_START+1024 // OK
#define SCCVW_PRINT SCCVW_START+1025 // OK
#define SCCVW_PRINTSETUP SCCVW_START+1026 // OK
#define SCCVW_GETERRORINFO SCCVW_START+1027 // OK
#define SCCVW_SELECTALL SCCVW_START+1028 // OK
#define SCCVW_PRINTTODC SCCVW_START+1029 // OK
#define SCCVW_SEARCHDIALOG SCCVW_START+1031 // OK
#define SCCVW_SETMENUMAX SCCVW_START+1032 // OK
#define SCCVW_OPENFILEEX SCCVW_START+1035 // New
#define SCCVW_ADDHILITE SCCVW_START+1036 // New
#define SCCVW_CLEARALLHILITE SCCVW_START+1037 // New
#define SCCVW_GOTOHILITE SCCVW_START+1038 // New
#define SCCVW_UPDATEHILITE SCCVW_START+1039 // New
#define SCCVW_PRINTEX SCCVW_START+1040 // New
#define SCCVW_SETDISPLAYNAME SCCVW_START+1041 // New
#define SCCVW_ADDANNOTATION SCCVW_START+1042 // New - annotations
#define SCCVW_CLEARANNOTATIONS SCCVW_START+1043 // New - annotations
#define SCCVW_GOTOANNOTATION SCCVW_START+1044 // New - annotations
#define SCCVW_SETOPTION SCCVW_START+1050
#define SCCVW_GETOPTION SCCVW_START+1051
#define SCCVW_VIEWFILE SCCVW_START+1052
#define SCCVW_DRAWTORECT SCCVW_START+1053
#define SCCVW_INITDRAWTORECT SCCVW_START+1054
#define SCCVW_GETSECTIONCOUNT SCCVW_START+1055
#define SCCVW_CHANGESECTION SCCVW_START+1056
#define SCCVW_IDLE SCCVW_START+1059
/* Vendor Specific */
#define SCCVW_RENDERRTFTOFILE SCCVW_START+1030 // Vendor Specific
/* SCC Internal */
#define SCCVW_VIEWINFODLG SCCVW_START+1007 // Hide
#define SCCVW_FILEINFODIALOG SCCVW_START+1034 // Hide
#define SCCVW_GETINTERNALFLAGS SCCVW_START+1023 // Hide
#define SCCVW_SETVIEWMENU SCCVW_START+1021 // Hide. Old name
#define SCCVW_GETSPECIALINFO SCCVW_START+1014 // Hide
#define SCCVW_PASTEFROMCLIP SCCVW_START+1015 // Hide
#define SCCVW_CUTTOCLIP SCCVW_START+1016 // Hide
#define SCCVW_OPENDATA SCCVW_START+1011 // Hide
#define SCCVW_CLOSEDATA SCCVW_START+1012 // Hide
#define SCCVW_LASTTOMESSAGE SCCVW_START+1047
/*
| Messages FROM SCCVIEWER window
*/
#define SCCVW_FIRSTFROMMESSAGE SCCVW_START+1100
#define SCCVW_PRINTPROGRESS SCCVW_START+1101
#define SCCVW_SELCHANGE SCCVW_START+1105
#define SCCVW_PRINTNEWPAGE SCCVW_START+1106
#define SCCVW_DISPLAYCHANGE SCCVW_START+1107
#define SCCVW_VIEWTHISFILE SCCVW_START+1109
#define SCCVW_FILECHANGE SCCVW_START+1110
#define SCCVW_RAWTEXT SCCVW_START+1111
/* SCC Internal */
#define SCCVW_ITEMDROP SCCVW_START+1103
#define SCCVW_LASTFROMMESSAGE SCCVW_START+1111
#define SCCVW_PAGETOEND SCCVW_START+1112
/*
| defines for SCCVW_SETDEFAULTVIEW message
*/
#define SCCVW_DEFAULTNONE 0001
#define SCCVW_DEFAULTASCII 0002
#define SCCVW_DEFAULTHEX 0003
/*
| wParam in SCCVW_SETUSERFLAGS
| lpViewInfo->viDisplayFlags
*/
#define SCCVW_SELECTION 0x0001
#define SCCVW_NEEDRAWTEXT 0x0100
#define SCCVW_OPENCLOSE 0x2000
#define SCCVW_SELFBACKGROUND 0x4000
#define SCCVW_ADDOPTTOMENU 0x8000
/* SCC Internal */
#define SCCVW_WORDDRAG 0x0002
#define SCCVW_GRAMMAR 0x0004
#define SCCVW_EDITOR 0x0008
#define SCCVW_HORZSCROLL 0x0010
#define SCCVW_TAGSELECT 0x0020
#define SCCVW_TAGLEFTDOUBLE 0x0040
#define SCCVW_TAGNOTEXT 0x0080
#define SCCVW_WRAPTOSIZE 0x0100
#define SCCVW_SPAM 0x0200
#define SCCVW_DRAGDROP 0x0400
/*
| wParam on SCCVW_OPENFILE
*/
#define SCCVW_FALLBACKTO 0x8000 /* high bit */
#define FI_ASCII 4000
#define FI_HEX 4001
/*
| wParam on SCCVW_SETFONTS
*/
#define SCCVW_DEFAULTSCREENFONT 1
#define SCCVW_DEFAULTPRINTERFONT 2
/*
| SCCVWVIEWFILE structure
*/
typedef struct SCCVWVIEWFILEtag
{
DWORD dwSize;
DWORD dwSpecType;
VOID FAR * pSpec;
DWORD dwViewAs;
BOOL bUseDisplayName;
BYTE szDisplayName[SCCVW_DISPLAYNAMEMAX];
BOOL bDeleteOnClose;
DWORD dwFlags;
DWORD dwReserved1;
DWORD dwReserved2;
} SCCVWVIEWFILE, FAR * PSCCVWVIEWFILE;
/*
|
| SCCVWOPENFILEEX structure
|
*/
typedef struct SCCVWOPENFILEEXtag
{
WORD wSize;
BYTE szPathName[144];
WORD wViewAs;
BYTE szDisplayName[40];
BOOL bUseDisplayName;
BOOL bDeleteOnClose;
} SCCVWOPENFILEEX, FAR * LPSCCVWOPENFILEEX;
/*
|
| SCCVWFILEINFO structure
|
*/
typedef struct SCCVWFILEINFO_1tag
{
WORD fiSize;
BYTE fiName[144];
WORD fiId;
BYTE fiIdName[26];
} SCCVWFILEINFO_1, FAR * LPSCCVWFILEINFO_1;
typedef struct SCCVWFILEINFO_2tag
{
WORD fiSize;
BYTE fiName[144];
WORD fiId;
BYTE fiIdName[26];
BYTE fiDisplayName[40];
} SCCVWFILEINFO_2, FAR * LPSCCVWFILEINFO_2;
typedef struct SCCVWFILEINFOtag
{
WORD wSize;
BYTE szDisplayName[SCCVW_DISPLAYNAMEMAX];
DWORD dwFileId;
BYTE szFileIdName[SCCVW_FILEIDNAMEMAX];
} SCCVWFILEINFO, FAR * PSCCVWFILEINFO;
/*
|
| SCCVWPRINTMARGINS structure
|
*/
typedef struct SCCVWPRINTMARGINStag
{
DWORD dwTop;
DWORD dwBottom;
DWORD dwLeft;
DWORD dwRight;
} SCCVWPRINTMARGINS, FAR * PSCCVWPRINTMARGINS;
/*
|
| SCCVWDRAWTORECT structure
|
*/
typedef struct SCCVWDRAWTORECTtag
{
LONG lUnitsPerInch;
LONG lFormatWidth;
LONG lFormatHeight;
LONG lTop;
LONG lLeft;
LONG lBottom;
LONG lRight;
HANDLE hStartPos;
HANDLE hNextPos;
#ifdef WINDOWS
HDC hDC;
#endif /*WINDOWS*/
} SCCVWDRAWTORECT, FAR * PSCCVWDRAWTORECT;
/*
|
| SCCVWSEARCHINFO structure
|
*/
typedef struct SCCVWSEARCHINFOtag
{
BYTE siText[80];
WORD siTextLen;
WORD siType;
WORD siFrom;
WORD siDirection;
} SCCVWSEARCHINFO, FAR * LPSCCVWSEARCHINFO;
/*
| Possible values for siType in SCCVWSEARCHINFO
*/
#define SCCVW_SEARCHCASE 0x0001
#define SCCVW_SEARCHNOCASE 0x0002
/* Removed in favor of Raw Text and Highlight functionality */
/* #define SCCVW_HIGHLIGHTALL 0x0004 */
/*
| Possible values for siFrom in SCCVWSEARCHINFO
*/
#define SCCVW_SEARCHTOP 0x0001
#define SCCVW_SEARCHBOTTOM 0x0002
#define SCCVW_SEARCHCURRENT 0x0004
/*
| Possible values for siDirection in SCCVWSEARCHINFO
*/
#define SCCVW_SEARCHFORWARD 0x0001
#define SCCVW_SEARCHBACK 0x0002
/*
| SCCVWVIEWTHISFILE structure
*/
typedef struct SCCVWVIEWTHISFILEtag
{
BYTE szPathName[144];
BYTE szDisplayName[40];
WORD wTime;
WORD wDate;
DWORD dwSize;
BOOL bDeleteOnClose;
WORD wViewAs;
} SCCVWVIEWTHISFILE, FAR * LPSCCVWVIEWTHISFILE;
/*
| SCCVWRAWTEXT structure
*/
typedef struct SCCVWRAWTEXTtag
{
WORD wChunk;
WORD wCount;
HANDLE hText;
HANDLE hMap;
} SCCVWRAWTEXT, FAR * LPSCCVWRAWTEXT;
/*
| SCCVWHILITE structure
*/
typedef struct SCCVWHILITEtag
{
DWORD dwStart;
DWORD dwEnd;
DWORD dwUser;
} SCCVWHILITE, FAR * LPSCCVWHILITE;
#define SCCVWMAKEPOS(id,offset) ((LONG)(((WORD)(offset)) | (((DWORD)((WORD)(id))) << 16)))
/*
| Location values for SCCVW_GOTOHILITE
*/
#define SCCVW_HILITEFIRST 1
#define SCCVW_HILITELAST 2
#define SCCVW_HILITEPREV 3
#define SCCVW_HILITENEXT 4
#define SCCVW_HILITEUSER 5
/*
| Return values for SCCVW_GOTOHILITE
*/
#define SCCVW_HILITENONE 0
#define SCCVW_HILITEATFIRST 1
#define SCCVW_HILITEATLAST 2
#define SCCVW_HILITEOK 3
/*
|
| Flags returned by the SCCVW_GETCLIPINFO message
|
*/
#define SCCVW_CANCOPYTOCLIP 0x0001
#define SCCVW_CANCUTTOCLIP 0x0002
#define SCCVW_CANPASTEFROMCLIP 0x0004
/*
|
| Error values returned by SCCVW_OPENFILE & SCCVW_OPENDATA
|
*/
#define SCCVWERR_OK 0
#define SCCVWERR_INVALIDID 1
#define SCCVWERR_FILTERLOADFAILED 2
#define SCCVWERR_FILTERALLOCFAILED 3
#define SCCVWERR_NOFILTER 4
#define SCCVWERR_DISPLAYINITFAILED 5
#define SCCVWERR_CHUNKERINITFAILED 6
#define SCCVWERR_FILEOPENFAILED 7
#define SCCVWERR_UNKNOWNFAILURE 8
#define SCCVWERR_BADFILE 9
#define SCCVWERR_EMPTYFILE 10
#define SCCVWERR_PROTECTEDFILE 11
#define SCCVWERR_SUPFILEOPENFAILED 12
#define SCCVWERR_ALLOCFAILED 13
#define SCCVWERR_UNSUPPORTEDFORMAT 14
#define SCCVWERR_BADPARAM 15
#define SCCVWERR_NOFILE 16
#define SCCVWERR_FEATURENOTAVAIL 17
#define SCCVWERR_UNKNOWN 18
#define SCCVWERR_NODISPLAYENGINE 19
#define SCCVWERR_USEROFFSET 100
/*
| General Font Specification
*/
#define SCCVW_CHARSET_SHIFTJIS 0x10
#define SCCVW_CHARSET_HANGEUL 0x11
#define SCCVW_CHARSET_CHINESEBIG5 0x12
#define SCCVW_CHARSET_ANSI 0x13
#define SCCVW_CHARSET_OEM 0x14
#define SCCVW_CHARSET_MAC 0x15
#define SCCVW_CHARSET_SYMBOL 0x16
#define SCCVW_CHARSET_GB2312 0x17
#define SCCVW_CHARSET_HEBREW 0x18
#define SCCVW_CHARSET_ARABIC 0x19
#define SCCVW_CHARSET_GREEK 0x1A
#define SCCVW_CHARSET_TURKISH 0x1B
#define SCCVW_CHARSET_THAI 0x1C
#define SCCVW_CHARSET_EASTEUROPE 0x1D
#define SCCVW_CHARSET_RUSSIAN 0x1E
#define SCCVW_CHARSET_BALTIC 0x1F
typedef struct SCCVWFONTSPECtag
{
BYTE szFace[40];
WORD wHeight;
WORD wAttr;
WORD wType;
} SCCVWFONTSPEC, FAR * LPSCCVWFONTSPEC;
/*
| Option structure
*/
typedef struct SCCVWOPTIONSPECtag
{
DWORD dwId;
DWORD dwFlags;
VOID FAR * pData;
} SCCVWOPTIONSPEC, FAR * PSCCVWOPTIONSPEC;
#define SCCVWOPTION_DEFAULT 0x0001
#define SCCVWOPTION_CURRENT 0x0002
// Moved down from the 4D level to support hilighting in DESS
/*
| wParams for SCCVW_ADDANNOTATION message
*/
#define SCCVW_HILITETEXT 1
#define SCCVW_INSERTICON 2
#define SCCVW_HIDETEXT 3
/*
| SCCVWHIDETEXT struct
*/
typedef struct SCCVWHIDETEXT40tag
{
DWORD dwSize;
DWORD dwUser;
DWORD dwStartPos;
DWORD dwEndPos;
} SCCVWHIDETEXT40, FAR * PSCCVWHIDETEXT40;
/*
| SCCVWHILITETEXT struct
*/
typedef struct SCCVWHILITETEXT40tag
{
DWORD dwSize;
DWORD dwUser;
DWORD dwStartPos;
DWORD dwEndPos;
DWORD dwInteraction;
DWORD dwDisplay;
} SCCVWHILITETEXT40, FAR * PSCCVWHILITETEXT40;
/*
| SCCVWINSERTICON struct
*/
typedef struct SCCVWINSERTICON40tag
{
DWORD dwSize;
DWORD dwUser;
DWORD dwIconPos;
DWORD dwIconEnd;
DWORD dwInteraction;
HANDLE hIcon;
} SCCVWINSERTICON40, FAR * PSCCVWINSERTICON40;
/*
| Location values for SCCVW_GOTOANNO
*/
#define SCCVW_GOTOFIRST 1
#define SCCVW_GOTOLAST 2
#define SCCVW_GOTOPREV 3
#define SCCVW_GOTONEXT 4
#define SCCVW_MASK 0x1000
#define SCCVW_ABSOLUTE 0x2000
/*
| Return values for SCCVW_GOTOANNO
*/
#define SCCVW_FOUNDNONE 0
#define SCCVW_FOUNDOK 3
/*
| dwDisplay values for SCCVWHILITETEXT
*/
#define SCCVW_BDEFAULT 0x10000000
#define SCCVW_FDEFAULT 0x20000000
#define SCCVW_BBLACK 0x00000000
#define SCCVW_BDARKRED 0x00000001
#define SCCVW_BDARKGREEN 0x00000002
#define SCCVW_BDARKYELLOW 0x00000003
#define SCCVW_BDARKBLUE 0x00000004
#define SCCVW_BDARKMAGENTA 0x00000005
#define SCCVW_BDARKCYAN 0x00000006
#define SCCVW_BLIGHTGRAY 0x00000007
#define SCCVW_BGRAY 0x00000008
#define SCCVW_BRED 0x00000009
#define SCCVW_BGREEN 0x0000000A
#define SCCVW_BYELLOW 0x0000000B
#define SCCVW_BBLUE 0x0000000C
#define SCCVW_BMAGENTA 0x0000000D
#define SCCVW_BCYAN 0x0000000E
#define SCCVW_BWHITE 0x0000000F
#define SCCVW_FBLACK 0x00000000
#define SCCVW_FDARKRED 0x00000010
#define SCCVW_FDARKGREEN 0x00000020
#define SCCVW_FDARKYELLOW 0x00000030
#define SCCVW_FDARKBLUE 0x00000040
#define SCCVW_FDARKMAGENTA 0x00000050
#define SCCVW_FDARKCYAN 0x00000060
#define SCCVW_FLIGHTGRAY 0x00000070
#define SCCVW_FGRAY 0x00000080
#define SCCVW_FRED 0x00000090
#define SCCVW_FGREEN 0x000000A0
#define SCCVW_FYELLOW 0x000000B0
#define SCCVW_FBLUE 0x000000C0
#define SCCVW_FMAGENTA 0x000000D0
#define SCCVW_FCYAN 0x000000E0
#define SCCVW_FWHITE 0x000000F0
#define SCCVWMAKEPOS(id,offset) ((LONG)(((WORD)(offset)) | (((DWORD)((WORD)(id))) << 16)))
#endif /*SCCVW_H*/