home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / xmmx.zip / source / mmm_lnx.h < prev    next >
C/C++ Source or Header  |  1996-12-14  |  2KB  |  79 lines

  1. /**********************************************
  2. *   Linux include file for MMMX Editor        *
  3. *   Contains Linux  Spacific functions        *
  4. *    ( Tested on i386 RedHat Linux 3.0+ )     *
  5. ***********************************************/
  6.  
  7. #ifndef __INCLUDED_MMM_LINUX__
  8. #define __INCLUDED_MMM_LINUX__
  9.  
  10. #define EXECUTER_FILENAME "__mmm__.bat"
  11. #define BASE_CONFIG_FILE_NAME "mmm_base.cfg"
  12. //&<<&#include 
  13. #include "mmmx.h"
  14. #include "mmmgrep.h"
  15. #include <sys/types.h>
  16. #include <unistd.h>
  17. #include <errno.h>
  18. #include <fcntl.h>
  19. #include <linux/tty.h>
  20. #include <linux/kd.h>
  21. #include <linux/vt.h>
  22. #include <signal.h>
  23. #include <termios.h>       /* for tcget(set)attr */
  24. #include <sys/ioctl.h>
  25. #include <dirent.h>
  26. #include <sys/stat.h>
  27. //&>>&1 0 1 11
  28.  
  29. void DrawLine(char *Str, int PosY, char Attr,int slen);
  30.  
  31. //&<<&class mmm_Screen {
  32. class mmm_Screen {
  33.    char *v_screen;
  34.    int need;
  35.    int WIDTH,HEIGHT;
  36.    int curatr;
  37.    int OldScr,OldCl;            /// only for compatibility ?
  38.    char *OldCurs,OldAttr;       /// only for compatibility ?
  39.    void setatr(int atr);
  40. public:
  41.    mmm_Screen();
  42.    ~mmm_Screen();
  43.    void SetCursor(int x,int y,int attr);
  44.    void ClrCursor();
  45.    void Line(char *str,int len,int x,int y);
  46.    int &Need(){ return need; }
  47.    int GetH(){ return HEIGHT; }
  48.    int GetW(){ return WIDTH; }
  49.    void View(){};
  50.    };
  51. //&>>&1 0 1 B
  52. extern mmm_Screen mmm_screen;
  53.  
  54. //&<<&class mmm_KeyBoard{
  55. class mmm_KeyBoard{
  56.     int ed_gflag;
  57.     struct termios t1;
  58.     int om;
  59.     void InitKeyboardLayout();
  60.     char *InitDefaultAltCase();
  61. public:
  62.     char *AltCase;
  63.     char keys[4][128];
  64.     int LastScanCode;
  65.     void SetACode(int n);
  66.     mmm_KeyBoard();
  67.     ~mmm_KeyBoard();
  68.     int GetScan();
  69.     friend void SegmentViolationHandler(int a);
  70.     void ChangeConsole(int num);
  71. };
  72. //&>>&8 0 8 14
  73. extern mmm_KeyBoard mmm_KBD;
  74.  
  75. void MkScan(int scancode);
  76.  
  77. #endif
  78. //&>>&12 0 12 0
  79.