home *** CD-ROM | disk | FTP | other *** search
/ System Booster / System Booster.iso / CD-ROM Tools / CDPlay / Include / window.hpp < prev   
Encoding:
C/C++ Source or Header  |  1996-09-27  |  3.9 KB  |  106 lines

  1. //////////////////////////////////////////////////////////////////////////////
  2. // window.hpp
  3. //
  4. // Jeffry A Worth
  5. // November 10, 1995
  6. //////////////////////////////////////////////////////////////////////////////
  7.  
  8. #ifndef __WINDOW_HPP__
  9. #define __WINDOW_HPP__
  10.  
  11. //////////////////////////////////////////////////////////////////////////////
  12. // Includes
  13. #include "aframe:include/aframe.hpp"
  14. #include "aframe:include/amigaapp.hpp"
  15. #include "aframe:include/rect.hpp"
  16. #include "aframe:include/screen.hpp"
  17.  
  18. //////////////////////////////////////////////////////////////////////////////
  19. // Structures
  20.  
  21. struct WindowRange {
  22.   ULONG minWidth;
  23.   ULONG minHeight;
  24.   ULONG maxWidth;
  25.   ULONG maxHeight;
  26. };
  27. typedef struct WindowRange * LPWindowRange;
  28.  
  29. //////////////////////////////////////////////////////////////////////////////
  30. // Window Class
  31.  
  32. class AFWindow
  33. {
  34. public:
  35.   AFWindow();
  36.   ~AFWindow();
  37.  
  38. // Methods
  39.   virtual BOOL Create(AFAmigaApp* app, AFRect* rect);
  40.   virtual BOOL Create(AFAmigaApp* app, AFRect* rect, char* szTitle);
  41.   virtual BOOL Create(AFScreen* screen, AFRect* rect);
  42.   virtual BOOL Create(AFScreen* screen, AFRect* rect, char* szTitle);  
  43.   virtual BOOL Create(AFWindow* window, AFRect* rect);
  44.   virtual BOOL Create(AFWindow* window, AFRect* rect, char* szTitle);
  45.   virtual void DestroyWindow();
  46.   virtual void PostNCDestroy() { return; };
  47.   virtual void SetWindowRange(LPWindowRange wrange);
  48.   virtual BOOL ValidPoint(AFPoint* point);
  49.   virtual void AdjustPoint(AFPoint* point);
  50.   virtual ULONG WindowIDCMP() { return STD_WINDOW_IDCMP; };
  51.   virtual ULONG WindowFlags() { return STD_WINDOW_FLAGS; };
  52.   virtual void GetDisplayRect(AFRect* rect);
  53.  
  54.   virtual void OnCreate() { return; };
  55.  
  56. // --- IDCMP Classes
  57.   virtual void OnSizeVerify(LPIntuiMessage imess) { return; };
  58.   virtual void OnNewSize(LPIntuiMessage imess);
  59.   virtual void OnRefreshWindow(LPIntuiMessage imess) { return; };
  60.   virtual void OnMouseButtons(LPIntuiMessage imess) { return; };
  61.   virtual void OnMouseMove(LPIntuiMessage imess) { return; };
  62.   virtual void OnGadgetDown(LPIntuiMessage imess);
  63.   virtual void OnGadgetUp(LPIntuiMessage imess);
  64.   virtual void OnReqSet(LPIntuiMessage imess) { return; };
  65.   virtual void OnMenuPick(LPIntuiMessage imess) { return; };
  66.   virtual void OnCloseWindow(LPIntuiMessage imess);
  67.   virtual void OnRawKey(LPIntuiMessage imess) { return; };
  68.   virtual void OnReqVerify(LPIntuiMessage imess) { return; };
  69.   virtual void OnReqClear(LPIntuiMessage imess) { return; };
  70.   virtual void OnMenuVerify(LPIntuiMessage imess) { return; };
  71.   virtual void OnNewPrefs(LPIntuiMessage imess) { return; };
  72.   virtual void OnDiskInserted(LPIntuiMessage imess) { return; };
  73.   virtual void OnDiskRemoved(LPIntuiMessage imess) { return; };
  74.   virtual void OnWBenchMessage(LPIntuiMessage imess) { return; };
  75.   virtual void OnActiveWindow(LPIntuiMessage imess) { return; };
  76.   virtual void OnInActiveWindow(LPIntuiMessage imess) { return; };
  77.   virtual void OnDeltaMove(LPIntuiMessage imess) { return; };
  78.   virtual void OnVanillaKey(LPIntuiMessage imess) { return; };
  79.   virtual void OnIntuiTicks(LPIntuiMessage imess) { return; };
  80.   virtual void OnIDCMPUpdate(LPIntuiMessage imess) { return; };
  81.   virtual void OnMenuHelp(LPIntuiMessage imess) { return; };
  82.   virtual void OnChangeWindow(LPIntuiMessage imess) { return; };
  83.   virtual void OnGadgetHelp(LPIntuiMessage imess) { return; };
  84.   virtual void OnFutureIDCMP(LPIntuiMessage imess) { return; };
  85.  
  86. // Intuition functions
  87.   virtual void SetWindowTitles(UBYTE* lpszWindowTitle, UBYTE* lpszScreenTitle);
  88.   virtual void SizeWindow(WORD deltax, WORD deltay);
  89.   virtual void WindowToBack();
  90.   virtual void WindowToFront();
  91.   virtual void ZipWindow();
  92.   virtual void RefreshGadgets();
  93.   virtual void Clear(UBYTE pen);
  94.  
  95. // Properties
  96.   AFAmigaApp *m_papp;
  97.   AFScreen *m_pscreen;
  98.   struct Window * m_pWindow;
  99.   AFNode *m_pgadgets;
  100.   char *m_sztitle;
  101.   TEXTATTR m_textattr;
  102. };
  103.  
  104. //////////////////////////////////////////////////////////////////////////////
  105. #endif //__WINDOW_HPP__
  106.