home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / Think Class Libraries / COrderedList 2.0 / CUnorderedList.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-11-30  |  758 b   |  38 lines  |  [TEXT/KAHL]

  1. #pragma once
  2.  
  3. #include <CCluster.h>
  4.  
  5. class CUnorderedList : public CCluster
  6. {
  7.     protected:
  8.     
  9.         CompareFunc fCompare;
  10.         long fCurrent;
  11.  
  12.     public:
  13.     
  14.         void IUnorderedList( CompareFunc compare );
  15.         
  16.         virtual Boolean Includes( CObject* anObject );
  17.         
  18.         virtual void AddAll( CCluster* aCluster );
  19.         virtual void RemoveAll( void );
  20.     
  21.         virtual CObject* At( long anIndex );
  22.     
  23.         virtual void First( void );
  24.         virtual void Next( void );
  25.         virtual CObject* Current( void );
  26.         virtual long CurrentIndex( void );
  27.     
  28.         virtual void SetCompare( CompareFunc compare );
  29.          
  30.     protected:
  31.     
  32.         virtual Boolean FindIndex( CObject* anObject, long* foundIndex );
  33. };
  34.  
  35.  
  36. pascal void __ForgetCluster( Ptr *objAddr );
  37.  
  38. #define ForgetCluster( _cluster ) __ForgetCluster( (Ptr*) &_cluster )