home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 July: Mac OS SDK / Dev.CD Jul 96 SDK / Dev.CD Jul 96 SDK1.toast / Development Kits (Disc 1) / OpenDoc Development Framework / Developer University / DUProjects / DataSave / Sources / Content.h < prev    next >
Encoding:
Text File  |  1996-02-25  |  2.4 KB  |  79 lines  |  [TEXT/CWIE]

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