Annotation of mstools/h/drivinit.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  *  drivinit.h
                      3:  *
                      4:  *  Header file for printer driver initialization using ExtDeviceModeEx()
                      5:  *  and DeviceCapabilitiesEx().
                      6:  *
                      7:  */
                      8: 
                      9: /* size of a device name string */
                     10: #define CCHDEVICENAME 32
                     11: 
                     12: /* current version of specification */
                     13: #define DM_SPECVERSION 0x300
                     14: 
                     15: /* field selection bits */
                     16: #define DM_ORIENTATION      0x0000001L
                     17: #define DM_PAPERSIZE        0x0000002L
                     18: #define DM_PAPERLENGTH      0x0000004L
                     19: #define DM_PAPERWIDTH       0x0000008L
                     20: #define DM_SCALE            0x0000010L
                     21: #define DM_COPIES           0x0000100L
                     22: #define DM_DEFAULTSOURCE    0x0000200L
                     23: #define DM_PRINTQUALITY     0x0000400L
                     24: #define DM_COLOR            0x0000800L
                     25: #define DM_DUPLEX           0x0001000L
                     26: 
                     27: /* orientation selections */
                     28: #define DMORIENT_PORTRAIT   1
                     29: #define DMORIENT_LANDSCAPE  2
                     30: 
                     31: /* paper selections */
                     32: #define DMPAPER_FIRST       DMPAPER_LETTER
                     33: #define DMPAPER_LETTER      1           // Letter 8 1/2 x 11 in
                     34: #define DMPAPER_LETTERSMALL 2           // Letter Small 8 1/2 x 11 in
                     35: #define DMPAPER_TABLOID     3           // Tabloid 11 x 17 in
                     36: #define DMPAPER_LEDGER      4           // Ledger 17 x 11 in
                     37: #define DMPAPER_LEGAL       5           // Legal 8 1/2 x 14 in
                     38: #define DMPAPER_STATEMENT   6           // Statement 5 1/2 x 8 1/2 in
                     39: #define DMPAPER_EXECUTIVE   7           // Executive"7 1/2 x 10 in
                     40: #define DMPAPER_A3          8           // A3 297 x 420 mm
                     41: #define DMPAPER_A4          9           // A4 210 x 297 mm
                     42: #define DMPAPER_A4SMALL     10          // A4 Small 210 x 297 mm
                     43: #define DMPAPER_A5          11          // A5 148 x 210 mm
                     44: #define DMPAPER_B4          12          // B4 250 x 354
                     45: #define DMPAPER_B5          13          // B5 182 x 257 mm
                     46: #define DMPAPER_FOLIO       14          // Folio 8 1/2 x 13 in
                     47: #define DMPAPER_QUARTO      15          // Quarto 215 x 275 mm
                     48: #define DMPAPER_10X14       16          // 10x14 in
                     49: #define DMPAPER_11X17       17          // 11x17 in
                     50: #define DMPAPER_NOTE        18          // Note 8 1/2 x 11 in
                     51: #define DMPAPER_ENV_9       19          // Envelope #9 3 7/8 x 8 7/8
                     52: #define DMPAPER_ENV_10      20          // Envelope #10 4 1/8 x 9 1/2
                     53: #define DMPAPER_ENV_11      21          // Envelope #11 4 1/2 x 10 3/8
                     54: #define DMPAPER_ENV_12      22          // Envelope #12 4 \276 x 11
                     55: #define DMPAPER_ENV_14      23          // Envelope #14 5 x 11 1/2
                     56: #define DMPAPER_CSHEET      24          // C size sheet
                     57: #define DMPAPER_DSHEET      25          // D size sheet
                     58: #define DMPAPER_ESHEET      26          // E size sheet
                     59: #define DMPAPER_ENV_DL      27          // Envelope DL 110 x 220mm
                     60: #define DMPAPER_ENV_C5      28          // Envelope C5 162 x 229 mm
                     61: #define DMPAPER_LAST        DMPAPER_ENV_C5
                     62: 
                     63: #define DMPAPER_USER        256
                     64: 
                     65: /* bin selections */
                     66: #define DMBIN_FIRST         DMBIN_UPPER
                     67: #define DMBIN_UPPER         1
                     68: #define DMBIN_ONLYONE       1
                     69: #define DMBIN_LOWER         2
                     70: #define DMBIN_MIDDLE        3
                     71: #define DMBIN_MANUAL        4
                     72: #define DMBIN_ENVELOPE      5
                     73: #define DMBIN_ENVMANUAL     6
                     74: #define DMBIN_AUTO          7
                     75: #define DMBIN_TRACTOR       8
                     76: #define DMBIN_SMALLFMT      9
                     77: #define DMBIN_LARGEFMT      10
                     78: #define DMBIN_LARGECAPACITY 11
                     79: #define DMBIN_CASSETTE      14
                     80: #define DMBIN_LAST          DMBIN_CASSETTE
                     81: 
                     82: #define DMBIN_USER          256     /* device specific bins start here */
                     83: 
                     84: /* print qualities */
                     85: #define DMRES_DRAFT         (-1)
                     86: #define DMRES_LOW           (-2)
                     87: #define DMRES_MEDIUM        (-3)
                     88: #define DMRES_HIGH          (-4)
                     89: 
                     90: /* color enable/disable for color printers */
                     91: #define DMCOLOR_MONOCHROME  1
                     92: #define DMCOLOR_COLOR       2
                     93: 
                     94: /* duplex enable */
                     95: #define DMDUP_SIMPLEX    1
                     96: #define DMDUP_VERTICAL   2
                     97: #define DMDUP_HORIZONTAL 3
                     98: 
                     99: #ifndef _WINGDI_
                    100: typedef struct _devicemode {
                    101:     char dmDeviceName[CCHDEVICENAME];
                    102:     WORD dmSpecVersion;
                    103:     WORD dmDriverVersion;
                    104:     WORD dmSize;
                    105:     WORD dmDriverExtra;
                    106:     DWORD dmFields;
                    107:     short dmOrientation;
                    108:     short dmPaperSize;
                    109:     short dmPaperLength;
                    110:     short dmPaperWidth;
                    111:     short dmScale;
                    112:     short dmCopies;
                    113:     short dmDefaultSource;
                    114:     short dmPrintQuality;
                    115:     short dmColor;
                    116:     short dmDuplex;
                    117: } DEVMODE;
                    118: 
                    119: typedef DEVMODE * PDEVMODE, NEAR * NPDEVMODE, FAR * LPDEVMODE;
                    120: 
                    121: #endif
                    122: 
                    123: /* mode selections for the device mode function */
                    124: #define DM_UPDATE           1
                    125: #define DM_COPY             2
                    126: #define DM_PROMPT           4
                    127: #define DM_MODIFY           8
                    128: 
                    129: #define DM_IN_BUFFER        DM_MODIFY
                    130: #define DM_IN_PROMPT        DM_PROMPT
                    131: #define DM_OUT_BUFFER       DM_COPY
                    132: #define DM_OUT_DEFAULT      DM_UPDATE
                    133: 
                    134: /* device capabilities indices */
                    135: #define DC_FIELDS           1
                    136: #define DC_PAPERS           2
                    137: #define DC_PAPERSIZE        3
                    138: #define DC_MINEXTENT        4
                    139: #define DC_MAXEXTENT        5
                    140: #define DC_BINS             6
                    141: #define DC_DUPLEX           7
                    142: #define DC_SIZE             8
                    143: #define DC_EXTRA            9
                    144: #define DC_VERSION          10
                    145: #define DC_DRIVER           11
                    146: #define DC_BINNAMES         12
                    147: #define DC_ENUMRESOLUTIONS  13
                    148: #define DC_FILEDEPENDENCIES 14
                    149: 
                    150: /* export ordinal definitions */
                    151: #define PROC_EXTDEVICEMODE      MAKEINTRESOURCE(90)
                    152: #define PROC_DEVICECAPABILITIES MAKEINTRESOURCE(91)
                    153: #define PROC_OLDDEVICEMODE      MAKEINTRESOURCE(13)
                    154: 
                    155: /* define types of pointers to ExtDeviceModeEx() and DeviceCapabilitiesEx()
                    156:  * functions
                    157:  */
                    158: #ifndef _WINUSER_
                    159: typedef WORD HANDLE;
                    160: typedef WORD HWND;
                    161: #endif
                    162: 
                    163: typedef WORD FAR PASCAL FNDEVMODE(HWND, HANDLE, LPDEVMODE, LPSTR, LPSTR,
                    164:     LPDEVMODE, LPSTR, WORD);
                    165: 
                    166: typedef FNDEVMODE FAR * LPFNDEVMODE;
                    167: 
                    168: typedef DWORD FAR PASCAL FNDEVCAPS(LPSTR, LPSTR, WORD, LPSTR, LPDEVMODE);
                    169: 
                    170: typedef FNDEVCAPS FAR * LPFNDEVCAPS;
                    171: 
                    172: HDC     FAR PASCAL  ResetDC(HDC, LPDEVMODE);

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.