home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Misc / DC-POS24.LZX / pOS / IncPOS.lzx / pScreen / Window.h < prev   
Encoding:
C/C++ Source or Header  |  1997-03-18  |  4.3 KB  |  111 lines

  1. #ifndef __INC_POS_PSCREEN_WINDOW_H
  2. #define __INC_POS_PSCREEN_WINDOW_H
  3. /*******************************************************************
  4.  Includes Release 24
  5.  (C) Copyright 1995-1997 proDAD
  6.      All Rights Reserved
  7.  
  8.  $AUT Holger Burkarth
  9.  $DAT >>Window.h<<   26 Jan 1997    14:17:57 - (C) ProDAD
  10. *******************************************************************/
  11. #ifndef __INC_POS_PLAYER_REGION_H
  12. #include <pLayer/Region.h>
  13. #endif
  14.  
  15.  
  16. /*----------------------------------
  17. -----------------------------------*/
  18. struct pOS_Window
  19. {
  20.   struct pOS_ExNode      win_Node;
  21.  
  22.   SLONG                  win_LeftEdge;
  23.   SLONG                  win_TopEdge;          /* parameters of the screen */
  24.   ULONG                  win_Width;
  25.   ULONG                  win_Height;           /* parameters of the screen */
  26.  
  27.   SLONG                  win_MouseX;
  28.   SLONG                  win_MouseY;           /* position relative to upper-left */
  29.  
  30.   const CHAR            *win_Title;            /* the title text for this window */
  31.   struct pOS_RastPort   *win_RastPort;         /* */
  32.  
  33.   UBYTE                  win_Reserved1[32];
  34.  
  35.   ULONG                  win_UserData[2];
  36. /*----------------------------------*/
  37.  
  38.   SLONG                  win_GZZMouseX;
  39.   SLONG                  win_GZZMouseY;        /* inner-Window of WFLG_GIMMEZEROZERO */
  40.   ULONG                  win_GZZWidth;
  41.   ULONG                  win_GZZHeight;
  42.  
  43.   struct pOS_List        win_GadList;
  44.  
  45.   ULONG  win_MinWidth,win_MinHeight;
  46.   ULONG  win_MaxWidth,win_MaxHeight;
  47.  
  48.   ULONG                  win_Flags;            /* (enum pOS_WindowFlags) */
  49.   UBYTE                  win_MorFlags[16];
  50.  
  51.   UBYTE win_BorTop,win_BorLeft,win_BorRight,win_BorBottom;
  52.  
  53.   const CHAR            *win_ScreenTitle;      /* if non-null, Screen title when Window is active */
  54.  
  55.   struct pOS_Screen     *win_Screen;           /* this Window's Screen */
  56.   struct pOS_Layer      *win_Layer;
  57.   struct pOS_TextFont   *win_Font;
  58.   struct pOS_MsgPort    *win_UserPort;
  59.   ULONG                  win_IDCMP;
  60.   UBYTE                  win_MorIDCMP[16];
  61.   struct pOS_Rectangle   win_ZipRect;
  62.   struct pOS_RastPort   *win_BorderRPort;      /* Wird nur bei GZZ verwendet */
  63.   struct pOS_Layer      *win_BorderLayer;      /* Wird nur bei GZZ verwendet */
  64.   struct pOS_ExList      win_OMenuList;
  65.  
  66.   struct pOS_IClassInfo *win_ICI;              /* Read only */
  67. /**** SYSTEM-DATAS ****/
  68. };
  69.  
  70.  
  71.  
  72. enum pOS_WindowFlags /* win_Flags, win_MorFlags */
  73. {
  74.   WINFLGF_SizeGadget=        0x000001, /* include sizing system-gadget? */
  75.   WINFLGF_Dragbar=           0x000002, /* include dragging system-gadget? */
  76.   WINFLGF_DepthGadget=       0x000004, /* include depth arrangement gadget? */
  77.   WINFLGF_CloseGadget=       0x000008, /* include close-box system-gadget? */
  78.   WINFLGF_SizeBRight=        0x000010, /* size gadget uses right border */
  79.   WINFLGF_SizeBBottom=       0x000020, /* size gadget uses bottom border */
  80.   WINFLGF_RefreshBits=       0x0000C0,
  81.   WINFLGF_SmartRefresh=      0x000000,
  82.   WINFLGF_SimpleRefresh=     0x000040,
  83.   WINFLGF_SuperBitmap=       0x000080,
  84.   WINFLGF_OtherRefresh=      0x0000C0,
  85.   WINFLGF_Backdrop=          0x000100, /* this is a backdrop window */
  86.   WINFLGF_ReportMouse=       0x000200, /* to hear about every mouse move */
  87.   WINFLGF_GimmeZeroZero=     0x000400, /* a GimmeZeroZero window       */
  88.   WINFLGF_Borderless=        0x000800, /* to get a Window sans border */
  89.   WINFLGF_Activate=          0x001000, /* when Window opens, it's Active */
  90.   WINFLGF_RMBTrap=           0x010000, /* Catch RMB events for your own */
  91.   WINFLGF_NoCareRefresh=     0x020000, /* not to be bothered with REFRESH */
  92.  
  93.   WINFLGB_MORE=0x20,
  94.   WINFLGB_DragM1=WINFLGB_MORE,  /* Window mit Inhalt verschieben */
  95.   WINFLGB_SharedUserPort,       /* UserPort wird übergeben */
  96.   WINFLGB_Visitor,              /* Window is PubScreen-Visitor */
  97.   WINFLGB_WinMenu,              /* Menu an die Window-Pos binden */
  98.   WINFLGB_OwnScreen,            /* Window has a own screen */
  99.   WINFLGB_DisableDrop,          /* im Win ist kein Drop möglich */
  100.   WINFLGB_DisableActive,        /* Window kann nicht aktiviert werden */
  101.   WINFLGB_DisableDrag,          /* im Win ist kein Drag möglich */
  102.   WINFLGB_DisSizeM1,            /* Disable Sizing mit Inhalt */
  103.   WINFLGB_FreeBgFillGfxMap,     /* win_BgFillGfxMap wird beim CloseWindow freigegeben */
  104.   WINFLGB_AlwaysDraw,           /* die gesamte Win-Fläche ist Drag-Sensitiv  */
  105. };
  106.  
  107.  
  108.  
  109.  
  110. #endif
  111.