Annotation of mstools/samples/mfedit/mfedit.h, revision 1.1.1.3

1.1       root        1: /******************************Module*Header*******************************\
                      2: * Module Name: mfedit.h
                      3: *
                      4: * Header file for mfedit
                      5: *
                      6: * Created: 28-May-1992 14:57:56
                      7: * Author: Petrus Wong
                      8: *
                      9: * Copyright (c) 1990 Microsoft Corporation
                     10: *
                     11: * Contains all the definitions, global variables, structures, etc
                     12: *
                     13: * Dependencies:
                     14: *
                     15: *   metadef.h
                     16: *
                     17: \**************************************************************************/
                     18: #include <windows.h>
                     19: #include <string.h>
                     20: 
                     21: #define LIGHTGRAY               RGB(192, 192, 192)
                     22: #define DARKGRAY                RGB(128, 128, 128)
                     23: #define MAX_POINTS              256
                     24: #define MAX_POINTS_MF           3
                     25: #define MAX_POINTS_BMP          3
1.1.1.3 ! root       26: #define MAX_FRAME           800
        !            27: #define MAX_FILE            800
        !            28: 
1.1       root       29: //
                     30: // Menu ID's
                     31: //
                     32: #define MM_LOAD                 7001
                     33: #define MM_RECORD               7002
                     34: #define MM_PRINT                7003
                     35: #define MM_PAGESETUP            7004
                     36: #define MM_PRINTSETUP           7005
                     37: #define MM_ABOUT                7006
                     38: #define MM_CUT                  7007
                     39: #define MM_COPY                 7008
                     40: #define MM_PASTE                7009
                     41: #define MM_DEL                  7010
                     42: #define MM_LOAD_BMP             7011
                     43: #define MM_SAVE_BMP             7012
                     44: #define MM_LOAD_MASKBMP         7013
                     45: #define MM_REMOVE               7014
                     46: #define MM_INSERT               7015
                     47: #define MM_HITTEST              7016
                     48: #define MM_REPEAT               7017
                     49: #define MM_INCREASE             7018
                     50: #define MM_NORMAL               7019
                     51: #define MM_DECREASE             7020
                     52: #define MM_PEN                  7021
                     53: #define MM_BRUSH                7022
                     54: #define MM_FONT                 7023
1.1.1.2   root       55: #define MM_LEABOUT              7024
1.1.1.3 ! root       56: #define MM_FIT2WND              7025
        !            57: #define MM_IMPORT_3X            7026
        !            58: #define MM_EXPORT_3X            7027
        !            59: #define MM_TTOUTLN_STROKEFILL   7028
        !            60: #define MM_TTOUTLN_POLYDRAW     7029
1.1       root       61: 
                     62: #define SIZEOFCAPTIONTEXT      20
                     63: 
                     64: #define ACCEL_ID                100
1.1.1.3 ! root       65: #define APP_ICON                 100
1.1       root       66: 
                     67: //
                     68: // Control Panel ID's
                     69: //
                     70: #define OD_BTN_CNT              5
                     71: #define DID_CTRLPANEL           100
                     72: #define DID_ZERO                1000
                     73: #define DID_ONE                 1001
                     74: #define DID_TWO                 1002
                     75: #define DID_THREE               1003
                     76: #define DID_FOUR                1004
                     77: #define DID_FIVE                1005
                     78: #define DID_SIX                 1006
                     79: #define DID_SEVEN               1007
                     80: #define DID_EIGHT               1008
                     81: #define DID_NINE                1009
                     82: #define DID_TEN_PLUS            1010
                     83: #define ID_OD_BTN_BASE          1011
                     84: #define DID_OPEN                1011
                     85: #define DID_RECORD              1012
                     86: #define DID_STOP                1013
                     87: #define DID_PLAY                1014
                     88: #define DID_FF                  1015
                     89: #define DID_CLEAR               1016
                     90: #define DID_COUNTER             1017
