****************************************************************************
**
** MUI - MagicUserInterface
** (c) 1993 by Stefan Stuntz
**
** Main Header File
**
****************************************************************************
**
** This file is a modified version of the orginal mui.h file (provided with
** MUI v2.1) in order to be used in E programs.
**
** '$VER: mui_e 1.3 (11.07.94)'
**
** July 1994, Lionel Vintenat
**
****************************************************************************
** Class Tree
****************************************************************************
**
** rootclass			   (BOOPSI's base class)
** +--Notify			   (implements notification mechanism)
**	  +--Family 		   (handles multiple children)
**	  !  +--Menustrip	   (describes a complete menu strip)
**	  !  +--Menu		   (describes a single menu)
**	  !  \--Menuitem	   (describes a single menu item)
**	  +--Application	   (main class for all applications)
**	  +--Window 		   (handles intuition window related topics)
**	  +--Area			   (base class for all GUI elements)
**		 +--Rectangle	   (creates (empty) rectangles)
**		 +--Image		   (creates images)
**		 +--Text		   (creates some text)
**		 +--String		   (creates a string gadget)
**		 +--Prop		   (creates a proportional gadget)
**		 +--Gauge		   (creates a fule gauge)
**		 +--Scale		   (creates a percentage scale)
**		 +--Boopsi		   (interface to BOOPSI gadgets)
**		 +--Colorfield	   (creates a field with changeable color)
**		 +--List		   (creates a line-oriented list)
**		 !	+--Floattext   (special list with floating text)
**		 !	+--Volumelist  (special list with volumes)
**		 !	+--Scrmodelist (special list with screen modes)
**		 !	\--Dirlist	   (special list with files)
**		 +--Group		   (groups other GUI elements)
**			+--Register    (handles page groups with titles)
**			+--Virtgroup   (handles virtual groups)
**			+--Scrollgroup (handles virtual groups with scrollers)
**			+--Scrollbar   (creates a scrollbar)
**			+--Listview    (creates a listview)
**			+--Radio	   (creates radio buttons)
**			+--Cycle	   (creates cycle gadgets)
**			+--Slider	   (creates slider gadgets)
**			+--Coloradjust (creates some RGB sliders)
**			+--Palette	   (creates a complete palette gadget)
**			+--Colorpanel  (creates a panel of colors)
**			+--Popstring   (base class for popups)
**			   +--Popobject(popup a MUI object in a window)
**			   \--Popasl   (popup an asl requester)
**
****************************************************************************
** General Header File Information
****************************************************************************
**
** All macro and structure definitions follow these rules:
**
** Name 					  Meaning
**
** MUIC_<class> 			  Name of a class
** MUIM_<class>_<method>	  Method
** MUIP_<class>_<method>	  Methods parameter structure
** MUIV_<class>_<method>_<x>  Special method value
** MUIA_<class>_<attrib>	  Attribute
** MUIV_<class>_<attrib>_<x>  Special attribute value
** MUIE_<error> 			  Error return code from MUI_Error()
** MUII_<name>				  Standard MUI image
** MUIX_<code>				  Control codes for text strings
** MUIO_<name>				  Object type for MUI_MakeObject()
**
** MUIA_... attribute definitions are followed by a comment
** consisting of the three possible letters I, S and G.
** I: it's possible to specify this attribute at object creation time.
** S: it's possible to change this attribute with SetAttrs().
** G: it's possible to get this attribute with GetAttr().
**
** Items marked with "Custom Class" are for use in custom classes only!



***************************************************************************
** Library specification
***************************************************************************

#define MUIMASTER_NAME	'muimaster.library'
#define MUIMASTER_VMIN 8

** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
** Warning, the macros in this header file work only with muimaster.library
** V8 and above. If you recompile your programs, be sure to open
** muimaster.library with MUIMASTER_VMIN as version number.
** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!



****************************************************************************
** Object Types for MUI_MakeObject()
****************************************************************************

#define MUIO_Label		  1
#define MUIO_Button 	  2
#define MUIO_Checkmark	  3
#define MUIO_Cycle		  4
#define MUIO_Radio		  5
#define MUIO_Slider 	  6
#define MUIO_String 	  7
#define MUIO_PopButton	  8
#define MUIO_HSpace 	  9
#define MUIO_VSpace 	 10
#define MUIO_HBar		 11
#define MUIO_VBar		 12
#define MUIO_MenustripNM 13
#define MUIO_Menuitem	 14
#define MUIO_BarTitle	 15

#define MUIO_Label_SingleFrame %100000000
#define MUIO_Label_DoubleFrame %1000000000
#define MUIO_Label_LeftAligned %10000000000



****************************************************************************
** ARexx Interface
****************************************************************************

#define MC_TEMPLATE_ID -1

#define MUI_RXERR_BADDEFINITION  -1
#define MUI_RXERR_OUTOFMEMORY	 -2
#define MUI_RXERR_UNKNOWNCOMMAND -3
#define MUI_RXERR_BADSYNTAX 	 -4



****************************************************************************
** Return values for MUI_Error()
****************************************************************************

#define MUIE_OK 				 0
#define MUIE_OutOfMemory		 1
#define MUIE_OutOfGfxMemory 	 2
#define MUIE_InvalidWindowObject 3
#define MUIE_MissingLibrary 	 4
#define MUIE_NoARexx			 5
#define MUIE_SingleTask 		 6



****************************************************************************
** Standard MUI Images
****************************************************************************

				* These images are configured	*
				* with the preferences program. *
#define MUII_WindowBack 	0
#define MUII_RequesterBack	1
#define MUII_ButtonBack 	2
#define MUII_ListBack		3
#define MUII_TextBack		4
#define MUII_PropBack		5
#define MUII_ActiveBack 	6
#define MUII_SelectedBack	7
#define MUII_ListCursor 	8
#define MUII_ListSelect 	9
#define MUII_ListSelCur    10
#define MUII_ArrowUp	   11
#define MUII_ArrowDown	   12
#define MUII_ArrowLeft	   13
#define MUII_ArrowRight    14
#define MUII_CheckMark	   15
#define MUII_RadioButton   16
#define MUII_Cycle		   17
#define MUII_PopUp		   18
#define MUII_PopFile	   19
#define MUII_PopDrawer	   20
#define MUII_PropKnob	   21
#define MUII_Drawer 	   22
#define MUII_HardDisk	   23
#define MUII_Disk		   24
#define MUII_Chip		   25
#define MUII_Volume 	   26
#define MUII_PopUpBack	   27
#define MUII_Network	   28
#define MUII_Assign 	   29
#define MUII_TapePlay	   30
#define MUII_TapePlayBack  31
#define MUII_TapePause	   32
#define MUII_TapeStop	   33
#define MUII_TapeRecord    34
#define MUII_GroupBack	   35
#define MUII_SliderBack    36
#define MUII_SliderKnob    37
#define MUII_TapeUp 	   38
#define MUII_TapeDown	   39
#define MUII_Count		   40

				* These are direct color	*
				* combinations and are not	*
				* affected by users prefs.	*
				* Generally, you should 	*
				* avoid using them. Better	*
				* use one of the customized *
				* images above. 			*
#define MUII_BACKGROUND    128
#define MUII_SHADOW 	   129
#define MUII_SHINE		   130
#define MUII_FILL		   131
#define MUII_SHADOWBACK    132
#define MUII_SHADOWFILL    133
#define MUII_SHADOWSHINE   134
#define MUII_FILLBACK	   135
#define MUII_FILLSHINE	   136
#define MUII_SHINEBACK	   137
#define MUII_FILLBACK2	   138
#define MUII_HSHINEBACK    139
#define MUII_HSHADOWBACK   140
#define MUII_HSHINESHINE   141
#define MUII_HSHADOWSHADOW 142
#define MUII_LASTPAT	   142
*#define MUII_N1HSHINE		143*



****************************************************************************
** Special values for some methods
****************************************************************************

#define MUIV_TriggerValue	$49893131
#define MUIV_NotTriggerValue	$49893133
#define MUIV_EveryTime		$49893131

#define MUIV_Application_Save_ENV	  NIL
#define MUIV_Application_Save_ENVARC  -1
#define MUIV_Application_Load_ENV	  NIL
#define MUIV_Application_Load_ENVARC  -1

#define MUIV_Application_ReturnID_Quit -1

#define MUIV_List_Insert_Top			 0
#define MUIV_List_Insert_Active 		-1
#define MUIV_List_Insert_Sorted 		-2
#define MUIV_List_Insert_Bottom 		-3

#define MUIV_List_Remove_First			 0
#define MUIV_List_Remove_Active 		-1
#define MUIV_List_Remove_Last			-2

#define MUIV_List_Select_Off			 0
#define MUIV_List_Select_On 			 1
#define MUIV_List_Select_Toggle 		 2
#define MUIV_List_Select_Ask			 3

#define MUIV_List_Jump_Active			-1
#define MUIV_List_GetEntry_Active		-1
#define MUIV_List_Select_Active 		-1
#define MUIV_List_Select_All			-2

#define MUIV_List_Redraw_Active 		-1
#define MUIV_List_Redraw_All			-2

#define MUIV_List_Exchange_Active		-1

#define MUIV_Colorpanel_GetColor_Active -1
#define MUIV_Colorpanel_SetColor_Active -1



****************************************************************************
** Control codes for text strings
****************************************************************************

						* right justified *
#define MUIX_R	'\er'
						* centered		  *
#define MUIX_C	'\ec'
						* left justified  *
#define MUIX_L	'\el'

						* normal	 *
#define MUIX_N	'\en'
						* bold		 *
#define MUIX_B	'\eb'
						* italic	 *
#define MUIX_I	'\ei'
						* underlined *
#define MUIX_U	'\eu'

						* text pen			 *
#define MUIX_PT '\e2'
						* highlight text pen *
#define MUIX_PH '\e8'



/***************************************************************************
** Parameter structures for some classes
***************************************************************************/

#define MUIV_Palette_Entry_End -1



***************************************************************************
**
** Macro Section
** -------------
**
** To make GUI creation more easy and understandable, you can use the
** macros below.
**
***************************************************************************

***************************************************************************
**
** Object Generation
** -----------------
**
** The xxxObject (and xChilds) macros generate new instances of MUI classes.
** Every xxxObject can be followed by tagitems specifying initial create
** time attributes for the new object and must be terminated with the
** End macro:
**
** obj = StringObject,
**			MUIA_String_Contents, "foo",
**			MUIA_String_MaxLen	, 40,
**			End;
**
** With the Child, SubWindow and WindowContents shortcuts you can
** construct a complete GUI within one command:
**
** app = ApplicationObject,
**
**			...
**
**			SubWindow, WindowObject,
**			   WindowContents, VGroup,
**				  Child, String("foo",40),
**				  Child, String("bar",50),
**				  Child, HGroup,
**					 Child, CheckMark(TRUE),
**					 Child, CheckMark(FALSE),
**					 End,
**				  End,
**			   End,
**
**			SubWindow, WindowObject,
**			   WindowContents, HGroup,
**				  Child, ...,
**				  Child, ...,
**				  End,
**			   End,
**
**			...
**
**			End;
**
***************************************************************************

#define MenustripObject   Mui_NewObjectA('Menustrip.mui', [TAG_IGNORE, 0
#define MenuObject		  Mui_NewObjectA('Menu.mui', [TAG_IGNORE, 0
#define MenuObjectT(name) Mui_NewObjectA('Menu.mui', [MUIA_Menu_Title, name
#define MenuitemObject	  Mui_NewObjectA('Menuitem.mui', [TAG_IGNORE, 0
#define WindowObject	  Mui_NewObjectA('Window.mui', [TAG_IGNORE, 0
#define ImageObject 	  Mui_NewObjectA('Image.mui', [TAG_IGNORE, 0
#define BitmapObject	  Mui_NewObjectA('Bitmap.mui', [TAG_IGNORE, 0
#define BodychunkObject   Mui_NewObjectA('Bodychunk.mui', [TAG_IGNORE, 0
#define NotifyObject	  Mui_NewObjectA('Notify.mui', [TAG_IGNORE, 0
#define ApplicationObject Mui_NewObjectA('Application.mui', [TAG_IGNORE, 0
#define TextObject		  Mui_NewObjectA('Text.mui', [TAG_IGNORE, 0
#define RectangleObject   Mui_NewObjectA('Rectangle.mui', [TAG_IGNORE, 0
#define ListObject		  Mui_NewObjectA('List.mui', [TAG_IGNORE, 0
#define PropObject		  Mui_NewObjectA('Prop.mui', [TAG_IGNORE, 0
#define StringObject	  Mui_NewObjectA('String.mui', [TAG_IGNORE, 0
#define ScrollbarObject   Mui_NewObjectA('Scrollbar.mui', [TAG_IGNORE, 0
#define ListviewObject	  Mui_NewObjectA('Listview.mui', [TAG_IGNORE, 0
#define RadioObject 	  Mui_NewObjectA('Radio.mui', [TAG_IGNORE, 0
#define VolumelistObject  Mui_NewObjectA('Volumelist.mui', [TAG_IGNORE, 0
#define FloattextObject   Mui_NewObjectA('Floattext.mui', [TAG_IGNORE, 0
#define DirlistObject	  Mui_NewObjectA('Dirlist.mui', [TAG_IGNORE, 0
#define SliderObject	  Mui_NewObjectA('Slider.mui', [TAG_IGNORE, 0
#define CycleObject 	  Mui_NewObjectA('Cycle.mui', [TAG_IGNORE, 0
#define GaugeObject 	  Mui_NewObjectA('Gauge.mui', [TAG_IGNORE, 0
#define ScaleObject 	  Mui_NewObjectA('Scale.mui', [TAG_IGNORE, 0
#define BoopsiObject	  Mui_NewObjectA('Boopsi.mui', [TAG_IGNORE, 0
#define ColorfieldObject  Mui_NewObjectA('Colorfield.mui', [TAG_IGNORE, 0
#define ColorpanelObject  Mui_NewObjectA('Colorpanel.mui', [TAG_IGNORE, 0
#define ColoradjustObject Mui_NewObjectA('Coloradjust.mui', [TAG_IGNORE, 0
#define PaletteObject	  Mui_NewObjectA('Palette.mui', [TAG_IGNORE, 0
#define GroupObject 	  Mui_NewObjectA('Group.mui', [TAG_IGNORE, 0
#define RegisterObject	  Mui_NewObjectA('Register.mui', [TAG_IGNORE, 0
#define VirtgroupObject   Mui_NewObjectA('Virtgroup.mui', [TAG_IGNORE, 0
#define ScrollgroupObject Mui_NewObjectA('Scrollgroup.mui', [TAG_IGNORE, 0
#define PopstringObject   Mui_NewObjectA('Popstring.mui', [TAG_IGNORE, 0
#define PopobjectObject   Mui_NewObjectA('Popobject.mui', [TAG_IGNORE, 0
#define PoplistObject	  Mui_NewObjectA('Poplist.mui', [TAG_IGNORE, 0
#define PopaslObject	  Mui_NewObjectA('Popasl.mui', [TAG_IGNORE, 0
#define ScrmodelistObject Mui_NewObjectA('Scrmodelist.mui', [TAG_IGNORE, 0
#define VGroup			  Mui_NewObjectA('Group.mui', [TAG_IGNORE, 0
#define HGroup			  Mui_NewObjectA('Group.mui', [MUIA_Group_Horiz, MUI_TRUE
#define ColGroup(cols)	  Mui_NewObjectA('Group.mui', [MUIA_Group_Columns, (cols)
#define RowGroup(rows)	  Mui_NewObjectA('Group.mui', [MUIA_Group_Rows, (rows)
#define PageGroup		  Mui_NewObjectA('Group.mui', [MUIA_Group_PageMode, MUI_TRUE
#define VGroupV 		  Mui_NewObjectA('Virtgroup.mui', [TAG_IGNORE, 0
#define HGroupV 		  Mui_NewObjectA('Virtgroup.mui', [MUIA_Group_Horiz, MUI_TRUE
#define ColGroupV(cols)   Mui_NewObjectA('Virtgroup.mui', [MUIA_Group_Columns, (cols)
#define RowGroupV(rows)   Mui_NewObjectA('Virtgroup.mui', [MUIA_Group_Rows, (rows)
#define PageGroupV		  Mui_NewObjectA('Virtgroup.mui', [MUIA_Group_PageMode, MUI_TRUE
#define RegisterGroup(t)  Mui_NewObjectA('Register.mui', [MUIA_Register_Titles, (t)
#define End 			  TAG_DONE])

#define Child			  MUIA_Group_Child
#define SubWindow		  MUIA_Application_Window
#define WindowContents	  MUIA_Window_RootObject



***************************************************************************
**
** Frame Types
** -----------
**
** These macros may be used to specify one of MUI's different frame types.
** Note that every macro consists of one { ti_Tag, ti_Data } pair.
**
** GroupFrameT() is a special kind of frame that contains a centered
** title text.
**
** HGroup, GroupFrameT("Horiz Groups"),
**	  Child, RectangleObject, TextFrame  , End,
**	  Child, RectangleObject, StringFrame, End,
**	  Child, RectangleObject, ButtonFrame, End,
**	  Child, RectangleObject, ListFrame  , End,
**	  End,
**
***************************************************************************

#define NoFrame 		 MUIA_Frame, MUIV_Frame_None
#define ButtonFrame 	 MUIA_Frame, MUIV_Frame_Button
#define ImageButtonFrame MUIA_Frame, MUIV_Frame_ImageButton
#define TextFrame		 MUIA_Frame, MUIV_Frame_Text
#define StringFrame 	 MUIA_Frame, MUIV_Frame_String
#define ReadListFrame	 MUIA_Frame, MUIV_Frame_ReadList
#define InputListFrame	 MUIA_Frame, MUIV_Frame_InputList
#define PropFrame		 MUIA_Frame, MUIV_Frame_Prop
#define SliderFrame 	 MUIA_Frame, MUIV_Frame_Slider
#define GaugeFrame		 MUIA_Frame, MUIV_Frame_Gauge
#define VirtualFrame	 MUIA_Frame, MUIV_Frame_Virtual
#define GroupFrame		 MUIA_Frame, MUIV_Frame_Group
#define GroupFrameT(s)	 MUIA_Frame, MUIV_Frame_Group, MUIA_FrameTitle, s



***************************************************************************
**
** Spacing Macros
** --------------
**
***************************************************************************

#define HVSpace 		  Mui_NewObjectA('Rectangle.mui', [TAG_DONE])
#define HSpace(x)		  Mui_MakeObjectA(MUIO_HSpace, [x])
#define VSpace(x)		  Mui_MakeObjectA(MUIO_VSpace, [x])
#define HCenter(obj)	  (HGroup, GroupSpacing(0), Child, HSpace(0), Child, (obj), Child, HSpace(0), End)
#define VCenter(obj)	  (VGroup, GroupSpacing(0), Child, VSpace(0), Child, (obj), Child, VSpace(0), End)
#define InnerSpacing(h,v) MUIA_InnerLeft, (h), MUIA_InnerRight, (h), MUIA_InnerTop, (v), MUIA_InnerBottom, (v)
#define GroupSpacing(x)   MUIA_Group_Spacing, x



***************************************************************************
**
** String-Object
** -------------
**
** The following macro creates a simple string gadget.
**
***************************************************************************
		!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
		!!!!! Be careful, I renamed String macro to StringMUI, to avoid conflicts with E String() function !!!!!
		!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
#define StringMUI(contents,maxlen)\
		StringObject, \
				StringFrame, \
				MUIA_String_MaxLen, maxlen, \
				MUIA_String_Contents, contents, \
				End

#define KeyString(contents,maxlen,controlchar)\
		StringObject, \
				StringFrame, \
				MUIA_ControlChar, controlchar, \
				MUIA_String_MaxLen, maxlen, \
				MUIA_String_Contents, contents, \
				End



***************************************************************************
**
** CheckMark-Object
** ----------------
**
** The following macro creates a checkmark gadget.
**
***************************************************************************

#define CheckMark(selected)\
		ImageObject, \
				ImageButtonFrame, \
				MUIA_InputMode, MUIV_InputMode_Toggle, \
				MUIA_Image_Spec, MUII_CheckMark, \
				MUIA_Image_FreeVert, MUI_TRUE, \
				MUIA_Selected, selected, \
				MUIA_Background, MUII_ButtonBack, \
				MUIA_ShowSelState, FALSE, \
				End

#define KeyCheckMark(selected,control)\
		ImageObject, \
				ImageButtonFrame, \
				MUIA_InputMode, MUIV_InputMode_Toggle, \
				MUIA_Image_Spec, MUII_CheckMark, \
				MUIA_Image_FreeVert, MUI_TRUE, \
				MUIA_Selected, selected, \
				MUIA_Background, MUII_ButtonBack, \
				MUIA_ShowSelState, FALSE, \
				MUIA_ControlChar, control, \
				End



***************************************************************************
**
** Button-Objects
** --------------
**
** Note: Use small letters for KeyButtons, e.g.
**		 KeyButton("Cancel",'c')  and not  KeyButton("Cancel",'C') !!
**
***************************************************************************

#define SimpleButton(label) Mui_MakeObjectA(MUIO_Button, [label])

#define KeyButton(name,key)\
		TextObject, \
				ButtonFrame, \
				MUIA_Text_Contents, name, \
				MUIA_Text_PreParse, '\ec', \
				MUIA_Text_HiChar, key, \
				MUIA_ControlChar, key, \
				MUIA_InputMode, MUIV_InputMode_RelVerify, \
				MUIA_Background, MUII_ButtonBack, \
				End



***************************************************************************
**
** Cycle-Object
** ------------
**
***************************************************************************

#define Cycle(entries)		  CycleObject, MUIA_Cycle_Entries, entries, End
#define KeyCycle(entries,key) CycleObject, MUIA_Cycle_Entries, entries, MUIA_ControlChar, key, End



***************************************************************************
**
** Radio-Object
** ------------
**
***************************************************************************

#define Radio(name,array)\
		RadioObject, \
				GroupFrameT(name), \
				MUIA_Radio_Entries, array, \
				End

#define KeyRadio(name,array,key)\
		RadioObject, \
				GroupFrameT(name), \
				MUIA_Radio_Entries, array, \
				MUIA_ControlChar, key, \
				End


***************************************************************************
**
** Slider-Object
** -------------
**
***************************************************************************

#define Slider(min,max,level)\
		SliderObject, \
				MUIA_Slider_Min, min, \
				MUIA_Slider_Max, max, \
				MUIA_Slider_Level, level, \
				End

#define KeySlider(min,max,level,key)\
		SliderObject, \
				MUIA_Slider_Min, min, \
				MUIA_Slider_Max, max, \
				MUIA_Slider_Level, level, \
				MUIA_ControlChar, key, \
				End



****************************************************************************
**
** Button to be used for popup objects
**
****************************************************************************

#define PopButton(img) Mui_MakeObjectA(MUIO_PopButton, [img])



***************************************************************************
**
** Labeling Objects
** ----------------
**
** Labeling objects, e.g. a group of string gadgets,
**
**	 Small: |foo   |
**	Normal: |bar   |
**	   Big: |foobar|
**	  Huge: |barfoo|
**
** is done using a 2 column group:
**
** ColGroup(2),
**		Child, Label2("Small:" ),
**	  Child, StringObject, End,
**		Child, Label2("Normal:"),
**	  Child, StringObject, End,
**		Child, Label2("Big:"   ),
**	  Child, StringObject, End,
**		Child, Label2("Huge:"  ),
**	  Child, StringObject, End,
**	  End,
**
** Note that we have three versions of the label macro, depending on
** the frame type of the right hand object:
**
** Label1(): For use with standard frames (e.g. checkmarks).
** Label2(): For use with double high frames (e.g. string gadgets).
** Label() : For use with objects without a frame.
**
** These macros ensure that your label will look fine even if the
** user of your application configured some strange spacing values.
** If you want to use your own labeling, you'll have to pay attention
** on this topic yourself.
**
***************************************************************************

#define Label(label)	Mui_MakeObjectA(MUIO_Label, [label, 0])
#define Label1(label)	Mui_MakeObjectA(MUIO_Label, [label, MUIO_Label_SingleFrame])
#define Label2(label)	Mui_MakeObjectA(MUIO_Label, [label, MUIO_Label_DoubleFrame])
#define LLabel(label)	Mui_MakeObjectA(MUIO_Label, [label, MUIO_Label_LeftAligned])
#define LLabel1(label)	Mui_MakeObjectA(MUIO_Label, [label, MUIO_Label_LeftAligned OR MUIO_Label_SingleFrame])
#define LLabel2(label)	Mui_MakeObjectA(MUIO_Label, [label, MUIO_Label_LeftAligned OR MUIO_Label_DoubleFrame])

#define KeyLabel(label,key)	Mui_MakeObjectA(MUIO_Label, [label, key)
#define KeyLabel1(label,key)	Mui_MakeObjectA(MUIO_Label, [label, MUIO_Label_SingleFrame OR (key)])
#define KeyLabel2(label,key)	Mui_MakeObjectA(MUIO_Label, [label, MUIO_Label_DoubleFrame OR (key)])
#define KeyLLabel(label,key)	Mui_MakeObjectA(MUIO_Label, [label, MUIO_Label_LeftAligned OR (key)])
#define KeyLLabel1(label,key)	Mui_MakeObjectA(MUIO_Label, [label, MUIO_Label_LeftAligned OR MUIO_Label_SingleFrame OR (key)])
#define KeyLLabel2(label,key)	Mui_MakeObjectA(MUIO_Label, [label, MUIO_Label_LeftAligned OR MUIO_Label_DoubleFrame OR (key)])



***************************************************************************
**
** Controlling Objects
** -------------------
**
** set() and get() are two short stubs for BOOPSI GetAttr() and SetAttrs()
** calls:
**
** {
**	  char *x;
**
**	  set(obj,MUIA_String_Contents,"foobar");
**	  get(obj,MUIA_String_Contents,&x);
**
**	  printf("gadget contains '%s'\n",x);
** }
**
***************************************************************************

#define get(obj,attr,store) 	GetAttr(attr, obj, store)
#define set(obj,attr,value) 	SetAttrsA(obj, [attr, value, TAG_DONE])
#define nnset(obj,attr,value)	SetAttrsA(obj, [MUIA_NoNotify, MUI_TRUE, attr, value, TAG_DONE])

#define setmutex(obj,n) 	set(obj, MUIA_Radio_Active, n)
#define setcycle(obj,n) 	set(obj, MUIA_Cycle_Active, n)
#define setstring(obj,s)	set(obj, MUIA_String_Contents, s)
#define setcheckmark(obj,b) set(obj, MUIA_Selected, b)
#define setslider(obj,l)	set(obj, MUIA_Slider_Level, l)

	* A very useful macro for MUI taken from the iffparse.h file *
#define MAKE_ID(a,b,c,d) (Shl(a,24) OR Shl(b,16) OR Shl(c,8) OR (d))



****************************************************************************
**
** For Boopsi Image Implementors Only:
**
** If MUI is using a boopsi image object, it will send a special method
** immediately after object creation. This method has a parameter structure
** where the boopsi can fill in its minimum and maximum size and learn if
** its used in a horizontal or vertical context.
**
** The boopsi image must use the method id (MUIM_BoopsiQuery) as return
** value. That's how MUI sees that the method is implemented.
**
** Note: MUI does not depend on this method. If the boopsi image doesn't
**		 implement it, minimum size will be 0 and maximum size unlimited.
**
****************************************************************************

		* this is send to the boopsi and *
		* must be used as return value   *
#define MUIM_BoopsiQuery $80427157

		* old structure name *
#define MUIP_BoopsiQuery MUI_BoopsiQuery

		* object used in a horizontal *
		* context (else vertical) 	*
#define MBQF_HORIZ 1

		* use this for unlimited MaxWidth/Height *
#define MBQ_MUI_MAXMAX (10000)



****************************************************************************
** Notify																  **
****************************************************************************

	* Methods *

#define MUIM_CallHook				   $8042b96b
#define MUIM_FindUData				   $8042c196
#define MUIM_GetUData				   $8042ed0c
#define MUIM_KillNotify 			   $8042d240
#define MUIM_MultiSet				   $8042d356
#define MUIM_Notify 				   $8042c9cb
#define MUIM_Set					   $8042549a
#define MUIM_SetAsString			   $80422590
#define MUIM_SetUData				   $8042c920
#define MUIM_WriteLong				   $80428d86
#define MUIM_WriteString			   $80424bf4

	* Attributes *

#define MUIA_AppMessage 				$80421955
#define MUIA_HelpFile					$80423a6e
#define MUIA_HelpLine					$8042a825
#define MUIA_HelpNode					$80420b85
#define MUIA_NoNotify					$804237f9
#define MUIA_Revision					$80427eaa
#define MUIA_UserData					$80420313
#define MUIA_Version					$80422301



****************************************************************************
** Family																  **
****************************************************************************

	* Methods *

#define MUIM_Family_AddHead 		   $8042e200
#define MUIM_Family_AddTail 		   $8042d752
#define MUIM_Family_Insert			   $80424d34
#define MUIM_Family_Remove			   $8042f8a9
#define MUIM_Family_Sort			   $80421c49
#define MUIM_Family_Transfer		   $8042c14a

	* Attributes *

#define MUIA_Family_Child				$8042c696



****************************************************************************
** Menustrip															  **
****************************************************************************

	* Attributes *

#define MUIA_Menustrip_Enabled			$8042815b



****************************************************************************
** Menu 																  **
****************************************************************************

	* Attributes *

#define MUIA_Menu_Enabled				$8042ed48
#define MUIA_Menu_Title 				$8042a0e3



****************************************************************************
** Menuitem 															  **
****************************************************************************

	* Attributes *

#define MUIA_Menuitem_Checked			$8042562a
#define MUIA_Menuitem_Checkit			$80425ace
#define MUIA_Menuitem_Enabled			$8042ae0f
#define MUIA_Menuitem_Exclude			$80420bc6
#define MUIA_Menuitem_Shortcut			$80422030
#define MUIA_Menuitem_Title 			$804218be
#define MUIA_Menuitem_Toggle			$80424d5c
#define MUIA_Menuitem_Trigger			$80426f32



****************************************************************************
** Application															  **
****************************************************************************

	* Methods *

#define MUIM_Application_GetMenuCheck  $8042c0a7
#define MUIM_Application_GetMenuState  $8042a58f
#define MUIM_Application_Input		   $8042d0f5
#define MUIM_Application_InputBuffered $80427e59
#define MUIM_Application_Load		   $8042f90d
#define MUIM_Application_PushMethod    $80429ef8
#define MUIM_Application_ReturnID	   $804276ef
#define MUIM_Application_Save		   $804227ef
#define MUIM_Application_SetMenuCheck  $8042a707
#define MUIM_Application_SetMenuState  $80428bef
#define MUIM_Application_ShowHelp	   $80426479

	* Attributes *

#define MUIA_Application_Active 		$804260ab
#define MUIA_Application_Author 		$80424842
#define MUIA_Application_Base			$8042e07a
#define MUIA_Application_Broker 		$8042dbce
#define MUIA_Application_BrokerHook 	$80428f4b
#define MUIA_Application_BrokerPort 	$8042e0ad
#define MUIA_Application_BrokerPri		$8042c8d0
#define MUIA_Application_Commands		$80428648
#define MUIA_Application_Copyright		$8042ef4d
#define MUIA_Application_Description	$80421fc6
#define MUIA_Application_DiskObject 	$804235cb
#define MUIA_Application_DoubleStart	$80423bc6
#define MUIA_Application_DropObject 	$80421266
#define MUIA_Application_ForceQuit		$804257df
#define MUIA_Application_HelpFile		$804293f4
#define MUIA_Application_Iconified		$8042a07f
#define MUIA_Application_Menu			$80420e1f
#define MUIA_Application_MenuAction 	$80428961
#define MUIA_Application_MenuHelp		$8042540b
#define MUIA_Application_Menustrip		$804252d9
#define MUIA_Application_RexxHook		$80427c42
#define MUIA_Application_RexxMsg		$8042fd88
#define MUIA_Application_RexxString 	$8042d711
#define MUIA_Application_SingleTask 	$8042a2c8
#define MUIA_Application_Sleep			$80425711
#define MUIA_Application_Title			$804281b8
#define MUIA_Application_Version		$8042b33f
#define MUIA_Application_Window 		$8042bfe0



****************************************************************************
** Window																  **
****************************************************************************

	* Methods *

#define MUIM_Window_GetMenuCheck	   $80420414
#define MUIM_Window_GetMenuState	   $80420d2f
#define MUIM_Window_ScreenToBack	   $8042913d
#define MUIM_Window_ScreenToFront	   $804227a4
#define MUIM_Window_SetCycleChain	   $80426510
#define MUIM_Window_SetMenuCheck	   $80422243
#define MUIM_Window_SetMenuState	   $80422b5e
#define MUIM_Window_ToBack			   $8042152e
#define MUIM_Window_ToFront 		   $8042554f

	* Attributes *

#define MUIA_Window_Activate			$80428d2f
#define MUIA_Window_ActiveObject		$80427925
#define MUIA_Window_AltHeight			$8042cce3
#define MUIA_Window_AltLeftEdge 		$80422d65
#define MUIA_Window_AltTopEdge			$8042e99b
#define MUIA_Window_AltWidth			$804260f4
#define MUIA_Window_AppWindow			$804280cf
#define MUIA_Window_Backdrop			$8042c0bb
#define MUIA_Window_Borderless			$80429b79
#define MUIA_Window_CloseGadget 		$8042a110
#define MUIA_Window_CloseRequest		$8042e86e
#define MUIA_Window_DefaultObject		$804294d7
#define MUIA_Window_DepthGadget 		$80421923
#define MUIA_Window_DragBar 			$8042045d
#define MUIA_Window_Height				$80425846
#define MUIA_Window_ID					$804201bd
#define MUIA_Window_InputEvent			$804247d8
#define MUIA_Window_LeftEdge			$80426c65
#define MUIA_Window_Menu				$8042db94
#define MUIA_Window_MenuAction			$80427521
#define MUIA_Window_Menustrip			$8042855e
#define MUIA_Window_NoMenus 			$80429df5
#define MUIA_Window_Open				$80428aa0
#define MUIA_Window_PublicScreen		$804278e4
#define MUIA_Window_RefWindow			$804201f4
#define MUIA_Window_RootObject			$8042cba5
#define MUIA_Window_Screen				$8042df4f
#define MUIA_Window_ScreenTitle 		$804234b0
#define MUIA_Window_SizeGadget			$8042e33d
#define MUIA_Window_SizeRight			$80424780
#define MUIA_Window_Sleep				$8042e7db
#define MUIA_Window_Title				$8042ad3d
#define MUIA_Window_TopEdge 			$80427c66
#define MUIA_Window_Width				$8042dcae
#define MUIA_Window_Window				$80426a42

#define MUIV_Window_ActiveObject_None 0
#define MUIV_Window_ActiveObject_Next -1
#define MUIV_Window_ActiveObject_Prev -2
#define MUIV_Window_AltHeight_MinMax(p) (0-(p))
#define MUIV_Window_AltHeight_Visible(p) (-100-(p))
#define MUIV_Window_AltHeight_Screen(p) (-200-(p))
#define MUIV_Window_AltHeight_Scaled -1000
#define MUIV_Window_AltLeftEdge_Centered -1
#define MUIV_Window_AltLeftEdge_Moused -2
#define MUIV_Window_AltLeftEdge_NoChange -1000
#define MUIV_Window_AltTopEdge_Centered -1
#define MUIV_Window_AltTopEdge_Moused -2
#define MUIV_Window_AltTopEdge_Delta(p) (-3-(p))
#define MUIV_Window_AltTopEdge_NoChange -1000
#define MUIV_Window_AltWidth_MinMax(p) (0-(p))
#define MUIV_Window_AltWidth_Visible(p) (-100-(p))
#define MUIV_Window_AltWidth_Screen(p) (-200-(p))
#define MUIV_Window_AltWidth_Scaled -1000
#define MUIV_Window_Height_MinMax(p) (0-(p))
#define MUIV_Window_Height_Visible(p) (-100-(p))
#define MUIV_Window_Height_Screen(p) (-200-(p))
#define MUIV_Window_Height_Scaled -1000
#define MUIV_Window_Height_Default -1001
#define MUIV_Window_LeftEdge_Centered -1
#define MUIV_Window_LeftEdge_Moused -2
#define MUIV_Window_Menu_NoMenu -1
#define MUIV_Window_TopEdge_Centered -1
#define MUIV_Window_TopEdge_Moused -2
#define MUIV_Window_TopEdge_Delta(p) (-3-(p))
#define MUIV_Window_Width_MinMax(p) (0-(p))
#define MUIV_Window_Width_Visible(p) (-100-(p))
#define MUIV_Window_Width_Screen(p) (-200-(p))
#define MUIV_Window_Width_Scaled -1000
#define MUIV_Window_Width_Default -1001



****************************************************************************
** Area 																  **
****************************************************************************

	* Methods *

#define MUIM_AskMinMax				   $80423874
#define MUIM_Cleanup				   $8042d985
#define MUIM_Draw					   $80426f3f
#define MUIM_HandleInput			   $80422a1a
#define MUIM_Hide					   $8042f20f
#define MUIM_Setup					   $80428354
#define MUIM_Show					   $8042cc84

	* Attributes *

#define MUIA_ApplicationObject			$8042d3ee
#define MUIA_Background 				$8042545b
#define MUIA_BottomEdge 				$8042e552
#define MUIA_ControlChar				$8042120b
#define MUIA_Disabled					$80423661
#define MUIA_ExportID					$8042d76e
#define MUIA_FixHeight					$8042a92b
#define MUIA_FixHeightTxt				$804276f2
#define MUIA_FixWidth					$8042a3f1
#define MUIA_FixWidthTxt				$8042d044
#define MUIA_Font						$8042be50
#define MUIA_Frame						$8042ac64
#define MUIA_FramePhantomHoriz			$8042ed76
#define MUIA_FrameTitle 				$8042d1c7
#define MUIA_Height 					$80423237
#define MUIA_HorizWeight				$80426db9
#define MUIA_InnerBottom				$8042f2c0
#define MUIA_InnerLeft					$804228f8
#define MUIA_InnerRight 				$804297ff
#define MUIA_InnerTop					$80421eb6
#define MUIA_InputMode					$8042fb04
#define MUIA_LeftEdge					$8042bec6
#define MUIA_Pressed					$80423535
#define MUIA_RightEdge					$8042ba82
#define MUIA_Selected					$8042654b
#define MUIA_ShowMe 					$80429ba8
#define MUIA_ShowSelState				$8042caac
#define MUIA_Timer						$80426435
#define MUIA_TopEdge					$8042509b
#define MUIA_VertWeight 				$804298d0
#define MUIA_Weight 					$80421d1f
#define MUIA_Width						$8042b59c
#define MUIA_Window 					$80421591
#define MUIA_WindowObject				$8042669e

#define MUIV_Font_Inherit 0
#define MUIV_Font_Normal -1
#define MUIV_Font_List -2
#define MUIV_Font_Tiny -3
#define MUIV_Font_Fixed -4
#define MUIV_Font_Title -5
#define MUIV_Font_Big -6
#define MUIV_Frame_None 0
#define MUIV_Frame_Button 1
#define MUIV_Frame_ImageButton 2
#define MUIV_Frame_Text 3
#define MUIV_Frame_String 4
#define MUIV_Frame_ReadList 5
#define MUIV_Frame_InputList 6
#define MUIV_Frame_Prop 7
#define MUIV_Frame_Gauge 8
#define MUIV_Frame_Group 9
#define MUIV_Frame_PopUp 10
#define MUIV_Frame_Virtual 11
#define MUIV_Frame_Slider 12
#define MUIV_Frame_Count 13
#define MUIV_InputMode_None 0
#define MUIV_InputMode_RelVerify 1
#define MUIV_InputMode_Immediate 2
#define MUIV_InputMode_Toggle 3



****************************************************************************
** Rectangle															  **
****************************************************************************

	* Attributes *

#define MUIA_Rectangle_HBar 			$8042c943
#define MUIA_Rectangle_VBar 			$80422204



****************************************************************************
** Image.mui															  **
****************************************************************************

	* Attributes *

#define MUIA_Image_FontMatch			$8042815d
#define MUIA_Image_FontMatchHeight		$80429f26
#define MUIA_Image_FontMatchWidth		$804239bf
#define MUIA_Image_FreeHoriz			$8042da84
#define MUIA_Image_FreeVert 			$8042ea28
#define MUIA_Image_OldImage 			$80424f3d
#define MUIA_Image_Spec 				$804233d5
#define MUIA_Image_State				$8042a3ad



****************************************************************************
** Bitmap																  **
****************************************************************************

	* Attributes *

#define MUIA_Bitmap_Bitmap				$804279bd
#define MUIA_Bitmap_Height				$80421560
#define MUIA_Bitmap_MappingTable		$8042e23d
#define MUIA_Bitmap_SourceColors		$80425360
#define MUIA_Bitmap_Transparent 		$80422805
#define MUIA_Bitmap_Width				$8042eb3a



****************************************************************************
** Bodychunk															  **
****************************************************************************

	* Attributes *

#define MUIA_Bodychunk_Body 			$8042ca67
#define MUIA_Bodychunk_Compression		$8042de5f
#define MUIA_Bodychunk_Depth			$8042c392
#define MUIA_Bodychunk_Masking			$80423b0e



****************************************************************************
** Text 																  **
****************************************************************************

	* Attributes *

#define MUIA_Text_Contents				$8042f8dc
#define MUIA_Text_HiChar				$804218ff
#define MUIA_Text_PreParse				$8042566d
#define MUIA_Text_SetMax				$80424d0a
#define MUIA_Text_SetMin				$80424e10



****************************************************************************
** String																  **
****************************************************************************

	* Attributes *

#define MUIA_String_Accept				$8042e3e1
#define MUIA_String_Acknowledge 		$8042026c
#define MUIA_String_AttachedList		$80420fd2
#define MUIA_String_BufferPos			$80428b6c
#define MUIA_String_Contents			$80428ffd
#define MUIA_String_DisplayPos			$8042ccbf
#define MUIA_String_EditHook			$80424c33
#define MUIA_String_Format				$80427484
#define MUIA_String_Integer 			$80426e8a
#define MUIA_String_MaxLen				$80424984
#define MUIA_String_Reject				$8042179c
#define MUIA_String_Secret				$80428769

#define MUIV_String_Format_Left 0
#define MUIV_String_Format_Center 1
#define MUIV_String_Format_Right 2



****************************************************************************
** Prop 																  **
****************************************************************************

	* Attributes *

#define MUIA_Prop_Entries				$8042fbdb
#define MUIA_Prop_First 				$8042d4b2
#define MUIA_Prop_Horiz 				$8042f4f3
#define MUIA_Prop_Slider				$80429c3a
#define MUIA_Prop_Visible				$8042fea6



****************************************************************************
** Gauge																  **
****************************************************************************

	* Attributes *

#define MUIA_Gauge_Current				$8042f0dd
#define MUIA_Gauge_Divide				$8042d8df
#define MUIA_Gauge_Horiz				$804232dd
#define MUIA_Gauge_InfoText 			$8042bf15
#define MUIA_Gauge_Max					$8042bcdb



****************************************************************************
** Scale																  **
****************************************************************************

	* Attributes *

#define MUIA_Scale_Horiz				$8042919a



****************************************************************************
** Boopsi																  **
****************************************************************************

	* Attributes *

#define MUIA_Boopsi_Class				$80426999
#define MUIA_Boopsi_ClassID 			$8042bfa3
#define MUIA_Boopsi_MaxHeight			$8042757f
#define MUIA_Boopsi_MaxWidth			$8042bcb1
#define MUIA_Boopsi_MinHeight			$80422c93
#define MUIA_Boopsi_MinWidth			$80428fb2
#define MUIA_Boopsi_Object				$80420178
#define MUIA_Boopsi_Remember			$8042f4bd
#define MUIA_Boopsi_TagDrawInfo 		$8042bae7
#define MUIA_Boopsi_TagScreen			$8042bc71
#define MUIA_Boopsi_TagWindow			$8042e11d



****************************************************************************
** Colorfield															  **
****************************************************************************

	* Attributes *

#define MUIA_Colorfield_Blue			$8042d3b0
#define MUIA_Colorfield_Green			$80424466
#define MUIA_Colorfield_Pen 			$8042713a
#define MUIA_Colorfield_Red 			$804279f6
#define MUIA_Colorfield_RGB 			$8042677a



****************************************************************************
** List 																  **
****************************************************************************

	* Methods *

#define MUIM_List_Clear 			   $8042ad89
#define MUIM_List_Exchange			   $8042468c
#define MUIM_List_GetEntry			   $804280ec
#define MUIM_List_Insert			   $80426c87
#define MUIM_List_InsertSingle		   $804254d5
#define MUIM_List_Jump				   $8042baab
#define MUIM_List_NextSelected		   $80425f17
#define MUIM_List_Redraw			   $80427993
#define MUIM_List_Remove			   $8042647e
#define MUIM_List_Select			   $804252d8
#define MUIM_List_Sort				   $80422275

	* Attributes *

#define MUIA_List_Active				$8042391c
#define MUIA_List_AdjustHeight			$8042850d
#define MUIA_List_AdjustWidth			$8042354a
#define MUIA_List_CompareHook			$80425c14
#define MUIA_List_ConstructHook 		$8042894f
#define MUIA_List_DestructHook			$804297ce
#define MUIA_List_DisplayHook			$8042b4d5
#define MUIA_List_Entries				$80421654
#define MUIA_List_First 				$804238d4
#define MUIA_List_Format				$80423c0a
#define MUIA_List_MultiTestHook 		$8042c2c6
#define MUIA_List_Quiet 				$8042d8c7
#define MUIA_List_SourceArray			$8042c0a0
#define MUIA_List_Title 				$80423e66
#define MUIA_List_Visible				$8042191f

#define MUIV_List_Active_Off -1
#define MUIV_List_Active_Top -2
#define MUIV_List_Active_Bottom -3
#define MUIV_List_Active_Up -4
#define MUIV_List_Active_Down -5
#define MUIV_List_Active_PageUp -6
#define MUIV_List_Active_PageDown -7
#define MUIV_List_ConstructHook_String -1
#define MUIV_List_CopyHook_String -1
#define MUIV_List_CursorType_None 0
#define MUIV_List_CursorType_Bar 1
#define MUIV_List_CursorType_Rect 2
#define MUIV_List_DestructHook_String -1



****************************************************************************
** Floattext															  **
****************************************************************************

	* Attributes *

#define MUIA_Floattext_Justify			$8042dc03
#define MUIA_Floattext_SkipChars		$80425c7d
#define MUIA_Floattext_TabSize			$80427d17
#define MUIA_Floattext_Text 			$8042d16a



****************************************************************************
** Volumelist															  **
****************************************************************************



****************************************************************************
** Scrmodelist															  **
****************************************************************************



****************************************************************************
** Dirlist																  **
****************************************************************************

	* Methods *

#define MUIM_Dirlist_ReRead 		   $80422d71

	* Attributes *

#define MUIA_Dirlist_AcceptPattern		$8042760a
#define MUIA_Dirlist_Directory			$8042ea41
#define MUIA_Dirlist_DrawersOnly		$8042b379
#define MUIA_Dirlist_FilesOnly			$8042896a
#define MUIA_Dirlist_FilterDrawers		$80424ad2
#define MUIA_Dirlist_FilterHook 		$8042ae19
#define MUIA_Dirlist_MultiSelDirs		$80428653
#define MUIA_Dirlist_NumBytes			$80429e26
#define MUIA_Dirlist_NumDrawers 		$80429cb8
#define MUIA_Dirlist_NumFiles			$8042a6f0
#define MUIA_Dirlist_Path				$80426176
#define MUIA_Dirlist_RejectIcons		$80424808
#define MUIA_Dirlist_RejectPattern		$804259c7
#define MUIA_Dirlist_SortDirs			$8042bbb9
#define MUIA_Dirlist_SortHighLow		$80421896
#define MUIA_Dirlist_SortType			$804228bc
#define MUIA_Dirlist_Status 			$804240de

#define MUIV_Dirlist_SortDirs_First 0
#define MUIV_Dirlist_SortDirs_Last 1
#define MUIV_Dirlist_SortDirs_Mix 2
#define MUIV_Dirlist_SortType_Name 0
#define MUIV_Dirlist_SortType_Date 1
#define MUIV_Dirlist_SortType_Size 2
#define MUIV_Dirlist_Status_Invalid 0
#define MUIV_Dirlist_Status_Reading 1
#define MUIV_Dirlist_Status_Valid 2



****************************************************************************
** Group																  **
****************************************************************************

	* Attributes *

#define MUIA_Group_ActivePage			$80424199
#define MUIA_Group_Child				$804226e6
#define MUIA_Group_Columns				$8042f416
#define MUIA_Group_Horiz				$8042536b
#define MUIA_Group_HorizSpacing 		$8042c651
#define MUIA_Group_PageMode 			$80421a5f
#define MUIA_Group_Rows 				$8042b68f
#define MUIA_Group_SameHeight			$8042037e
#define MUIA_Group_SameSize 			$80420860
#define MUIA_Group_SameWidth			$8042b3ec
#define MUIA_Group_Spacing				$8042866d
#define MUIA_Group_VertSpacing			$8042e1bf



****************************************************************************
** Register 															  **
****************************************************************************

	* Attributes *

#define MUIA_Register_Frame 			$8042349b
#define MUIA_Register_Titles			$804297ec



****************************************************************************
** Virtgroup															  **
****************************************************************************

	* Attributes *

#define MUIA_Virtgroup_Height			$80423038
#define MUIA_Virtgroup_Left 			$80429371
#define MUIA_Virtgroup_Top				$80425200
#define MUIA_Virtgroup_Width			$80427c49



****************************************************************************
** Scrollgroup															  **
****************************************************************************

	* Attributes *

#define MUIA_Scrollgroup_Contents		$80421261



****************************************************************************
** Scrollbar															  **
****************************************************************************



****************************************************************************
** Listview 															  **
****************************************************************************

	* Attributes *

#define MUIA_Listview_ClickColumn		$8042d1b3
#define MUIA_Listview_DefClickColumn	$8042b296
#define MUIA_Listview_DoubleClick		$80424635
#define MUIA_Listview_Input 			$8042682d
#define MUIA_Listview_List				$8042bcce
#define MUIA_Listview_MultiSelect		$80427e08
#define MUIA_Listview_SelectChange		$8042178f

#define MUIV_Listview_MultiSelect_None 0
#define MUIV_Listview_MultiSelect_Default 1
#define MUIV_Listview_MultiSelect_Shifted 2
#define MUIV_Listview_MultiSelect_Always 3



****************************************************************************
** Radio																  **
****************************************************************************

	* Attributes *

#define MUIA_Radio_Active				$80429b41
#define MUIA_Radio_Entries				$8042b6a1



****************************************************************************
** Cycle																  **
****************************************************************************

	* Attributes *

#define MUIA_Cycle_Active				$80421788
#define MUIA_Cycle_Entries				$80420629

#define MUIV_Cycle_Active_Next -1
#define MUIV_Cycle_Active_Prev -2



****************************************************************************
** Slider																  **
****************************************************************************

	* Attributes *

#define MUIA_Slider_Level				$8042ae3a
#define MUIA_Slider_Max 				$8042d78a
#define MUIA_Slider_Min 				$8042e404
#define MUIA_Slider_Quiet				$80420b26
#define MUIA_Slider_Reverse 			$8042f2a0



****************************************************************************
** Coloradjust															  **
****************************************************************************

	* Attributes *

#define MUIA_Coloradjust_Blue			$8042b8a3
#define MUIA_Coloradjust_Green			$804285ab
#define MUIA_Coloradjust_ModeID 		$8042ec59
#define MUIA_Coloradjust_Red			$80420eaa
#define MUIA_Coloradjust_RGB			$8042f899



****************************************************************************
** Palette																  **
****************************************************************************

	* Attributes *

#define MUIA_Palette_Entries			$8042a3d8
#define MUIA_Palette_Groupable			$80423e67
#define MUIA_Palette_Names				$8042c3a2



****************************************************************************
** Colorpanel															  **
****************************************************************************



****************************************************************************
** Popstring															  **
****************************************************************************

	* Methods *

#define MUIM_Popstring_Close		   $8042dc52
#define MUIM_Popstring_Open 		   $804258ba

	* Attributes *

#define MUIA_Popstring_Button			$8042d0b9
#define MUIA_Popstring_CloseHook		$804256bf
#define MUIA_Popstring_OpenHook 		$80429d00
#define MUIA_Popstring_String			$804239ea
#define MUIA_Popstring_Toggle			$80422b7a


****************************************************************************
** Popobject															  **
****************************************************************************

	* Attributes *

#define MUIA_Popobject_Follow			$80424cb5
#define MUIA_Popobject_Light			$8042a5a3
#define MUIA_Popobject_Object			$804293e3
#define MUIA_Popobject_ObjStrHook		$8042db44
#define MUIA_Popobject_StrObjHook		$8042fbe1
#define MUIA_Popobject_Volatile 		$804252ec


****************************************************************************
** Poplist																  **
****************************************************************************

	* Attributes *

#define MUIA_Poplist_Array				0x8042084c



****************************************************************************
** Popasl																  **
****************************************************************************

	* Attributes *

#define MUIA_Popasl_Active				$80421b37
#define MUIA_Popasl_StartHook			$8042b703
#define MUIA_Popasl_StopHook			$8042d8d2
#define MUIA_Popasl_Type				$8042df3d



**************************************************************************
** Structures and Macros for creating custom classes.
**************************************************************************

**
** GENERAL NOTES:
**
** - Everything described in this header file is only valid within
**	 MUI classes. You may never use any of these things out of
**	 a class, e.g. in a traditional MUI application.
**
** - Except when otherwise stated, all structures are strictly read only.
**

		* use this if a dimension is not limited. *
#define MUI_MAXMAX 10000

				* Definitions for mad_Flags, other flags are private *

		* completely redraw yourself *
#define MADF_DRAWOBJECT 	   1
		* only update yourself *
#define MADF_DRAWUPDATE 	   2


				* MUI's draw pens *

#define MPEN_SHINE		0
#define MPEN_HALFSHINE	1
#define MPEN_BACKGROUND 2
#define MPEN_HALFSHADOW 3
#define MPEN_SHADOW 	4
#define MPEN_TEXT		5
#define MPEN_FILL		6
#define MPEN_ACTIVEOBJ	7
#define MPEN_COUNT		8


		* User configurable keyboard events coming with MUIM_HandleInput *

	* not a real key, faked when MUIKEY_PRESS is released *
#define MUIKEY_RELEASE		-2
#define MUIKEY_NONE		-1
#define MUIKEY_PRESS		0
#define MUIKEY_TOGGLE		1
#define MUIKEY_UP		2
#define MUIKEY_DOWN		3
#define MUIKEY_PAGEUP		4
#define MUIKEY_PAGEDOWN		5
#define MUIKEY_TOP		6
#define MUIKEY_BOTTOM		7
#define MUIKEY_LEFT		8
#define MUIKEY_RIGHT		9
#define MUIKEY_WORDLEFT		10
#define MUIKEY_WORDRIGHT	11
#define MUIKEY_LINESTART	12
#define MUIKEY_LINEEND		13
#define MUIKEY_GADGET_NEXT	14
#define MUIKEY_GADGET_PREV	15
#define MUIKEY_GADGET_OFF	16
#define MUIKEY_WINDOW_CLOSE	17
#define MUIKEY_WINDOW_NEXT	18
#define MUIKEY_WINDOW_PREV	19
#define MUIKEY_HELP		20
#define MUIKEY_COUNT			21
