;/***************************************************************************
;**
;** MUI - MagicUserInterface
;** (c) 1993-1996 Stefan Stuntz
;**
;** Main Header File
;**
;****************************************************************************
;** 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                (main class For all windows)
;** !  !  \--Aboutmui           (About Window of MUI preferences)
;** !  +--Area                  (base class For all GUI elements)
;** !     +--Rectangle          (spacing object)
;** !     +--Balance            (balancing separator bar)
;** !     +--Image              (image display)
;** !     +--BitMap             (draws bitmaps)
;** !     !  \--Bodychunk       (makes BitMap from ILBM body chunk)
;** !     +--Text               (text display)
;** !     +--Gadget             (base class For intuition gadgets)
;** !     !  +--String          (string gadget)
;** !     !  +--Boopsi          (interface To BOOPSI gadgets)
;** !     !  \--Prop            (proportional gadget)
;** !     +--Gauge              (fule gauge)
;** !     +--Scale              (percentage Scale)
;** !     +--Colorfield         (field with changeable color)
;** !     +--List               (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)
;** !     +--Numeric            (base class For slider gadgets)
;** !     !  +--Knob            (turning knob)
;** !     !  +--Levelmeter      (level display)
;** !     !  +--Numericbutton   (space saving popup slider)
;** !     !  \--Slider          (traditional slider)
;** !     +--Framedisplay       (private)
;** !     !  \--Popframe        (private)
;** !     +--Imagedisplay       (private)
;** !     !  \--Popimage        (private)
;** !     +--Pendisplay         (displays a pen specification)
;** !     !  \--Poppen          (popup button To adjust a pen spec)
;** !     +--Group              (groups other GUI elements)
;** !        +--Mccprefs        (private)
;** !        +--Register        (handles Page groups with titles)
;** !        !  \--Penadjust    (group To adjust a pen)
;** !        +--Settingsgroup   (private)
;** !        +--Settings        (private)
;** !        +--Frameadjust     (private)
;** !        +--Imageadjust     (private)
;** !        +--Virtgroup       (handles virtual groups)
;** !        +--Scrollgroup     (virtual groups with scrollbars)
;** !        +--Scrollbar       (traditional scrollbar)
;** !        +--Listview        (listview)
;** !        +--Radio           (radio button)
;** !        +--Cycle           (Cycle gadget)
;** !        +--Coloradjust     (several gadgets To adjust a color)
;** !        +--Palette         (complete Palette gadget)
;** !        +--Popstring       (base class For popup objects)
;** !           +--Popobject    (popup aynthing in a separate Window)
;** !           !  +--Poplist   (popup a simple listview)
;** !           !  \--Popscreen (popup a List of public screens)
;** !           \--Popasl       (popup an ASL requester)
;** +--Semaphore                (semaphore equipped objects)
;**    +--Applist               (private)
;**    +--Dataspace             (handles general purpose Data spaces)
;**       \--Configdata         (private)
;**
;****************************************************************************
;** 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!
;*/
;
;
;#ifndef LIBRARIES_MUI_H
;#define LIBRARIES_MUI_H
;
;#ifndef EXEC_TYPES_H
;XINCLUDE "exec/types.h"
;#EndIf
;
;#ifndef DOS_DOS_H
;XINCLUDE "dos/dos.h"
;#EndIf
;
;#ifndef INTUITION_CLASSES_H
;XINCLUDE "intuition/classes.h"
;#EndIf
;
;#ifndef INTUITION_SCREENS_H
;XINCLUDE "intuition/screens.h"
;#EndIf
;
;#ifndef CLIB_INTUITION_PROTOS_H
;XINCLUDE "clib/intuition_protos.h"
;#EndIf
;








;******* ADDED BY CARLOS ********

#MUI_TRUE=1
#MUI_FALSE=0
#MUI_MAXTAGS=256

