home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 January: Mac OS SDK / Dev.CD Jan 97 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / Developer University / DU Projects / DataCopy / Sources / Content.h < prev    next >
Encoding:
Text File  |  1996-08-22  |  2.4 KB  |  76 lines  |  [TEXT/CWIE]

  1. //    Release Version:    $ ODF 2 $
  2. //    Copyright:            (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
  3.  
  4. #ifndef CONTENT_H
  5. #define CONTENT_H
  6.  
  7. //========================================================================================
  8. // ----- Framework Includes -----
  9. #ifndef FWCONTNT_H
  10. #include "FWContnt.h"
  11. #endif
  12.  
  13. #ifndef PIZZA_H
  14. #include "Pizza.h"            //  CPizza
  15. #endif
  16.  
  17. #ifndef FWTCOLL_H
  18. #include "FWTColl.h"            // FW_TOrderedCollection
  19. #endif
  20.  
  21. //========================================================================================
  22. class CDataCopyPart;
  23.  
  24. //========================================================================================
  25. class CPizzaCollection : public FW_TOrderedCollection<CPizza> {
  26. public:
  27.     FW_DECLARE_AUTO(CPizzaCollection)
  28.     CPizzaCollection()
  29.             : FW_TOrderedCollection<CPizza>() {}
  30.     ~CPizzaCollection() {}
  31. };
  32.  
  33. //========================================================================================
  34. class CPizzaCollectionIterator : public FW_TOrderedCollectionIterator<CPizza> {
  35. public:
  36.     FW_DECLARE_AUTO(CPizzaCollectionIterator)
  37.     CPizzaCollectionIterator(CPizzaCollection* collection)
  38.         :    FW_TOrderedCollectionIterator<CPizza>(collection){}
  39.     ~CPizzaCollectionIterator() {}
  40. };
  41.  
  42. //========================================================================================
  43. class CDataCopyContent : public FW_CContent {
  44. public:
  45.     FW_DECLARE_AUTO(CDataCopyContent)
  46.                                 CDataCopyContent(Environment* ev, CDataCopyPart* part);
  47.     virtual                     ~CDataCopyContent();
  48. // new members
  49. public:
  50.     virtual CPizzaCollection*    MyGetPizzaList();
  51.     virtual void                MyIncrement(Environment* ev, FW_CPoint& position);
  52.     virtual void                MyAddPizza(Environment* ev, CPizza* pizza);
  53.     virtual void                MyRemoveLastPizza(Environment* ev, CPizza* pizza);
  54.     virtual void                MyRemoveAllPizzas();
  55. // overrides
  56. protected:
  57.     virtual void                ExternalizeKind(Environment* ev,
  58.                                     ODStorageUnit* storageUnit,
  59.                                     FW_CKind* kind,
  60.                                     FW_StorageKinds storageKind,
  61.                                     FW_CPromise* promise,
  62.                                     FW_CCloneInfo* cloneInfo);
  63.     virtual FW_Boolean            InternalizeKind(Environment* ev,
  64.                                     ODStorageUnit* storageUnit, 
  65.                                     FW_CKind* kind,
  66.                                     FW_StorageKinds storageKind,
  67.                                     FW_CCloneInfo* cloneInfo);
  68. // new members
  69. private:
  70.     ODSShort            fNumPizzas;
  71.     CPizzaCollection*    fPizzaList;
  72.     CDataCopyPart*         fPart;
  73. };
  74.  
  75. //========================================================================================
  76. #endif