1.1.1.2   root       91: #define DID_TMP                 1018
1.1       root       92: 
                     93: //
                     94: // Control Panel's Owner draw bitmaps
                     95: //
                     96: #define BMID_BASED              1011
                     97: #define BMID_OPEND              1011
                     98: #define BMID_RECORDD            1012
                     99: #define BMID_STOPD              1013
                    100: #define BMID_PLAYD              1014
                    101: #define BMID_FFD                1015
                    102: #define BMID_BASEU              2011
                    103: #define BMID_OPENU              2011
                    104: #define BMID_RECORDU            2012
                    105: #define BMID_STOPU              2013
                    106: #define BMID_PLAYU              2014
                    107: #define BMID_FFU                2015
                    108: 
                    109: //
                    110: // Tools ID's
                    111: //
                    112: #define OD_TOOL_CNT             10
                    113: #define ID_OD_TOOL_BASE         3001
                    114: #define DID_PEN                 3001
                    115: #define DID_TEXT                3002
                    116: #define DID_RECT                3003
                    117: #define DID_FILLRECT            3004
                    118: #define DID_ELLIPSE             3005
                    119: #define DID_FILLELLIPSE         3006
                    120: #define DID_LINE                3007
                    121: #define DID_BEZIER              3008
                    122: #define DID_BMPOBJ              3009
                    123: #define DID_METAF               3010
                    124: 
                    125: //
                    126: // Tools Owner Draw bitmaps
                    127: //
                    128: #define BMID_TOOLBASED          3001
                    129: #define BMID_PEND               3001
                    130: #define BMID_TEXTD              3002
                    131: #define BMID_RECTD              3003
                    132: #define BMID_FILLRECTD          3004
                    133: #define BMID_ELLIPSED           3005
                    134: #define BMID_FILLELLIPSED       3006
                    135: #define BMID_LINED              3007
                    136: #define BMID_BEZIERD            3008
                    137: #define BMID_BMPOBJD            3009
                    138: #define BMID_METAFD             3010
                    139: #define BMID_TOOLBASEU          4001
                    140: #define BMID_PENU               4001
                    141: #define BMID_TEXTU              4002
                    142: #define BMID_RECTU              4003
                    143: #define BMID_FILLRECTU          4004
                    144: #define BMID_ELLIPSEU           4005
                    145: #define BMID_FILLELLIPSEU       4006
                    146: #define BMID_LINEU              4007
                    147: #define BMID_BEZIERU            4008
                    148: #define BMID_BMPOBJU            4009
                    149: #define BMID_METAFU             4010
                    150: 
                    151: #define MR_MIN                     1
                    152: 
                    153: #define MR_METAFILE                1
                    154: #define MR_POLYBEZIER              2
                    155: #define MR_POLYGON                 3
                    156: #define MR_POLYLINE                4
                    157: #define MR_POLYBEZIERTO                    5
                    158: #define MR_POLYLINETO              6
                    159: #define MR_POLYPOLYLINE                    7
                    160: #define MR_POLYPOLYGON             8
                    161: #define MR_SETWINDOWEXTEX          9
                    162: #define MR_SETWINDOWORGEX          10
                    163: #define MR_SETVIEWPORTEXTEX        11
                    164: #define MR_SETVIEWPORTORGEX        12
                    165: #define MR_SETBRUSHORGEX           13
                    166: #define MR_EOF                     14
                    167: #define MR_SETPIXELV               15
                    168: #define MR_SETMAPPERFLAGS          16
                    169: #define MR_SETMAPMODE              17
                    170: #define MR_SETBKMODE               18
                    171: #define MR_SETPOLYFILLMODE         19
                    172: #define MR_SETROP2                 20
                    173: #define MR_SETSTRETCHBLTMODE       21
                    174: #define MR_SETTEXTALIGN                    22
                    175: 
                    176: #define MR_SETTEXTCOLOR                    24
                    177: #define MR_SETBKCOLOR              25
                    178: #define MR_OFFSETCLIPRGN           26
                    179: #define MR_MOVETOEX                27
                    180: #define MR_SETMETARGN              28
                    181: #define MR_EXCLUDECLIPRECT         29
                    182: #define MR_INTERSECTCLIPRECT       30
                    183: #define MR_SCALEVIEWPORTEXTEX      31
                    184: #define MR_SCALEWINDOWEXTEX        32
                    185: #define MR_SAVEDC                  33
                    186: #define MR_RESTOREDC               34
                    187: #define MR_SETWORLDTRANSFORM       35
                    188: #define MR_MODIFYWORLDTRANSFORM            36
                    189: #define MR_SELECTOBJECT                    37
                    190: #define MR_CREATEPEN               38
                    191: #define MR_CREATEBRUSHINDIRECT     39
                    192: #define MR_DELETEOBJECT                    40
                    193: #define MR_ANGLEARC                41
                    194: #define MR_ELLIPSE                 42
                    195: #define MR_RECTANGLE               43
                    196: #define MR_ROUNDRECT               44
                    197: #define MR_ARC                     45
                    198: #define MR_CHORD                   46
                    199: #define MR_PIE                     47
                    200: #define MR_SELECTPALETTE           48
                    201: #define MR_CREATEPALETTE           49
                    202: #define MR_SETPALETTEENTRIES       50
                    203: #define MR_RESIZEPALETTE           51
                    204: #define MR_REALIZEPALETTE          52
                    205: #define MR_EXTFLOODFILL                    53
                    206: #define MR_LINETO                  54
                    207: #define MR_ARCTO                   55
                    208: #define MR_POLYDRAW                56
                    209: #define MR_SETARCDIRECTION         57
                    210: #define MR_SETMITERLIMIT           58
                    211: #define MR_BEGINPATH               59
                    212: #define MR_ENDPATH                 60
                    213: #define MR_CLOSEFIGURE             61
                    214: #define MR_FILLPATH                62
                    215: #define MR_STROKEANDFILLPATH       63
                    216: #define MR_STROKEPATH              64
                    217: #define MR_FLATTENPATH             65
                    218: #define MR_WIDENPATH               66
                    219: #define MR_SELECTCLIPPATH          67
                    220: #define MR_ABORTPATH               68
                    221: 
                    222: #define MR_GDICOMMENT              70
                    223: #define MR_FILLRGN                 71
                    224: #define MR_FRAMERGN                72
                    225: #define MR_INVERTRGN               73
                    226: #define MR_PAINTRGN                74
                    227: #define MR_EXTSELECTCLIPRGN        75
                    228: #define MR_BITBLT                  76
                    229: #define MR_STRETCHBLT              77
                    230: #define MR_MASKBLT                 78
                    231: #define MR_PLGBLT                  79
                    232: #define MR_SETDIBITSTODEVICE       80
                    233: #define MR_STRETCHDIBITS           81
                    234: #define MR_EXTCREATEFONTINDIRECTW   82
                    235: #define MR_EXTTEXTOUTA             83
                    236: #define MR_EXTTEXTOUTW             84
                    237: #define MR_POLYBEZIER16                    85
                    238: #define MR_POLYGON16               86
                    239: #define MR_POLYLINE16              87
                    240: #define MR_POLYBEZIERTO16          88
                    241: #define MR_POLYLINETO16                    89
                    242: #define MR_POLYPOLYLINE16          90
                    243: #define MR_POLYPOLYGON16           91
                    244: #define MR_POLYDRAW16              92
                    245: #define MR_CREATEMONOBRUSH         93
                    246: #define MR_CREATEDIBPATTERNBRUSHPT  94
                    247: #define MR_EXTCREATEPEN                    95
                    248: #define MR_MAX                     95
                    249: 
                    250: 
                    251: //
                    252: // some handy macros
                    253: //
                    254: #define GET_WM_CTLCOLOR_HDC(wp, lp, msg)        (HDC)(wp)
                    255: #define GET_WM_CTLCOLOR_HWND(wp, lp, msg)       (HWND)(lp)
                    256: #define GET_WM_CTLCOLOR_TYPE(wp, lp, msg)       (WORD)(msg - WM_CTLCOLORMSGBOX)
                    257: 
