home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / Mark Pilgrim / Kant Generator Pro 1.0.1 / source / Shell ƒ / edit functions.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-10-30  |  2.0 KB  |  100 lines  |  [TEXT/MMCC]

  1. #include "edit functions.h"
  2. #include "text twiddling.h"
  3. #include "window layer.h"
  4.  
  5. void GenericCut(WindowPtr theWindow)
  6. {
  7.     TEHandle        hTE;
  8.     ControlHandle    vScrollBar;
  9.     
  10.     hTE=GetWindowTE(theWindow);
  11.     vScrollBar=GetWindowVScrollBar(theWindow);
  12.     if (AnyHighlightedQQ(theWindow))
  13.         SetWindowIsModified(theWindow, TRUE);
  14.     TECut(hTE);
  15.     ZeroScrap();
  16.     TEToScrap();
  17.     if (vScrollBar!=0L)
  18.         AdjustForEndScroll(vScrollBar, hTE);
  19.     TESelView(hTE);
  20.     if (vScrollBar!=0L)
  21.         AdjustVScrollBar(vScrollBar, hTE);
  22. }
  23.  
  24. void GenericCopy(WindowPtr theWindow)
  25. {
  26.     TEHandle        hTE;
  27.     ControlHandle    vScrollBar;
  28.     
  29.     hTE=GetWindowTE(theWindow);
  30.     vScrollBar=GetWindowVScrollBar(theWindow);
  31.     TECopy(hTE);
  32.     ZeroScrap();
  33.     TEToScrap();
  34.     TESelView(hTE);
  35.     if (vScrollBar!=0L)
  36.         AdjustVScrollBar(vScrollBar, hTE);
  37. }
  38.  
  39. void GenericPaste(WindowPtr theWindow)
  40. {
  41.     TEHandle        hTE;
  42.     ControlHandle    vScrollBar;
  43.     Handle            scrapHandle;
  44.     long            dummy;
  45.     unsigned long    scrapLength;
  46.     
  47.     hTE=GetWindowTE(theWindow);
  48.     vScrollBar=GetWindowVScrollBar(theWindow);
  49.     scrapHandle=NewHandle(0L);
  50.     if (GetScrap(scrapHandle, 'TEXT', &dummy)!=noTypeErr)
  51.     {
  52.         scrapLength=GetHandleSize(scrapHandle);
  53.         if (scrapLength+(**hTE).teLength>32767)
  54.         {
  55.             SysBeep(7);
  56.             return;
  57.         }
  58.         
  59.         if (scrapLength!=0L)
  60.             SetWindowIsModified(theWindow, TRUE);
  61.         TEFromScrap();
  62.         TEPaste(hTE);
  63.         TESelView(hTE);
  64.         if (vScrollBar!=0L)
  65.             AdjustVScrollBar(vScrollBar, hTE);
  66.     }
  67.     
  68.     DisposeHandle(scrapHandle);
  69. }
  70.  
  71. void GenericClear(WindowPtr theWindow)
  72. {
  73.     TEHandle        hTE;
  74.     ControlHandle    vScrollBar;
  75.     
  76.     hTE=GetWindowTE(theWindow);
  77.     vScrollBar=GetWindowVScrollBar(theWindow);
  78.     if (AnyHighlightedQQ(theWindow))
  79.         SetWindowIsModified(theWindow, TRUE);
  80.     TEDelete(hTE);
  81.     if (vScrollBar!=0L)
  82.         AdjustForEndScroll(vScrollBar, hTE);
  83.     TESelView(hTE);
  84.     if (vScrollBar!=0L)
  85.     AdjustVScrollBar(vScrollBar, hTE);
  86. }
  87.  
  88. void GenericSelectAll(WindowPtr theWindow)
  89. {
  90.     TEHandle        hTE;
  91.     ControlHandle    vScrollBar;
  92.     
  93.     hTE=GetWindowTE(theWindow);
  94.     vScrollBar=GetWindowVScrollBar(theWindow);
  95.     TESetSelect(0, 32767, hTE);
  96.     TESelView(hTE);
  97.     if (vScrollBar!=0L)
  98.         AdjustVScrollBar(vScrollBar, hTE);
  99. }
  100.