home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 5 / FreshFish_July-August1994.bin / bbs / gnu / aplusplus-1.01-src.lha / src / amiga / aplusplus-1.01 / include / aplusplus / intuition / ScreenC.h < prev    next >
C/C++ Source or Header  |  1994-05-04  |  2KB  |  57 lines

  1. #ifndef APP_ScreenC_H
  2. #define APP_ScreenC_H
  3. /******************************************************************************
  4.  **
  5.  **    C++ Class Library for the Amiga© system software.
  6.  **
  7.  **    Copyright (C) 1994 by Armin Vogt  **  EMail: armin@uni-paderborn.de
  8.  **    All Rights Reserved.
  9.  **
  10.  **    $VER: apphome:APlusPlus/intuition/ScreenC.h 1.04 (04.05.94) $
  11.  **    
  12.  ******************************************************************************/
  13.  
  14. extern "C" {
  15. #include <intuition/screens.h>
  16. }
  17. #include <APlusPlus/graphics/GraphicObject.h>
  18.  
  19.  
  20. /******************************************************************************************
  21.          » ScreenC class «
  22.  
  23.  ******************************************************************************************/
  24.  
  25. class ScreenC : public GraphicObject
  26. {
  27.    private:
  28.       struct DrawInfo *drawInfo;
  29.       APTR           visualInfo;
  30.       BOOL         lockOnPublic;    // TRUE if this has locked a public screen.
  31.  
  32.        BOOL fillInfo();
  33.  
  34.    protected:
  35.       struct Screen*& screen() { return (struct Screen*&)IObject(); }
  36.  
  37.    public:
  38.       ScreenC(OWNER,AttrList& attrs);
  39.       ScreenC(OWNER,UBYTE *name);
  40.       ~ScreenC();
  41.  
  42.       struct Screen *screenPtr() { return (Screen*)IObject(); }
  43.  
  44.       ULONG setAttributes(AttrList& attrs);
  45.       ULONG getAttribute(Tag,ULONG&);
  46.  
  47.       struct DrawInfo *getScreenDrawInfo();
  48.       APTR getVisualInfo();
  49.  
  50.       BOOL isPublicScreen() { return lockOnPublic; }
  51. };
  52.  
  53. #define SCREENC_NOINFO                       (IOTYPE_SCREEN+1)
  54. #define SCREENC_OPENSCREEN_FAILED            (IOTYPE_SCREEN+2)
  55. #define SCREENC_PUBLICSCREEN_NOT_FOUND       (IOTYPE_SCREEN+3)
  56. #endif
  57.