home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / Think Class Libraries / CScrollList 1.0 / CScrollList Classes / CScrollListDragger.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-11-30  |  1.2 KB  |  49 lines  |  [TEXT/KAHL]

  1. /*************************************************************************************
  2.  
  3.  CScrollListDragger.h
  4.  
  5.         Interface for CScrollListDragger
  6.     
  7.     SUPERCLASS = CMouseTask
  8.     
  9.         © 1992 Dave Harkness
  10.  
  11. *************************************************************************************/
  12.  
  13.  
  14. #define _H_CScrollListDragger
  15.  
  16. #include <CMouseTask.h>
  17. #include <LongCoordinates.h>
  18.  
  19.  
  20. class CScrollList;
  21. class CArray;
  22.  
  23.  
  24. class CScrollListDragger : public CMouseTask
  25. {
  26. public:
  27.  
  28.     void            IScrollListDragger( CScrollList *aTable, short theModifiers,
  29.                                         short aHeight, short fOptions);
  30.     
  31.     virtual void    Dispose( void);
  32.     
  33.     virtual void    BeginTracking( LongPt *startPt);
  34.     virtual void    KeepTracking( LongPt *currPt, LongPt *prevPt, LongPt *startPt);
  35.     virtual void    EndTracking( LongPt *currPt, LongPt *prevPt, LongPt *startPt);
  36.  
  37. protected:
  38.  
  39.     CScrollList        *itsScrollList;        // client scroll list
  40.     CArray            *itsArray;            // client array
  41.     short            movingCell;            // cell we're moving
  42.     short            modifierKeys;        // modifier keys from the mousedown event
  43.     short            cellHeight;            // height of each cell
  44.     short            listOptions;        // options selected for the list
  45.     LongRect        dragRect;            // dragging rect
  46.     LongRect        clipRect;            // rectangle to clip to
  47.     Boolean            dragging;            // TRUE if dragging yet
  48.  
  49. };