Dim Private_MUI_Tags.l(#MUI_MAXTAGS),Macro_Tags.l(#MUI_MAXTAGS)


Macro AddTags

  Macro_Tags(mactag)=`1
  mactag+1

  CSIF "`2">""
    !AddTags{`2,`3,`4,`5,`6,`7,`8,`9,`a,`b,`c,`d,`e,`f,`g,`h,`i,`j,`k,`l,`m,`n,`o,`p,`q,`r,`s,`t,`u,`v,`w,`x,`y}
  CEND

End Macro


Macro NewTags

  mactag.l=0
  !AddTags{`1,`2,`3,`4,`5,`6,`7,`8,`9,`a,`b,`c,`d,`e,`f,`g,`h,`i,`j,`k,`l,`m,`n,`o,`p,`q,`r,`s,`t,`u,`v,`w,`x,`y}

End Macro




Function.l DoMethodA{*obj._Object,*tags.l}

  SHARED Private_MUI_Tags.l()

  a.l=0

  If *obj

    GetReg  d0,*obj
    GetReg  d1,*tags
    GetReg  d2,&a
    GetReg  d3,&Private_MUI_Tags(0)

    MOVEM.l   d0-d7/a0-a6,-(a7)

      MOVE.l  d2,a2

      MOVE.l  d1,a0
      MOVE.l  d3,a1

      MOVE.l  #MUI_MAXTAGS,d7
      LSR.l   #$02,d7
      SUBQ.l  #$01,d7
      BCS     dmsx

dml1:
      MOVE.l  (a0)+,(a1)+

      DBRA    d7,dml1


      MOVE.l  d3,-(a7)
      MOVE.l  d0,-(a7)
      JSR     dmstuff
      ADD.l   #$08,sp

dmsx:
      MOVE.l  d0,(a2)

    MOVEM.l   (a7)+,d0-d7/a0-a6


    If True=False

dmsex:
          CLR.l     d0
dmsexy:
          MOVE.l    (a7)+,a2
          RTS

dmstuff:
          MOVE.l    a2,-(a7)
          MOVE.l    $8(a7),a2
          MOVE.l    a2,d0
          BEQ       dmsex

          MOVE.l    $c(a7),a1
          MOVE.l    -4(a2),a0

          PEA       dmsexy(pc)
          MOVE.l    8(a0),-(a7)
          RTS

    End If

  End If

  Function Return a.l

End Function




Function.l  SetAttrsA{*obj._Object,*tags.l}

  SHARED Private_MUI_Tags.l()

  CopyMem_ *tags,&Private_MUI_Tags(0),#MUI_MAXTAGS*4
  a.l=SetAttrsA_(*obj,*tags)

  Function Return a.l
End Function







;
;/***************************************************************************
;** Library specification
;***************************************************************************/

Macro MUIMASTER_NAME:"muimaster.library":End Macro
#MUIMASTER_VMIN    =11
#MUIMASTER_VLATEST =17

;/*
;** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
;** Warning, some of the macros in this header File work only with
;** muimaster.library V11 AND above. If you recompile your programs,
;** be sure To open muimaster.library with MUIMASTER_VMIN as version number.
;** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
;*/

;#define MUI_OBSOLETE /* INCLUDE obsolete identifiers */



;/*************************************************************************
;** Config items For MUIM_GetConfigItem
;*************************************************************************/


#MUICFG_PublicScreen            =36




;/*************************************************************************
;** Black Box specification structures For images, pens, Frames
;*************************************************************************/

NEWTYPE .MUI_PenSpec

  buf.b[32]

End NEWTYPE



;/*************************************************************************
;** Public Screen Stuff
;*************************************************************************/
;
;/*
;** NOTE: This stuff is only included To allow compilation of the supplied
;**       public Screen manager For educational purposes. Everything
;**       here is subject To change without notice AND I guarantee To
;**       do that just For fun!
;**       More info can be found in the Screen manager source File.
;*/
;
;#define PSD_INITIAL_NAME   "(unnamed)"
;#define PSD_INITIAL_TITLE  "MUI Public Screen"
;#define PSD_ID_MPUB        MAKE_ID('M','P','U','B')
;
;#define PSD_NAME_FRONTMOST "+Frontmost;"
;
;#define PSD_FILENAME_SAVE "envarc:mui/PublicScreens.iff"
;#define PSD_FILENAME_USE  "env:mui/PublicScreens.iff"
;
;#define PSD_MAXLEN_NAME         32
;#define PSD_MAXLEN_TITLE       128
;#define PSD_MAXLEN_FONT         48
;#define PSD_MAXLEN_BACKGROUND  256
;#define PSD_NUMCOLS              8
;#define PSD_MAXSYSPENS          20
;#define PSD_NUMSYSPENS          12
;#define PSD_MAXMUIPENS          10
;#define PSD_NUMMUIPENS  MPEN_COUNT
;
;struct MUI_RGBcolor
;{
;  ULONG Red;
;  ULONG Green;
;  ULONG Blue;
;};
;
;struct MUI_PubScreenDesc
;{
;  LONG  Version;
;
;  char  Name[PSD_MAXLEN_NAME];
;  char  Title[PSD_MAXLEN_TITLE];
;  char  Font[PSD_MAXLEN_FONT];
;  char  Background[PSD_MAXLEN_BACKGROUND];
;
;  ULONG DisplayID;
;
;  UWORD DisplayWidth;
;  UWORD DisplayHeight;
;
;  UBYTE DisplayDepth;
;  UBYTE OverscanType;
;  UBYTE AutoScroll;
;  UBYTE NoDrag;
;  UBYTE Exclusive;
;  UBYTE Interleaved;
;  UBYTE SysDefault;
;  UBYTE Behind;
;  UBYTE AutoClose;
;  UBYTE CloseGadget;
;  UBYTE DummyWasForeign;
;
;  BYTE SystemPens[PSD_MAXSYSPENS];
;  UBYTE Reserved[1+7*4-PSD_MAXSYSPENS];
;
;  struct MUI_RGBcolor Palette[PSD_NUMCOLS];
;  struct MUI_RGBcolor rsvd[PSD_MAXSYSPENS-PSD_NUMCOLS];
;
;  struct MUI_PenSpec rsvd2[PSD_MAXMUIPENS];
;
;  LONG Changed;
;  APTR UserData;
;};
;
;struct MUIS_InfoClient
;{
;  struct MinNode node;
;  struct Task *task;
;  ULONG sigbit;
;};
;
;
;/***************************************************************************
;** Object Types For MUI_MakeObject()
;***************************************************************************/

#MUIO_Label          =1   ;/* STRPTR label, ULONG flags */
#MUIO_Button         =2   ;/* STRPTR label */
#MUIO_Checkmark      =3   ;/* STRPTR label */
#MUIO_Cycle          =4   ;/* STRPTR label, STRPTR *entries */
#MUIO_Radio          =5   ;/* STRPTR label, STRPTR *entries */
#MUIO_Slider         =6   ;/* STRPTR label, LONG Min, LONG Max */
#MUIO_String         =7   ;/* STRPTR label, LONG MaxLen */
#MUIO_PopButton      =8   ;/* STRPTR imagespec */
#MUIO_HSpace         =9   ;/* LONG space   */
#MUIO_VSpace        =10   ;/* LONG space   */
#MUIO_HBar          =11   ;/* LONG space   */
#MUIO_VBar          =12   ;/* LONG space   */
#MUIO_MenustripNM   =13   ;/* struct NewMenu *nm, ULONG flags */
#MUIO_Menuitem      =14   ;/* STRPTR label, STRPTR shortcut, ULONG flags, ULONG Data  */
#MUIO_BarTitle      =15   ;/* STRPTR label */
#MUIO_NumericButton =16   ;/* STRPTR label, LONG Min, LONG Max, STRPTR Format */

#MUIO_Menuitem_CopyStrings =(1LSL30)

#MUIO_Label_SingleFrame   =(1LSL 8)
#MUIO_Label_DoubleFrame   =(1LSL 9)
#MUIO_Label_LeftAligned   =(1LSL10)
#MUIO_Label_Centered      =(1LSL11)
#MUIO_Label_FreeVert      =(1LSL12)

#MUIO_MenustripNM_CommandKeyCheck =(1LSL0) ;/* check For "localized" menu items such as "O\0Open" */



;/***************************************************************************
;** ARexx Interface
;***************************************************************************/

NEWTYPE .MUI_Command

  *mc_Name.b
  *mc_Template.b
  mc_Parameters.l;
  *mc_Hook.Hook;
  mc_Reserved.l[5];

End NEWTYPE

;#define MC_TEMPLATE_ID ((STRPTR)~0)

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


;/***************************************************************************
;** Return values For MUI_Error()
;***************************************************************************/

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



;/***************************************************************************
;** Standard MUI Images & Backgrounds
;***************************************************************************/

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

#MUII_BACKGROUND     =128    ;/* These are direct color    */
#MUII_SHADOW         =129    ;/* combinations AND are NOT  */
#MUII_SHINE          =130    ;/* affected by users prefs.  */
#MUII_FILL           =131    ;
#MUII_SHADOWBACK     =132    ;/* Generally, you should     */
#MUII_SHADOWFILL     =133    ;/* avoid using them. Better  */
#MUII_SHADOWSHINE    =134    ;/* Use one of the customized */
#MUII_FILLBACK       =135    ;/* images above.             */
#MUII_FILLSHINE      =136
#MUII_SHINEBACK      =137
#MUII_FILLBACK2      =138
#MUII_HSHINEBACK     =139
#MUII_HSHADOWBACK    =140
#MUII_HSHINESHINE    =141
#MUII_HSHADOWSHADOW  =142
#MUII_MARKSHINE      =143
#MUII_MARKHALFSHINE  =144
#MUII_MARKBACKGROUND =145
#MUII_LASTPAT        =145



;/***************************************************************************
;** Special values For some methods
;***************************************************************************/

#MUIV_TriggerValue    =$49893131
#MUIV_NotTriggerValue =$49893133
#MUIV_EveryTime       =$49893131

#MUIV_Notify_Self        =1
#MUIV_Notify_Window      =2
#MUIV_Notify_Application =3
#MUIV_Notify_Parent      =4

;#define MUIV_Application_Save_ENV     ((STRPTR) 0)
;#define MUIV_Application_Save_ENVARC  ((STRPTR)~0)
;#define MUIV_Application_Load_ENV     ((STRPTR) 0)
;#define MUIV_Application_Load_ENVARC  ((STRPTR)~0)

#MUIV_Application_ReturnID_Quit =-1

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

#MUIV_List_Remove_First          = 0
#MUIV_List_Remove_Active         =-1
#MUIV_List_Remove_Last           =-2
#MUIV_List_Remove_Selected       =-3

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

#MUIV_List_GetEntry_Active       =-1
#MUIV_List_Select_Active         =-1
#MUIV_List_Select_All            =-2

#MUIV_List_Redraw_Active         =-1
#MUIV_List_Redraw_All            =-2

#MUIV_List_Move_Top              = 0
#MUIV_List_Move_Active           =-1
#MUIV_List_Move_Bottom           =-2
#MUIV_List_Move_Next             =-3 ;/* only valid For second parameter */
#MUIV_List_Move_Previous         =-4 ;/* only valid For second parameter */

#MUIV_List_Exchange_Top          = 0
#MUIV_List_Exchange_Active       =-1
#MUIV_List_Exchange_Bottom       =-2
#MUIV_List_Exchange_Next         =-3 ;/* only valid For second parameter */
#MUIV_List_Exchange_Previous     =-4 ;/* only valid For second parameter */

#MUIV_List_Jump_Top              = 0
#MUIV_List_Jump_Active           =-1
#MUIV_List_Jump_Bottom           =-2
#MUIV_List_Jump_Up               =-4
#MUIV_List_Jump_Down             =-3

#MUIV_List_NextSelected_Start    =-1
#MUIV_List_NextSelected_End      =-1

#MUIV_DragQuery_Refuse =0
#MUIV_DragQuery_Accept =1

#MUIV_DragReport_Abort    =0
#MUIV_DragReport_Continue =1
#MUIV_DragReport_Lock     =2
#MUIV_DragReport_Refresh  =3



;/***************************************************************************
;** Control codes For text strings
;***************************************************************************/

Macro MUIX_R:"\033r":End Macro;    /* right justified */
Macro MUIX_C:"\033c":End Macro;    /* centered        */
Macro MUIX_L:"\033l":End Macro;    /* left justified  */

Macro MUIX_N:"\033n":End Macro;    /* normal     */
Macro MUIX_B:"\033b":End Macro;    /* bold       */
Macro MUIX_I:"\033i":End Macro;    /* italic     */
Macro MUIX_U:"\033u":End Macro;    /* underlined */

Macro MUIX_PT:"\0332":End Macro;   /* text pen           */
Macro MUIX_PH:"\0338":End Macro;   /* highlight text pen */



;/***************************************************************************
;** Parameter structures For some classes
;***************************************************************************/

NEWTYPE .MUI_Palette_Entry

  mpe_ID.l;
  mpe_Red.l;
  mpe_Green.l;
  mpe_Blue.l;
  mpe_Group.l;

End NEWTYPE

#MUIV_Palette_Entry_End =-1


;/*****************************/
;/* Application Input Handler */
;/*****************************/

NEWTYPE .ihn_timer

  ihn_millis.w
  ihn_current.w

End NEWTYPE

NEWTYPE .MUI_InputHandlerNode

  ihn_Node.MinNode;
  *ihn_Object._Object;

  ihn_stuff.ihn_timer;

  ihn_Flags.l; /* see below */
  ihn_Method.l;

End NEWTYPE

Macro ihn_Signals:ihn_stuff:End Macro
Macro ihn_Millis:ihn_stuff\ihn_millis:End Macro
Macro ihn_Current:ihn_stuff\ihn_current:End Macro

;/* Flags For ihn_Flags */
#MUIIHNF_TIMER =(1LSL0) ;/* set ihn_Ticks To number of 1/100 sec Ticks you want To be triggered */


;/************************/
;/* Window Event Handler */
;/************************/

NEWTYPE .MUI_EventHandlerNode

  ehn_Node.MinNode
  ehn_Reserved.b; /* don't touch! */
  ehn_Priority.b; /* event handlers are inserted according to their priority. */
  ehn_Flags.w;    /* certain flags, see below for definitions. */
  *ehn_Object._Object;   /* object which should receive MUIM_HandleEvent. */
  *ehn_Class.IClass;    /* if !=NULL, MUIM_HandleEvent is invoked on exactly this class with CoerceMethod(). */
  ehn_Events.l;   /* one or more IDCMP flags this handler should react on. */

End NEWTYPE

;/* flags For ehn_Flags */
#MUI_EHF_ALWAYSKEYS =(1LSL0)

;/* other values reserved For future Use */

;/* Return values For MUIM_HandleEvent (bit-masked, all other bits must be 0) */
#MUI_EventHandlerRC_Eat =(1LSL0) ;/* Stop MUI from calling other handlers */


;/**********************/
;/* List Position Test */
;/**********************/

NEWTYPE .MUI_List_TestPos_Result

  entry.l;   /* number of entry, -1 if mouse not over valid entry */
  column.w;  /* numer of column, -1 if no valid column */
  flags.w;   /* see below */
  xoffset.w; /* x offset of mouse click relative to column start */
  yoffset.w; /* y offset of mouse click from center of line
           ;         (negative values mean click was above center,
           ;          positive values mean click was below center) */

End NEWTYPE

#MUI_LPR_ABOVE  =(1LSL0)
#MUI_LPR_BELOW  =(1LSL1)
#MUI_LPR_LEFT   =(1LSL2)
#MUI_LPR_RIGHT  =(1LSL3)



;/***************************************************************************
;**
;** 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);
;** }
;**
;** nnset() sets an attribute without triggering a possible notification.
;**
;***************************************************************************/
;
;#ifndef __cplusplus
;
;#define Get(obj,attr,store) GetAttr(attr,obj,(ULONG *)store)
;#define set(obj,attr,value) SetAttrs(obj,attr,value,TAG_DONE)

Function MUIset{*obj._Object,attr.l,value.l}

  Dim tags.l(2)

  tags(0)=attr
  tags(1)=value
  tags(2)=#TAG_DONE

  trash.l=SetAttrsA_(*obj,&tags(0))

  Function Return trash.l
End Function

;#define nnset(obj,attr,value) SetAttrs(obj,MUIA_NoNotify,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_Numeric_Value,l)
;
;#EndIf
;
;
;#EndIf /* MUI_NOSHORTCUTS */
;
;
;/***************************************************************************
;**
;** 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.
;**
;***************************************************************************/

#MUIM_BoopsiQuery =$80427157 ;/* this is send To the boopsi AND */
                             ;       /* must be Used as Return value   */

NEWTYPE .MUI_BoopsiQuery;              /* parameter structure */

  mbq_MethodID.l;              /* always MUIM_BoopsiQuery */

  *mbq_Screen.Screen;       /* obsolete, use mbq_RenderInfo */
  mbq_Flags.l;                 /* read only, see below */

  mbq_MinWidth.l ;              /* write only, fill in min width  */
  mbq_MinHeight.l;              /* write only, fill in min height */
  mbq_MaxWidth.l ;              /* write only, fill in max width  */
  mbq_MaxHeight.l;              /* write only, fill in max height */
  mbq_DefWidth.l ;              /* write only, fill in def width  */
  mbq_DefHeight.l;              /* write only, fill in def height */

  *mbq_RenderInfo.MUI_RenderInfo;  /* read only, display context */

  ;/* may grow in future ... */

End NEWTYPE

Macro MUIP_BoopsiQuery:MUI_BoopsiQuery:End Macro;  /* old structure name */

#MBQF_HORIZ =(1LSL0);           /* object Used in a horizontal */
                    ;                /* context (Else vertical)     */

#MBQ_MUI_MAXMAX =(10000);          /* Use this For unlimited MaxWidth/Height */


;/*******************************************/
;/* Begin of automatic header File creation */
;/*******************************************/




;/****************************************************************************/
;/** Notify                                                                 **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Notify[];
;#Else
Macro MUIC_Notify:"Notify.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_CallHook                       =$8042b96b ;/* V4  */
#MUIM_Export                         =$80420f1c ;/* V12 */
#MUIM_FindUData                      =$8042c196 ;/* V8  */
#MUIM_GetConfigItem                  =$80423edb ;/* V11 */
#MUIM_GetUData                       =$8042ed0c ;/* V8  */
#MUIM_Import                         =$8042d012 ;/* V12 */
#MUIM_KillNotify                     =$8042d240 ;/* V4  */
#MUIM_KillNotifyObj                  =$8042b145 ;/* V16 */
#MUIM_MultiSet                       =$8042d356 ;/* V7  */
#MUIM_NoNotifySet                    =$8042216f ;/* V9  */
#MUIM_Notify                         =$8042c9cb ;/* V4  */
#MUIM_Set                            =$8042549a ;/* V4  */
#MUIM_SetAsString                    =$80422590 ;/* V4  */
#MUIM_SetUData                       =$8042c920 ;/* V8  */
#MUIM_SetUDataOnce                   =$8042ca19 ;/* V11 */
#MUIM_WriteLong                      =$80428d86 ;/* V6  */
#MUIM_WriteString                    =$80424bf4 ;/* V6  */
NEWTYPE .MUIP_CallHook : MethodID.l : *Hook.Hook : param1.l :End NEWTYPE
NEWTYPE .MUIP_Export : MethodID.l : *dataspace._Object : End NEWTYPE ; };
NEWTYPE .MUIP_FindUData : MethodID.l : udata.l : End NEWTYPE; };
NEWTYPE .MUIP_GetConfigItem : MethodID.l : id.l : *storage.l : End NEWTYPE; };
NEWTYPE .MUIP_GetUData : MethodID.l : udata.l : attr.l : *storage.l : End NEWTYPE; };
NEWTYPE .MUIP_Import : MethodID.l : *dataspace._Object : End NEWTYPE; };
NEWTYPE .MUIP_KillNotify : MethodID.l : TrigAttr.l : End NEWTYPE; };
NEWTYPE .MUIP_KillNotifyObj : MethodID.l : TrigAttr.l : *dest._Object : End NEWTYPE; };
NEWTYPE .MUIP_MultiSet : MethodID.l : attr.l : _val.l : obj.l : End NEWTYPE ; /* ... */ };
NEWTYPE .MUIP_NoNotifySet : MethodID.l : attr.l : *_format.b : _val.l : End NEWTYPE ; /* ... */ };
NEWTYPE .MUIP_Notify : MethodID.l : TrigAttr.l : TrigVal.l : DestObj.l : FollowParams.l : End NEWTYPE;
NEWTYPE .MUIP_Set : MethodID.l : attr.l : _val.l : End NEWTYPE; };
NEWTYPE .MUIP_SetAsString : MethodID.l : attr.l : *_format.b : _val.l : End NEWTYPE; /* ... */ };
NEWTYPE .MUIP_SetUData : MethodID.l : udata.l : attr.l : _val.l : End NEWTYPE; };
NEWTYPE .MUIP_SetUDataOnce : MethodID.l : udata.l : attr.l : _val.l : End NEWTYPE; };
NEWTYPE .MUIP_WriteLong : MethodID.l : _val.l : *memory.l : End NEWTYPE; };
NEWTYPE .MUIP_WriteString : MethodID.l : *str.b : *memory.b : End NEWTYPE; };

;/* Attributes */

#MUIA_ApplicationObject              =$8042d3ee ;/* V4  ..g Object *          */
#MUIA_AppMessage                     =$80421955 ;/* V5  ..g struct AppMessage * */
#MUIA_HelpLine                       =$8042a825 ;/* V4  isg LONG              */
#MUIA_HelpNode                       =$80420b85 ;/* V4  isg STRPTR            */
#MUIA_NoNotify                       =$804237f9 ;/* V7  .s. BOOL              */
#MUIA_ObjectID                       =$8042d76e ;/* V11 isg ULONG             */
#MUIA_Parent                         =$8042e35f ;/* V11 ..g Object *          */
#MUIA_Revision                       =$80427eaa ;/* V4  ..g LONG              */
#MUIA_UserData                       =$80420313 ;/* V4  isg ULONG             */
#MUIA_Version                        =$80422301 ;/* V4  ..g LONG              */



;/****************************************************************************/
;/** Family                                                                 **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Family[];
;#Else
Macro MUIC_Family:"Family.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_Family_AddHead                 =$8042e200 ;/* V8  */
#MUIM_Family_AddTail                 =$8042d752 ;/* V8  */
#MUIM_Family_Insert                  =$80424d34 ;/* V8  */
#MUIM_Family_Remove                  =$8042f8a9 ;/* V8  */
#MUIM_Family_Sort                    =$80421c49 ;/* V8  */
#MUIM_Family_Transfer                =$8042c14a ;/* V8  */
NEWTYPE .MUIP_Family_AddHead : MethodID.l : *obj._Object : End NEWTYPE; };
NEWTYPE .MUIP_Family_AddTail : MethodID.l : *obj._Object : End NEWTYPE; };
NEWTYPE .MUIP_Family_Insert : MethodID.l : *obj._Object : *pred._Object : End NEWTYPE; };
NEWTYPE .MUIP_Family_Remove : MethodID.l : *obj._Object : End NEWTYPE; };
NEWTYPE .MUIP_Family_Sort : MethodID.l : *obj._Object[1] : End NEWTYPE; };
NEWTYPE .MUIP_Family_Transfer : MethodID.l : *family._Object : End NEWTYPE; };

;/* Attributes */

#MUIA_Family_Child                   =$8042c696 ;/* V8  i.. Object *          */
#MUIA_Family_List                    =$80424b9e ;/* V8  ..g struct MinList *  */



;/****************************************************************************/
;/** Menustrip                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Menustrip[];
;#Else
Macro MUIC_Menustrip:"Menustrip.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */

#MUIA_Menustrip_Enabled              =$8042815b ;/* V8  isg BOOL              */



;/****************************************************************************/
;/** Menu                                                                   **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Menu[];
;#Else
Macro MUIC_Menu:"Menu.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */

#MUIA_Menu_Enabled                   =$8042ed48 ;/* V8  isg BOOL              */
#MUIA_Menu_Title                     =$8042a0e3 ;/* V8  isg STRPTR            */



;/****************************************************************************/
;/** MenuItem                                                               **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Menuitem[];
;#Else
Macro MUIC_Menuitem:"Menuitem.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */

#MUIA_Menuitem_Checked               =$8042562a ;/* V8  isg BOOL              */
#MUIA_Menuitem_Checkit               =$80425ace ;/* V8  isg BOOL              */
#MUIA_Menuitem_CommandString         =$8042b9cc ;/* V16 isg BOOL              */
#MUIA_Menuitem_Enabled               =$8042ae0f ;/* V8  isg BOOL              */
#MUIA_Menuitem_Exclude               =$80420bc6 ;/* V8  isg LONG              */
#MUIA_Menuitem_Shortcut              =$80422030 ;/* V8  isg STRPTR            */
#MUIA_Menuitem_Title                 =$804218be ;/* V8  isg STRPTR            */
#MUIA_Menuitem_Toggle                =$80424d5c ;/* V8  isg BOOL              */
#MUIA_Menuitem_Trigger               =$80426f32 ;/* V8  ..g struct MenuItem * */

#MUIV_Menuitem_Shortcut_Check =-1


;/****************************************************************************/
;/** Application                                                            **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Application[];
;#Else
Macro MUIC_Application:"Application.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_Application_AboutMUI           =$8042d21d ;/* V14 */
#MUIM_Application_AddInputHandler    =$8042f099 ;/* V11 */
#MUIM_Application_CheckRefresh       =$80424d68 ;/* V11 */
;#ifdef MUI_OBSOLETE
#MUIM_Application_GetMenuCheck       =$8042c0a7 ;/* V4  */
;#EndIf /* MUI_OBSOLETE */
;#ifdef MUI_OBSOLETE
#MUIM_Application_GetMenuState       =$8042a58f ;/* V4  */
;#EndIf /* MUI_OBSOLETE */
;#ifdef MUI_OBSOLETE
#MUIM_Application_Input              =$8042d0f5 ;/* V4  */
;#EndIf /* MUI_OBSOLETE */
#MUIM_Application_InputBuffered      =$80427e59 ;/* V4  */
#MUIM_Application_Load               =$8042f90d ;/* V4  */
#MUIM_Application_NewInput           =$80423ba6 ;/* V11 */
#MUIM_Application_OpenConfigWindow   =$804299ba ;/* V11 */
#MUIM_Application_PushMethod         =$80429ef8 ;/* V4  */
#MUIM_Application_RemInputHandler    =$8042e7af ;/* V11 */
#MUIM_Application_ReturnID           =$804276ef ;/* V4  */
#MUIM_Application_Save               =$804227ef ;/* V4  */
#MUIM_Application_SetConfigItem      =$80424a80 ;/* V11 */
;#ifdef MUI_OBSOLETE
#MUIM_Application_SetMenuCheck       =$8042a707 ;/* V4  */
;#EndIf /* MUI_OBSOLETE */
;#ifdef MUI_OBSOLETE
#MUIM_Application_SetMenuState       =$80428bef ;/* V4  */
;#EndIf /* MUI_OBSOLETE */
#MUIM_Application_ShowHelp           =$80426479 ;/* V4  */
NEWTYPE .MUIP_Application_AboutMUI : MethodID.l : *refwindow._Object :End NEWTYPE; };
NEWTYPE .MUIP_Application_AddInputHandler : MethodID.l : *ihnode.MUI_InputHandlerNode :End NEWTYPE; };
NEWTYPE .MUIP_Application_CheckRefresh : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Application_GetMenuCheck : MethodID.l : MenuID.l : End NEWTYPE; };
NEWTYPE .MUIP_Application_GetMenuState : MethodID.l : MenuID.l : End NEWTYPE; };
NEWTYPE .MUIP_Application_Input : MethodID.l : *signal.l : End NEWTYPE; };
NEWTYPE .MUIP_Application_InputBuffered : MethodID.l : End NEWTYPE ; };
NEWTYPE .MUIP_Application_Load : MethodID.l : *name.b : End NEWTYPE ; };
NEWTYPE .MUIP_Application_NewInput : MethodID.l : *signal.l : End NEWTYPE; };
NEWTYPE .MUIP_Application_OpenConfigWindow : MethodID.l : flags.l : End NEWTYPE; };
NEWTYPE .MUIP_Application_PushMethod : MethodID.l : *dest._Object : count.l : End NEWTYPE; /* ... */ };
NEWTYPE .MUIP_Application_RemInputHandler : MethodID.l : *ihnode.MUI_InputHandlerNode :End NEWTYPE; };
NEWTYPE .MUIP_Application_ReturnID : MethodID.l : retid.l : End NEWTYPE; };
NEWTYPE .MUIP_Application_Save : MethodID.l : *name.b : End NEWTYPE ; };
NEWTYPE .MUIP_Application_SetConfigItem : MethodID.l : item.l : *_data.l : End NEWTYPE ; };
NEWTYPE .MUIP_Application_SetMenuCheck : MethodID.l : MenuID.l : stat.l : End NEWTYPE; };
NEWTYPE .MUIP_Application_SetMenuState : MethodID.l : MenuID.l : stat.l : End NEWTYPE; };
NEWTYPE .MUIP_Application_ShowHelp : MethodID.l : *_window._Object : *name.b : *node.b :_line.l : End NEWTYPE; };

;/* Attributes */

#MUIA_Application_Active             =$804260ab ;/* V4  isg BOOL              */
#MUIA_Application_Author             =$80424842 ;/* V4  i.g STRPTR            */
#MUIA_Application_Base               =$8042e07a ;/* V4  i.g STRPTR            */
#MUIA_Application_Broker             =$8042dbce ;/* V4  ..g Broker *          */
#MUIA_Application_BrokerHook         =$80428f4b ;/* V4  isg struct Hook *     */
#MUIA_Application_BrokerPort         =$8042e0ad ;/* V6  ..g struct MsgPort *  */
#MUIA_Application_BrokerPri          =$8042c8d0 ;/* V6  i.g LONG              */
#MUIA_Application_Commands           =$80428648 ;/* V4  isg struct MUI_Command * */
#MUIA_Application_Copyright          =$8042ef4d ;/* V4  i.g STRPTR            */
#MUIA_Application_Description        =$80421fc6 ;/* V4  i.g STRPTR            */
#MUIA_Application_DiskObject         =$804235cb ;/* V4  isg struct DiskObject * */
#MUIA_Application_DoubleStart        =$80423bc6 ;/* V4  ..g BOOL              */
#MUIA_Application_DropObject         =$80421266 ;/* V5  is. Object *          */
#MUIA_Application_ForceQuit          =$804257df ;/* V8  ..g BOOL              */
#MUIA_Application_HelpFile           =$804293f4 ;/* V8  isg STRPTR            */
#MUIA_Application_Iconified          =$8042a07f ;/* V4  .sg BOOL              */
;#ifdef MUI_OBSOLETE
#MUIA_Application_Menu               =$80420e1f ;/* V4  i.g struct NewMenu *  */
;#EndIf /* MUI_OBSOLETE */
#MUIA_Application_MenuAction         =$80428961 ;/* V4  ..g ULONG             */
#MUIA_Application_MenuHelp           =$8042540b ;/* V4  ..g ULONG             */
#MUIA_Application_Menustrip          =$804252d9 ;/* V8  i.. Object *          */
#MUIA_Application_RexxHook           =$80427c42 ;/* V7  isg struct Hook *     */
#MUIA_Application_RexxMsg            =$8042fd88 ;/* V4  ..g struct RxMsg *    */
#MUIA_Application_RexxString         =$8042d711 ;/* V4  .s. STRPTR            */
#MUIA_Application_SingleTask         =$8042a2c8 ;/* V4  i.. BOOL              */
#MUIA_Application_Sleep              =$80425711 ;/* V4  .s. BOOL              */
#MUIA_Application_Title              =$804281b8 ;/* V4  i.g STRPTR            */
#MUIA_Application_UseCommodities     =$80425ee5 ;/* V10 i.. BOOL              */
#MUIA_Application_UseRexx            =$80422387 ;/* V10 i.. BOOL              */
#MUIA_Application_Version            =$8042b33f ;/* V4  i.g STRPTR            */
#MUIA_Application_Window             =$8042bfe0 ;/* V4  i.. Object *          */
#MUIA_Application_WindowList         =$80429abe ;/* V13 ..g struct List *     */



;/****************************************************************************/
;/** Window                                                                 **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Window[];
;#Else
Macro MUIC_Window:"Window.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_Window_AddEventHandler         =$804203b7 ;/* V16 */
;#ifdef MUI_OBSOLETE
#MUIM_Window_GetMenuCheck            =$80420414 ;/* V4  */
;#EndIf /* MUI_OBSOLETE */
;#ifdef MUI_OBSOLETE
#MUIM_Window_GetMenuState            =$80420d2f ;/* V4  */
;#EndIf /* MUI_OBSOLETE */
#MUIM_Window_RemEventHandler         =$8042679e ;/* V16 */
#MUIM_Window_ScreenToBack            =$8042913d ;/* V4  */
#MUIM_Window_ScreenToFront           =$804227a4 ;/* V4  */
;#ifdef MUI_OBSOLETE
#MUIM_Window_SetCycleChain           =$80426510 ;/* V4  */
;#EndIf /* MUI_OBSOLETE */
;#ifdef MUI_OBSOLETE
#MUIM_Window_SetMenuCheck            =$80422243 ;/* V4  */
;#EndIf /* MUI_OBSOLETE */
;#ifdef MUI_OBSOLETE
#MUIM_Window_SetMenuState            =$80422b5e ;/* V4  */
;#EndIf /* MUI_OBSOLETE */
#MUIM_Window_ToBack                  =$8042152e ;/* V4  */
#MUIM_Window_ToFront                 =$8042554f ;/* V4  */
NEWTYPE .MUIP_Window_AddEventHandler : MethodID.l : *ehnode.MUI_EventHandlerNode : End NEWTYPE; };
NEWTYPE .MUIP_Window_GetMenuCheck : MethodID.l : MenuID.l : End NEWTYPE; };
NEWTYPE .MUIP_Window_GetMenuState : MethodID.l : MenuID.l : End NEWTYPE ; };
NEWTYPE .MUIP_Window_RemEventHandler : MethodID.l : *ehnode.MUI_EventHandlerNode : End NEWTYPE; };
NEWTYPE .MUIP_Window_ScreenToBack : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Window_ScreenToFront : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Window_SetCycleChain : MethodID.l : *obj._Object[1] : End NEWTYPE; };
NEWTYPE .MUIP_Window_SetMenuCheck : MethodID.l : MenuID.l : stat.l : End NEWTYPE; };
NEWTYPE .MUIP_Window_SetMenuState : MethodID.l : MenuID.l : stat.l : End NEWTYPE; };
NEWTYPE .MUIP_Window_ToBack : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Window_ToFront : MethodID.l : End NEWTYPE; };

;/* Attributes */

#MUIA_Window_Activate                =$80428d2f ;/* V4  isg BOOL              */
#MUIA_Window_ActiveObject            =$80427925 ;/* V4  .sg Object *          */
#MUIA_Window_AltHeight               =$8042cce3 ;/* V4  i.g LONG              */
#MUIA_Window_AltLeftEdge             =$80422d65 ;/* V4  i.g LONG              */
#MUIA_Window_AltTopEdge              =$8042e99b ;/* V4  i.g LONG              */
#MUIA_Window_AltWidth                =$804260f4 ;/* V4  i.g LONG              */
#MUIA_Window_AppWindow               =$804280cf ;/* V5  i.. BOOL              */
#MUIA_Window_Backdrop                =$8042c0bb ;/* V4  i.. BOOL              */
#MUIA_Window_Borderless              =$80429b79 ;/* V4  i.. BOOL              */
#MUIA_Window_CloseGadget             =$8042a110 ;/* V4  i.. BOOL              */
#MUIA_Window_CloseRequest            =$8042e86e ;/* V4  ..g BOOL              */
#MUIA_Window_DefaultObject           =$804294d7 ;/* V4  isg Object *          */
#MUIA_Window_DepthGadget             =$80421923 ;/* V4  i.. BOOL              */
#MUIA_Window_DragBar                 =$8042045d ;/* V4  i.. BOOL              */
#MUIA_Window_FancyDrawing            =$8042bd0e ;/* V8  isg BOOL              */
#MUIA_Window_Height                  =$80425846 ;/* V4  i.g LONG              */
#MUIA_Window_ID                      =$804201bd ;/* V4  isg ULONG             */
#MUIA_Window_InputEvent              =$804247d8 ;/* V4  ..g struct InputEvent * */
#MUIA_Window_IsSubWindow             =$8042b5aa ;/* V4  isg BOOL              */
#MUIA_Window_LeftEdge                =$80426c65 ;/* V4  i.g LONG              */
;#ifdef MUI_OBSOLETE
#MUIA_Window_Menu                    =$8042db94 ;/* V4  i.. struct NewMenu *  */
;#EndIf /* MUI_OBSOLETE */
#MUIA_Window_MenuAction              =$80427521 ;/* V8  isg ULONG             */
#MUIA_Window_Menustrip               =$8042855e ;/* V8  i.g Object *          */
#MUIA_Window_MouseObject             =$8042bf9b ;/* V10 ..g Object *          */
#MUIA_Window_NeedsMouseObject        =$8042372a ;/* V10 i.. BOOL              */
#MUIA_Window_NoMenus                 =$80429df5 ;/* V4  is. BOOL              */
#MUIA_Window_Open                    =$80428aa0 ;/* V4  .sg BOOL              */
#MUIA_Window_PublicScreen            =$804278e4 ;/* V6  isg STRPTR            */
#MUIA_Window_RefWindow               =$804201f4 ;/* V4  is. Object *          */
#MUIA_Window_RootObject              =$8042cba5 ;/* V4  isg Object *          */
#MUIA_Window_Screen                  =$8042df4f ;/* V4  isg struct Screen *   */
#MUIA_Window_ScreenTitle             =$804234b0 ;/* V5  isg STRPTR            */
#MUIA_Window_SizeGadget              =$8042e33d ;/* V4  i.. BOOL              */
#MUIA_Window_SizeRight               =$80424780 ;/* V4  i.. BOOL              */
#MUIA_Window_Sleep                   =$8042e7db ;/* V4  .sg BOOL              */
#MUIA_Window_Title                   =$8042ad3d ;/* V4  isg STRPTR            */
#MUIA_Window_TopEdge                 =$80427c66 ;/* V4  i.g LONG              */
#MUIA_Window_UseBottomBorderScroller =$80424e79 ;/* V13 is. BOOL              */
#MUIA_Window_UseLeftBorderScroller   =$8042433e ;/* V13 is. BOOL              */
#MUIA_Window_UseRightBorderScroller  =$8042c05e ;/* V13 is. BOOL              */
#MUIA_Window_Width                   =$8042dcae ;/* V4  i.g LONG              */
#MUIA_Window_Window                  =$80426a42 ;/* V4  ..g struct Window *   */

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


;/****************************************************************************/
;/** Aboutmui                                                               **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Aboutmui[];
;#Else
Macro MUIC_Aboutmui:"Aboutmui.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */

#MUIA_Aboutmui_Application           =$80422523 ;/* V11 i.. Object *          */



;/****************************************************************************/
;/** Area                                                                   **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Area[];
;#Else
Macro MUIC_Area:"Area.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_AskMinMax                      =$80423874 ;/* Custom Class */ /* V4  */
#MUIM_Cleanup                        =$8042d985 ;/* Custom Class */ /* V4  */
#MUIM_ContextMenuBuild               =$80429d2e ;/* V11 */
#MUIM_ContextMenuChoice              =$80420f0e ;/* V11 */
#MUIM_DragBegin                      =$8042c03a ;/* V11 */
#MUIM_DragDrop                       =$8042c555 ;/* V11 */
#MUIM_DragFinish                     =$804251f0 ;/* V11 */
#MUIM_DragQuery                      =$80420261 ;/* V11 */
#MUIM_DragReport                     =$8042edad ;/* V11 */
#MUIM_Draw                           =$80426f3f ;/* Custom Class */ /* V4  */
#MUIM_DrawBackground                 =$804238ca ;/* V11 */
#MUIM_HandleEvent                    =$80426d66 ;/* Custom Class */ /* V16 */
#MUIM_HandleInput                    =$80422a1a ;/* Custom Class */ /* V4  */
#MUIM_Hide                           =$8042f20f ;/* Custom Class */ /* V4  */
#MUIM_Setup                          =$80428354 ;/* Custom Class */ /* V4  */
#MUIM_Show                           =$8042cc84 ;/* Custom Class */ /* V4  */
NEWTYPE .MUIP_AskMinMax : MethodID.l : *MinMaxInfo.MUI_MinMax : End NEWTYPE; }; /* Custom Class */
NEWTYPE .MUIP_Cleanup : MethodID.l : End NEWTYPE; }; /* Custom Class */
NEWTYPE .MUIP_ContextMenuBuild : MethodID.l : mx.l : my.l : End NEWTYPE; };
NEWTYPE .MUIP_ContextMenuChoice : MethodID.l : *item._Object : End NEWTYPE; };
NEWTYPE .MUIP_DragBegin : MethodID.l : *obj._Object : End NEWTYPE; };
NEWTYPE .MUIP_DragDrop : MethodID.l : *obj._Object : x.l : y.l : End NEWTYPE; };
NEWTYPE .MUIP_DragFinish : MethodID.l : *obj._Object : End NEWTYPE; };
NEWTYPE .MUIP_DragQuery : MethodID.l : *obj._Object : End NEWTYPE; };
NEWTYPE .MUIP_DragReport : MethodID.l : *obj._Object : x.l : y.l : update.l : End NEWTYPE; };
NEWTYPE .MUIP_Draw : MethodID.l : flags.l : End NEWTYPE; }; /* Custom Class */
NEWTYPE .MUIP_DrawBackground : MethodID.l : left.l : top.l : width.l : height.l : xoffset.l : fset.l : flags.l : End NEWTYPE
NEWTYPE .MUIP_HandleEvent : MethodID.l : *imsg.IntuiMessage : muikey.l : End NEWTYPE; }; /* Custom Class */
NEWTYPE .MUIP_HandleInput : MethodID.l : *imsg.IntuiMessage : muikey.l : End NEWTYPE; }; /* Custom Class */
NEWTYPE .MUIP_Hide : MethodID.l : End NEWTYPE; }; /* Custom Class */
NEWTYPE .MUIP_Setup : MethodID.l : *RenderInfo.MUI_RenderInfo : End NEWTYPE; }; /* Custom Class */
NEWTYPE .MUIP_Show : MethodID.l : End NEWTYPE; }; /* Custom Class */

;/* Attributes */

#MUIA_Background                     =$8042545b ;/* V4  is. LONG              */
#MUIA_BottomEdge                     =$8042e552 ;/* V4  ..g LONG              */
#MUIA_ContextMenu                    =$8042b704 ;/* V11 isg Object *          */
#MUIA_ContextMenuTrigger             =$8042a2c1 ;/* V11 ..g Object *          */
#MUIA_ControlChar                    =$8042120b ;/* V4  isg char              */
#MUIA_CycleChain                     =$80421ce7 ;/* V11 isg LONG              */
#MUIA_Disabled                       =$80423661 ;/* V4  isg BOOL              */
#MUIA_Draggable                      =$80420b6e ;/* V11 isg BOOL              */
#MUIA_Dropable                       =$8042fbce ;/* V11 isg BOOL              */
;#ifndef MUI_OBSOLETE
#MUIA_ExportID                       =$8042d76e ;/* V4  isg ULONG             */
;#EndIf /* MUI_OBSOLETE */
#MUIA_FillArea                       =$804294a3 ;/* V4  is. BOOL              */
#MUIA_FixHeight                      =$8042a92b ;/* V4  i.. LONG              */
#MUIA_FixHeightTxt                   =$804276f2 ;/* V4  i.. STRPTR            */
#MUIA_FixWidth                       =$8042a3f1 ;/* V4  i.. LONG              */
#MUIA_FixWidthTxt                    =$8042d044 ;/* V4  i.. STRPTR            */
#MUIA_Font                           =$8042be50 ;/* V4  i.g struct TextFont * */
#MUIA_Frame                          =$8042ac64 ;/* V4  i.. LONG              */
#MUIA_FramePhantomHoriz              =$8042ed76 ;/* V4  i.. BOOL              */
#MUIA_FrameTitle                     =$8042d1c7 ;/* V4  i.. STRPTR            */
#MUIA_Height                         =$80423237 ;/* V4  ..g LONG              */
#MUIA_HorizDisappear                 =$80429615 ;/* V11 isg LONG              */
#MUIA_HorizWeight                    =$80426db9 ;/* V4  isg WORD              */
#MUIA_InnerBottom                    =$8042f2c0 ;/* V4  i.g LONG              */
#MUIA_InnerLeft                      =$804228f8 ;/* V4  i.g LONG              */
#MUIA_InnerRight                     =$804297ff ;/* V4  i.g LONG              */
#MUIA_InnerTop                       =$80421eb6 ;/* V4  i.g LONG              */
#MUIA_InputMode                      =$8042fb04 ;/* V4  i.. LONG              */
#MUIA_LeftEdge                       =$8042bec6 ;/* V4  ..g LONG              */
#MUIA_MaxHeight                      =$804293e4 ;/* V11 i.. LONG              */
#MUIA_MaxWidth                       =$8042f112 ;/* V11 i.. LONG              */
#MUIA_Pressed                        =$80423535 ;/* V4  ..g BOOL              */
#MUIA_RightEdge                      =$8042ba82 ;/* V4  ..g LONG              */
#MUIA_Selected                       =$8042654b ;/* V4  isg BOOL              */
#MUIA_ShortHelp                      =$80428fe3 ;/* V11 isg STRPTR            */
#MUIA_ShowMe                         =$80429ba8 ;/* V4  isg BOOL              */
#MUIA_ShowSelState                   =$8042caac ;/* V4  i.. BOOL              */
#MUIA_Timer                          =$80426435 ;/* V4  ..g LONG              */
#MUIA_TopEdge                        =$8042509b ;/* V4  ..g LONG              */
#MUIA_VertDisappear                  =$8042d12f ;/* V11 isg LONG              */
#MUIA_VertWeight                     =$804298d0 ;/* V4  isg WORD              */
#MUIA_Weight                         =$80421d1f ;/* V4  i.. WORD              */
#MUIA_Width                          =$8042b59c ;/* V4  ..g LONG              */
#MUIA_Window                         =$80421591 ;/* V4  ..g struct Window *   */
#MUIA_WindowObject                   =$8042669e ;/* V4  ..g Object *          */

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


;/****************************************************************************/
;/** Rectangle                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Rectangle[];
;#Else
Macro MUIC_Rectangle "Rectangle.mui" End Macro
;#EndIf

;/* Attributes */

#MUIA_Rectangle_BarTitle             =$80426689 ;/* V11 i.g STRPTR            */
#MUIA_Rectangle_HBar                 =$8042c943 ;/* V7  i.g BOOL              */
#MUIA_Rectangle_VBar                 =$80422204 ;/* V7  i.g BOOL              */



;/****************************************************************************/
;/** Balance                                                                **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Balance[];
;#Else
Macro MUIC_Balance:"Balance.mui":End Macro
;#EndIf


;/****************************************************************************/
;/** Image                                                                  **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Image[];
;#Else
Macro MUIC_Image:"Image.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Image_FontMatch                =$8042815d ;/* V4  i.. BOOL              */
#MUIA_Image_FontMatchHeight          =$80429f26 ;/* V4  i.. BOOL              */
#MUIA_Image_FontMatchWidth           =$804239bf ;/* V4  i.. BOOL              */
#MUIA_Image_FreeHoriz                =$8042da84 ;/* V4  i.. BOOL              */
#MUIA_Image_FreeVert                 =$8042ea28 ;/* V4  i.. BOOL              */
#MUIA_Image_OldImage                 =$80424f3d ;/* V4  i.. struct Image *    */
#MUIA_Image_Spec                     =$804233d5 ;/* V4  i.. char *            */
#MUIA_Image_State                    =$8042a3ad ;/* V4  is. LONG              */



;/****************************************************************************/
;/** BitMap                                                                 **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Bitmap[];
;#Else
Macro MUIC_Bitmap:"Bitmap.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Bitmap_Bitmap                  =$804279bd ;/* V8  isg struct BitMap *   */
#MUIA_Bitmap_Height                  =$80421560 ;/* V8  isg LONG              */
#MUIA_Bitmap_MappingTable            =$8042e23d ;/* V8  isg UBYTE *           */
#MUIA_Bitmap_Precision               =$80420c74 ;/* V11 isg LONG              */
#MUIA_Bitmap_RemappedBitmap          =$80423a47 ;/* V11 ..g struct BitMap *   */
#MUIA_Bitmap_SourceColors            =$80425360 ;/* V8  isg ULONG *           */
#MUIA_Bitmap_Transparent             =$80422805 ;/* V8  isg LONG              */
#MUIA_Bitmap_UseFriend               =$804239d8 ;/* V11 i.. BOOL              */
#MUIA_Bitmap_Width                   =$8042eb3a ;/* V8  isg LONG              */



;/****************************************************************************/
;/** Bodychunk                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Bodychunk[];
;#Else
Macro MUIC_Bodychunk:"Bodychunk.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Bodychunk_Body                 =$8042ca67 ;/* V8  isg UBYTE *           */
#MUIA_Bodychunk_Compression          =$8042de5f ;/* V8  isg UBYTE             */
#MUIA_Bodychunk_Depth                =$8042c392 ;/* V8  isg LONG              */
#MUIA_Bodychunk_Masking              =$80423b0e ;/* V8  isg UBYTE             */



;/****************************************************************************/
;/** Text                                                                   **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Text[];
;#Else
Macro MUIC_Text "Text.mui" End Macro
;#EndIf

;/* Attributes */

#MUIA_Text_Contents                  =$8042f8Dc ;/* V4  isg STRPTR            */
#MUIA_Text_HiChar                    =$804218ff ;/* V4  i.. char              */
#MUIA_Text_PreParse                  =$8042566d ;/* V4  isg STRPTR            */
#MUIA_Text_SetMax                    =$80424d0a ;/* V4  i.. BOOL              */
#MUIA_Text_SetMin                    =$80424e10 ;/* V4  i.. BOOL              */
#MUIA_Text_SetVMax                   =$80420d8b ;/* V11 i.. BOOL              */



;/****************************************************************************/
;/** Gadget                                                                 **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Gadget[];
;#Else
Macro MUIC_Gadget:"Gadget.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Gadget_Gadget                  =$8042ec1a ;/* V11 ..g struct Gadget *   */



;/****************************************************************************/
;/** String                                                                 **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_String[];
;#Else
Macro MUIC_String "String.mui" End Macro
;#EndIf

;/* Methods */


;/* Attributes */

#MUIA_String_Accept                  =$8042e3e1 ;/* V4  isg STRPTR            */
#MUIA_String_Acknowledge             =$8042026c ;/* V4  ..g STRPTR            */
#MUIA_String_AdvanceOnCR             =$804226de ;/* V11 isg BOOL              */
#MUIA_String_AttachedList            =$80420fd2 ;/* V4  i.. Object *          */
#MUIA_String_BufferPos               =$80428b6c ;/* V4  .sg LONG              */
#MUIA_String_Contents                =$80428ffd ;/* V4  isg STRPTR            */
#MUIA_String_DisplayPos              =$8042ccbf ;/* V4  .sg LONG              */
#MUIA_String_EditHook                =$80424c33 ;/* V7  isg struct Hook *     */
#MUIA_String_Format                  =$80427484 ;/* V4  i.g LONG              */
#MUIA_String_Integer                 =$80426e8a ;/* V4  isg ULONG             */
#MUIA_String_LonelyEditHook          =$80421569 ;/* V11 isg BOOL              */
#MUIA_String_MaxLen                  =$80424984 ;/* V4  i.g LONG              */
#MUIA_String_Reject                  =$8042179c ;/* V4  isg STRPTR            */
#MUIA_String_Secret                  =$80428769 ;/* V4  i.g BOOL              */

#MUIV_String_Format_Left =0
#MUIV_String_Format_Center =1
#MUIV_String_Format_Right =2


;/****************************************************************************/
;/** Boopsi                                                                 **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Boopsi[];
;#Else
Macro MUIC_Boopsi:"Boopsi.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Boopsi_Class                   =$80426999 ;/* V4  isg struct IClass *   */
#MUIA_Boopsi_ClassID                 =$8042bfa3 ;/* V4  isg char *            */
#MUIA_Boopsi_MaxHeight               =$8042757f ;/* V4  isg ULONG             */
#MUIA_Boopsi_MaxWidth                =$8042bcb1 ;/* V4  isg ULONG             */
#MUIA_Boopsi_MinHeight               =$80422c93 ;/* V4  isg ULONG             */
#MUIA_Boopsi_MinWidth                =$80428fb2 ;/* V4  isg ULONG             */
#MUIA_Boopsi_Object                  =$80420178 ;/* V4  ..g Object *          */
#MUIA_Boopsi_Remember                =$8042f4bd ;/* V4  i.. ULONG             */
#MUIA_Boopsi_Smart                   =$8042b8d7 ;/* V9  i.. BOOL              */
#MUIA_Boopsi_TagDrawInfo             =$8042bae7 ;/* V4  isg ULONG             */
#MUIA_Boopsi_TagScreen               =$8042bc71 ;/* V4  isg ULONG             */
#MUIA_Boopsi_TagWindow               =$8042e11d ;/* V4  isg ULONG             */



;/****************************************************************************/
;/** Prop                                                                   **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Prop[];
;#Else
Macro MUIC_Prop:"Prop.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_Prop_Decrease                  =$80420dd1 ;/* V16 */
#MUIM_Prop_Increase                  =$8042cac0 ;/* V16 */
NEWTYPE .MUIP_Prop_Decrease : MethodID.l : amount.l : End NEWTYPE; };
NEWTYPE .MUIP_Prop_Increase : MethodID.l : amount.l : End NEWTYPE; };

;/* Attributes */

#MUIA_Prop_Entries                   =$8042fbdb ;/* V4  isg LONG              */
#MUIA_Prop_First                     =$8042d4b2 ;/* V4  isg LONG              */
#MUIA_Prop_Horiz                     =$8042f4f3 ;/* V4  i.g BOOL              */
#MUIA_Prop_Slider                    =$80429c3a ;/* V4  isg BOOL              */
#MUIA_Prop_UseWinBorder              =$8042deee ;/* V13 i.. LONG              */
#MUIA_Prop_Visible                   =$8042fea6 ;/* V4  isg LONG              */

#MUIV_Prop_UseWinBorder_None =0
#MUIV_Prop_UseWinBorder_Left =1
#MUIV_Prop_UseWinBorder_Right =2
#MUIV_Prop_UseWinBorder_Bottom =3


;/****************************************************************************/
;/** Gauge                                                                  **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Gauge[];
;#Else
Macro MUIC_Gauge:"Gauge.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Gauge_Current                  =$8042f0dd ;/* V4  isg LONG              */
#MUIA_Gauge_Divide                   =$8042d8df ;/* V4  isg BOOL              */
#MUIA_Gauge_Horiz                    =$804232dd ;/* V4  i.. BOOL              */
#MUIA_Gauge_InfoText                 =$8042bf15 ;/* V7  isg STRPTR            */
#MUIA_Gauge_Max                      =$8042bcdb ;/* V4  isg LONG              */



;/****************************************************************************/
;/** Scale                                                                  **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Scale[];
;#Else
Macro MUIC_Scale:"Scale.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Scale_Horiz                    =$8042919a ;/* V4  isg BOOL              */



;/****************************************************************************/
;/** Colorfield                                                             **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Colorfield[];
;#Else
Macro MUIC_Colorfield:"Colorfield.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Colorfield_Blue                =$8042d3b0 ;/* V4  isg ULONG             */
#MUIA_Colorfield_Green               =$80424466 ;/* V4  isg ULONG             */
#MUIA_Colorfield_Pen                 =$8042713a ;/* V4  ..g ULONG             */
#MUIA_Colorfield_Red                 =$804279f6 ;/* V4  isg ULONG             */
#MUIA_Colorfield_RGB                 =$8042677a ;/* V4  isg ULONG *           */



;/****************************************************************************/
;/** List                                                                   **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_List[];
;#Else
Macro MUIC_List "List.mui" End Macro
;#EndIf

;/* Methods */

#MUIM_List_Clear                     =$8042ad89 ;/* V4  */
#MUIM_List_CreateImage               =$80429804 ;/* V11 */
#MUIM_List_DeleteImage               =$80420f58 ;/* V11 */
#MUIM_List_Exchange                  =$8042468c ;/* V4  */
#MUIM_List_GetEntry                  =$804280ec ;/* V4  */
#MUIM_List_Insert                    =$80426c87 ;/* V4  */
#MUIM_List_InsertSingle              =$804254d5 ;/* V7  */
#MUIM_List_Jump                      =$8042baab ;/* V4  */
#MUIM_List_Move                      =$804253c2 ;/* V9  */
#MUIM_List_NextSelected              =$80425f17 ;/* V6  */
#MUIM_List_Redraw                    =$80427993 ;/* V4  */
#MUIM_List_Remove                    =$8042647e ;/* V4  */
#MUIM_List_Select                    =$804252d8 ;/* V4  */
#MUIM_List_Sort                      =$80422275 ;/* V4  */
#MUIM_List_TestPos                   =$80425f48 ;/* V11 */
NEWTYPE .MUIP_List_Clear : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_List_CreateImage : MethodID.l : *obj._Object : flags.l : End NEWTYPE; };
NEWTYPE .MUIP_List_DeleteImage : MethodID.l : listimg.l : End NEWTYPE; };
NEWTYPE .MUIP_List_Exchange : MethodID.l : pos1.l : pos2.l : End NEWTYPE; };
NEWTYPE .MUIP_List_GetEntry : MethodID.l : pos.l : *entry.l : End NEWTYPE; };
NEWTYPE .MUIP_List_Insert : MethodID.l : *entries.l : count.l : pos.l : End NEWTYPE; };
NEWTYPE .MUIP_List_InsertSingle : MethodID.l : entry.l : pos.l : End NEWTYPE; };
NEWTYPE .MUIP_List_Jump : MethodID.l : pos.l : End NEWTYPE; };
NEWTYPE .MUIP_List_Move : MethodID.l : from.l : _to.l : End NEWTYPE; };
NEWTYPE .MUIP_List_NextSelected : MethodID.l : *pos.l : End NEWTYPE; };
NEWTYPE .MUIP_List_Redraw : MethodID.l : pos.l : End NEWTYPE; };
NEWTYPE .MUIP_List_Remove : MethodID.l : pos.l : End NEWTYPE; };
NEWTYPE .MUIP_List_Select : MethodID.l : pos.l : seltype.l : *state.l : End NEWTYPE; };
NEWTYPE .MUIP_List_Sort : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_List_TestPos : MethodID.l : x.l : y.l : *res.MUI_List_TestPos_Result : End NEWTYPE; };

;/* Attributes */

#MUIA_List_Active                    =$8042391c ;/* V4  isg LONG              */
#MUIA_List_AdjustHeight              =$8042850d ;/* V4  i.. BOOL              */
#MUIA_List_AdjustWidth               =$8042354a ;/* V4  i.. BOOL              */
#MUIA_List_AutoVisible               =$8042a445 ;/* V11 isg BOOL              */
#MUIA_List_CompareHook               =$80425c14 ;/* V4  is. struct Hook *     */
#MUIA_List_ConstructHook             =$8042894f ;/* V4  is. struct Hook *     */
#MUIA_List_DestructHook              =$804297ce ;/* V4  is. struct Hook *     */
#MUIA_List_DisplayHook               =$8042b4d5 ;/* V4  is. struct Hook *     */
#MUIA_List_DragSortable              =$80426099 ;/* V11 isg BOOL              */
#MUIA_List_DropMark                  =$8042aba6 ;/* V11 ..g LONG              */
#MUIA_List_Entries                   =$80421654 ;/* V4  ..g LONG              */
#MUIA_List_First                     =$804238d4 ;/* V4  ..g LONG              */
#MUIA_List_Format                    =$80423c0a ;/* V4  isg STRPTR            */
#MUIA_List_InsertPosition            =$8042d0cd ;/* V9  ..g LONG              */
#MUIA_List_MinLineHeight             =$8042d1c3 ;/* V4  i.. LONG              */
#MUIA_List_MultiTestHook             =$8042c2c6 ;/* V4  is. struct Hook *     */
#MUIA_List_Pool                      =$80423431 ;/* V13 i.. APTR              */
#MUIA_List_PoolPuddleSize            =$8042a4eb ;/* V13 i.. ULONG             */
#MUIA_List_PoolThreshSize            =$8042c48c ;/* V13 i.. ULONG             */
#MUIA_List_Quiet                     =$8042d8c7 ;/* V4  .s. BOOL              */
#MUIA_List_ShowDropMarks             =$8042c6f3 ;/* V11 isg BOOL              */
#MUIA_List_SourceArray               =$8042c0a0 ;/* V4  i.. APTR              */
#MUIA_List_Title                     =$80423e66 ;/* V6  isg char *            */
#MUIA_List_Visible                   =$8042191f ;/* V4  ..g LONG              */

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


;/****************************************************************************/
;/** Floattext                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Floattext[];
;#Else
Macro MUIC_Floattext "Floattext.mui" End Macro
;#EndIf

;/* Attributes */

#MUIA_Floattext_Justify              =$8042Dc03 ;/* V4  isg BOOL              */
#MUIA_Floattext_SkipChars            =$80425c7d ;/* V4  is. STRPTR            */
#MUIA_Floattext_TabSize              =$80427d17 ;/* V4  is. LONG              */
#MUIA_Floattext_Text                 =$8042d16a ;/* V4  isg STRPTR            */



;/****************************************************************************/
;/** Volumelist                                                             **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Volumelist[];
;#Else
Macro MUIC_Volumelist:"Volumelist.mui":End Macro
;#EndIf


;/****************************************************************************/
;/** Scrmodelist                                                            **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Scrmodelist[];
;#Else
Macro MUIC_Scrmodelist:"Scrmodelist.mui":End Macro
;#EndIf

;/* Attributes */




;/****************************************************************************/
;/** Dirlist                                                                **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Dirlist[];
;#Else
Macro MUIC_Dirlist:"Dirlist.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_Dirlist_ReRead                 =$80422d71 ;/* V4  */
NEWTYPE .MUIP_Dirlist_ReRead : MethodID.l : End NEWTYPE; };

;/* Attributes */

#MUIA_Dirlist_AcceptPattern          =$8042760a ;/* V4  is. STRPTR            */
#MUIA_Dirlist_Directory              =$8042ea41 ;/* V4  isg STRPTR            */
#MUIA_Dirlist_DrawersOnly            =$8042b379 ;/* V4  is. BOOL              */
#MUIA_Dirlist_FilesOnly              =$8042896a ;/* V4  is. BOOL              */
#MUIA_Dirlist_FilterDrawers          =$80424ad2 ;/* V4  is. BOOL              */
#MUIA_Dirlist_FilterHook             =$8042ae19 ;/* V4  is. struct Hook *     */
#MUIA_Dirlist_MultiSelDirs           =$80428653 ;/* V6  is. BOOL              */
#MUIA_Dirlist_NumBytes               =$80429e26 ;/* V4  ..g LONG              */
#MUIA_Dirlist_NumDrawers             =$80429cb8 ;/* V4  ..g LONG              */
#MUIA_Dirlist_NumFiles               =$8042a6f0 ;/* V4  ..g LONG              */
#MUIA_Dirlist_Path                   =$80426176 ;/* V4  ..g STRPTR            */
#MUIA_Dirlist_RejectIcons            =$80424808 ;/* V4  is. BOOL              */
#MUIA_Dirlist_RejectPattern          =$804259c7 ;/* V4  is. STRPTR            */
#MUIA_Dirlist_SortDirs               =$8042bbb9 ;/* V4  is. LONG              */
#MUIA_Dirlist_SortHighLow            =$80421896 ;/* V4  is. BOOL              */
#MUIA_Dirlist_SortType               =$804228bc ;/* V4  is. LONG              */
#MUIA_Dirlist_Status                 =$804240de ;/* V4  ..g LONG              */

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


;/****************************************************************************/
;/** Numeric                                                                **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Numeric[];
;#Else
Macro MUIC_Numeric:"Numeric.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_Numeric_Decrease               =$804243a7 ;/* V11 */
#MUIM_Numeric_Increase               =$80426ecd ;/* V11 */
#MUIM_Numeric_ScaleToValue           =$8042032c ;/* V11 */
#MUIM_Numeric_SetDefault             =$8042ab0a ;/* V11 */
#MUIM_Numeric_Stringify              =$80424891 ;/* V11 */
#MUIM_Numeric_ValueToScale           =$80423e4f ;/* V11 */
NEWTYPE .MUIP_Numeric_Decrease : MethodID.l : amount.l : End NEWTYPE; };
NEWTYPE .MUIP_Numeric_Increase : MethodID.l : amount.l : End NEWTYPE; };
NEWTYPE .MUIP_Numeric_ScaleToValue : MethodID.l : scalemin.l : scalemax.l : _scale.l : End NEWTYPE; };
NEWTYPE .MUIP_Numeric_SetDefault : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Numeric_Stringify : MethodID.l : value.l : End NEWTYPE; };
NEWTYPE .MUIP_Numeric_ValueToScale : MethodID.l : scalemin.l : scalemax.l : End NEWTYPE; };

;/* Attributes */

#MUIA_Numeric_Default                =$804263e8 ;/* V11 isg LONG              */
#MUIA_Numeric_Format                 =$804263e9 ;/* V11 isg STRPTR            */
#MUIA_Numeric_Max                    =$8042d78a ;/* V11 isg LONG              */
#MUIA_Numeric_Min                    =$8042e404 ;/* V11 isg LONG              */
#MUIA_Numeric_Reverse                =$8042f2a0 ;/* V11 isg BOOL              */
#MUIA_Numeric_RevLeftRight           =$804294a7 ;/* V11 isg BOOL              */
#MUIA_Numeric_RevUpDown              =$804252dd ;/* V11 isg BOOL              */
#MUIA_Numeric_Value                  =$8042ae3a ;/* V11 isg LONG              */



;/****************************************************************************/
;/** Knob                                                                   **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Knob[];
;#Else
Macro MUIC_Knob:"Knob.mui":End Macro
;#EndIf


;/****************************************************************************/
;/** Levelmeter                                                             **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Levelmeter[];
;#Else
Macro MUIC_Levelmeter:"Levelmeter.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Levelmeter_Label               =$80420dd5 ;/* V11 isg STRPTR            */



;/****************************************************************************/
;/** Numericbutton                                                          **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Numericbutton[];
;#Else
Macro MUIC_Numericbutton:"Numericbutton.mui":End Macro
;#EndIf


;/****************************************************************************/
;/** Slider                                                                 **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Slider[];
;#Else
Macro MUIC_Slider:"Slider.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Slider_Horiz                   =$8042fad1 ;/* V11 isg BOOL              */
;#ifdef MUI_OBSOLETE
#MUIA_Slider_Level                   =$8042ae3a ;/* V4  isg LONG              */
;#EndIf /* MUI_OBSOLETE */
;#ifdef MUI_OBSOLETE
#MUIA_Slider_Max                     =$8042d78a ;/* V4  isg LONG              */
;#EndIf /* MUI_OBSOLETE */
;#ifdef MUI_OBSOLETE
#MUIA_Slider_Min                     =$8042e404 ;/* V4  isg LONG              */
;#EndIf /* MUI_OBSOLETE */
#MUIA_Slider_Quiet                   =$80420b26 ;/* V6  i.. BOOL              */
;#ifdef MUI_OBSOLETE
#MUIA_Slider_Reverse                 =$8042f2a0 ;/* V4  isg BOOL              */
;#EndIf /* MUI_OBSOLETE */



;/****************************************************************************/
;/** Framedisplay                                                           **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Framedisplay[];
;#Else
Macro MUIC_Framedisplay:"Framedisplay.mui":End Macro
;#EndIf

;/* Attributes */




;/****************************************************************************/
;/** Popframe                                                               **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Popframe[];
;#Else
Macro MUIC_Popframe:"Popframe.mui":End Macro
;#EndIf


;/****************************************************************************/
;/** Imagedisplay                                                           **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Imagedisplay[];
;#Else
Macro MUIC_Imagedisplay:"Imagedisplay.mui":End Macro
;#EndIf

;/* Attributes */




;/****************************************************************************/
;/** Popimage                                                               **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Popimage[];
;#Else
Macro MUIC_Popimage:"Popimage.mui":End Macro
;#EndIf


;/****************************************************************************/
;/** Pendisplay                                                             **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Pendisplay[];
;#Else
Macro MUIC_Pendisplay:"Pendisplay.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_Pendisplay_SetColormap         =$80426c80 ;/* V13 */
#MUIM_Pendisplay_SetMUIPen           =$8042039d ;/* V13 */
#MUIM_Pendisplay_SetRGB              =$8042c131 ;/* V13 */
NEWTYPE .MUIP_Pendisplay_SetColormap : MethodID.l : colormap.l : End NEWTYPE; };
NEWTYPE .MUIP_Pendisplay_SetMUIPen : MethodID.l : muipen.l :End NEWTYPE; };
NEWTYPE .MUIP_Pendisplay_SetRGB : MethodID.l : _red.l : _green.l : _blue.l : End NEWTYPE; };

;/* Attributes */

#MUIA_Pendisplay_Pen                 =$8042a748 ;/* V13 ..g Object *          */
#MUIA_Pendisplay_Reference           =$8042Dc24 ;/* V13 isg Object *          */
#MUIA_Pendisplay_RGBcolor            =$8042a1a9 ;/* V11 isg struct MUI_RBBcolor * */
#MUIA_Pendisplay_Spec                =$8042a204 ;/* V11 isg struct MUI_PenSpec  * */



;/****************************************************************************/
;/** Poppen                                                                 **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Poppen[];
;#Else
Macro MUIC_Poppen:"Poppen.mui":End Macro
;#EndIf


;/****************************************************************************/
;/** Group                                                                  **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Group[];
;#Else
Macro MUIC_Group "Group.mui" End Macro
;#EndIf

;/* Methods */

#MUIM_Group_ExitChange               =$8042d1cc ;/* V11 */
#MUIM_Group_InitChange               =$80420887 ;/* V11 */
#MUIM_Group_Sort                     =$80427417 ;/* V4  */
NEWTYPE .MUIP_Group_ExitChange : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Group_InitChange : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Group_Sort : MethodID.l : *obj._Object[1] : End NEWTYPE

;/* Attributes */

#MUIA_Group_ActivePage               =$80424199 ;/* V5  isg LONG              */
#MUIA_Group_Child                    =$804226e6 ;/* V4  i.. Object *          */
#MUIA_Group_ChildList                =$80424748 ;/* V4  ..g struct List *     */
#MUIA_Group_Columns                  =$8042f416 ;/* V4  is. LONG              */
#MUIA_Group_Horiz                    =$8042536b ;/* V4  i.. BOOL              */
#MUIA_Group_HorizSpacing             =$8042c651 ;/* V4  isg LONG              */
#MUIA_Group_LayoutHook               =$8042c3b2 ;/* V11 i.. struct Hook *     */
#MUIA_Group_PageMode                 =$80421a5f ;/* V5  i.. BOOL              */
#MUIA_Group_Rows                     =$8042b68f ;/* V4  is. LONG              */
#MUIA_Group_SameHeight               =$8042037e ;/* V4  i.. BOOL              */
#MUIA_Group_SameSize                 =$80420860 ;/* V4  i.. BOOL              */
#MUIA_Group_SameWidth                =$8042b3ec ;/* V4  i.. BOOL              */
#MUIA_Group_Spacing                  =$8042866d ;/* V4  is. LONG              */
#MUIA_Group_VertSpacing              =$8042e1bf ;/* V4  isg LONG              */

#MUIV_Group_ActivePage_First =0
#MUIV_Group_ActivePage_Last =-1
#MUIV_Group_ActivePage_Prev =-2
#MUIV_Group_ActivePage_Next =-3
#MUIV_Group_ActivePage_Advance =-4


;/****************************************************************************/
;/** Mccprefs                                                               **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Mccprefs[];
;#Else
Macro MUIC_Mccprefs:"Mccprefs.mui":End Macro
;#EndIf


;/****************************************************************************/
;/** Register                                                               **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Register[];
;#Else
Macro MUIC_Register "Register.mui" End Macro
;#EndIf

;/* Attributes */

#MUIA_Register_Frame                 =$8042349b ;/* V7  i.g BOOL              */
#MUIA_Register_Titles                =$804297ec ;/* V7  i.g STRPTR *          */



;/****************************************************************************/
;/** Penadjust                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Penadjust[];
;#Else
Macro MUIC_Penadjust:"Penadjust.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */

#MUIA_Penadjust_PSIMode              =$80421cbb ;/* V11 i.. BOOL              */



;/****************************************************************************/
;/** Settingsgroup                                                          **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Settingsgroup[];
;#Else
Macro MUIC_Settingsgroup:"Settingsgroup.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_Settingsgroup_ConfigToGadgets  =$80427043 ;/* V11 */
#MUIM_Settingsgroup_GadgetsToConfig  =$80425242 ;/* V11 */
NEWTYPE .MUIP_Settingsgroup_ConfigToGadgets : MethodID.l : *configdata._Object : End NEWTYPE; };
NEWTYPE .MUIP_Settingsgroup_GadgetsToConfig : MethodID.l : *configdata._Object : End NEWTYPE; };

;/* Attributes */




;/****************************************************************************/
;/** Settings                                                               **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Settings[];
;#Else
Macro MUIC_Settings:"Settings.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */




;/****************************************************************************/
;/** Frameadjust                                                            **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Frameadjust[];
;#Else
Macro MUIC_Frameadjust:"Frameadjust.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */




;/****************************************************************************/
;/** Imageadjust                                                            **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Imageadjust[];
;#Else
Macro MUIC_Imageadjust:"Imageadjust.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */


#MUIV_Imageadjust_Type_All =0
#MUIV_Imageadjust_Type_Image =1
#MUIV_Imageadjust_Type_Background =2
#MUIV_Imageadjust_Type_Pen =3


;/****************************************************************************/
;/** Virtgroup                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Virtgroup[];
;#Else
Macro MUIC_Virtgroup:"Virtgroup.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */

#MUIA_Virtgroup_Height               =$80423038 ;/* V6  ..g LONG              */
#MUIA_Virtgroup_Input                =$80427f7e ;/* V11 i.. BOOL              */
#MUIA_Virtgroup_Left                 =$80429371 ;/* V6  isg LONG              */
#MUIA_Virtgroup_Top                  =$80425200 ;/* V6  isg LONG              */
#MUIA_Virtgroup_Width                =$80427c49 ;/* V6  ..g LONG              */



;/****************************************************************************/
;/** Scrollgroup                                                            **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Scrollgroup[];
;#Else
Macro MUIC_Scrollgroup:"Scrollgroup.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */

#MUIA_Scrollgroup_Contents           =$80421261 ;/* V4  i.g Object *          */
#MUIA_Scrollgroup_FreeHoriz          =$804292f3 ;/* V9  i.. BOOL              */
#MUIA_Scrollgroup_FreeVert           =$804224f2 ;/* V9  i.. BOOL              */
#MUIA_Scrollgroup_HorizBar           =$8042b63d ;/* V16 ..g Object *          */
#MUIA_Scrollgroup_UseWinBorder       =$804284c1 ;/* V13 i.. BOOL              */
#MUIA_Scrollgroup_VertBar            =$8042cdc0 ;/* V16 ..g Object *          */



;/****************************************************************************/
;/** Scrollbar                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Scrollbar[];
;#Else
Macro MUIC_Scrollbar:"Scrollbar.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Scrollbar_Type                 =$8042fb6b ;/* V11 i.. LONG              */

#MUIV_Scrollbar_Type_Default =0
#MUIV_Scrollbar_Type_Bottom =1
#MUIV_Scrollbar_Type_Top =2
#MUIV_Scrollbar_Type_Sym =3


;/****************************************************************************/
;/** Listview                                                               **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Listview[];
;#Else
Macro MUIC_Listview:"Listview.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Listview_ClickColumn           =$8042d1b3 ;/* V7  ..g LONG              */
#MUIA_Listview_DefClickColumn        =$8042b296 ;/* V7  isg LONG              */
#MUIA_Listview_DoubleClick           =$80424635 ;/* V4  i.g BOOL              */
#MUIA_Listview_DragType              =$80425cd3 ;/* V11 isg LONG              */
#MUIA_Listview_Input                 =$8042682d ;/* V4  i.. BOOL              */
#MUIA_Listview_List                  =$8042bcce ;/* V4  i.g Object *          */
#MUIA_Listview_MultiSelect           =$80427e08 ;/* V7  i.. LONG              */
#MUIA_Listview_ScrollerPos           =$8042b1b4 ;/* V10 i.. BOOL              */
#MUIA_Listview_SelectChange          =$8042178f ;/* V4  ..g BOOL              */

#MUIV_Listview_DragType_None =0
#MUIV_Listview_DragType_Immediate =1
#MUIV_Listview_MultiSelect_None =0
#MUIV_Listview_MultiSelect_Default =1
#MUIV_Listview_MultiSelect_Shifted =2
#MUIV_Listview_MultiSelect_Always =3
#MUIV_Listview_ScrollerPos_Default =0
#MUIV_Listview_ScrollerPos_Left =1
#MUIV_Listview_ScrollerPos_Right =2
#MUIV_Listview_ScrollerPos_None =3


;/****************************************************************************/
;/** Radio                                                                  **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Radio[];
;#Else
Macro MUIC_Radio "Radio.mui" End Macro
;#EndIf

;/* Attributes */

#MUIA_Radio_Active                   =$80429b41 ;/* V4  isg LONG              */
#MUIA_Radio_Entries                  =$8042b6a1 ;/* V4  i.. STRPTR *          */



;/****************************************************************************/
;/** Cycle                                                                  **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Cycle[];
;#Else
Macro MUIC_Cycle "Cycle.mui" End Macro
;#EndIf

;/* Attributes */

#MUIA_Cycle_Active                   =$80421788 ;/* V4  isg LONG              */
#MUIA_Cycle_Entries                  =$80420629 ;/* V4  i.. STRPTR *          */

#MUIV_Cycle_Active_Next =-1
#MUIV_Cycle_Active_Prev =-2


;/****************************************************************************/
;/** Coloradjust                                                            **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Coloradjust[];
;#Else
Macro MUIC_Coloradjust:"Coloradjust.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */

#MUIA_Coloradjust_Blue               =$8042b8a3 ;/* V4  isg ULONG             */
#MUIA_Coloradjust_Green              =$804285ab ;/* V4  isg ULONG             */
#MUIA_Coloradjust_ModeID             =$8042ec59 ;/* V4  isg ULONG             */
#MUIA_Coloradjust_Red                =$80420eaa ;/* V4  isg ULONG             */
#MUIA_Coloradjust_RGB                =$8042f899 ;/* V4  isg ULONG *           */



;/****************************************************************************/
;/** Palette                                                                **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Palette[];
;#Else
Macro MUIC_Palette:"Palette.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Palette_Entries                =$8042a3d8 ;/* V6  i.g struct MUI_Palette_Entry * */
#MUIA_Palette_Groupable              =$80423e67 ;/* V6  isg BOOL              */
#MUIA_Palette_Names                  =$8042c3a2 ;/* V6  isg char **           */



;/****************************************************************************/
;/** Popstring                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Popstring[];
;#Else
Macro MUIC_Popstring:"Popstring.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_Popstring_Close                =$8042Dc52 ;/* V7  */
#MUIM_Popstring_Open                 =$804258ba ;/* V7  */
NEWTYPE .MUIP_Popstring_Close : MethodID.l : result.l : End NEWTYPE; };
NEWTYPE .MUIP_Popstring_Open : MethodID.l : End NEWTYPE; };

;/* Attributes */

#MUIA_Popstring_Button               =$8042d0b9 ;/* V7  i.g Object *          */
#MUIA_Popstring_CloseHook            =$804256bf ;/* V7  isg struct Hook *     */
#MUIA_Popstring_OpenHook             =$80429d00 ;/* V7  isg struct Hook *     */
#MUIA_Popstring_String               =$804239ea ;/* V7  i.g Object *          */
#MUIA_Popstring_Toggle               =$80422b7a ;/* V7  isg BOOL              */



;/****************************************************************************/
;/** Popobject                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Popobject[];
;#Else
Macro MUIC_Popobject:"Popobject.mui":End Macro
;#EndIf

;/* Attributes */

#MUIA_Popobject_Follow               =$80424cb5 ;/* V7  isg BOOL              */
#MUIA_Popobject_Light                =$8042a5a3 ;/* V7  isg BOOL              */
#MUIA_Popobject_Object               =$804293e3 ;/* V7  i.g Object *          */
#MUIA_Popobject_ObjStrHook           =$8042db44 ;/* V7  isg struct Hook *     */
#MUIA_Popobject_StrObjHook           =$8042fbe1 ;/* V7  isg struct Hook *     */
#MUIA_Popobject_Volatile             =$804252ec ;/* V7  isg BOOL              */
#MUIA_Popobject_WindowHook           =$8042f194 ;/* V9  isg struct Hook *     */



;/****************************************************************************/
;/** Poplist                                                                **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Poplist[];
;#Else
Macro MUIC_Poplist "Poplist.mui" End Macro
;#EndIf

;/* Attributes */

#MUIA_Poplist_Array                  =$8042084c ;/* V8  i.. char **           */



;/****************************************************************************/
;/** Popscreen                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Popscreen[];
;#Else
Macro MUIC_Popscreen:"Popscreen.mui":End Macro
;#EndIf

;/* Attributes */




;/****************************************************************************/
;/** Popasl                                                                 **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Popasl[];
;#Else
Macro MUIC_Popasl "Popasl.mui" End Macro
;#EndIf

;/* Attributes */

#MUIA_Popasl_Active                  =$80421b37 ;/* V7  ..g BOOL              */
#MUIA_Popasl_StartHook               =$8042b703 ;/* V7  isg struct Hook *     */
#MUIA_Popasl_StopHook                =$8042d8d2 ;/* V7  isg struct Hook *     */
#MUIA_Popasl_Type                    =$8042df3d ;/* V7  i.g ULONG             */



;/****************************************************************************/
;/** Semaphore                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Semaphore[];
;#Else
Macro MUIC_Semaphore:"Semaphore.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_Semaphore_Attempt              =$80426ce2 ;/* V11 */
#MUIM_Semaphore_AttemptShared        =$80422551 ;/* V11 */
#MUIM_Semaphore_Obtain               =$804276f0 ;/* V11 */
#MUIM_Semaphore_ObtainShared         =$8042ea02 ;/* V11 */
#MUIM_Semaphore_Release              =$80421f2d ;/* V11 */
NEWTYPE .MUIP_Semaphore_Attempt : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Semaphore_AttemptShared : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Semaphore_Obtain : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Semaphore_ObtainShared : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Semaphore_Release : MethodID.l : End NEWTYPE; };


;/****************************************************************************/
;/** Applist                                                                **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Applist[];
;#Else
Macro MUIC_Applist:"Applist.mui":End Macro
;#EndIf

;/* Methods */



;/****************************************************************************/
;/** Cclist                                                                 **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Cclist[];
;#Else
Macro MUIC_Cclist:"Cclist.mui":End Macro
;#EndIf

;/* Methods */



;/****************************************************************************/
;/** Dataspace                                                              **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Dataspace[];
;#Else
Macro MUIC_Dataspace:"Dataspace.mui":End Macro
;#EndIf

;/* Methods */

#MUIM_Dataspace_Add                  =$80423366 ;/* V11 */
#MUIM_Dataspace_Clear                =$8042b6c9 ;/* V11 */
#MUIM_Dataspace_Find                 =$8042832c ;/* V11 */
#MUIM_Dataspace_Merge                =$80423e2b ;/* V11 */
#MUIM_Dataspace_ReadIFF              =$80420dfb ;/* V11 */
#MUIM_Dataspace_Remove               =$8042dce1 ;/* V11 */
#MUIM_Dataspace_WriteIFF             =$80425e8e ;/* V11 */
NEWTYPE .MUIP_Dataspace_Add : MethodID.l : _data.l : _len.l : id.l : End NEWTYPE; };
NEWTYPE .MUIP_Dataspace_Clear : MethodID.l : End NEWTYPE; };
NEWTYPE .MUIP_Dataspace_Find : MethodID.l : id.l : End NEWTYPE; };
NEWTYPE .MUIP_Dataspace_Merge : MethodID.l : *dataspace._Object : End NEWTYPE; };
NEWTYPE .MUIP_Dataspace_ReadIFF : MethodID.l : *_handle.IFFHandle :End NEWTYPE; };
NEWTYPE .MUIP_Dataspace_Remove : MethodID.l : id.l : End NEWTYPE; };
NEWTYPE .MUIP_Dataspace_WriteIFF : MethodID.l : *_handle.IFFHandle : _type.l : id.l : End NEWTYPE; };

;/* Attributes */

#MUIA_Dataspace_Pool                 =$80424cf9 ;/* V11 i.. APTR              */



;/****************************************************************************/
;/** Configdata                                                             **/
;/****************************************************************************/

;#ifdef _DCC
;extern char MUIC_Configdata[];
;#Else
Macro MUIC_Configdata:"Configdata.mui":End Macro
;#EndIf

;/* Methods */


;/* Attributes */




;/*****************************************/
;/* End of automatic header File creation */
;/*****************************************/







;/*************************************************************************
;** 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.
;*/
;
;
;/* Global information For every object */
;
;struct MUI_GlobalInfo
;{
;  ULONG priv0;
;  Object *mgi_ApplicationObject;
;
;  /* ... private Data follows ... */
;};
;
;
;/* Instance Data of notify class */
;
;struct MUI_NotifyData
;{
;  struct MUI_GlobalInfo *mnd_GlobalInfo;
;  ULONG                  mnd_UserData;
;  ULONG                  mnd_ObjectID;
;  ULONG priv1;
;  ULONG priv2;
;  ULONG priv3;
;  ULONG priv4;
;};
;
;
;/* MUI_MinMax structure holds information about minimum, Maximum
;   AND Default dimensions of an object. */
;
NEWTYPE .MUI_MinMax

  MinWidth.w;
  MinHeight.w;
  MaxWidth.w;
  MaxHeight.w;
  DefWidth.w;
  DefHeight.w;

End NEWTYPE
;
;#define MUI_MAXMAX 10000 /* Use this If a dimension is NOT limited. */
;
;
;/* Hook message For custom layout */
;
;struct MUI_LayoutMsg
;{
;  ULONG                  lm_Type;     /* type of message (see defines below)                      */
;  struct MinList        *lm_Children; /* list of this groups children, traverse with NextObject() */
;  struct MUI_MinMax      lm_MinMax;   /* results for MUILM_MINMAX                                 */
;  struct
;  {
;    LONG Width;
;    LONG Height;
;  ULONG priv5;
;  ULONG priv6;
;  } lm_Layout;   /* size (and result) for MUILM_LAYOUT                       */
;};
;
;#define MUILM_MINMAX    1  /* MUI wants you To calc your Min & Max sizes */
;#define MUILM_LAYOUT    2  /* MUI wants you To layout your children      */
;
;#define MUILM_UNKNOWN  -1  /* Return this If your hook doesn't implement lm_Type */
;
;
;/* (partial) instance Data of area class */
;
;struct MUI_AreaData
;{
;  struct MUI_RenderInfo *mad_RenderInfo;     /* RenderInfo for this object */
;  ULONG priv7;
;  struct TextFont       *mad_Font;           /* Font */
;  struct MUI_MinMax      mad_MinMax;         /* min/max/default sizes */
;  struct IBox            mad_Box;            /* position and dimension */
;  BYTE                   mad_addleft;        /* frame & innerspacing left offset */
;  BYTE                   mad_addtop;         /* frame & innerspacing top offset  */
;  BYTE                   mad_subwidth;       /* frame & innerspacing add. width  */
;  BYTE                   mad_subheight;      /* frame & innerspacing add. height */
;  ULONG                  mad_Flags;          /* see definitions below */
;
;  /* ... private Data follows ... */
;};
;
;/* Definitions For mad_Flags, other flags are private */
;
;#define MADF_DRAWOBJECT        (1<< 0) /* completely Redraw yourself */
;#define MADF_DRAWUPDATE        (1<< 1) /* only update yourself */
;
;
;
;/* 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_MARK       7
;#define MPEN_COUNT      8
;
;
;/* Mask For pens from MUI_ObtainPen() */
;
;#define MUIPEN_MASK =$0000ffff
;#define MUIPEN(pen) ((pen) & MUIPEN_MASK)
;
;
;/* Information On display environment */
;
NEWTYPE .MUI_RenderInfo

  *mri_WindowObject._Object;  /* valid between MUIM_Setup/MUIM_Cleanup */

  *mri_Screen.Screen;        /* valid between MUIM_Setup/MUIM_Cleanup */
  *mri_DrawInfo.DrawInfo;      /* valid between MUIM_Setup/MUIM_Cleanup */
  *mri_Pens.w;          /* valid between MUIM_Setup/MUIM_Cleanup */
  *mri_Window.Window;        /* valid between MUIM_Show/MUIM_Hide */
  *mri_RastPort.RastPort;      /* valid between MUIM_Show/MUIM_Hide */

  mri_Flags.l;         /* valid between MUIM_Setup/MUIM_Cleanup */

;  /* ... private Data follows ... */

End NEWTYPE
;
;/*
;** If mri_Flags & MUIMRI_RECTFILL, RectFill() is quicker
;** than MOVE()/Draw() For horizontal OR vertical lines.
;** On the current display.
;*/
;#define MUIMRI_RECTFILL (1<<0)
;
;/*
;** If mri_Flags & MUIMRI_TRUECOLOR, display environment is a
;** cybergraphics emulated hicolor OR True color display.
;*/
;#define MUIMRI_TRUECOLOR (1<<1)
;
;/*
;** If mri_Flags & MUIMRI_THINFRAMES, MUI uses thin Frames
;** (1:1) apsect ratio instead of standard 2:1 Frames.
;*/
;#define MUIMRI_THINFRAMES (1<<2)
;
;/*
;** If mri_Flags & MUIMRI_REFRESHMODE, MUI is currently
;** refreshing a WFLG_SIMPLEREFRESH Window AND is between
;** a BeginRefresh()/EndRefresh() pair.
;*/
;#define MUIMRI_REFRESHMODE (1<<3)
;
;
;/* the following macros can be Used To Get pointers To an objects
;   GlobalInfo AND RenderInfo structures. */
;
;struct __dummyXFC2__
;{
;  struct MUI_NotifyData mnd;
;  struct MUI_AreaData   mad;
;};
;
;#define muiNotifyData(obj) (&(((struct __dummyXFC2__ *)(obj))->mnd))
;#define muiAreaData(obj)   (&(((struct __dummyXFC2__ *)(obj))->mad))
;
;#define muiGlobalInfo(obj) (((struct __dummyXFC2__ *)(obj))->mnd.mnd_GlobalInfo)
;#define muiUserData(obj)   (((struct __dummyXFC2__ *)(obj))->mnd.mnd_UserData)
;#define muiRenderInfo(obj) (((struct __dummyXFC2__ *)(obj))->mad.mad_RenderInfo)
;
;
;
;/* User configurable keyboard events coming with MUIM_HandleInput */
;
;enum
;{
;  MUIKEY_RELEASE = -2, /* NOT a real key, faked when MUIKEY_PRESS is released */
;  MUIKEY_NONE    = -1,
;  MUIKEY_PRESS,
;  MUIKEY_TOGGLE,
;  MUIKEY_UP,
;  MUIKEY_DOWN,
;  MUIKEY_PAGEUP,
;  MUIKEY_PAGEDOWN,
;  MUIKEY_TOP,
;  MUIKEY_BOTTOM,
;  MUIKEY_LEFT,
;  MUIKEY_RIGHT,
;  MUIKEY_WORDLEFT,
;  MUIKEY_WORDRIGHT,
;  MUIKEY_LINESTART,
;  MUIKEY_LINEEND,
;  MUIKEY_GADGET_NEXT,
;  MUIKEY_GADGET_PREV,
;  MUIKEY_GADGET_OFF,
;  MUIKEY_WINDOW_CLOSE,
;  MUIKEY_WINDOW_NEXT,
;  MUIKEY_WINDOW_PREV,
;  MUIKEY_HELP,
;  MUIKEY_POPUP,
;  MUIKEY_COUNT /* counter */
;};
;
;#define MUIKEYF_PRESS        (1<<MUIKEY_PRESS)
;#define MUIKEYF_TOGGLE       (1<<MUIKEY_TOGGLE)
;#define MUIKEYF_UP           (1<<MUIKEY_UP)
;#define MUIKEYF_DOWN         (1<<MUIKEY_DOWN)
;#define MUIKEYF_PAGEUP       (1<<MUIKEY_PAGEUP)
;#define MUIKEYF_PAGEDOWN     (1<<MUIKEY_PAGEDOWN)
;#define MUIKEYF_TOP          (1<<MUIKEY_TOP)
;#define MUIKEYF_BOTTOM       (1<<MUIKEY_BOTTOM)
;#define MUIKEYF_LEFT         (1<<MUIKEY_LEFT)
;#define MUIKEYF_RIGHT        (1<<MUIKEY_RIGHT)
;#define MUIKEYF_WORDLEFT     (1<<MUIKEY_WORDLEFT)
;#define MUIKEYF_WORDRIGHT    (1<<MUIKEY_WORDRIGHT)
;#define MUIKEYF_LINESTART    (1<<MUIKEY_LINESTART)
;#define MUIKEYF_LINEEND      (1<<MUIKEY_LINEEND)
;#define MUIKEYF_GADGET_NEXT  (1<<MUIKEY_GADGET_NEXT)
;#define MUIKEYF_GADGET_PREV  (1<<MUIKEY_GADGET_PREV)
;#define MUIKEYF_GADGET_OFF   (1<<MUIKEY_GADGET_OFF)
;#define MUIKEYF_WINDOW_CLOSE (1<<MUIKEY_WINDOW_CLOSE)
;#define MUIKEYF_WINDOW_NEXT  (1<<MUIKEY_WINDOW_NEXT)
;#define MUIKEYF_WINDOW_PREV  (1<<MUIKEY_WINDOW_PREV)
;#define MUIKEYF_HELP         (1<<MUIKEY_HELP)
;#define MUIKEYF_POPUP        (1<<MUIKEY_POPUP)
;
;
;/* Some useful shortcuts. define MUI_NOSHORTCUTS To Get rid of them */
;/* NOTE: These macros may only be Used in custom classes AND are    */
;/* only valid If your class is inbetween the specified methods!     */
;
;#ifndef MUI_NOSHORTCUTS
;
;#define _app(obj)         (muiGlobalInfo(obj)->mgi_ApplicationObject) /* valid between MUIM_Setup/Cleanup */
;#define _win(obj)         (muiRenderInfo(obj)->mri_WindowObject)      /* valid between MUIM_Setup/Cleanup */
;#define _dri(obj)         (muiRenderInfo(obj)->mri_DrawInfo)          /* valid between MUIM_Setup/Cleanup */
;#define _screen(obj)      (muiRenderInfo(obj)->mri_Screen)            /* valid between MUIM_Setup/Cleanup */
;#define _pens(obj)        (muiRenderInfo(obj)->mri_Pens)              /* valid between MUIM_Setup/Cleanup */
;#define _window(obj)      (muiRenderInfo(obj)->mri_Window)            /* valid between MUIM_Show/Hide */
;#define _rp(obj)          (muiRenderInfo(obj)->mri_RastPort)          /* valid between MUIM_Show/Hide */
;#define _left(obj)        (muiAreaData(obj)->mad_Box.Left)            /* valid during MUIM_Draw */
;#define _top(obj)         (muiAreaData(obj)->mad_Box.Top)             /* valid during MUIM_Draw */
;#define _width(obj)       (muiAreaData(obj)->mad_Box.Width)           /* valid during MUIM_Draw */
;#define _height(obj)      (muiAreaData(obj)->mad_Box.Height)          /* valid during MUIM_Draw */
;#define _right(obj)       (_left(obj)+_width(obj)-1)                  /* valid during MUIM_Draw */
;#define _bottom(obj)      (_top(obj)+_height(obj)-1)                  /* valid during MUIM_Draw */
;#define _addleft(obj)     (muiAreaData(obj)->mad_addleft  )           /* valid during MUIM_Draw */
;#define _addtop(obj)      (muiAreaData(obj)->mad_addtop   )           /* valid during MUIM_Draw */
;#define _subwidth(obj)    (muiAreaData(obj)->mad_subwidth )           /* valid during MUIM_Draw */
;#define _subheight(obj)   (muiAreaData(obj)->mad_subheight)           /* valid during MUIM_Draw */
;#define _mleft(obj)       (_left(obj)+_addleft(obj))                  /* valid during MUIM_Draw */
;#define _mtop(obj)        (_top(obj)+_addtop(obj))                    /* valid during MUIM_Draw */
;#define _mwidth(obj)      (_width(obj)-_subwidth(obj))                /* valid during MUIM_Draw */
;#define _mheight(obj)     (_height(obj)-_subheight(obj))              /* valid during MUIM_Draw */
;#define _mright(obj)      (_mleft(obj)+_mwidth(obj)-1)                /* valid during MUIM_Draw */
;#define _mbottom(obj)     (_mtop(obj)+_mheight(obj)-1)                /* valid during MUIM_Draw */
;#define _font(obj)        (muiAreaData(obj)->mad_Font)                /* valid between MUIM_Setup/Cleanup */
;#define _minwidth(obj)    (muiAreaData(obj)->mad_MinMax.MinWidth)     /* valid between MUIM_Show/Hide */
;#define _minheight(obj)   (muiAreaData(obj)->mad_MinMax.MinHeight)    /* valid between MUIM_Show/Hide */
;#define _maxwidth(obj)    (muiAreaData(obj)->mad_MinMax.MaxWidth)     /* valid between MUIM_Show/Hide */
;#define _maxheight(obj)   (muiAreaData(obj)->mad_MinMax.MaxHeight)    /* valid between MUIM_Show/Hide */
;#define _defwidth(obj)    (muiAreaData(obj)->mad_MinMax.DefWidth)     /* valid between MUIM_Show/Hide */
;#define _defheight(obj)   (muiAreaData(obj)->mad_MinMax.DefHeight)    /* valid between MUIM_Show/Hide */
;#define _flags(obj)       (muiAreaData(obj)->mad_Flags)
;
;#EndIf
;
;
;
;/* MUI_CustomClass returned by MUI_CreateCustomClass() */
;
;struct MUI_CustomClass
;{
;  APTR mcc_UserData;                  /* use for whatever you want */
;
;  struct Library *mcc_UtilityBase;    /* MUI has opened these libraries */
;  struct Library *mcc_DOSBase;        /* for you automatically. You can */
;  struct Library *mcc_GfxBase;        /* use them or decide to open     */
;  struct Library *mcc_IntuitionBase;  /* your libraries yourself.       */
;
;  struct IClass *mcc_Super;           /* pointer to super class   */
;  struct IClass *mcc_Class;           /* pointer to the new class */
;
;  /* ... private Data follows ... */
;};
;
;





;/***************************************************************************
;**
;** Macro Section
;** -------------
;**
;** To make GUI creation more easy AND understandable, you can Use the
;** macros below. If you dont want, just define MUI_NOSHORTCUTS To Disable
;** them.
;**
;** These macros are available To C programmers only.
;**
;***************************************************************************/
;
;#ifndef MUI_NOSHORTCUTS
;
;
;
;/***************************************************************************
;**
;** 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_NewObject(MUIC_Menustrip
;#define MenuObject          MUI_NewObject(MUIC_Menu
;#define MenuObjectT(name)   MUI_NewObject(MUIC_Menu,MUIA_Menu_Title,name
;#define MenuitemObject      MUI_NewObject(MUIC_Menuitem
Macro WindowObject MUINewObjectA_("Window.mui",&Macro_Tags(0)) End Macro
;#define ImageObject         MUI_NewObject(MUIC_Image
Macro BitmapObject MUINewObjectA_("Bitmap.mui",&Macro_Tags(0)) End Macro
;#define BodychunkObject     MUI_NewObject(MUIC_Bodychunk
;#define NotifyObject        MUI_NewObject(MUIC_Notify
Macro ApplicationObject MUINewObjectA_("Application.mui",&Macro_Tags(0)) End Macro
Macro TextObject MUINewObjectA_("Text.mui",&Macro_Tags(0)) End Macro
Macro RectangleObject MUINewObjectA_("Rectangle.mui",&Macro_Tags(0)) End Macro
;#define BalanceObject       MUI_NewObject(MUIC_Balance
Macro ListObject MUINewObjectA_(!MUIC_List,&Macro_Tags(0)) End Macro
;#define PropObject          MUI_NewObject(MUIC_Prop
Macro StringObject MUINewObjectA_(!MUIC_String,&Macro_Tags(0)) End Macro
;#define ScrollbarObject     MUI_NewObject(MUIC_Scrollbar
Macro ListviewObject MUINewObjectA_("Listview.mui",&Macro_Tags(0)) End Macro
Macro RadioObject MUINewObjectA_(!MUIC_Radio,&Macro_Tags(0)) End Macro
;#define VolumelistObject    MUI_NewObject(MUIC_Volumelist
Macro FloattextObject MUINewObjectA_("Floattext.mui",&Macro_Tags(0)) End Macro
;#define DirlistObject       MUI_NewObject(MUIC_Dirlist
Macro CycleObject MUINewObjectA_(!MUIC_Cycle,&Macro_Tags(0)) End Macro
;#define CycleObject         MUI_NewObject(MUIC_Cycle
;#define GaugeObject         MUI_NewObject(MUIC_Gauge
;#define ScaleObject         MUI_NewObject(MUIC_Scale
;#define NumericObject       MUI_NewObject(MUIC_Numeric
;#define SliderObject        MUI_NewObject(MUIC_Slider
;#define NumericbuttonObject MUI_NewObject(MUIC_Numericbutton
;#define KnobObject          MUI_NewObject(MUIC_Knob
;#define LevelmeterObject    MUI_NewObject(MUIC_Levelmeter
;#define BoopsiObject        MUI_NewObject(MUIC_Boopsi
;#define ColorfieldObject    MUI_NewObject(MUIC_Colorfield
;#define PenadjustObject     MUI_NewObject(MUIC_Penadjust
;#define ColoradjustObject   MUI_NewObject(MUIC_Coloradjust
;#define PaletteObject       MUI_NewObject(MUIC_Palette
Macro GroupObject MUINewObjectA_("Group.mui",&Macro_Tags(0)) End Macro
Macro RegisterObject MUINewObjectA_("Register.mui",&Macro_Tags(0)) End Macro
;#define VirtgroupObject     MUI_NewObject(MUIC_Virtgroup
;#define ScrollgroupObject   MUI_NewObject(MUIC_Scrollgroup
;#define PopstringObject     MUI_NewObject(MUIC_Popstring
;#define PopobjectObject     MUI_NewObject(MUIC_Popobject
Macro PoplistObject MUINewObjectA_(!MUIC_Poplist,&Macro_Tags(0)) End Macro
;#define PopaslObject        MUI_NewObject(MUIC_Popasl
;#define PendisplayObject    MUI_NewObject(MUIC_Pendisplay
;#define PoppenObject        MUI_NewObject(MUIC_Poppen
;#define AboutmuiObject      MUI_NewObject(MUIC_Aboutmui
;#define ScrmodelistObject   MUI_NewObject(MUIC_Scrmodelist
;#define KeyentryObject      MUI_NewObject(MUIC_Keyentry
Macro VGroup MUINewObjectA_(!MUIC_Group,&Macro_Tags(0)) End Macro

  Function.l HGroup{}
    SHARED  Macro_Tags.l(),mactag.l
    mactag=Max(mactag-1,0)
    !AddTags{#MUIA_Group_Horiz,#MUI_TRUE,#TAG_DONE}
    a.l=MUINewObjectA_(!MUIC_Group,&Macro_Tags(0))
    Function Return a
  End Function
Macro HGroup HGroup{} End Macro

  Function.l  ColGroup{cols.l}
    SHARED  Macro_Tags.l(),mactag.l
    mactag=Max(mactag-1,0)
    !AddTags{#MUIA_Group_Columns,cols,#TAG_DONE}
    a.l=MUINewObjectA_(!MUIC_Group,&Macro_Tags(0))
    Function Return a
  End Function
Macro ColGroup ColGroup{`1} End Macro
;#define ColGroup(cols)      MUI_NewObject(MUIC_Group,MUIA_Group_Columns,(cols)

;#define RowGroup(rows)      MUI_NewObject(MUIC_Group,MUIA_Group_Rows   ,(rows)

  Function.l  PageGroup{}
    SHARED Macro_Tags.l(),mactag.l
    mactag=Max(mactag-1,0)
    !AddTags{#MUIA_Group_PageMode,#MUI_TRUE,#TAG_DONE}
    a.l=MUINewObjectA_(!MUIC_Group,&Macro_Tags(0))
    Function Return a
  End Function
Macro PageGroup PageGroup{} End Macro
;#define PageGroup           MUI_NewObject(MUIC_Group,MUIA_Group_PageMode,True

;#define VGroupV             MUI_NewObject(MUIC_Virtgroup
;#define HGroupV             MUI_NewObject(MUIC_Virtgroup,MUIA_Group_Horiz,True
;#define ColGroupV(cols)     MUI_NewObject(MUIC_Virtgroup,MUIA_Group_Columns,(cols)
;#define RowGroupV(rows)     MUI_NewObject(MUIC_Virtgroup,MUIA_Group_Rows   ,(rows)
;#define PageGroupV          MUI_NewObject(MUIC_Virtgroup,MUIA_Group_PageMode,True

  Function.l  RegisterGroup{t.l}
    SHARED  Macro_Tags.l(),mactag.l
    mactag=Max(mactag-1,0)
    !AddTags{#MUIA_Register_Titles,t,#TAG_DONE}
    a.l=MUINewObjectA_(!MUIC_Register,&Macro_Tags(0))
    Function Return a
  End Function
Macro RegisterGroup RegisterGroup{`1} End Macro
;#define RegisterGroup(t)    MUI_NewObject(MUIC_Register,MUIA_Register_Titles,(t)

;#define End                 TAG_DONE)
;
Macro Child #MUIA_Group_Child End Macro
Macro SubWindow #MUIA_Application_Window End Macro
Macro WindowContents #MUIA_Window_RootObject End Macro
;
;
;
;/***************************************************************************
;**
;** 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, MUIA_Background, MUII_GroupBack
Macro GroupFrameT
  !AddTags{#MUIA_Frame        ,#MUIV_Frame_Group}
  !AddTags{#MUIA_FrameTitle   ,'1}
  !AddTags{#MUIA_Background   ,#MUII_GroupBack}
End Macro
;
;
;/***************************************************************************
;**
;** Spacing Macros
;** --------------
;**
;***************************************************************************/
;
Macro GroupSpacing !AddTags{#MUIA_Group_Spacing,`1} End Macro
Macro HVSpace MUINewObjectA_(!MUIC_Rectangle,#TAG_DONE) End Macro

Macro HSpace HSpace{`1} End Macro

Function.l  HSpace{a.l}
  Function Return MUIMakeObjectA_(#MUIO_HSpace,&a)
End Function

Macro VSpace VSpace{`1} End Macro

Function.l  VSpace{a.l}
  Function Return MUIMakeObjectA_(#MUIO_VSpace,&a)
End Function

Macro HCenter HCenter{`1} End Macro

Function.l  HCenter{*obj._Object}
  SHARED Macro_Tags.l(),mactag.l
  mactag=0
  !GroupSpacing{0}
  !AddTags{!Child   ,!HSpace{0}}
  !AddTags{!Child   ,*obj}
  !AddTags{!Child   ,!HSpace{0}}
  !AddTags{#TAG_DONE}
  a.l=!HGroup
  Function Return a
End Function

Macro VCenter VCenter{`1} End Macro

Function.l  VCenter{*obj._Object}
  SHARED Macro_Tags.l(),mactag.l
  mactag=0
  !GroupSpacing{0}
  !AddTags{!Child   ,!VSpace{0}}
  !AddTags{!Child   ,*obj}
  !AddTags{!Child   ,!VSpace{0}}
  !AddTags{#TAG_DONE}
  a.l=!VGroup
  Function Return a
End Function

;#define InnerSpacing(h,v) MUIA_InnerLeft,(h),MUIA_InnerRight,(h),MUIA_InnerTop,(v),MUIA_InnerBottom,(v)
;
;
;
;#ifdef MUI_OBSOLETE
;
;/***************************************************************************
;**
;** String-Object
;** -------------
;**
;** The following Macro creates a simple string gadget.
;**
;***************************************************************************/
;
Macro String String{`1,`2} End Macro
  Function.l String{label$,size.l}
    Dim tags.l(8)
    tags(0)=#MUIA_Frame           : tags(1)=#MUIV_Frame_String
    tags(2)=#MUIA_String_MaxLen   : tags(3)=size
    tags(4)=#MUIA_String_Contents : tags(5)=&label$
    tags(6)=#TAG_DONE
    Function Return MUINewObjectA_(!MUIC_String,&tags(0))
  End Function
;#define String(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
;
;#EndIf
;
;
;
;#ifdef MUI_OBSOLETE
;
;/***************************************************************************
;**
;** CheckMark-Object
;** ----------------
;**
;** The following Macro creates a checkmark gadget.
;**
;***************************************************************************/
;
Macro CheckMark CheckMark{`1} End Macro

Function.l  CheckMark{a.l}
  Function Return MUIMakeObjectA_(#MUIO_Checkmark,&a)
End Function

;#define CheckMark(selected)\
;  ImageObject,\
;    ImageButtonFrame,\
;    MUIA_InputMode        , MUIV_InputMode_Toggle,\
;    MUIA_Image_Spec       , MUII_CheckMark,\
;    MUIA_Image_FreeVert   , 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   , True,\
;    MUIA_Selected         , selected,\
;    MUIA_Background       , MUII_ButtonBack,\
;    MUIA_ShowSelState     , False,\
;    MUIA_ControlChar      , control,\
;    End
;
;#EndIf
;
;
;/***************************************************************************
;**
;** Button-Objects
;** --------------
;**
;** Note: Use small letters For KeyButtons, e.g.
;**       KeyButton("Cancel",'c')  AND NOT  KeyButton("Cancel",'C') !!
;**
;***************************************************************************/
;
Macro SimpleButton SimpleButton{`1} End Macro

Function.l  SimpleButton{a.l}
  Function Return MUIMakeObjectA_(#MUIO_Button,&a)
End Function

;
;#ifdef MUI_OBSOLETE
;
;#define KeyButton(name,key)\
;  TextObject,\
;    ButtonFrame,\
;    MUIA_Text_Contents, name,\
;    MUIA_Text_PreParse, "\33c",\
;    MUIA_Text_HiChar  , key,\
;    MUIA_ControlChar  , key,\
;    MUIA_InputMode    , MUIV_InputMode_RelVerify,\
;    MUIA_Background   , MUII_ButtonBack,\
;    End
;
;#EndIf
;
;
;#ifdef MUI_OBSOLETE
;
;/***************************************************************************
;**
;** 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_Numeric_Min  , Min,\
;    MUIA_Numeric_Max  , Max,\
;    MUIA_Numeric_Value, level,\
;    End
;
;#define KeySlider(Min,Max,level,key)\
;  SliderObject,\
;    MUIA_Numeric_Min  , Min,\
;    MUIA_Numeric_Max  , Max,\
;    MUIA_Numeric_Value, level,\
;    MUIA_ControlChar , key,\
;    End
;
;#EndIf
;
;
;
;/***************************************************************************
;**
;** Button To be Used For popup objects
;**
;***************************************************************************/
;
;#define PopButton(img) MUI_MakeObject(MUIO_PopButton,img)
Macro PopButton PopButton{`1} End Macro
  Function.l  PopButton{img.l}
    Function Return MUIMakeObjectA_(#MUIO_PopButton,&img)
  End Function
;
;
;
;/***************************************************************************
;**
;** 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.
;**
;***************************************************************************/
;
;

Macro Label Label{`1} End Macro
  Function.l Label{label$}
    Dim tags.l(2)
    tags(0)=&label$
    Function Return MUIMakeObjectA_(#MUIO_Label,&tags(0))
  End Function

Macro Label1 Label1{`1} End Macro
  Function.l Label1{label$}
    Dim tags.l(2)
    tags(0)=&label$
    tags(1)=#MUIO_Label_SingleFrame
    Function Return MUIMakeObjectA_(#MUIO_Label,&tags(0))
  End Function

Macro Label2 Label2{`1} End Macro
  Function.l Label2{label$}
    Dim tags.l(2)
    tags(0)=&label$
    tags(1)=#MUIO_Label_DoubleFrame
    Function Return MUIMakeObjectA_(#MUIO_Label,&tags(0))
  End Function

;#define LLabel(label)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_LeftAligned)

Macro LLabel1 LLabel1{`1} End Macro
  Function.l LLabel1{label$}
    Dim tags.l(8)
    tags(0)=&label$
    tags(1)=#MUIO_Label_LeftAligned|#MUIO_Label_SingleFrame
    Function Return MUIMakeObjectA_(#MUIO_Label,&tags(0))
  End Function

;#define LLabel2(label) MUI_MakeObject(MUIO_Label,label,MUIO_Label_LeftAligned|MUIO_Label_DoubleFrame)
;#define CLabel(label)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_Centered)
;#define CLabel1(label) MUI_MakeObject(MUIO_Label,label,MUIO_Label_Centered|MUIO_Label_SingleFrame)
;#define CLabel2(label) MUI_MakeObject(MUIO_Label,label,MUIO_Label_Centered|MUIO_Label_DoubleFrame)
;
;#define FreeLabel(label)   MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert)
;#define FreeLabel1(label)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_SingleFrame)
;#define FreeLabel2(label)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_DoubleFrame)
;#define FreeLLabel(label)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned)
;#define FreeLLabel1(label) MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned|MUIO_Label_SingleFrame)
;#define FreeLLabel2(label) MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned|MUIO_Label_DoubleFrame)
;#define FreeCLabel(label)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_Centered)
;#define FreeCLabel1(label) MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_Centered|MUIO_Label_SingleFrame)
;#define FreeCLabel2(label) MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_Centered|MUIO_Label_DoubleFrame)
;
;#define KeyLabel(label,key)   MUI_MakeObject(MUIO_Label,label,key)
;#define KeyLabel1(label,key)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_SingleFrame|(key))
;#define KeyLabel2(label,key)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_DoubleFrame|(key))
;#define KeyLLabel(label,key)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_LeftAligned|(key))
;#define KeyLLabel1(label,key) MUI_MakeObject(MUIO_Label,label,MUIO_Label_LeftAligned|MUIO_Label_SingleFrame|(key))
;#define KeyLLabel2(label,key) MUI_MakeObject(MUIO_Label,label,MUIO_Label_LeftAligned|MUIO_Label_DoubleFrame|(key))
;#define KeyCLabel(label,key)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_Centered|(key))
;#define KeyCLabel1(label,key) MUI_MakeObject(MUIO_Label,label,MUIO_Label_Centered|MUIO_Label_SingleFrame|(key))
;#define KeyCLabel2(label,key) MUI_MakeObject(MUIO_Label,label,MUIO_Label_Centered|MUIO_Label_DoubleFrame|(key))
;
;#define FreeKeyLabel(label,key)   MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|(key))
;#define FreeKeyLabel1(label,key)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_SingleFrame|(key))
;#define FreeKeyLabel2(label,key)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_DoubleFrame|(key))
;#define FreeKeyLLabel(label,key)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned|(key))
;#define FreeKeyLLabel1(label,key) MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned|MUIO_Label_SingleF
;e|(key))
;#define FreeKeyLLabel2(label,key) MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_LeftAligned|MUIO_Label_DoubleF
;e|(key))
;#define FreeKeyCLabel(label,key)  MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_Centered|(key))
;#define FreeKeyCLabel1(label,key) MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_Centered|MUIO_Label_SingleFram
;key))
;#define FreeKeyCLabel2(label,key) MUI_MakeObject(MUIO_Label,label,MUIO_Label_FreeVert|MUIO_Label_Centered|MUIO_Label_DoubleFram
;key))
;
;
;




;
;
;#EndIf /* MUI_H */
