use for all targets
[AROS.git] / compiler / include / intuition / windecorclass.h
blobb8c9b2268207c85686a03afa6726d2c9121c92d9
1 #ifndef INTUITION_WINDECORCLASS_H
2 #define INTUITION_WINDECORCLASS_H
4 /*
5 Copyright 1995-2001, The AROS Development Team. All rights reserved.
6 $Id$
8 Desc: Headerfile for Intuitions' WINDECORCLASS
9 Lang: english
12 #ifndef UTILITY_TAGITEM_H
13 # include <utility/tagitem.h>
14 #endif
16 #ifndef INTUITION_IMAGECLASS_H
17 # include <intuition/imageclass.h>
18 #endif
20 #ifndef INTUITION_INTUITION_H
21 # include <intuition/intuition.h>
22 #endif
24 #ifndef INTUITION_SCREENS_H
25 # include <intuition/screens.h>
26 #endif
28 /* Attributes for WINDECORCLASS */
29 #define WDA_Dummy (TAG_USER + 0x22000)
30 #define WDA_DrawInfo (WDA_Dummy + 1) /* I.G */
31 #define WDA_Screen (WDA_Dummy + 2) /* I.G */
32 #define WDA_TrueColorOnly (WDA_Dummy + 3) /* ..G */
33 #define WDA_UserBuffer (WDA_Dummy + 4) /* I.G */
36 /* Methods for WINDECORCLASS */
37 #define WDM_Dummy (WDA_Dummy + 500)
39 #define WDM_SETUP (WDM_Dummy + 1)
40 #define WDM_CLEANUP (WDM_Dummy + 2)
41 #define WDM_GETDEFSIZE_SYSIMAGE (WDM_Dummy + 3)
42 #define WDM_DRAW_SYSIMAGE (WDM_Dummy + 4)
43 #define WDM_DRAW_WINBORDER (WDM_Dummy + 5)
44 #define WDM_LAYOUT_BORDERGADGETS (WDM_Dummy + 6)
45 #define WDM_DRAW_BORDERPROPBACK (WDM_Dummy + 7)
46 #define WDM_DRAW_BORDERPROPKNOB (WDM_Dummy + 8)
47 #define WDM_INITWINDOW (WDM_Dummy + 9)
48 #define WDM_EXITWINDOW (WDM_Dummy + 10)
49 #define WDM_WINDOWSHAPE (WDM_Dummy + 11)
52 struct wdpGetDefSizeSysImage
54 STACKED ULONG MethodID;
55 STACKED BYTE wdp_TrueColor;
56 STACKED struct DrawInfo *wdp_Dri;
57 STACKED struct TextFont *wdp_ReferenceFont; /* In: */
58 STACKED ULONG wdp_Which; /* In: One of CLOSEIMAGE, SIZEIMAGE, ... */
59 STACKED ULONG wdp_SysiSize; /* In: lowres/medres/highres */
60 STACKED ULONG *wdp_Width; /* Out */
61 STACKED ULONG *wdp_Height; /* Out */
62 STACKED ULONG wdp_Flags;
63 STACKED IPTR wdp_UserBuffer;
67 /* The sdpDrawSysImage struct in scrdecorclass.h must match this one!!! */
69 struct wdpDrawSysImage
71 STACKED ULONG MethodID;
72 STACKED BYTE wdp_TrueColor;
73 STACKED struct DrawInfo *wdp_Dri;
74 STACKED struct RastPort *wdp_RPort;
75 STACKED LONG wdp_X;
76 STACKED LONG wdp_Y;
77 STACKED LONG wdp_Width;
78 STACKED LONG wdp_Height;
79 STACKED ULONG wdp_Which;
80 STACKED ULONG wdp_State;
81 STACKED ULONG wdp_Flags;
82 STACKED IPTR wdp_UserBuffer;
85 struct wdpDrawWinBorder
87 STACKED ULONG MethodID;
88 STACKED BYTE wdp_TrueColor;
89 STACKED struct DrawInfo *wdp_Dri;
90 STACKED struct Window *wdp_Window;
91 STACKED struct RastPort *wdp_RPort;
92 STACKED ULONG wdp_Flags;
93 STACKED IPTR wdp_UserBuffer;
96 struct wdpLayoutBorderGadgets
98 STACKED ULONG MethodID;
99 STACKED BYTE wdp_TrueColor;
100 STACKED struct DrawInfo *wdp_Dri;
101 STACKED struct Window *wdp_Window;
102 STACKED struct Gadget *wdp_Gadgets;
103 STACKED ULONG wdp_Flags;
104 STACKED ULONG wdp_ExtraButtons;
105 STACKED IPTR wdp_UserBuffer;
108 struct wdpDrawBorderPropBack
110 STACKED ULONG MethodID;
111 STACKED BYTE wdp_TrueColor;
112 STACKED struct DrawInfo *wdp_Dri;
113 STACKED struct Window *wdp_Window;
114 STACKED struct RastPort *wdp_RPort;
115 STACKED struct Gadget *wdp_Gadget;
116 STACKED struct Rectangle *wdp_RenderRect;
117 STACKED struct Rectangle *wdp_PropRect;
118 STACKED struct Rectangle *wdp_KnobRect;
119 STACKED ULONG wdp_Flags;
120 STACKED IPTR wdp_UserBuffer;
123 struct wdpDrawBorderPropKnob
125 STACKED ULONG MethodID;
126 STACKED BYTE wdp_TrueColor;
127 STACKED struct DrawInfo *wdp_Dri;
128 STACKED struct Window *wdp_Window;
129 STACKED struct RastPort *wdp_RPort;
130 STACKED struct Gadget *wdp_Gadget;
131 STACKED struct Rectangle *wdp_RenderRect;
132 STACKED struct Rectangle *wdp_PropRect;
133 STACKED ULONG wdp_Flags;
134 STACKED IPTR wdp_UserBuffer;
137 struct wdpInitWindow
139 STACKED ULONG MethodID;
140 STACKED BYTE wdp_TrueColor;
141 STACKED IPTR wdp_UserBuffer;
142 STACKED struct Screen *wdp_Screen;
143 STACKED IPTR wdp_ScreenUserBuffer;
146 struct wdpExitWindow
148 STACKED ULONG MethodID;
149 STACKED BYTE wdp_TrueColor;
150 STACKED IPTR wdp_UserBuffer;
153 struct wdpWindowShape
155 STACKED ULONG MethodID;
156 STACKED BYTE wdp_TrueColor;
157 STACKED struct Window *wdp_Window;
158 STACKED LONG wdp_Width;
159 STACKED LONG wdp_Height;
160 STACKED IPTR wdp_UserBuffer;
163 /* WinDecor DrawWindowBorder Flags */
164 #define WDF_DWB_TOP_ONLY 1 /* Draw top border only */
166 /* WinDecor DrawWinTitle Title Align */
167 #define WD_DWTA_LEFT 0
168 #define WD_DWTA_RIGHT 1
169 #define WD_DWTA_CENTER 2
171 /* WinDecor LayourBorderGadgets Flags */
172 #define WDF_LBG_INITIAL 1 /* First time == During OpenWindow */
173 #define WDF_LBG_SYSTEMGADGET 2 /* Is a system gadget (close/depth/zoom) */
174 #define WDF_LBG_INGADLIST 4 /* Gadget is already in window gadget list */
175 #define WDF_LBG_MULTIPLE 8 /* There may be multiple gadgets (linked
176 together through NextGadget. Follow it) */
177 /* WinDecor DrawBorderPropKnob Flags */
178 #define WDF_DBPK_HIT 1 /* Knob is hit / in use by user*/
180 #endif /* INTUITION_WINDECORCLASS_H */