home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / C / BC_DICE2.DMS / in.adf / INCLUDE / intuition / screens.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-01-10  |  4.6 KB  |  314 lines

  1. #ifndef INTUITION_SCREENS_H
  2. #define INTUITION_SCREENS_H TRUE
  3. /*
  4. ** $Filename: intuition/screens.h $
  5. ** $Release: 2.04 Includes, V37.4 $
  6. ** $Revision: 36.36 $
  7. ** $Date: 91/10/07 $
  8. **
  9. ** The Screen and NewScreen structures and attributes
  10. **
  11. ** (C) Copyright 1985-1991 Commodore-Amiga, Inc.
  12. ** All Rights Reserved
  13. */
  14.  
  15. #ifndef EXEC_TYPES_H
  16. #include <exec/types.h>
  17. #endif
  18.  
  19. #ifndef GRAPHICS_GFX_H
  20. #include <graphics/gfx.h>
  21. #endif
  22.  
  23. #ifndef GRAPHICS_CLIP_H
  24. #include <graphics/clip.h>
  25. #endif
  26.  
  27. #ifndef GRAPHICS_VIEW_H
  28. #include <graphics/view.h>
  29. #endif
  30.  
  31. #ifndef GRAPHICS_RASTPORT_H
  32. #include <graphics/rastport.h>
  33. #endif
  34.  
  35. #ifndef GRAPHICS_LAYERS_H
  36. #include <graphics/layers.h>
  37. #endif
  38.  
  39. #ifndef UTILITY_TAGITEM_H
  40. #include <utility/tagitem.h>
  41. #endif
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52. #define RI_VERSION (1) 
  53. #define DRI_VERSION (1)
  54.  
  55. struct DrawInfo
  56. {
  57.  UWORD dri_Version; 
  58.  UWORD dri_NumPens; 
  59.  UWORD *dri_Pens; 
  60.  
  61.  struct TextFont *dri_Font; 
  62.  UWORD dri_Depth; 
  63.  
  64.  struct { 
  65.  UWORD X;
  66.  UWORD Y;
  67.  } dri_Resolution;
  68.  
  69.  ULONG dri_Flags; 
  70.  ULONG dri_Reserved[7]; 
  71. };
  72.  
  73. #define DRIF_NEWLOOK 0x00000001 
  74.  
  75.  
  76. #define DETAILPEN (0x0000) 
  77. #define BLOCKPEN (0x0001) 
  78. #define TEXTPEN (0x0002) 
  79. #define SHINEPEN (0x0003) 
  80. #define SHADOWPEN (0x0004) 
  81. #define FILLPEN (0x0005) 
  82. #define FILLTEXTPEN (0x0006) 
  83. #define BACKGROUNDPEN (0x0007) 
  84. #define HIGHLIGHTTEXTPEN (0x0008) 
  85.  
  86. #define NUMDRIPENS (0x0009)
  87.  
  88.  
  89.  
  90.  
  91.  
  92. struct Screen
  93. {
  94.  struct Screen *NextScreen; 
  95.  struct Window *FirstWindow; 
  96.  
  97.  WORD LeftEdge, TopEdge; 
  98.  WORD Width, Height; 
  99.  
  100.  WORD MouseY, MouseX; 
  101.  
  102.  UWORD Flags; 
  103.  
  104.  UBYTE *Title; 
  105.  UBYTE *DefaultTitle; 
  106.  
  107.  
  108.  
  109.  BYTE BarHeight, BarVBorder, BarHBorder, MenuVBorder, MenuHBorder;
  110.  BYTE WBorTop, WBorLeft, WBorRight, WBorBottom;
  111.  
  112.  struct TextAttr *Font; 
  113.  
  114.  
  115.  struct ViewPort ViewPort; 
  116.  struct RastPort RastPort; 
  117.  struct BitMap BitMap; 
  118.  struct Layer_Info LayerInfo; 
  119.  
  120.  
  121.  struct Gadget *FirstGadget;
  122.  
  123.  UBYTE DetailPen, BlockPen; 
  124.  
  125.  
  126.  UWORD SaveColor0;
  127.  
  128.  
  129.  struct Layer *BarLayer;
  130.  
  131.  UBYTE *ExtData;
  132.  
  133.  UBYTE *UserData; 
  134.  
  135.  
  136. };
  137.  
  138.  
  139.  
  140.  
  141. #define SCREENTYPE 0x000F 
  142.  
  143. #define WBENCHSCREEN 0x0001 
  144. #define PUBLICSCREEN 0x0002 
  145. #define CUSTOMSCREEN 0x000F 
  146.  
  147. #define SHOWTITLE 0x0010 
  148.  
  149. #define BEEPING 0x0020 
  150.  
  151. #define CUSTOMBITMAP 0x0040 
  152.  
  153. #define SCREENBEHIND 0x0080 
  154. #define SCREENQUIET 0x0100 
  155. #define SCREENHIRES 0x0200 
  156.  
  157. #define NS_EXTENDED 0x1000 
  158.  
  159.  
  160. #define AUTOSCROLL 0x4000 
  161.  
  162. #define STDSCREENHEIGHT -1 
  163. #define STDSCREENWIDTH -1 
  164.  
  165.  
  166.  
  167.  
  168.  
  169. #define SA_Dummy (TAG_USER + 32)
  170.  
  171. #define SA_Left (SA_Dummy + 0x0001)
  172. #define SA_Top (SA_Dummy + 0x0002)
  173. #define SA_Width (SA_Dummy + 0x0003)
  174. #define SA_Height (SA_Dummy + 0x0004)
  175.  
  176. #define SA_Depth (SA_Dummy + 0x0005)
  177.  
  178. #define SA_DetailPen (SA_Dummy + 0x0006)
  179.  
  180. #define SA_BlockPen (SA_Dummy + 0x0007)
  181. #define SA_Title (SA_Dummy + 0x0008)
  182.  
  183. #define SA_Colors (SA_Dummy + 0x0009)
  184.  
  185. #define SA_ErrorCode (SA_Dummy + 0x000A)
  186.  
  187. #define SA_Font (SA_Dummy + 0x000B)
  188.  
  189. #define SA_SysFont (SA_Dummy + 0x000C)
  190.  
  191. #define SA_Type (SA_Dummy + 0x000D)
  192.  
  193. #define SA_BitMap (SA_Dummy + 0x000E)
  194.  
  195. #define SA_PubName (SA_Dummy + 0x000F)
  196.  
  197. #define SA_PubSig (SA_Dummy + 0x0010)
  198. #define SA_PubTask (SA_Dummy + 0x0011)
  199.  
  200. #define SA_DisplayID (SA_Dummy + 0x0012)
  201.  
  202. #define SA_DClip (SA_Dummy + 0x0013)
  203.  
  204. #define SA_Overscan (SA_Dummy + 0x0014)
  205.  
  206. #define SA_Obsolete1 (SA_Dummy + 0x0015)
  207.  
  208.  
  209.  
  210. #define SA_ShowTitle (SA_Dummy + 0x0016)
  211.  
  212. #define SA_Behind (SA_Dummy + 0x0017)
  213.  
  214. #define SA_Quiet (SA_Dummy + 0x0018)
  215.  
  216. #define SA_AutoScroll (SA_Dummy + 0x0019)
  217.  
  218. #define SA_Pens (SA_Dummy + 0x001A)
  219.  
  220. #define SA_FullPalette (SA_Dummy + 0x001B)
  221.  
  222.  
  223.  
  224. #ifndef NSTAG_EXT_VPMODE
  225. #define NSTAG_EXT_VPMODE (TAG_USER | 1)
  226. #endif
  227.  
  228.  
  229.  
  230. #define OSERR_NOMONITOR (1) 
  231. #define OSERR_NOCHIPS (2) 
  232. #define OSERR_NOMEM (3) 
  233. #define OSERR_NOCHIPMEM (4) 
  234. #define OSERR_PUBNOTUNIQUE (5) 
  235. #define OSERR_UNKNOWNMODE (6) 
  236.  
  237.  
  238.  
  239.  
  240.  
  241. struct NewScreen
  242. {
  243.  WORD LeftEdge, TopEdge, Width, Height, Depth; 
  244.  
  245.  UBYTE DetailPen, BlockPen; 
  246.  
  247.  UWORD ViewModes; 
  248.  
  249.  UWORD Type; 
  250.  
  251.  struct TextAttr *Font; 
  252.  
  253.  UBYTE *DefaultTitle; 
  254.  
  255.  struct Gadget *Gadgets; 
  256.  
  257.  
  258.  struct BitMap *CustomBitMap;
  259. };
  260.  
  261.  
  262. struct ExtNewScreen
  263. {
  264.  WORD LeftEdge, TopEdge, Width, Height, Depth;
  265.  UBYTE DetailPen, BlockPen;
  266.  UWORD ViewModes;
  267.  UWORD Type;
  268.  struct TextAttr *Font;
  269.  UBYTE *DefaultTitle;
  270.  struct Gadget *Gadgets;
  271.  struct BitMap *CustomBitMap;
  272.  
  273.  struct TagItem *Extension;
  274.  
  275. };
  276.  
  277.  
  278. #define OSCAN_TEXT (1) 
  279. #define OSCAN_STANDARD (2) 
  280. #define OSCAN_MAX (3) 
  281. #define OSCAN_VIDEO (4) 
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288. struct PubScreenNode {
  289.  struct Node psn_Node; 
  290.  struct Screen *psn_Screen;
  291.  UWORD psn_Flags; 
  292.  WORD psn_Size; 
  293.  WORD psn_VisitorCount; 
  294.  struct Task *psn_SigTask; 
  295.  UBYTE psn_SigBit; 
  296. };
  297.  
  298. #define PSNF_PRIVATE (0x0001)
  299.  
  300.  
  301. #define MAXPUBSCREENNAME (139) 
  302.  
  303.  
  304. #define SHANGHAI 0x0001 
  305. #define POPPUBSCREEN 0x0002 
  306.  
  307.  
  308.  
  309. #ifndef INTUITION_IOBSOLETE_H
  310. #include <intuition/iobsolete.h>
  311. #endif
  312.  
  313. #endif
  314.