home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 12 / CD_ASCQ_12_0294.iso / news / 2410 / mgspell2 / mgspell.h < prev    next >
C/C++ Source or Header  |  1993-12-06  |  3KB  |  117 lines

  1. /*  ┌──────────────────────────────────────────────────────────────────┐
  2.     │                        MicroGenesis Spell V1.2                   │
  3.     │                                                                  │
  4.     │                     Copyright 1991 by Jeff Heaton                │
  5.     │                                                                  │
  6.     │            Source code may not be distributed in any form.       │
  7.     │                                                                  │
  8.     └──────────────────────────────────────────────────────────────────┘ */
  9.  
  10.  
  11. /*    mgspell.h
  12.  
  13.     Defines structs, unions, macros, and functions for dealing
  14.     with the MicroGenesis Spelling Checker.
  15.  
  16.     Copyright (c) Jeff Heaton 1990,1991
  17.     All Rights Reserved.
  18. */
  19. /* Include following line to produce shareware version */
  20.  
  21. /* #define SHAREWARE */
  22.  
  23.  
  24. #include <stdio.h>
  25. #include <windows.h>
  26. #include <dir.h>
  27.  
  28. #ifndef __MGSPELL_H
  29. #define __MGSPELL_H
  30.  
  31.  
  32.  
  33.  
  34. typedef struct {
  35.     long    index[26][26];
  36.     long    words[26][26];
  37. }     INDEX;
  38.  
  39.  
  40. typedef struct {
  41.     FILE *fp;
  42.     unsigned char bitpos;
  43.     unsigned char curbyte;
  44. }    DICT;
  45.  
  46.  
  47. /* Variables */
  48. extern  char           path_main[MAXPATH];
  49. extern  char           path_user[MAXPATH];
  50. extern    char         suggest[10][30];
  51. extern    char        lastword0[80];
  52. extern    char        lastword1[80];
  53. extern    INDEX        index;
  54. extern int registered;
  55.  
  56. #ifdef __cplusplus
  57. extern "C" {
  58. #endif
  59.  
  60. /* IO.C */
  61.  
  62. void next_word    (DICT *fp,char *word);
  63. void write_word    (DICT *fp,char *word);
  64. void write_index    (FILE *fp);
  65. void read_index    (FILE *fp);
  66. void open_spell    (DICT *fp);
  67. void s_seek    (DICT *fp, long position);
  68. void s_putc    (DICT *fp, char chr);
  69. char s_getc    (DICT *fp);
  70.  
  71. /* LOOKUP.C */
  72. int PASCAL FAR _export spell_check    (char FAR *word);
  73. int PASCAL FAR _export add_word(char FAR *word);
  74. char fast_check(DICT *fp,char *word);
  75.  
  76.  
  77. /* SUGGEST.C */
  78. void PASCAL FAR _export suggest_word(char FAR *word);
  79. int  comp    (char *word1, char *word2);
  80. void PASCAL FAR _export suggestion(LPSTR s1,
  81.     LPSTR s2,
  82.     LPSTR s3,
  83.     LPSTR s4,
  84.     LPSTR s5,
  85.     LPSTR s6,
  86.     LPSTR s7,
  87.     LPSTR s8,
  88.     LPSTR s9,
  89.     LPSTR s10);
  90.  
  91. /* MISC.C */
  92. void     inc    (int *dm1, int *dm2);
  93. void     dec    (int *dm1, int *dm2);
  94. void     scan_word(char *word);
  95. long     words    (int dm1, int dm2);
  96. void    encode    (char *word);
  97. void     decode    (char *word);
  98. void     reset    (void);
  99. void     fgetstr    (FILE *fp,char *word);
  100.  
  101. /* WORD.C */
  102.  
  103.  
  104. long PASCAL FAR _export word_count(void);
  105.  
  106. char   PASCAL FAR _export dump    (char FAR *name);
  107. void   PASCAL FAR _export import    (void);
  108. void PASCAL FAR _export reg(char FAR *str);
  109.  
  110.  
  111. #ifdef  __cplusplus
  112. }
  113. #endif
  114.  
  115. #endif
  116.  
  117.