1 #ifndef _MUI_CLASSES_GROUP_H
2 #define _MUI_CLASSES_GROUP_H
5 Copyright © 1999, David Le Corfec.
6 Copyright © 2002-2012, The AROS Development Team.
12 /*** Name *******************************************************************/
13 #define MUIC_Group "Group.mui"
15 /*** Identifier base (for Zune extensions) **********************************/
16 #define MUIB_Group (MUIB_ZUNE | 0x00001000)
18 /*** Methods ****************************************************************/
19 #define MUIM_Group_AddHead (MUIB_MUI | 0x0042e200) /* MUI: V8 */
20 #define MUIM_Group_AddTail (MUIB_MUI | 0x0042d752) /* MUI: V8 */
21 #define MUIM_Group_ExitChange (MUIB_MUI | 0x0042d1cc) /* MUI: V11 */
22 #define MUIM_Group_ExitChange2 (MUIB_MUI | 0x0042e541) /* MUI: PRIV */
23 #define MUIM_Group_InitChange (MUIB_MUI | 0x00420887) /* MUI: V11 */
24 #define MUIM_Group_Sort (MUIB_MUI | 0x00427417) /* MUI: V4 */
25 #define MUIM_Group_Remove (MUIB_MUI | 0x0042f8a9) /* MUI: V8 */
27 struct MUIP_Group_AddHead
29 STACKED ULONG MethodID
;
33 struct MUIP_Group_AddTail
35 STACKED ULONG MethodID
;
39 struct MUIP_Group_ExitChange
41 STACKED ULONG MethodID
;
44 struct MUIP_Group_ExitChange2
/* PRIV */
46 STACKED ULONG MethodID
; /* PRIV */
47 STACKED ULONG flags
; /* PRIV */
50 struct MUIP_Group_InitChange
52 STACKED ULONG MethodID
;
55 struct MUIP_Group_Sort
57 STACKED ULONG MethodID
;
58 STACKED Object
*obj
[1];
61 struct MUIP_Group_Remove
63 STACKED ULONG MethodID
;
67 #define MUIM_Group_DoMethodNoForward (MUIB_Group | 0x00000000)
68 struct MUIP_Group_DoMethodNoForward
70 STACKED ULONG MethodID
;
71 STACKED ULONG DoMethodID
;
72 }; /* msg stuff follows */
74 /*** Attributes *************************************************************/
75 #define MUIA_Group_ActivePage \
76 (MUIB_MUI | 0x00424199) /* MUI: V5 isg LONG */
77 #define MUIA_Group_Child \
78 (MUIB_MUI | 0x004226e6) /* MUI: V4 i.. Object * */
79 #define MUIA_Group_ChildList \
80 (MUIB_MUI | 0x00424748) /* MUI: V4 ..g struct List * */
81 #define MUIA_Group_Columns \
82 (MUIB_MUI | 0x0042f416) /* MUI: V4 is. LONG */
83 #define MUIA_Group_Forward \
84 (MUIB_MUI | 0x00421422) /* MUI: V11 .s. BOOL */
85 #define MUIA_Group_Horiz \
86 (MUIB_MUI | 0x0042536b) /* MUI: V4 i.. BOOL */
87 #define MUIA_Group_HorizSpacing \
88 (MUIB_MUI | 0x0042c651) /* MUI: V4 isg LONG */
89 #define MUIA_Group_LayoutHook \
90 (MUIB_MUI | 0x0042c3b2) /* MUI: V11 i.. struct Hook * */
91 #define MUIA_Group_PageMode \
92 (MUIB_MUI | 0x00421a5f) /* MUI: V5 i.. BOOL */
93 #define MUIA_Group_Rows \
94 (MUIB_MUI | 0x0042b68f) /* MUI: V4 is. LONG */
95 #define MUIA_Group_SameHeight \
96 (MUIB_MUI | 0x0042037e) /* MUI: V4 i.. BOOL */
97 #define MUIA_Group_SameSize \
98 (MUIB_MUI | 0x00420860) /* MUI: V4 i.. BOOL */
99 #define MUIA_Group_SameWidth \
100 (MUIB_MUI | 0x0042b3ec) /* MUI: V4 i.. BOOL */
101 #define MUIA_Group_Spacing \
102 (MUIB_MUI | 0x0042866d) /* MUI: V4 is. LONG */
103 #define MUIA_Group_VertSpacing \
104 (MUIB_MUI | 0x0042e1bf) /* MUI: V4 isg LONG */
106 #define MUIA_Group_Virtual \
107 (MUIB_Group | 0x00000000) /* Zune: V1 i.. BOOL */
111 MUIV_Group_ActivePage_First
= 0,
112 MUIV_Group_ActivePage_Last
= -1,
113 MUIV_Group_ActivePage_Prev
= -2,
114 MUIV_Group_ActivePage_Next
= -3,
115 MUIV_Group_ActivePage_Advance
= -4,
118 /* This is the message you get if your custom layout hook is called */
121 STACKED ULONG lm_Type
; /* the message type */
122 STACKED
struct MinList
*lm_Children
; /* exec list of the children
124 STACKED
struct MUI_MinMax lm_MinMax
; /* here you have to place the
125 * MUILM_MINMAX results */
132 } lm_Layout
; /* size (and result) for MUILM_LAYOUT */
138 MUILM_MINMAX
= 1, /* Please calc your min & max sizes */
139 MUILM_LAYOUT
= 2, /* Please layout your children */
142 #define MUILM_UNKNOWN -1 /* should be returned if the hook function
143 * doesn't understand lm_Type */
146 extern const struct __MUIBuiltinClass _MUI_Group_desc
; /* PRIV */
148 #endif /* _MUI_CLASSES_GROUP_H */