1.1.1.2   root      258: #define META32_SIGNATURE        0x464D4520      // ' EMF'
                    259: #define ALDUS_ID               0x9AC6CDD7
                    260: 
                    261: typedef struct
                    262:   {
                    263:   DWORD   key;
1.1.1.3 ! root      264:   WORD          hmf;
        !           265:   SMALL_RECT    bbox;
1.1.1.2   root      266:   WORD    inch;
                    267:   DWORD   reserved;
                    268:   WORD    checksum;
                    269:   } APMFILEHEADER;
                    270: typedef APMFILEHEADER * PAPMFILEHEADER;
                    271: #define APMSIZE 22
                    272: 
                    273: 
                    274: #ifndef RC_INVOKED
                    275: #pragma pack(2)
                    276: typedef struct tagMETA16HEADER
                    277: {
                    278:     WORD       mtType;
                    279:     WORD       mtHeaderSize;
                    280:     WORD       mtVersion;
                    281:     DWORD      mtSize;
                    282:     WORD       mtNoObjects;
                    283:     DWORD      mtMaxRecord;
                    284:     WORD       mtNoParameters;
                    285: } META16HEADER, LPMETA16HEADER;
                    286: #pragma pack()
                    287: 
                    288: #endif // RC_INVOKED
                    289: 
                    290: 
