home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1999 February / PCO_0299.ISO / filesbbs / os2 / i2htm091.arj / I2HTM091.ZIP / source / inf2html.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-11-11  |  3.2 KB  |  84 lines

  1.  
  2. /*
  3.  * inf2html.h:
  4.  *      additional declarations used in inf2html.c only
  5.  *      (not in INF books)
  6.  *
  7.  *      Credits: Most of the information for creating this stems
  8.  *      from the article in EDM/2 vol. 3 no. 8 about INF internals.
  9.  *      Big thanks go out to Peter Childs for this.
  10.  *      His work in turn is based on that of others. See inf03.txt
  11.  *      for details.
  12.  *
  13.  *      Copyright (C) 1997-98 Ulrich Möller.
  14.  *      This file is part of the INF2HTML package.
  15.  *      INF2HTML is free software; you can redistribute it and/or modify
  16.  *      it under the terms of the GNU General Public License as published
  17.  *      by the Free Software Foundation, in version 2 as it comes in the
  18.  *      "COPYING" file of INF2HTML distribution.
  19.  *      This program is distributed in the hope that it will be useful,
  20.  *      but WITHOUT ANY WARRANTY; without even the implied warranty of
  21.  *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  22.  *      GNU General Public License for more details.
  23.  */
  24.  
  25. #define VERSION_NUMBER "0.91"
  26.  
  27. // structure for remembering formatting settings
  28. // between several slots
  29. typedef struct _FORMAT
  30. {
  31.     BOOL    fSpace,                 // TRUE: insert space after every "word"
  32.             fMonoSpace,             // <PRE> mode
  33.             fBold,                  // formatting
  34.             fItalics,
  35.             fUnderlined,
  36.             fJustHadLinebreak,      // TRUE: last "word" was <P> or <BR>
  37.             fJustHadLeftMargin,     // TRUE: last "word" was left margin format
  38.             fJustHadBullet,         // TRUE: last "word" was unordered list bullet
  39.             fOutputSpaceBeforeNextWord,
  40.             fSuppressNextBR;
  41.     ULONG   ulLeftMargin,           // current left margin
  42.             ulLastLeftMargin;       // last left margin (keeps changing)
  43.     ULONG   ulCurX;                 // no. of HTML characters put out for this
  44.                                     // line; used for inserting line breaks into HTML
  45. } FORMAT, *PFORMAT;
  46.  
  47. // structure for maintaining TOC entry info;
  48. // this is used because in the INF file, this
  49. // is really awkward to access
  50. typedef struct _TOCENTRYINFO
  51. {
  52.     BYTE    bNestingLevel;          // entry level in TOC tree
  53.     BOOL    fExtended,              // extended mode
  54.             fHidden,                // entry is hidden
  55.             fHasChildren,           // following TOC entries are higher
  56.             fXPosSet,
  57.             fYPosSet;
  58.     BYTE    bNTocSlots;             // no. of slots for this TOC entry
  59.  
  60.     CHAR    szTocTitle[CCHMAXPATH], // title of article
  61.             szHTMLFilestem[CCHMAXPATH]; // filestem of HTML output file
  62.  
  63.     BYTE    bExt1,
  64.             bExt2,
  65.             bBytes2Skip;
  66.     PUSHORT pusSlotList;            // pointer to usTocslots[ntocslots] array
  67.     PBYTE   pbExtraBytes;           // pointer to additional bytes for tocentry
  68.  
  69. } TOCENTRYINFO, *PTOCENTRYINFO;
  70.  
  71. #define BFT_BMAP    0x4d42
  72. #define BFT_BITMAPARRAY 0x4142
  73. // #define BCA_UNCOMP  0x00000000L
  74. // #define BCA_RLE8    0x00000001L
  75. // #define BCA_RLE4    0x00000002L
  76. #define BCA_HUFFFMAN1D  0x00000003L
  77. // #define BCA_RLE24   0x00000004L
  78. #define MSWCC_EOL   0
  79. #define MSWCC_EOB   1
  80. #define MSWCC_DELTA 2
  81.  
  82.  
  83.  
  84.