home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / powergui / profile / advprof / profobj.hpp < prev    next >
Text File  |  1996-10-29  |  1KB  |  62 lines

  1. #ifndef _PROFOBJ_
  2. #define _PROFOBJ_
  3. //************************************************************
  4. // GUI Profile Viewer Example
  5. //
  6. // Copyright (C) 1994, Law, Leong, Love, Olson, Tsuji.
  7. // Copyright (c) 1997 John Wiley & Sons, Inc. 
  8. // All Rights Reserved.
  9. //************************************************************
  10. #include <iframe.hpp>
  11. #include <icnrctl.hpp>
  12. #include <ititle.hpp>
  13.  
  14. class IString;
  15. class ProfileObjectView;
  16.  
  17. class ProfileObject : public IContainerObject {
  18. public:
  19.   ProfileObject ( const IString     &name,
  20.                   unsigned long      iconId,
  21.                   IContainerControl *cnr );
  22. virtual void
  23.   handleOpen( IContainerControl *cnr );
  24. virtual ProfileObjectView
  25.  &view ( );
  26. virtual ProfileObject
  27.  &viewClosed ( );
  28. virtual IContainerControl
  29.  *container ( ) const;
  30. protected:
  31. virtual ProfileObjectView
  32.  *newView ( ) = 0;
  33. private:
  34. IContainerControl
  35.  *objCnr;
  36. ProfileObjectView
  37.  *objView;
  38. };
  39.  
  40. class ProfileObjectView : protected IFrameWindow {
  41. public:
  42. virtual ProfileObjectView
  43.  &open ( );
  44. protected:
  45.   ProfileObjectView ( IWindow       *client,
  46.                       ProfileObject &object,
  47.                       const IString &viewName );
  48.   ~ProfileObjectView ( );
  49. protected:
  50. ProfileObject
  51.  *object ( ) const;
  52. private:
  53. ITitle
  54.   viewTitle;
  55. ProfileObject
  56.  *viewObj;
  57. ProfileObjectView ( const ProfileObjectView&);
  58. ProfileObjectView& operator=( const ProfileObjectView&);
  59. };
  60.  
  61. #endif // _PROFOBJ_
  62.