1.1       root      291: typedef struct _playinfo {
                    292:     int iRecord;
                    293:     BOOL bPlayContinuous;
                    294: } PLAYINFO;
                    295: 
                    296: typedef struct _metalookup {
                    297:     LPSTR   szGDIName;
                    298:     int     iMRNumber;
                    299: } METALOOKUP;
                    300: 
                    301: typedef struct _htdata {
                    302:     POINT   point;
                    303:     int     iRecord;
                    304: } HTDATA;
                    305: 
                    306: METALOOKUP rgMetaName[] =
                    307: {
                    308:    { "                          ", 0                         },
                    309:    { "METAFILE                  ", MR_METAFILE               },
                    310:    { "POLYBEZIER                ", MR_POLYBEZIER             },
                    311:    { "POLYGON                   ", MR_POLYGON                },
                    312:    { "POLYLINE                  ", MR_POLYLINE               },
                    313:    { "POLYBEZIERTO              ", MR_POLYBEZIERTO           },
                    314:    { "POLYLINETO                ", MR_POLYLINETO             },
                    315:    { "POLYPOLYLINE              ", MR_POLYPOLYLINE           },
                    316:    { "POLYPOLYGON               ", MR_POLYPOLYGON            },
                    317:    { "SETWINDOWEXTEX            ", MR_SETWINDOWEXTEX         },
                    318:    { "SETWINDOWORGEX            ", MR_SETWINDOWORGEX         },
                    319:    { "SETVIEWPORTEXTEX          ", MR_SETVIEWPORTEXTEX       },
                    320:    { "SETVIEWPORTORGEX          ", MR_SETVIEWPORTORGEX       },
                    321:    { "SETBRUSHORGEX             ", MR_SETBRUSHORGEX          },
                    322:    { "EOF                       ", MR_EOF                    },
                    323:    { "SETPIXELV                 ", MR_SETPIXELV              },
                    324:    { "SETMAPPERFLAGS            ", MR_SETMAPPERFLAGS         },
                    325:    { "SETMAPMODE                ", MR_SETMAPMODE             },
                    326:    { "SETBKMODE                 ", MR_SETBKMODE              },
                    327:    { "SETPOLYFILLMODE           ", MR_SETPOLYFILLMODE        },
                    328:    { "SETROP2                   ", MR_SETROP2                },
                    329:    { "SETSTRETCHBLTMODE         ", MR_SETSTRETCHBLTMODE      },
                    330:    { "SETTEXTALIGN              ", MR_SETTEXTALIGN           },
                    331:    { "UNKNOWN                   ", 23                        },
                    332:    { "SETTEXTCOLOR              ", MR_SETTEXTCOLOR           },
                    333:    { "SETBKCOLOR                ", MR_SETBKCOLOR             },
                    334:    { "OFFSETCLIPRGN             ", MR_OFFSETCLIPRGN          },
                    335:    { "MOVETOEX                  ", MR_MOVETOEX               },
                    336:    { "SETMETARGN                ", MR_SETMETARGN             },
                    337:    { "EXCLUDECLIPRECT           ", MR_EXCLUDECLIPRECT        },
                    338:    { "INTERSECTCLIPRECT         ", MR_INTERSECTCLIPRECT      },
                    339:    { "SCALEVIEWPORTEXTEX        ", MR_SCALEVIEWPORTEXTEX     },
                    340:    { "SCALEWINDOWEXTEX          ", MR_SCALEWINDOWEXTEX       },
                    341:    { "SAVEDC                    ", MR_SAVEDC                 },
                    342:    { "RESTOREDC                 ", MR_RESTOREDC              },
                    343:    { "SETWORLDTRANSFORM         ", MR_SETWORLDTRANSFORM      },
                    344:    { "MODIFYWORLDTRANSFORM      ", MR_MODIFYWORLDTRANSFORM   },
                    345:    { "SELECTOBJECT              ", MR_SELECTOBJECT           },
                    346:    { "CREATEPEN                 ", MR_CREATEPEN              },
                    347:    { "CREATEBRUSHINDIRECT       ", MR_CREATEBRUSHINDIRECT    },
                    348:    { "DELETEOBJECT              ", MR_DELETEOBJECT           },
                    349:    { "ANGLEARC                  ", MR_ANGLEARC               },
                    350:    { "ELLIPSE                   ", MR_ELLIPSE                },
                    351:    { "RECTANGLE                 ", MR_RECTANGLE              },
                    352:    { "ROUNDRECT                 ", MR_ROUNDRECT              },
                    353:    { "ARC                       ", MR_ARC                    },
                    354:    { "CHORD                     ", MR_CHORD                  },
                    355:    { "PIE                       ", MR_PIE                    },
                    356:    { "SELECTPALETTE             ", MR_SELECTPALETTE          },
                    357:    { "CREATEPALETTE             ", MR_CREATEPALETTE          },
                    358:    { "SETPALETTEENTRIES         ", MR_SETPALETTEENTRIES      },
                    359:    { "RESIZEPALETTE             ", MR_RESIZEPALETTE          },
                    360:    { "REALIZEPALETTE            ", MR_REALIZEPALETTE         },
                    361:    { "EXTFLOODFILL              ", MR_EXTFLOODFILL           },
                    362:    { "LINETO                    ", MR_LINETO                 },
                    363:    { "ARCTO                     ", MR_ARCTO                  },
                    364:    { "POLYDRAW                  ", MR_POLYDRAW               },
                    365:    { "SETARCDIRECTION           ", MR_SETARCDIRECTION        },
                    366:    { "SETMITERLIMIT             ", MR_SETMITERLIMIT          },
                    367:    { "BEGINPATH                 ", MR_BEGINPATH              },
                    368:    { "ENDPATH                   ", MR_ENDPATH                },
                    369:    { "CLOSEFIGURE               ", MR_CLOSEFIGURE            },
                    370:    { "FILLPATH                  ", MR_FILLPATH               },
                    371:    { "STROKEANDFILLPATH         ", MR_STROKEANDFILLPATH      },
                    372:    { "STROKEPATH                ", MR_STROKEPATH             },
                    373:    { "FLATTENPATH               ", MR_FLATTENPATH            },
                    374:    { "WIDENPATH                 ", MR_WIDENPATH              },
                    375:    { "SELECTCLIPPATH            ", MR_SELECTCLIPPATH         },
                    376:    { "ABORTPATH                 ", MR_ABORTPATH              },
                    377:    { "UNKNOWN                   ", 69                        },
                    378:    { "GDICOMMENT                ", MR_GDICOMMENT             },
                    379:    { "FILLRGN                   ", MR_FILLRGN                },
                    380:    { "FRAMERGN                  ", MR_FRAMERGN               },
                    381:    { "INVERTRGN                 ", MR_INVERTRGN              },
                    382:    { "PAINTRGN                  ", MR_PAINTRGN               },
                    383:    { "EXTSELECTCLIPRGN          ", MR_EXTSELECTCLIPRGN       },
                    384:    { "BITBLT                    ", MR_BITBLT                 },
                    385:    { "STRETCHBLT                ", MR_STRETCHBLT             },
                    386:    { "MASKBLT                   ", MR_MASKBLT                },
                    387:    { "PLGBLT                    ", MR_PLGBLT                 },
                    388:    { "SETDIBITSTODEVICE         ", MR_SETDIBITSTODEVICE      },
                    389:    { "STRETCHDIBITS             ", MR_STRETCHDIBITS          },
                    390:    { "EXTCREATEFONTINDIRECTW    ", MR_EXTCREATEFONTINDIRECTW },
                    391:    { "EXTTEXTOUTA               ", MR_EXTTEXTOUTA            },
                    392:    { "EXTTEXTOUTW               ", MR_EXTTEXTOUTW            },
                    393:    { "POLYBEZIER16              ", MR_POLYBEZIER16           },
                    394:    { "POLYGON16                 ", MR_POLYGON16              },
                    395:    { "POLYLINE16                ", MR_POLYLINE16             },
                    396:    { "POLYBEZIERTO16            ", MR_POLYBEZIERTO16         },
                    397:    { "POLYLINETO16              ", MR_POLYLINETO16           },
                    398:    { "POLYPOLYLINE16            ", MR_POLYPOLYLINE16         },
                    399:    { "POLYPOLYGON16             ", MR_POLYPOLYGON16          },
                    400:    { "POLYDRAW16                ", MR_POLYDRAW16             },
                    401:    { "CREATEMONOBRUSH           ", MR_CREATEMONOBRUSH        },
                    402:    { "CREATEDIBPATTERNBRUSHPT   ", MR_CREATEDIBPATTERNBRUSHPT},
                    403:    { "EXTCREATEPEN              ", MR_EXTCREATEPEN           },
                    404:    };
                    405: 
