home *** CD-ROM | disk | FTP | other *** search
/ The Developer Connection…ice Driver Kit for OS/2 3 / DEV3-D1.ISO / source / bento / headers / winiter.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-03-02  |  2.0 KB  |  84 lines

  1. /*
  2.     File:        WinIter.h
  3.  
  4.     Contains:    Interface to XMPWindowIterator class.
  5.  
  6.     Written by:    Richard Rodseth
  7.  
  8.     Copyright:    ⌐ 1993-94 by Apple Computer, Inc., all rights reserved.
  9.  
  10.     Change History (most recent first):
  11.  
  12.          <6>     2/17/94    RR        #1144732 Added forward declaration of
  13.                                     XMPWindow
  14.          <5>     2/14/94    RR        #1143609. Marked init methods private to UI
  15.          <4>      2/9/94    NP        Tiger Team cleanup.
  16.          <3>     1/10/94    RR        Added Last and Previous
  17.          <2>    12/23/93    RR        Added InitWindowIter. Remove arguments from
  18.                                     constructor
  19.          <1>     12/8/93    RR        first checked in
  20.  
  21.     To Do:
  22. */
  23.  
  24. #ifndef _WINITER_
  25. #define _WINITER_
  26.  
  27. #ifndef _XMPOBJ_
  28. #include "XMPObj.h"
  29. #endif
  30.  
  31. #ifndef _XMPTYPES_
  32. #include "XMPTypes.h"
  33. #endif
  34.  
  35. //=====================================================================================
  36. // Classes defined in this interface
  37. //=====================================================================================
  38.  
  39. class XMPWindowIterator;                // An iterator for all windows
  40.  
  41. //=====================================================================================
  42. // Classes used by this interface
  43. //=====================================================================================
  44.  
  45. class XMPWindowState;
  46. class XMPWindow;
  47. class LinkedListIterator;
  48.  
  49. //=====================================================================================
  50. // Class XMPWindowIterator
  51. //=====================================================================================
  52.  
  53. #define kXMPWindowIteratorID "appl:xmpwindowiterator$class,1.0.0"
  54.  
  55. class XMPWindowIterator
  56. {
  57. public:
  58.  
  59.     virtual ~XMPWindowIterator();
  60.     
  61.     XMPMethod XMPWindow* First();
  62.         
  63.     XMPMethod XMPWindow* Next();
  64.  
  65.     XMPMethod XMPWindow* Last();
  66.         
  67.     XMPMethod XMPWindow* Previous();
  68.         
  69.     XMPMethod XMPBoolean IsNotComplete();
  70.  
  71. public: // Private to UI subsystem
  72.  
  73.     XMPWindowIterator();
  74.                 
  75.     XMPNVMethod void InitWindowIterator(XMPWindowState* windowState);
  76.  
  77. private:
  78.  
  79.     XMPWindowState* fWindowState;
  80.     LinkedListIterator* fIterator;
  81. };
  82.  
  83. #endif // _WINITER_
  84.