2 Copyright 2002-2003, The AROS Development Team.
8 #ifndef _MUIMASTER_SUPPORT_H
9 #define _MUIMASTER_SUPPORT_H
12 # include <exec/types.h>
14 #ifndef INTUITION_CLASSUSR_H
15 # include <intuition/classusr.h>
17 #ifndef INTUITION_CLASSES_H
18 # include <intuition/classes.h>
21 # include <clib/macros.h>
25 # ifndef AROS_ASMCALL_H
26 # include <aros/asmcall.h>
28 # include <aros/macros.h>
29 # define IMSPEC_EXTERNAL_PREFIX "IMAGES:Zune/"
30 # include "support_aros.h"
32 # include "support_amigaos.h"
35 struct MUI_RenderInfo
;
38 #define mui_alloc(x) AllocVec(x,MEMF_CLEAR)
39 #define mui_alloc_struct(x) ((x *)AllocVec(sizeof(x),MEMF_CLEAR))
40 #define mui_free(x) FreeVec(x)
43 int isRegionWithinBounds(struct Region
*r
, int left
, int top
, int width
, int height
);
44 ULONG
ConvertKey(struct IntuiMessage
*imsg
);
46 #define _between(a,x,b) ((x)>=(a) && (x)<=(b))
47 #define _isinobject(x,y) (_between(_mleft(obj),(x),_mright (obj)) \
48 && _between(_mtop(obj) ,(y),_mbottom(obj)))
50 /* add mask in flags if tag is true, else sub mask */
51 #define _handle_bool_tag(flags, tag, mask) \
52 ((tag != 0) ? ((flags) |= (mask)) : ((flags) &= ~(mask)))
54 #define CLAMP(x, low, high) (((x) > (high)) ? (high) : (((x) < (low)) ? (low) : (x)))
57 IPTR
XGET(Object
*obj
, Tag attr
);
60 IPTR
DoSetupMethod(Object
*obj
, struct MUI_RenderInfo
*info
);
61 IPTR
DoShowMethod(Object
*obj
);
62 IPTR
DoHideMethod(Object
*obj
);
64 /* returns next node of this node */
65 void *Node_Next(APTR node
);
66 /* returns first node of this list */
67 void *List_First(APTR list
);
69 WORD
SubtractRectFromRect(struct Rectangle
*a
, struct Rectangle
*b
, struct Rectangle
*destrectarray
);
70 ULONG
IsObjectVisible(Object
*child
, struct Library
*MUIMasterBase
);
72 #endif /* _MUIMASTER_SUPPORT_H */