1.1.1.3 ! root      406: 
        !           407: typedef struct _PRTDATA {
        !           408:     BOOL            bFit2Wnd;
        !           409:     HENHMETAFILE    hMetaf;
        !           410: } PRTDATA, *PPRTDATA;
        !           411: 
        !           412: 
1.1       root      413: HANDLE  ghModule;
                    414: HWND    ghwndMain   = NULL;
                    415: HWND    ghwndClient = NULL;
                    416: HWND    ghwndDrawSurf = NULL;
                    417: HWND    ghwndCtrlPanel = NULL;
                    418: HWND    ghwndTools = NULL;
                    419: HWND    ghTextWnd = NULL;
1.1.1.3 ! root      420: HPALETTE ghPal = NULL;
        !           421: HPALETTE ghHT = NULL;
1.1       root      422: 
                    423: LONG    glcyStatus;
                    424: BOOL    gbRecording = FALSE;
                    425: BOOL    gbHitTest = FALSE;
                    426: 
                    427: #if 0   // STRICT doesn't like this
                    428: HWND    grHwndCtrlBtn[OD_BTN_CNT];
                    429: HWND    grHwndToolBtn[OD_TOOL_CNT];
                    430: #endif
                    431: PVOID   grHwndCtrlBtn[OD_BTN_CNT];
                    432: PVOID   grHwndToolBtn[OD_TOOL_CNT];
                    433: 
                    434: DWORD   gdwCurCtrl = DID_STOP;
                    435: DWORD   gdwCurTool = DID_PEN;
                    436: 
                    437: HFONT    ghCurFont;
                    438: LOGFONT  glf;
                    439: COLORREF gCrText=0;                         // Black
                    440: 
                    441: HMENU   hMenu,      hMenuWindow;
                    442: HMENU   hChildMenu, hChildMenuWindow;
                    443: HDC     ghDCMem;
                    444: HDC     ghDCMetaf = (HDC) NULL;
