home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / EDITORES / TSCREDD2.ZIP / SCRDISK4.EXE / SCREDIT.H < prev    next >
Encoding:
C/C++ Source or Header  |  1990-05-12  |  7.2 KB  |  315 lines

  1.  
  2. /*
  3. *----------------------------------------------------------------*
  4. *       ScrEdit.H - Turbo ScrEdit C Interface Header File        *
  5. *                                                                *
  6. *                <C>opyright 1989 by iHn Systems                 *
  7. *                         P.O. Box 1707                          *
  8. *                     Tulare, CA. 93275-1707                     *
  9. *                                                                *
  10. * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*
  11. * The file PRINTME.1ST explains how to create the Turbo ScrEdit  *
  12. * Interface object code libraries that this header file is used  *
  13. * with. See Page 6 of PRINTME.1ST for more details.              *
  14. *                                                                *
  15. *----------------------------------------------------------------*/
  16. #if defined (__TINY__) || defined (__SMALL__)
  17.    #error "TINY and SMALL memory models are not supported";
  18. #endif
  19.  
  20. typedef union
  21.  {
  22.  struct s1
  23.      {
  24.      char           filler;
  25.      char           s_name         [128] [17];
  26.      unsigned char  s_number       [128];
  27.      int            s_recordnumber [128];
  28.      int            s_fieldsrecno  [128];
  29.      int            s_rangerecno   [128];
  30.      unsigned char  s_first        [128];
  31.      unsigned char  s_count        [128];
  32.      unsigned char  s_compiledind  [128];
  33.      int            s_rangerecnext;
  34.      int            s_rangelinenext;
  35.      int            s_sfiled;
  36.      }A;
  37.  struct s2
  38.      {
  39.      char           filler;
  40.      char           s_video     [3840];
  41.      char           s_workarray [80] [2];
  42.      }B;
  43.  struct s3
  44.      {
  45.      char          filler;
  46.      unsigned char s_fieldname     [128] [17];
  47.      unsigned char s_row           [128];
  48.      unsigned char s_col           [128];
  49.      unsigned char s_len           [128];
  50.      unsigned char s_type          [128];
  51.      unsigned char s_prev          [128];
  52.      unsigned char s_next          [128];
  53.      unsigned char s_datalen       [128];
  54.      unsigned char s_normalbg      [128];
  55.      unsigned char s_normalfg      [128];
  56.      unsigned char s_promptbg      [128];
  57.      unsigned char s_promptfg      [128];
  58.      unsigned char s_displaybg     [128];
  59.      unsigned char s_displayfg     [128];
  60.      unsigned int  s_rangenextrec  [128];
  61.      unsigned char s_rangenextline [128];
  62.      }C;
  63.  struct s4
  64.      {
  65.      char          filler;
  66.      char          s_rangelist [51] [79];
  67.      int           s_rangerec  [51];
  68.      unsigned char s_rangeline [51];
  69.      }D;
  70.  } s_rec_def;
  71.  
  72. s_rec_def *s_indx, *s_record, *s_field, *s_validate;
  73.  
  74. int long S_CursorOld;
  75.  
  76. enum S_Cursors
  77.   {S_OFF,S_BOLD,S_NORMAL,S_INVERSEBOLD,S_INVERSENORMAL,S_GETCURSOR};
  78. void far *S_VideoMem;
  79. enum S_Cursors S_Cursor;
  80. char S_Sound;
  81. char S_HelpSound;
  82. char S_UserSound;
  83. char S_ErrorSound;
  84. char S_NumLock;
  85. char S_Fkey;
  86. char S_Shift;
  87. char S_Alt;
  88. char S_Ctrl;
  89. char S_Esc;
  90. char S_F1;
  91. char S_F2;
  92. char S_F3;
  93. char S_F4;
  94. char S_F5;
  95. char S_F6;
  96. char S_F7;
  97. char S_F8;
  98. char S_F9;
  99. char S_F10;
  100. char S_F11;
  101. char S_F12;
  102. char S_Enter;
  103. char S_BkSp;
  104. char S_Home;
  105. char S_Up;
  106. char S_PgUp;
  107. char S_Left;
  108. char S_Right;
  109. char S_End;
  110. char S_Down;
  111. char S_PgDn;
  112. char S_Ins;
  113. char S_Del;
  114. char S_Tab;
  115. char S_ShowStatus;
  116. char S_ScrollLock;
  117. char S_Caps;
  118. char S_LeftShift;
  119. char S_RightShift;
  120. char S_InsertMode;
  121. char S_InsertKey;
  122. char S_DeleteKey;
  123. char S_BackSpace;
  124. int  S_FirstField;
  125. int  S_Point;
  126. int  S_Freq;
  127. int  S_Dur;
  128. int  S_HelpFreq;
  129. int  S_HelpDur;
  130. int  S_ErrorFreq;
  131. int  S_ErrorDur;
  132. int  S_UserFreq;
  133. int  S_UserDur;
  134. unsigned char S_WorkStr [81];
  135. unsigned char S_Msg [81];
  136. unsigned char S_EditStr [81];
  137. unsigned char S_Blanks [81];
  138. unsigned char S_Ch;
  139. unsigned char S_ChangeScreen;
  140. unsigned char S_FirstTime = 1;
  141. unsigned char S_Sound_Hold;
  142. unsigned char S_Mono;
  143. unsigned char S_UpCase;
  144. unsigned char S_Validate_Finished;
  145. unsigned char S_ScreenValid;
  146. unsigned char S_Wait;
  147. unsigned char S_LeftArrow;
  148. unsigned char S_RightArrow;
  149. unsigned char
  150.  S_DelayScreen,
  151.  S_Delayed,
  152.  S_FileOpen,
  153.  S_EnterAsTab,
  154.  S_FastVideo,
  155.  S_PosLastChar,
  156.  S_Bw,
  157.  S_DupFields,
  158.  S_SetDupeFields,
  159.  S_EntryType,
  160.  S_DispType,
  161.  S_DupType,
  162.  S_FType,
  163.  S_InitialValue[81],
  164.  S_EditMask [81],
  165.  S_EditMaskTypes[7],
  166.  S_AutoHelpMsg [81],
  167.  S_ErrorMsg [81],
  168.  S_UserMsg [81],
  169.  S_QuickHelp,
  170.  S_Force_EditMask,
  171.  S_AutoHelp,
  172.  S_AutoValidate,
  173.  S_StLabelColor,
  174.  S_StLabelFg,
  175.  S_StLabelBg,
  176.  S_StFg,
  177.  S_StBg,
  178.  S_UserFg,
  179.  S_UserBg,
  180.  S_ErrorFg,
  181.  S_ErrorBg,
  182.  S_HelpFg,
  183.  S_HelpBg,
  184.  S_StColor;
  185. int
  186.  S_VRec,
  187.  S_RecNo,
  188.  S_ValidateLine,
  189.  S_ValidateField,
  190.  S_Str_Pos,
  191.  S_Attrib,
  192.  S_MessBg,
  193.  S_MessFg,
  194.  S_Num,
  195.  S_F_Key,
  196.  S_Direction,
  197.  S_Decimal,
  198.  S_PrevField,
  199.  S_FieldNum,
  200.  S_Sub,
  201.  S_CurrLine,
  202.  S_NextRec;
  203.  
  204. unsigned char
  205.  S_NewStr       [81],
  206.  S_Padding      [81],
  207.  S_WorkAttrib   [81],
  208.  S_NormAttrib   [81],
  209.  S_StPrev   [41],
  210.  S_StLine   [41],
  211.  S_StAttrib [41],
  212.  S_Ins_Str      [2],
  213.  S_NextLine,
  214.  S_Reverse,
  215.  S_Skip,
  216.  S_Matched,
  217.  S_Min_Max_Loaded,
  218.  S_EndofLine,
  219.  S_InsideIf,
  220.  S_CurStr[81],
  221.  S_EditStrHold[81],
  222.  S_CompMin[81],
  223.  S_CompMax[81],
  224.  S_CompField[81],
  225.  S_OpCode[81],
  226.  S_OpCode1[81];
  227.  
  228. double
  229.  S_Round [8] = {.5,.5,.05,.005,.0005,.00005,.000005,.0000005},
  230.  S_Numeric,
  231.  S_CompMin_Numeric,
  232.  S_CompMax_Numeric;
  233.  
  234. char S_MouseFirstTime = '1';
  235. unsigned char
  236.  S_MouseInstalled,
  237.  S_MouseVisable,
  238.  S_MouseActive,
  239.  S_MouseEvent,
  240.  S_MsLeftPressed,
  241.  S_MsRightPressed,
  242.  S_MsMiddlePressed,
  243.  S_MsLeftReleased,
  244.  S_MsRightReleased,
  245.  S_MsMiddleReleased;
  246.  
  247. unsigned
  248.  S_MsX,
  249.  S_MsY,
  250.  S_MsRowHold,
  251.  S_MsColHold,
  252.  S_MsRow,
  253.  S_MsCol,
  254.  S_MsAx,
  255.  S_MsBx,
  256.  S_MsCx,
  257.  S_MsDx,
  258.  S_Buttons;
  259.  
  260. typedef struct{
  261.   char far *Ptr[255];
  262.   }S_Vectors;
  263. S_Vectors far *S_VectorRec;
  264.  
  265. typedef struct {
  266.   unsigned Ax, Bx, Cx, Dx;
  267.   char     MouseEvent;
  268.   char     MouseActive;
  269.   } S_EventRecord;
  270. S_EventRecord far *S_Ms;
  271.  
  272. void     S_ActivateMouse(void);
  273. void     S_AnalizeMouse(void);
  274. void     S_DisableMouse(void);
  275. void     S_HideMouse(void);
  276. void     S_InitMouse(void);
  277. void     S_MoveMouse(void);
  278. void     S_RemoveMouse(void);
  279. void     S_ResetMouse(void);
  280. void     S_ResetMouseFlags(void);
  281. void     S_RestoreMouse(void);
  282. void     S_SetMouseCursor(char,char,char,char);
  283. void     S_SetMouseEvent(char*);
  284. void far S_SetMouseFlags (void);
  285. void     S_SetMouseRange(int,int,int,int);
  286. void     S_ShowMouse(void);
  287.  
  288. void S_ResetKeyFlags (void);
  289. void S_SetCursor(char);
  290. void S_Init(void);
  291. void S_OpenScreenFile (char*);
  292. void S_CloseScreenFile(void);
  293. void S_Beep(int,int);
  294. void S_Write (int,int,int,char*,char*);
  295. void S_DisplayMessage(int,int,char);
  296. void S_LoadScreen(char *);
  297. void S_DisplayScreenField(int,int,int,int,int,int,int,int,int,char);
  298. void S_EditString (int,int,int,int,int,int,int,int,int,int,int,int,char*);
  299.  
  300. void S_NextKey(void);
  301. void S_ReadField(void);
  302. void S_ReadScreen(void);
  303. void S_ClearDupes(void);
  304. void S_StoreColorChanges(void);
  305. void S_RefreshScreen(void);
  306. void S_ClearScreen(int);
  307.  
  308. unsigned char S_IsDupe(int);
  309. unsigned char S_SetDupe(int);
  310. unsigned char S_ReSetDupe(int);
  311. unsigned char S_ChangeScreenColor(int,int,int,int,int,int,int);
  312. unsigned char S_ChangeFieldColor(int,int,int,int);
  313. unsigned char S_SetDisplayOn(int);
  314. unsigned char S_SetDisplayOff(int);
  315.