home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / df3os2.zip / EDITOR.H < prev    next >
C/C++ Source or Header  |  1993-09-27  |  2KB  |  73 lines

  1. // -------- editor.h 
  2.  
  3. #ifndef EDITOR_H
  4. #define EDITOR_H
  5.  
  6. #include "editbox.h"
  7.  
  8. const unsigned char Ptab = '\t'+0x80; // pseudo tab expansion
  9.  
  10. class Editor : public EditBox    {
  11.     void OpenWindow();
  12.     int tabs;
  13.     Bool wordwrapmode;
  14. protected:
  15.     int row;       // Current row
  16.     virtual void Upward();
  17.     virtual void Downward();
  18.     virtual void Forward();
  19.     virtual void Backward();
  20.     virtual void DeleteCharacter();
  21.     virtual void BeginDocument();
  22.     virtual void EndDocument();
  23.     virtual void PageUp();
  24.     virtual void PageDown();
  25.     virtual void InsertCharacter(int key);
  26.     virtual void AdjustCursorTabs(int key = 0);
  27.     void InsertTab();
  28.     void AdjustTabInsert();
  29.     void AdjustTabDelete();
  30.     void WordWrap();
  31. public:
  32.     Editor(const char *ttl, int lf, int tp, int ht, int wd, DFWindow *par=0)
  33.                         : EditBox(ttl, lf, tp, ht, wd, par)
  34.             { OpenWindow(); }
  35.     Editor(const char *ttl, int ht, int wd, DFWindow *par=0)
  36.                         : EditBox(ttl, ht, wd, par)
  37.             { OpenWindow(); }
  38.     Editor(int lf, int tp, int ht, int wd, DFWindow *par=0)
  39.                         : EditBox(lf, tp, ht, wd, par)
  40.             { OpenWindow(); }
  41.     Editor(int ht, int wd, DFWindow *par=0) : EditBox(ht, wd, par)
  42.             { OpenWindow(); }
  43.     Editor(const char *ttl) : EditBox(ttl)
  44.             { OpenWindow(); }
  45.     virtual void Keyboard(int key);
  46.     virtual void ResetCursor();
  47.     virtual unsigned char CurrentChar()
  48.         { return *(TextLine(row) + column); }
  49.     virtual unsigned CurrentCharPosition()
  50.         { return (unsigned) ((const char *)(TextLine(row)+column) - (const char *) *text); }
  51.     virtual Bool AtBufferStart()
  52.         { return (Bool) (column == 0 && row == 0); }
  53.     virtual void PaintCurrentLine()
  54.         { WriteTextLine(row, colors.fg, colors.bg); }
  55.     virtual void FormParagraph();
  56.     int Tabs()
  57.         { return tabs; }
  58.     void SetTabs(int t)
  59.         { tabs = t; }
  60.     Bool WordWrapMode()
  61.         { return wordwrapmode; }
  62.     void SetWordWrapMode(Bool wmode)
  63.         { wordwrapmode = wmode; }
  64.     virtual void AddText(const char *txt);
  65.     virtual const String GetText();
  66.     virtual void WriteString(String &ln, int x, int y, int fg, int bg);
  67.     virtual void LeftButton(int mx, int my);
  68.     virtual void ClearText();
  69. };
  70.  
  71.  
  72. #endif
  73.