1.1.1.2   root      445: HENHMETAFILE ghMetaf = NULL;
1.1.1.3 ! root      446: HMETAFILE ghmf=NULL;
1.1.1.2   root      447: 
1.1       root      448: HBITMAP ghBmp = NULL, ghBmpMask = NULL;
                    449: 
                    450: #if 0   // STRICT doesn't like this
                    451: HBITMAP ghBmpDn[OD_BTN_CNT], ghBmpUp[OD_BTN_CNT];
                    452: HBITMAP ghToolBmpDn[OD_TOOL_CNT], ghToolBmpUp[OD_TOOL_CNT];
                    453: #endif
                    454: PVOID   ghBmpDn[OD_BTN_CNT], ghBmpUp[OD_BTN_CNT];
                    455: PVOID   ghToolBmpDn[OD_TOOL_CNT], ghToolBmpUp[OD_TOOL_CNT];
                    456: 
                    457: HBRUSH  ghbrRed;
                    458: HBRUSH  ghbrCur;
                    459: HPEN    ghpnCur;
                    460: HBRUSH  ghbrAppBkgd;
                    461: HPEN    ghpnWide;
1.1.1.2   root      462: 
                    463: HWND    ghwndNext = NULL;
1.1.1.3 ! root      464: BOOL    gbFit2Wnd = TRUE;
        !           465: BOOL    gbImport3X = FALSE;
        !           466: BOOL    gbExport3X = FALSE;
        !           467: BOOL    gbSFOutln = FALSE;
        !           468: BOOL    gbPDOutln = FALSE;
        !           469: BOOL    gbTT = FALSE;
        !           470: 
        !           471: BOOL    gbUseDIB = FALSE;
        !           472: 
        !           473: typedef struct _FileInfo{
        !           474:     HANDLE      hFile;
        !           475:     HANDLE      hMapFile;
        !           476:     LPVOID      lpvMapView;
        !           477: } FILEINFO, *PFILEINFO;
        !           478: 
        !           479: typedef struct _DIBDATA{
        !           480:     ULONG           ulFiles;
        !           481:     ULONG           ulFrames;
        !           482:     FILEINFO        rgFileInfo[MAX_FILE];
        !           483:     PBYTE           rgpjFrame[MAX_FRAME];
        !           484:     PBITMAPINFO     rgpbmi[MAX_FILE];
        !           485:     BOOL            rgbCoreHdr[MAX_FILE];
        !           486: } DIBDATA, *PDIBDATA;
        !           487: 
        !           488: DIBDATA gDib;

unix.superglobalmegacorp.com

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