home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Leser 15 / Amiga Plus Leser CD 15.iso / Tools / Development / CIT.v4 / citra / CITScreen.h < prev    next >
Encoding:
C/C++ Source or Header  |  2002-03-13  |  2.0 KB  |  104 lines

  1. //
  2. //               CITScreen include
  3. //
  4. //                              StormC
  5. //
  6. //                version 2002.02.26
  7. //
  8.  
  9. #ifndef CIT_CITSCREEN_H
  10. #define CIT_CITSCREEN_H TRUE
  11.  
  12. #include "CITApp.h"
  13.  
  14. #include <graphics/text.h>
  15. #include <intuition/screens.h>
  16.  
  17. #define DEF_MONITOR    ~0x00000000    // INVALID_D forces WB-type
  18. #define PAL_HIRES       0x00029000
  19. #define PAL_HIRESLACE   0x00029004
  20. #define NTSC_HIRES      0x00019000
  21. #define NTSC_HIRESLACE  0x00019004
  22.  
  23. class CITScreenClass;
  24.  
  25. class CITScreen:public CITAppClass
  26. {
  27.   public:
  28.     TTextAttr defTextAttr;
  29.     TextFont* defTextFont;
  30.     Screen*   screen;
  31.  
  32.     CITScreen();
  33.     CITScreen(char *Name);
  34.     ~CITScreen();
  35.  
  36.     void InsObject(CITScreenClass &Object,BOOL &Err);
  37.     void RemObject(CITScreenClass &Object);
  38.     void Depth(UWORD d);
  39.     void Display(ULONG ID);
  40.     void ScreenFont(char *name, short Height, short Width = 0);
  41.     void DefaultFont(char *name, short Height, short Width = 0);
  42.     void Caption(char *title);
  43.     void Public(char *Name);
  44.     void Use(Screen *sc);
  45.     void AutoScroll();
  46.     void Interleaved();
  47.     void ToFront();
  48.     void ToBack();
  49.  
  50.     UWORD Depth();
  51.     
  52.   protected:
  53.     friend class CITApp;
  54.  
  55.     struct DrawInfo* drawinfo;
  56.  
  57.     virtual BOOL Create(class CITApp* CITApp);
  58.     virtual void Delete();
  59.     virtual void HandleEvent(ULONG Sigs);
  60.  
  61.   private:
  62.     CITList   objectList;
  63.     Screen*   useScr;
  64.     ULONG     displayMode;
  65.     TTextAttr scrTextAttr;
  66.     TextFont* scrTextFont;
  67.     char*     screenName;
  68.     char*     defaultTitle;
  69.     UWORD     Pens_3D;
  70.     UWORD     depth;
  71.     UWORD     flags;
  72.  
  73.     void delScr();
  74.     void SetUp(UWORD Depth);
  75. };
  76.  
  77. class CITWorkbench:public CITScreen
  78. {
  79.   public:
  80.     CITWorkbench() { Public("Workbench");}
  81. };
  82.  
  83. class CITScreenClass:public CITNode
  84. {
  85.   public:
  86.     CITScreen* CITScr;
  87.     
  88.     CITScreenClass();
  89.     ~CITScreenClass();
  90.  
  91.     DrawInfo* drawinfo;
  92.  
  93.   protected:
  94.     friend class CITScreen;
  95.     
  96.     virtual BOOL Create(class CITScreen* scr);
  97.     virtual void Delete(); 
  98.     virtual void HandleEvent(ULONG Sigs);
  99.  
  100.     ULONG  eventSigMask;
  101. };
  102.  
  103. #endif
  104.