revert between 56095 -> 55830 in arch
[AROS.git] / compiler / include / intuition / menudecorclass.h
blob16645043b9f829d9a1980871f6c1bf77d1161103
1 #ifndef INTUITION_MENUDECORCLASS_H
2 #define INTUITION_MENUDECORCLASS_H
4 /*
5 Copyright 1995-2011, The AROS Development Team. All rights reserved.
6 $Id$
8 Desc: Headerfile for Intuition's MENUDECORCLASS
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 MENUDECORCLASS */
29 #define MDA_Dummy (TAG_USER + 0x22000)
30 #define MDA_DrawInfo (MDA_Dummy + 1) /* I.G */
31 #define MDA_Screen (MDA_Dummy + 2) /* I.G */
32 #define MDA_TrueColorOnly (MDA_Dummy + 3) /* ..G */
33 #define MDA_UserBuffer (MDA_Dummy + 4) /* I.G */
36 /* Methods for MENUDECORCLASS */
37 #define MDM_Dummy (MDA_Dummy + 500)
39 #define MDM_GETDEFSIZE_SYSIMAGE (MDM_Dummy + 1)
40 #define MDM_DRAW_SYSIMAGE (MDM_Dummy + 2)
41 #define MDM_GETMENUSPACES (MDM_Dummy + 3)
42 #define MDM_DRAWBACKGROUND (MDM_Dummy + 4)
43 #define MDM_INITMENU (MDM_Dummy + 5)
44 #define MDM_EXITMENU (MDM_Dummy + 6)
46 struct mdpGetDefSizeSysImage
48 STACKED ULONG MethodID;
49 STACKED BYTE mdp_TrueColor;
50 STACKED struct DrawInfo *mdp_Dri;
51 STACKED struct TextFont *mdp_ReferenceFont; /* In: */
52 STACKED ULONG mdp_Which; /* In: One of CLOSEIMAGE, SIZEIMAGE, ... */
53 STACKED ULONG mdp_SysiSize; /* In: lowres/medres/highres */
54 STACKED ULONG *mdp_Width; /* Out */
55 STACKED ULONG *mdp_Height; /* Out */
56 STACKED ULONG mdp_Flags;
59 struct mdpDrawSysImage
61 STACKED ULONG MethodID;
62 STACKED BYTE mdp_TrueColor;
63 STACKED struct DrawInfo *mdp_Dri;
64 STACKED struct RastPort *mdp_RPort;
65 STACKED LONG mdp_X;
66 STACKED LONG mdp_Y;
67 STACKED LONG mdp_Width;
68 STACKED LONG mdp_Height;
69 STACKED ULONG mdp_Which;
70 STACKED ULONG mdp_State;
71 STACKED ULONG mdp_Flags;
72 STACKED IPTR mdp_UserBuffer;
75 struct mdpGetMenuSpaces
77 STACKED ULONG MethodID;
78 STACKED BYTE mdp_TrueColor;
79 STACKED LONG mdp_InnerLeft; /* Out */
80 STACKED LONG mdp_InnerTop; /* Out */
81 STACKED LONG mdp_InnerRight;
82 STACKED LONG mdp_InnerBottom;
83 STACKED LONG mdp_ItemInnerLeft;
84 STACKED LONG mdp_ItemInnerTop;
85 STACKED LONG mdp_ItemInnerRight;
86 STACKED LONG mdp_ItemInnerBottom;
87 STACKED LONG mdp_MinWidth;
88 STACKED LONG mdp_MinHeight;
91 /* The sdpDrawSysImage struct in scrdecorclass.h must match this one!!! */
93 struct mdpDrawBackground
95 STACKED ULONG MethodID;
96 STACKED BYTE mdp_TrueColor;
97 STACKED struct RastPort *mdp_RPort;
98 STACKED LONG mdp_X;
99 STACKED LONG mdp_Y;
100 STACKED LONG mdp_Width;
101 STACKED LONG mdp_Height;
102 STACKED LONG mdp_ItemLeft;
103 STACKED LONG mdp_ItemTop;
104 STACKED LONG mdp_ItemWidth;
105 STACKED LONG mdp_ItemHeight;
106 STACKED UWORD mdp_Flags;
107 STACKED IPTR mdp_UserBuffer;
108 STACKED ULONG mdp_MenuDecorFlags;
111 struct mdpInitMenu
113 STACKED ULONG MethodID;
114 STACKED BYTE mdp_TrueColor;
115 STACKED struct RastPort *mdp_RPort;
116 STACKED struct Screen *mdp_Screen;
117 STACKED ULONG mdp_Left;
118 STACKED ULONG mdp_Top;
119 STACKED ULONG mdp_Width;
120 STACKED LONG mdp_Height;
121 STACKED IPTR mdp_UserBuffer;
122 STACKED IPTR mdp_ScreenUserBuffer;
123 STACKED ULONG mdp_MenuDecorFlags;
126 struct mdpExitMenu
128 STACKED ULONG MethodID;
129 STACKED BYTE mdp_TrueColor;
130 STACKED IPTR mdp_UserBuffer;
135 #define MDP_STATE_NORMAL 0
136 #define MDP_STATE_SELECTED 1
137 #define MDP_STATE_DISABLED 2
139 #define MDP_MDF_MENU (1<<0)
140 #define MDP_MDF_ITEM (1<<1)
141 #define MDP_MDF_SUBITEM (1<<2)
142 #define MDP_MDF_MENUS_UNDERMOUSE (1<<7)
144 #endif /* INTUITION_MENUDECORCLASS_H */