home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / sa104os2.zip / SATHR104.ZIP / SATHER / SYSTEM / GC / CORD / DE_WIN.H < prev    next >
C/C++ Source or Header  |  1994-05-19  |  3KB  |  103 lines

  1. /*
  2.  * Copyright (c) 1994 by Xerox Corporation.  All rights reserved.
  3.  *
  4.  * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
  5.  * OR IMPLIED.  ANY USE IS AT YOUR OWN RISK.
  6.  *
  7.  * Permission is hereby granted to use or copy this program
  8.  * for any purpose,  provided the above notices are retained on all copies.
  9.  * Permission to modify the code and to distribute modified code is granted,
  10.  * provided the above notices are retained, and a notice that the code was
  11.  * modified is included with the above copyright notice.
  12.  */
  13. /* Boehm, May 19, 1994 2:25 pm PDT */
  14.  
  15. /* cord.h, de_cmds.h, and windows.h should be included before this. */
  16.  
  17.  
  18. # define OTHER_FLAG    0x100
  19. # define EDIT_CMD_FLAG    0x200
  20. # define REPEAT_FLAG    0x400
  21.  
  22. # define CHAR_CMD(i) ((i) & 0xff)
  23.  
  24. /* MENU: DE */
  25. #define IDM_FILESAVE        (EDIT_CMD_FLAG + WRITE)
  26. #define IDM_FILEEXIT        (OTHER_FLAG + 1)
  27. #define IDM_HELPABOUT        (OTHER_FLAG + 2)
  28. #define IDM_HELPCONTENTS    (OTHER_FLAG + 3)
  29.  
  30. #define IDM_EDITPDOWN        (REPEAT_FLAG + EDIT_CMD_FLAG + DOWN)
  31. #define IDM_EDITPUP        (REPEAT_FLAG + EDIT_CMD_FLAG + UP)
  32. #define IDM_EDITUNDO        (EDIT_CMD_FLAG + UNDO)
  33. #define IDM_EDITLOCATE        (EDIT_CMD_FLAG + LOCATE)
  34. #define IDM_EDITDOWN        (EDIT_CMD_FLAG + DOWN)
  35. #define IDM_EDITUP        (EDIT_CMD_FLAG + UP)
  36. #define IDM_EDITLEFT        (EDIT_CMD_FLAG + LEFT)
  37. #define IDM_EDITRIGHT        (EDIT_CMD_FLAG + RIGHT)
  38. #define IDM_EDITBS        (EDIT_CMD_FLAG + BS)
  39. #define IDM_EDITDEL        (EDIT_CMD_FLAG + DEL)
  40. #define IDM_EDITREPEAT        (EDIT_CMD_FLAG + REPEAT)
  41. #define IDM_EDITTOP        (EDIT_CMD_FLAG + TOP)
  42.  
  43.  
  44.  
  45.  
  46. /* Windows UI stuff    */
  47.  
  48. LRESULT CALLBACK WndProc (HWND hwnd, UINT message,
  49.               UINT wParam, LONG lParam);
  50.  
  51. LRESULT CALLBACK AboutBox( HWND hDlg, UINT message,
  52.                UINT wParam, LONG lParam );
  53.  
  54.  
  55. /* Screen dimensions.  Maintained by de_win.c.    */
  56. extern int LINES;
  57. extern int COLS;
  58.  
  59. /* File being edited.    */
  60. extern char * arg_file_name;
  61.  
  62. /* Current display position in file.  Maintained by de.c    */
  63. extern int dis_line;
  64. extern int dis_col;
  65.  
  66. /* Current cursor position in file.                */
  67. extern int line;
  68. extern int col;
  69.  
  70. /*
  71.  *  Calls from de_win.c to de.c
  72.  */
  73.   
  74. CORD retrieve_screen_line(int i);
  75.             /* Get the contents of i'th screen line.    */
  76.             /* Relies on COLS.                */
  77.  
  78. void set_position(int x, int y);
  79.             /* Set column, row.  Upper left of window = (0,0). */
  80.  
  81. void do_command(int);
  82.             /* Execute an editor command.            */
  83.             /* Agument is a command character or one    */
  84.             /* of the IDM_ commands.            */
  85.  
  86. void generic_init(void);
  87.             /* OS independent initialization */
  88.  
  89.  
  90. /*
  91.  * Calls from de.c to de_win.c
  92.  */
  93.  
  94. void move_cursor(int column, int line);
  95.             /* Physically move the cursor on the display,    */
  96.             /* so that it appears at            */
  97.             /* (column, line).                */
  98.  
  99. void invalidate_line(int line);
  100.             /* Invalidate line i on the screen.    */
  101.  
  102. void de_error(char *s);
  103.             /* Display error message.    */