home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / powergui / advframe / mdi / mdiwin.hpp < prev   
Text File  |  1996-10-29  |  2KB  |  69 lines

  1. #ifndef _MDIWIN_
  2. #define _MDIWIN_
  3. //************************************************************
  4. // Advanced Frame - MDI Frame 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.  
  11. #include <iframe.hpp>
  12.  
  13. class MDIWindow : public IFrameWindow {
  14. public:
  15.  MDIWindow( const IResourceId&         resId,
  16.            IWindow*                   parent,
  17.            IWindow*                   owner ,
  18.            unsigned long              windowMenuId,
  19.            unsigned long              childMenuId,
  20.            const IRectangle&          initRect,
  21.            const IFrameWindow::Style& style = defaultStyle(),
  22.            const char*                title = 0 );
  23.  MDIWindow( const IResourceId&         resId,
  24.             MDIWindow*                 parent,
  25.             const IRectangle&          initRect,
  26.             const IFrameWindow::Style& style = defaultStyle(),
  27.             const char*                title = 0 );
  28.  
  29. virtual MDIWindow
  30.  &setClient    ( IWindow* newClient );
  31.  
  32. virtual MDIWindow
  33.  &close          ( ),
  34.  &maximize       ( ),
  35.  &restore        ( );
  36.  
  37. virtual MDIWindow
  38.  *activeChild( ) const;
  39.  
  40. virtual MDIWindow
  41.  &activateChild( unsigned long childId ),
  42.  &arrange        ( ),
  43.  &cascade        ( ),
  44.  &tile           ( Boolean horizontal=true );
  45.  
  46. protected:
  47. MDIWindow
  48.  &initialize      ( const IResourceId& resId,
  49.                     const Style&       style,
  50.                     IWindow*           parent   = 0,
  51.                     IWindow*           owner    = 0,
  52.                     const IRectangle&  initRect = IRectangle(),
  53.                     const char*        title    = 0 );
  54. unsigned long
  55.   registerFrameClass ( const Style& style,
  56.                        const IResourceId& resId ,
  57.                        Boolean isChild );
  58.  
  59. private:
  60.  IWindow
  61.   *fclient;
  62.  unsigned long
  63.    fchildId;
  64.  MDIWindow( const MDIWindow& );
  65.  MDIWindow& operator=( const MDIWindow& );
  66. };
  67.  
  68. #endif
  69.