;**************************************************************************
;**
;** MUI - MagicUserInterface
;** (c) 1993-1997 Stefan Stuntz
;**
;** Main Header File
;**
;** /Blitz Basic 2  Interface by Erwan Fouret
;** /Added comments marked with a "/"
;** /IMPORTANT : you must make amigalibs.res resident
;**
;****************************************************************************
;** 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
;**
;** Macro 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_MakeObjectA_()
;**
;** #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 SetAttrsA_().
;** G: it's possible to get this attribute with GetAttrA_().
;**
;** Items marked with "Custom Class" are for use in custom classes only!

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

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

;** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
;** 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.
;** !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

; comment this if you dont want to include obsolete identifiers
;/ In the BB2 interface, put #MUI_OBSOLETE to 0

#MUI_OBSOLETE=1

;************************************************************************
;** 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.

Macro PSD_INITIAL_NAME "(unnamed)" : End Macro
Macro PSD_INITIAL_TITLE "MUI Public Screen" : End Macro
#PSD_ID_MPUB    =  $4D505542  ;'MPUB'

Macro PSD_NAME_FRONTMOST Chr$(171)+"Frontmost"+Chr$(187) : End Macro

Macro PSD_FILENAME_SAVE "envarc:mui/PublicScreens.iff" : End Macro
Macro PSD_FILENAME_USE "env:mui/PublicScreens.iff" : End Macro

#PSD_MAXLEN_NAME       =  32
#PSD_MAXLEN_TITLE      = 128
#PSD_MAXLEN_FONT       =  48
#PSD_MAXLEN_BACKGROUND = 256
#PSD_NUMCOLS           =   8
#PSD_MAXSYSPENS        =  20
#PSD_NUMSYSPENS        =  12
#PSD_MAXMUIPENS        =  10
#PSD_NUMMUIPENS        =   8  ;=#MPEN_COUNT

NEWTYPE.MUI_RGBcolor
        _red.l   ;/Normally red (no _)
        _green.l ;/Normally green (no _)
        _blue.l  ;/Normally blue (no _)
End NEWTYPE

NEWTYPE.MUI_PubScreenDesc
        Version.l

        Name.b[#PSD_MAXLEN_NAME]
        Title.b[#PSD_MAXLEN_TITLE]
        Font.b[#PSD_MAXLEN_FONT]
        Background.b[#PSD_MAXLEN_BACKGROUND]

        DisplayID.l

        DisplayWidth.w
        DisplayHeight.w

        DisplayDepth.b
        OverscanType.b
        AutoScroll.b
        NoDrag.b
        Exclusive.b
        Interleaved.b
        SysDefault.b
        Behind.b
        AutoClose.b
        CloseGadget.b
        DummyWasForeign.b

        SystemPens.b[#PSD_MAXSYSPENS]
        Reserved.b[1+7*4-#PSD_MAXSYSPENS]

        _Palette.MUI_RGBcolor[#PSD_NUMCOLS]       ;/Normally Palette (no _)
        rsvd.MUI_RGBcolor[#PSD_MAXSYSPENS-#PSD_NUMCOLS]

        rsvd2.MUI_PenSpec[#PSD_MAXMUIPENS]

        Changed.l
        *UserData.b
End NEWTYPE

NEWTYPE.MUIS_InfoClient
        node.MinNode
        *task.b     ;/Normally .Task (Task structure from exec/tasks.h)
        sigbit.l
End NEWTYPE


;**************************************************************************
;** 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  = (1 LSL 30)

#MUIO_Label_SingleFrame    = (1 LSL  8)
#MUIO_Label_DoubleFrame    = (1 LSL  9)
#MUIO_Label_LeftAligned    = (1 LSL 10)
#MUIO_Label_Centered       = (1 LSL 11)
#MUIO_Label_FreeVert       = (1 LSL 12)

#MUIO_MenustripNM_CommandKeyCheck  = (1 LSL 0) ; 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.b   ;/Normally .Hook (Hook structure from utility/hook.h)
        mc_Reserved.l[5]
End NEWTYPE

#MC_TEMPLATE_ID = -1

#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

#MUIV_Application_Save_ENV    =  0
#MUIV_Application_Save_ENVARC = -1
#MUIV_Application_Load_ENV    =  0
#MUIV_Application_Load_ENVARC = -1

#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
;**************************************************************************

#MUIX_R = $00589C24  ;"\033r"    ; right justified
#MUIX_C = $00589C34  ;"\033c"    ; centered
#MUIX_L = $00589C44  ;"\033l"    ; left justified

#MUIX_N = $00589C54  ;"\033n"    ; normal
#MUIX_B = $00589C64  ;"\033b"    ; bold
#MUIX_I = $00589C74  ;"\033i"    ; italic
#MUIX_U = $00589C84  ;"\033u"    ; underlined

#MUIX_PT = $00589C94  ;"\0332"   ; text pen
#MUIX_PH = $00589CA5   ;"\0338"   ; 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.MUI_InputHandlerNode
        ihn_Node.MinNode
        *ihn_Object.b ;/Normally .Object
        ihn_Signals.l ;/Normally this is ihn_stuff.ihn_sigs
        ihn_Flags.l
        ihn_Method.l
End NEWTYPE

NEWTYPE.MUI_InputHandlerNode_Timer
        ihn_Node.MinNode
        *ihn_Object.b ;/Normally .Object
        ihn_Millis.w  ;/Normally this is ihn_stuff.ihn_timer.ihn_millis
        ihn_Current.w ;/Normally this is ihn_stuff.ihn_timer.ihn_current
        ihn_Flags.l ; see below
        ihn_Method.l
End NEWTYPE

; Flags for ihn_Flags
#MUIIHNF_TIMER  = (1 LSL 0) ; 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.b   ; object which should receive MUIM_HandleEvent.
        ;/          ^ Normally .Object
        *ehn_Class.b    ; if !=NULL, MUIM_HandleEvent is invoked on exactly this class with CoerceMethod().
        ;/         ^ Normally.IClass
        ehn_Events.l   ; one or more IDCMP flags this handler should react on.
End NEWTYPE

; flags for ehn_Flags
#MUI_EHF_ALWAYSKEYS  = (1 LSL 0)

; other values reserved for future use

; return values for MUIM_HandleEvent (bit-masked, all other bits must be 0)
#MUI_EventHandlerRC_Eat  = (1 LSL 0) ; 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   = (1 LSL 0)
#MUI_LPR_BELOW   = (1 LSL 1)
#MUI_LPR_LEFT    = (1 LSL 2)
#MUI_LPR_RIGHT   = (1 LSL 3)


;**************************************************************************
;**
;** 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.
;** /Set MUI_SHORTCUTS to 0 to not to have shortcuts
;**
;** These macros are available to C programmers only.
;** /For Blitz2, you have to use tags with them (see the doc)
;**
;**************************************************************************

#MUI_SHORTCUTS=1

CNIF #MUI_SHORTCUTS=1


;**************************************************************************
;**
;** 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;
;**
;** /xxxObject macros removed in Blitz interface
;**************************************************************************

;/These macros are for special object creation
;/Use them with tags

Macro MenuObjectT         #MUIA_Menu_Title,&`1       : End Macro
Macro HGroup              #MUIA_Group_Horiz,1        : End Macro
Macro ColGroup            #MUIA_Group_Columns,(`1)   : End Macro
Macro RowGroup            #MUIA_Group_Rows   ,(`1)   : End Macro
Macro PageGroup           #MUIA_Group_PageMode,1     : End Macro
Macro HGroupV             #MUIA_Group_Horiz,1        : End Macro
Macro ColGroupV           #MUIA_Group_Columns,(`1)   : End Macro
Macro RowGroupV           #MUIA_Group_Rows   ,(`1)   : End Macro
Macro PageGroupV          #MUIA_Group_PageMode,1     : End Macro
Macro RegisterGroup       #MUIA_Register_Titles,(`1) : End Macro
Macro _End                0                          : End Macro
; /   ^ Normally End (no _)

#Child           = $804226e6      ;=#MUIA_Group_Child
#SubWindow       = $8042bfe0      ;=#MUIA_Application_Window
#WindowContents  = $8042cba5      ;=#MUIA_Window_RootObject



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

Macro NoFrame          #MUIA_Frame, #MUIV_Frame_None        : End Macro
Macro ButtonFrame      #MUIA_Frame, #MUIV_Frame_Button      : End Macro
Macro ImageButtonFrame #MUIA_Frame, #MUIV_Frame_ImageButton : End Macro
Macro TextFrame        #MUIA_Frame, #MUIV_Frame_Text        : End Macro
Macro StringFrame      #MUIA_Frame, #MUIV_Frame_String      : End Macro
Macro ReadListFrame    #MUIA_Frame, #MUIV_Frame_ReadList    : End Macro
Macro InputListFrame   #MUIA_Frame, #MUIV_Frame_InputList   : End Macro
Macro PropFrame        #MUIA_Frame, #MUIV_Frame_Prop        : End Macro
Macro SliderFrame      #MUIA_Frame, #MUIV_Frame_Slider      : End Macro
Macro GaugeFrame       #MUIA_Frame, #MUIV_Frame_Gauge       : End Macro
Macro VirtualFrame     #MUIA_Frame, #MUIV_Frame_Virtual     : End Macro
Macro GroupFrame       #MUIA_Frame, #MUIV_Frame_Group       : End Macro
Macro GroupFrameT      #MUIA_Frame, #MUIV_Frame_Group, #MUIA_FrameTitle, &`1, #MUIA_Background, #MUII_GroupBack : End Macro



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

Macro HVSpace               MUI_NewObjectA_("Rectangle.mui",0): End Macro
Macro HSpace                MUI_MakeObjectA_(#MUIO_HSpace,`1) : End Macro
Macro VSpace                MUI_MakeObjectA_(#MUIO_VSpace,`1) : End Macro
;/The macros HCenter and VCenter have been removed in BB2 interface
;/Please see the doc for more details
Macro InnerSpacing #MUIA_InnerLeft,(`1),#MUIA_InnerRight,(`2),#MUIA_InnerTop,(`2),#MUIA_InnerBottom,(`2) : End Macro
Macro GroupSpacing #MUIA_Group_Spacing,`1 : End Macro



CNIF #MUI_OBSOLETE=1

;**************************************************************************
;**
;** String-Object
;** -------------
;**
;** The following macro creates a simple string gadget.
;**
;**************************************************************************
;/Macros removed in BB2 interface (see the doc)

CEND



CNIF #MUI_OBSOLETE=1

;**************************************************************************
;**
;** CheckMark-Object
;** ----------------
;**
;** The following macro creates a checkmark gadget.
;**
;**************************************************************************
;/Macros removed in BB2 interface (see the doc)

CEND


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

Macro SimpleButton MUI_MakeObjectA_(#MUIO_Button,&`1) : End Macro

CNIF #MUI_OBSOLETE=1

;/Macros removed in BB2 interface (see the doc)

CEND

CNIF #MUI_OBSOLETE=1

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

;/Macros removed in BB2 interface (see the doc)

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

;/Macros removed in BB2 interface (see the doc)

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

;/Macros removed in BB2 interface (see the doc)

CEND



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

Macro PopButton MUI_MakeObjectA_(#MUIO_PopButton,`1) : End Macro



;**************************************************************************
;**
;** 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.
;**
;**************************************************************************

;/Macros removed in BB2 interface (see the doc)

;**************************************************************************
;**
;** 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.
;**
;**************************************************************************

;/Macros removed in BB2 interface (see the doc)

CEND ; MUI_SHORTCUTS


;**************************************************************************
;**
;** 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.b       ; obsolete, use mbq_RenderInfo
;/Normally .Screen  ^
        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

#MBQF_HORIZ  = (1 LSL 0)           ; 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                                                                 *
;**************************************************************************

Macro MUIC_Notify "Notify.mui" : End Macro

; 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.b: param1.l : End NEWTYPE
;/Normally .Hook (utility/hooks.h)     ^
NEWTYPE.MUIP_Export MethodID.l: *dataspace.b : End NEWTYPE
;/Normally .Object                        ^
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.b : End NEWTYPE
;/Normally .Object                       ^
NEWTYPE.MUIP_KillNotify MethodID.l:TrigAttr.l : End NEWTYPE
NEWTYPE.MUIP_KillNotifyObj MethodID.l:TrigAttr.l:*dest.b : End NEWTYPE
;/Normally .Object                                    ^
NEWTYPE.MUIP_MultiSet MethodID.l:attr.l:_val.l:*obj.b : End NEWTYPE
;/Normally val (no _)                   ^
NEWTYPE.MUIP_NoNotifySet MethodID.l: attr.l:*_format.b:_val.l : End NEWTYPE
;/Normally val and format (no _)             ^         ^
NEWTYPE.MUIP_Notify MethodID.l: TrigAttr.l:TrigVal.l:*DestObj.b:FollowParams.l:End NEWTYPE
NEWTYPE.MUIP_Set MethodID.l:attr.l:_val.l : End NEWTYPE
;/Normally val (no _)              ^
NEWTYPE.MUIP_SetAsString MethodID.l:attr.l:*_format.b:_val.l:End NEWTYPE
;/Normally format and val (no _)            ^         ^
NEWTYPE.MUIP_SetUData MethodID.l: udata.l:attr.l:_val.l : End NEWTYPE
;/Normally val (no _)                            ^
NEWTYPE.MUIP_SetUDataOnce MethodID.l:udata.l:attr.l:_val.l : End NEWTYPE
;/Normally val (no _)                               ^
NEWTYPE.MUIP_WriteLong MethodID.l:_val.l:*memory.l : End NEWTYPE
;/Normally val (no _)             ^
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                                                                 *
;**************************************************************************

Macro MUIC_Family "Family.mui" : End Macro : End Macro

; 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.b : End NEWTYPE
;/Normally .Object                                 ^
NEWTYPE.MUIP_Family_AddTail        MethodID.l: *obj.b : End NEWTYPE
;/Normally .Object                                 ^
NEWTYPE.MUIP_Family_Insert         MethodID.l: *obj.b : *pred.b : End NEWTYPE
;/Normally .Object                                 ^         ^
NEWTYPE.MUIP_Family_Remove         MethodID.l: *obj.b : End NEWTYPE
;/Normally .Object                                 ^
NEWTYPE.MUIP_Family_Sort           MethodID.l: *obj.b[1] : End NEWTYPE
;/Normally .Object                                 ^
NEWTYPE.MUIP_Family_Transfer       MethodID.l: *family.b : End NEWTYPE
;/Normally .Object                                    ^

; Attributes

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



;**************************************************************************
;* Menustrip                                                              *
;**************************************************************************

Macro MUIC_Menustrip "Menustrip.mui" : End Macro

; Methods


; Attributes

#MUIA_Menustrip_Enabled               = $8042815b ; V8  isg BOOL



;**************************************************************************
;* Menu                                                                   *
;**************************************************************************

Macro MUIC_Menu "Menu.mui" : End Macro

; Methods


; Attributes

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



;**************************************************************************
;* Menuitem                                                               *
;**************************************************************************

Macro MUIC_Menuitem "Menuitem.mui" : End Macro

; 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                                                            *
;**************************************************************************

Macro MUIC_Application "Application.mui" : End Macro

; Methods

#MUIM_Application_AboutMUI            = $8042d21d ; V14
#MUIM_Application_AddInputHandler     = $8042f099 ; V11
#MUIM_Application_CheckRefresh        = $80424d68 ; V11
CNIF #MUI_OBSOLETE=1
#MUIM_Application_GetMenuCheck        = $8042c0a7 ; V4
CEND ; MUI_OBSOLETE
CNIF #MUI_OBSOLETE=1
#MUIM_Application_GetMenuState        = $8042a58f ; V4
CEND ; MUI_OBSOLETE
CNIF #MUI_OBSOLETE=1
#MUIM_Application_Input               = $8042d0f5 ; V4
CEND ; 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
CNIF #MUI_OBSOLETE=1
#MUIM_Application_SetMenuCheck        = $8042a707 ; V4
CEND ; MUI_OBSOLETE
CNIF #MUI_OBSOLETE=1
#MUIM_Application_SetMenuState        = $80428bef ; V4
CEND ; MUI_OBSOLETE
#MUIM_Application_ShowHelp            = $80426479 ; V4
NEWTYPE.MUIP_Application_AboutMUI  MethodID.l: *refwindow.b : End NEWTYPE
;/Normally .Object                                       ^
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.b:count.l : End NEWTYPE
;/Normally .Object                                          ^
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.b: : End NEWTYPE
;/Normally data (no _)                                          ^
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.b:*name.b:*node.b:_line.l: End NEWTYPE
;/Normally .Object                                    ^
;/Normally window and line (no _)              ^                         ^

; 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
CNIF #MUI_OBSOLETE=1
#MUIA_Application_Menu                = $80420e1f ; V4  i.g struct NewMenu *
CEND ; 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 *

#MUIV_Application_Package_NetConnect  = $a3ff7b49


;**************************************************************************
;* Window                                                                 *
;**************************************************************************

Macro MUIC_Window "Window.mui" : End Macro

; Methods

#MUIM_Window_AddEventHandler          = $804203b7 ; V16
CNIF #MUI_OBSOLETE=1
#MUIM_Window_GetMenuCheck             = $80420414 ; V4
CEND ; MUI_OBSOLETE
CNIF #MUI_OBSOLETE=1
#MUIM_Window_GetMenuState             = $80420d2f ; V4
CEND ; MUI_OBSOLETE
#MUIM_Window_RemEventHandler          = $8042679e ; V16
#MUIM_Window_ScreenToBack             = $8042913d ; V4
#MUIM_Window_ScreenToFront            = $804227a4 ; V4
CNIF #MUI_OBSOLETE=1
#MUIM_Window_SetCycleChain            = $80426510 ; V4
CEND ; MUI_OBSOLETE
CNIF #MUI_OBSOLETE=1
#MUIM_Window_SetMenuCheck             = $80422243 ; V4
CEND ; MUI_OBSOLETE
CNIF #MUI_OBSOLETE=1
#MUIM_Window_SetMenuState             = $80422b5e ; V4
CEND ; MUI_OBSOLETE
#MUIM_Window_Snapshot                 = $8042945e ; V11
#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.b[1] : End NEWTYPE
;/Normally .Object                                 ^
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_Snapshot       MethodID.l: flags.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
CNIF #MUI_OBSOLETE=1
#MUIA_Window_Menu                     = $8042db94 ; V4  i.. struct NewMenu *
CEND ; 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 isg BOOL
#MUIA_Window_UseLeftBorderScroller    = $8042433e ; V13 isg BOOL
#MUIA_Window_UseRightBorderScroller   = $8042c05e ; V13 isg 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
Macro MUIV_Window_AltHeight_MinMax (0-(`1)) : End Macro
Macro MUIV_Window_AltHeight_Visible (-100-(`1)) : End Macro
Macro MUIV_Window_AltHeight_Screen (-200-(`1)) : End Macro
#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
Macro MUIV_Window_AltTopEdge_Delta (-3-(`1)) : End Macro
#MUIV_Window_AltTopEdge_NoChange = -1000
Macro MUIV_Window_AltWidth_MinMax (0-(`1)) : End Macro
Macro MUIV_Window_AltWidth_Visible (-100-(`1)) : End Macro
Macro MUIV_Window_AltWidth_Screen (-200-(`1)) : End Macro
#MUIV_Window_AltWidth_Scaled = -1000
Macro MUIV_Window_Height_MinMax (0-(`1)) : End Macro
Macro MUIV_Window_Height_Visible (-100-(`1)) : End Macro
Macro MUIV_Window_Height_Screen (-200-(`1)) : End Macro
#MUIV_Window_Height_Scaled =-1000
#MUIV_Window_Height_Default= -1001
#MUIV_Window_LeftEdge_Centered =-1
#MUIV_Window_LeftEdge_Moused =-2
CNIF #MUI_OBSOLETE=1
#MUIV_Window_Menu_NoMenu =-1
CEND ; MUI_OBSOLETE
#MUIV_Window_TopEdge_Centered= -1
#MUIV_Window_TopEdge_Moused =-2
Macro MUIV_Window_TopEdge_Delta (-3-(`1)) : End Macro
Macro MUIV_Window_Width_MinMax (0-(`1)) : End Macro
Macro MUIV_Window_Width_Visible (-100-(`1)) : End Macro
Macro MUIV_Window_Width_Screen (-200-(`1)) : End Macro
#MUIV_Window_Width_Scaled =-1000
#MUIV_Window_Width_Default= -1001


;**************************************************************************
;* Aboutmui                                                               *
;**************************************************************************

Macro MUIC_Aboutmui "Aboutmui.mui" : End Macro

; Methods


; Attributes

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



;**************************************************************************
;* Area                                                                   *
;**************************************************************************

Macro MUIC_Area "Area.mui" : End Macro

; Methods

#MUIM_AskMinMax                       = $80423874 ; Custom Class  ; V4
#MUIM_Cleanup                         = $8042d985 ; Custom Class  ; V4
#MUIM_ContextMenuBuild                = $80429d2e ; V11
#MUIM_ContextMenuChoice               = $80420f0e ; V11
#MUIM_CreateBubble                    = $80421c41 ; V18
#MUIM_CreateShortHelp                 = $80428e93 ; V11
#MUIM_DeleteBubble                    = $804211af ; V18
#MUIM_DeleteShortHelp                 = $8042d35a ; 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.b : End NEWTYPE
;/Normally .Object                                  ^
NEWTYPE.MUIP_CreateBubble          MethodID.l:x.l:y.l:*txt.b: flags.l : End NEWTYPE
NEWTYPE.MUIP_CreateShortHelp       MethodID.l: mx.l: my.l : End NEWTYPE
NEWTYPE.MUIP_DeleteBubble          MethodID.l: *bubble.b : End NEWTYPE
NEWTYPE.MUIP_DeleteShortHelp       MethodID.l: *help.b : End NEWTYPE
NEWTYPE.MUIP_DragBegin             MethodID.l: *obj.b : End NEWTYPE
;/Normally .Object                                 ^
NEWTYPE.MUIP_DragDrop              MethodID.l: *obj.b:x.l:y.l : End NEWTYPE
;/Normally .Object                                 ^
NEWTYPE.MUIP_DragFinish            MethodID.l: *obj.b : End NEWTYPE
;/Normally .Object                                 ^
NEWTYPE.MUIP_DragQuery             MethodID.l: *obj.b : End NEWTYPE
;/Normally .Object                                 ^
NEWTYPE.MUIP_DragReport            MethodID.l: *obj.b:x.l:y.l:update.l : End NEWTYPE
;/Normally .Object                                 ^
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:yoffset.l:flags.l : End NEWTYPE
NEWTYPE.MUIP_HandleEvent           MethodID.l:*imsg.b:muikey.l : End NEWTYPE ; Custom Clas
;/Normally .IntuiMessage                           ^
NEWTYPE.MUIP_HandleInput           MethodID.l:*imsg.b:muikey.l : End NEWTYPE ; Custom Clas
;/Normally .IntuiMessage                           ^
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
CNIF #MUI_OBSOLETE=1
#MUIA_ExportID                        = $8042d76e ; V4  isg ULONG
CEND ; 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                                                              *
;**************************************************************************

Macro MUIC_Rectangle "Rectangle.mui" : End Macro

; 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                                                                *
;**************************************************************************

Macro MUIC_Balance "Balance.mui" : End Macro


;**************************************************************************
;* Image                                                                  *
;**************************************************************************

Macro MUIC_Image "Image.mui" : End Macro

; 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                                                                 *
;**************************************************************************

Macro MUIC_Bitmap "Bitmap.mui" : End Macro

; 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                                                              *
;**************************************************************************

Macro MUIC_Bodychunk "Bodychunk.mui" : End Macro

; 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                                                                   *
;**************************************************************************

Macro MUIC_Text "Text.mui" : End Macro

; 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                                                                 *
;**************************************************************************

Macro MUIC_Gadget "Gadget.mui" : End Macro

; Attributes

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



;**************************************************************************
;* String                                                                 *
;**************************************************************************

Macro MUIC_String "String.mui" : End Macro

; 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  isg 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                                                                 *
;**************************************************************************

Macro MUIC_Boopsi "Boopsi.mui" : End Macro

; 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                                                                   *
;**************************************************************************

Macro MUIC_Prop "Prop.mui" : End Macro

; 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                                                                  *
;**************************************************************************

Macro MUIC_Gauge "Gauge.mui" : End Macro

; 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                                                                  *
;**************************************************************************

Macro MUIC_Scale "Scale.mui" : End Macro

; Attributes

#MUIA_Scale_Horiz                     = $8042919a ; V4  isg BOOL



;**************************************************************************
;* Colorfield                                                             *
;**************************************************************************

Macro MUIC_Colorfield "Colorfield.mui" : End Macro

; 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                                                                   *
;**************************************************************************

Macro MUIC_List "List.mui" : End Macro

; 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.b:flags.l : End NEWTYPE
;/Normally .Object                                 ^
NEWTYPE.MUIP_List_DeleteImage      MethodID.l:*listimg.b : End NEWTYPE
NEWTYPE.MUIP_List_Exchange         MethodID.l:pos1.l:pos2.l : End NEWTYPE
NEWTYPE.MUIP_List_GetEntry         MethodID.l:pos.l:*entry.b : End NEWTYPE
NEWTYPE.MUIP_List_Insert           MethodID.l:*_entries.b:count.l:pos.l : End NEWTYPE
NEWTYPE.MUIP_List_InsertSingle     MethodID.l:*entry.b: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
;/Normally to (no _)                                 ^
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                                                              *
;**************************************************************************

Macro MUIC_Floattext "Floattext.mui" : End Macro

; 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                                                             *
;**************************************************************************

Macro MUIC_Volumelist "Volumelist.mui" : End Macro


;**************************************************************************
;* Scrmodelist                                                            *
;**************************************************************************

Macro MUIC_Scrmodelist "Scrmodelist.mui" : End Macro

; Attributes




;**************************************************************************
;* Dirlist                                                                *
;**************************************************************************

Macro MUIC_Dirlist "Dirlist.mui" : End Macro

; 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                                                                *
;**************************************************************************

Macro MUIC_Numeric "Numeric.mui" : End Macro

; 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
;/Normally scale (no _)                                             ^
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_CheckAllSizes           = $80421594 ; V11 isg BOOL
#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                                                                   *
;**************************************************************************

Macro MUIC_Knob "Knob.mui" : End Macro


;**************************************************************************
;* Levelmeter                                                             *
;**************************************************************************

Macro MUIC_Levelmeter "Levelmeter.mui" : End Macro

; Attributes

#MUIA_Levelmeter_Label                = $80420dd5 ; V11 isg STRPTR



;**************************************************************************
;* Numericbutton                                                          *
;**************************************************************************

Macro MUIC_Numericbutton "Numericbutton.mui" : End Macro


;**************************************************************************
;* Slider                                                                 *
;**************************************************************************

Macro MUIC_Slider "Slider.mui" : End Macro

; Attributes

#MUIA_Slider_Horiz                    = $8042fad1 ; V11 isg BOOL
CNIF #MUI_OBSOLETE=1
#MUIA_Slider_Level                    = $8042ae3a ; V4  isg LONG
CEND ; MUI_OBSOLETE
CNIF #MUI_OBSOLETE=1
#MUIA_Slider_Max                      = $8042d78a ; V4  isg LONG
CEND ; MUI_OBSOLETE
CNIF #MUI_OBSOLETE=1
#MUIA_Slider_Min                      = $8042e404 ; V4  isg LONG
CEND ; MUI_OBSOLETE
#MUIA_Slider_Quiet                    = $80420b26 ; V6  i.. BOOL
CNIF #MUI_OBSOLETE=1
#MUIA_Slider_Reverse                  = $8042f2a0 ; V4  isg BOOL
CEND ; MUI_OBSOLETE



;**************************************************************************
;* Framedisplay                                                           *
;**************************************************************************

Macro MUIC_Framedisplay "Framedisplay.mui" : End Macro

; Attributes




;**************************************************************************
;* Popframe                                                               *
;**************************************************************************

Macro MUIC_Popframe "Popframe.mui" : End Macro


;**************************************************************************
;* Imagedisplay                                                           *
;**************************************************************************

Macro MUIC_Imagedisplay "Imagedisplay.mui" : End Macro

; Attributes




;**************************************************************************
;* Popimage                                                               *
;**************************************************************************

Macro MUIC_Popimage "Popimage.mui" : End Macro


;**************************************************************************
;* Pendisplay                                                             *
;**************************************************************************

Macro MUIC_Pendisplay "Pendisplay.mui" : End Macro

; 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
;/Normally red, green and blue (no _)         ^      ^        ^

; Attributes

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



;**************************************************************************
;* Poppen                                                                 *
;**************************************************************************

Macro MUIC_Poppen "Poppen.mui" : End Macro


;**************************************************************************
;* Group                                                                  *
;**************************************************************************

Macro MUIC_Group "Group.mui" : End Macro

; 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.b[1] : End NEWTYPE
;/Normally .Object                                 ^

; 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                                                               *
;**************************************************************************

Macro MUIC_Mccprefs "Mccprefs.mui" : End Macro


;**************************************************************************
;* Register                                                               *
;**************************************************************************

Macro MUIC_Register "Register.mui" : End Macro

; Attributes

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



;**************************************************************************
;* Penadjust                                                              *
;**************************************************************************

Macro MUIC_Penadjust "Penadjust.mui" : End Macro

; Methods


; Attributes

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



;**************************************************************************
;* Settingsgroup                                                          *
;**************************************************************************

Macro MUIC_Settingsgroup "Settingsgroup.mui" : End Macro

; Methods

#MUIM_Settingsgroup_ConfigToGadgets   = $80427043 ; V11
#MUIM_Settingsgroup_GadgetsToConfig   = $80425242 ; V11
NEWTYPE.MUIP_Settingsgroup_ConfigToGadgets  MethodID.l:*configdata.b : End NEWTYPE
;/Normally .Object                                                ^
NEWTYPE.MUIP_Settingsgroup_GadgetsToConfig  MethodID.l:*configdata.b : End NEWTYPE
;/Normally .Object                                                ^

; Attributes




;**************************************************************************
;* Settings                                                               *
;**************************************************************************

Macro MUIC_Settings "Settings.mui" : End Macro

; Methods


; Attributes




;**************************************************************************
;* Frameadjust                                                            *
;**************************************************************************

Macro MUIC_Frameadjust "Frameadjust.mui" : End Macro

; Methods


; Attributes




;**************************************************************************
;* Imageadjust                                                            *
;**************************************************************************

Macro MUIC_Imageadjust "Imageadjust.mui" : End Macro

; Methods


; Attributes


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


;**************************************************************************
;* Virtgroup                                                              *
;**************************************************************************

Macro MUIC_Virtgroup "Virtgroup.mui" : End Macro

; 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                                                            *
;**************************************************************************

Macro MUIC_Scrollgroup "Scrollgroup.mui" : End Macro

; 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                                                              *
;**************************************************************************

Macro MUIC_Scrollbar "Scrollbar.mui" : End Macro

; 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                                                               *
;**************************************************************************

Macro MUIC_Listview "Listview.mui" : End Macro

; 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                                                                  *
;**************************************************************************

Macro MUIC_Radio "Radio.mui" : End Macro

; Attributes

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



;**************************************************************************
;* Cycle                                                                  *
;**************************************************************************

Macro MUIC_Cycle "Cycle.mui" : End Macro

; 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                                                            *
;**************************************************************************

Macro MUIC_Coloradjust "Coloradjust.mui" : End Macro

; 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                                                                *
;**************************************************************************

Macro MUIC_Palette "Palette.mui" : End Macro

; 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                                                              *
;**************************************************************************

Macro MUIC_Popstring "Popstring.mui" : End Macro

; 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                                                              *
;**************************************************************************

Macro MUIC_Popobject "Popobject.mui" : End Macro

; 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                                                                *
;**************************************************************************

Macro MUIC_Poplist "Poplist.mui" : End Macro

; Attributes

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



;**************************************************************************
;* Popscreen                                                              *
;**************************************************************************

Macro MUIC_Popscreen "Popscreen.mui" : End Macro

; Attributes




;**************************************************************************
;* Popasl                                                                 *
;**************************************************************************

Macro MUIC_Popasl "Popasl.mui" : End Macro

; 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                                                              *
;**************************************************************************

Macro MUIC_Semaphore "Semaphore.mui" : End Macro

; 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                                                                *
;**************************************************************************

Macro MUIC_Applist "Applist.mui" : End Macro

; Methods



;**************************************************************************
;* Cclist                                                                 *
;**************************************************************************

Macro MUIC_Cclist "Cclist.mui" : End Macro

; Methods



;**************************************************************************
;* Dataspace                                                              *
;**************************************************************************

Macro MUIC_Dataspace "Dataspace.mui" : End Macro

; 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.b:_len.l:id.l : End NEWTYPE
;/Normally data and len (no _)                 ^       ^
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.b : End NEWTYPE
;/Normally .Object                                      ^
NEWTYPE.MUIP_Dataspace_ReadIFF     MethodID.l:*_handle.b : End NEWTYPE
;/Normally handle (no _) and .IFFHandle         ^      ^
NEWTYPE.MUIP_Dataspace_Remove      MethodID.l:id.l : End NEWTYPE
NEWTYPE.MUIP_Dataspace_WriteIFF    MethodID.l:  *_handle.b:_type.l:id.l : End NEWTYPE
;/Normally handle and type (no _) and .IFFHandle ^      ^  ^

; Attributes

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



;**************************************************************************
;* Configdata                                                             *
;**************************************************************************

Macro MUIC_Configdata "Configdata.mui" : End Macro

; Methods


; Attributes




;**************************************************************************
;* Dtpic                                                                  *
;**************************************************************************

Macro MUIC_Dtpic "Dtpic.mui" : End Macro

; 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

NEWTYPE.MUI_GlobalInfo
        priv0.l
        *mgi_ApplicationObject.b ;/Normally .Object

        ; ... private data follows ...
End NEWTYPE


; Instance data of notify class

NEWTYPE.MUI_NotifyData
        *mnd_GlobalInfo.MUI_GlobalInfo
        mnd_UserData.l
        mnd_ObjectID.l
        priv1.l
        priv2.l
        priv3.l
        priv4.l
End NEWTYPE


; 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

#MUI_MAXMAX= 10000 ; use this if a dimension is not limited.


NEWTYPE.MUI_LayoutMsg_Size ;Normally, this structure is direcly declared
 Width.l                   ;in the MUI_LayoutMsg structure .
 Height.l                  ;However, in Blitz, it isn't possible,
 priv5.l                   ;so I had to do it this way .
 priv6.l
End NEWTYPE

; Hook message for custom layout

NEWTYPE.MUI_LayoutMsg
        lm_Type.l     ; type of message (see defines below)
        *lm_Children.b ; list of this groups children, traverse with NextObject()
;/Normally .MinList ^
        lm_MinMax.MUI_MinMax   ; results for MUILM_MINMAX
        lm_Layout.MUI_LayoutMsg_Size   ; size (and result) for MUILM_LAYOUT
End NEWTYPE

#MUILM_MINMAX  =  1  ; MUI wants you to calc your min & max sizes
#MUILM_LAYOUT  =  2  ; MUI wants you to layout your children

#MUILM_UNKNOWN = -1  ; return this if your hook doesn't implement lm_Type


; (partial) instance data of area class

NEWTYPE.MUI_AreaData
        *mad_RenderInfo.MUI_RenderInfo     ; RenderInfo for this object
        priv7.l
        *mad_Font.b           ; Font
;/               ^  Normally .TextFont
        mad_MinMax.MUI_MinMax         ; min/max/default sizes
        mad_Box.IBox            ; position and dimension
        mad_addleft.b        ; frame & innerspacing left offset
        mad_addtop.b         ; frame & innerspacing top offset
        mad_subwidth.b       ; frame & innerspacing add. width
        mad_subheight.b      ; frame & innerspacing add. height
        mad_Flags.l          ; see definitions below

        ; ... private data follows ...
End NEWTYPE

; Definitions for mad_Flags, other flags are private

#MADF_DRAWOBJECT         = (1 LSL  0) ; completely redraw yourself
#MADF_DRAWUPDATE         = (1 LSL  1) ; only update yourself



; MUI's draw pens

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


; Mask for pens from MUI_ObtainPen()

#MUIPEN_MASK  = $0000ffff
Macro MUIPEN ((`1) & #MUIPEN_MASK) : End Macro


; Information on display environment

NEWTYPE.MUI_RenderInfo
        *mri_WindowObject.b  ; valid between MUIM_Setup/MUIM_Cleanup
;/Normally .Object       ^
        *mri_Screen.b        ; valid between MUIM_Setup/MUIM_Cleanup
;/Normally .Screen ^
        *mri_DrawInfo.b      ; valid between MUIM_Setup/MUIM_Cleanup
;/Normally .DrawInfo ^
        *mri_Pens.w          ; valid between MUIM_Setup/MUIM_Cleanup
        *mri_Window.b        ; valid between MUIM_Show/MUIM_Hide
;/Normally .Window ^
        *mri_RastPort.b      ; valid between MUIM_Show/MUIM_Hide
;/Normally .RastPort ^
        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.

#MUIMRI_RECTFILL  = (1 LSL 0)

;** If mri_Flags & MUIMRI_TRUECOLOR, display environment is a
;** cybergraphics emulated hicolor or true color display.

#MUIMRI_TRUECOLOR  = (1 LSL 1)

;** If mri_Flags & MUIMRI_THINFRAMES, MUI uses thin frames
;** (1:1) apsect ratio instead of standard 2:1 frames.

#MUIMRI_THINFRAMES  = (1 LSL 2)

;** If mri_Flags & MUIMRI_REFRESHMODE, MUI is currently
;** refreshing a WFLG_SIMPLEREFRESH window and is between
;** a BeginRefresh()/EndRefresh() pair.

#MUIMRI_REFRESHMODE  = (1 LSL 3)


; the following macros can be used to get pointers to an objects
;   GlobalInfo AND RenderInfo structures.

NEWTYPE.__dummyXFC2__
        mnd.MUI_NotifyData
        mad.MUI_AreaData
End NEWTYPE

;/5 macros removed here (see the doc)


; User configurable keyboard events coming with MUIM_HandleInput

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

#MUIKEYF_PRESS         = (1 LSL #MUIKEY_PRESS)
#MUIKEYF_TOGGLE        = (1 LSL #MUIKEY_TOGGLE)
#MUIKEYF_UP            = (1 LSL #MUIKEY_UP)
#MUIKEYF_DOWN          = (1 LSL #MUIKEY_DOWN)
#MUIKEYF_PAGEUP        = (1 LSL #MUIKEY_PAGEUP)
#MUIKEYF_PAGEDOWN      = (1 LSL #MUIKEY_PAGEDOWN)
#MUIKEYF_TOP           = (1 LSL #MUIKEY_TOP)
#MUIKEYF_BOTTOM        = (1 LSL #MUIKEY_BOTTOM)
#MUIKEYF_LEFT          = (1 LSL #MUIKEY_LEFT)
#MUIKEYF_RIGHT         = (1 LSL #MUIKEY_RIGHT)
#MUIKEYF_WORDLEFT      = (1 LSL #MUIKEY_WORDLEFT)
#MUIKEYF_WORDRIGHT     = (1 LSL #MUIKEY_WORDRIGHT)
#MUIKEYF_LINESTART     = (1 LSL #MUIKEY_LINESTART)
#MUIKEYF_LINEEND       = (1 LSL #MUIKEY_LINEEND)
#MUIKEYF_GADGET_NEXT   = (1 LSL #MUIKEY_GADGET_NEXT)
#MUIKEYF_GADGET_PREV   = (1 LSL #MUIKEY_GADGET_PREV)
#MUIKEYF_GADGET_OFF    = (1 LSL #MUIKEY_GADGET_OFF)
#MUIKEYF_WINDOW_CLOSE  = (1 LSL #MUIKEY_WINDOW_CLOSE)
#MUIKEYF_WINDOW_NEXT   = (1 LSL #MUIKEY_WINDOW_NEXT)
#MUIKEYF_WINDOW_PREV   = (1 LSL #MUIKEY_WINDOW_PREV)
#MUIKEYF_HELP          = (1 LSL #MUIKEY_HELP)
#MUIKEYF_POPUP         = (1 LSL #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!

CNIF #MUI_SHORTCUTS=1

;/Macros removed in BB2 interface (please see the doc)

CEND



; MUI_CustomClass returned by MUI_CreateCustomClass()

NEWTYPE.MUI_CustomClass
        *mcc_UserData.b;                  ; use for whatever you want

        *mcc_UtilityBase.b    ; MUI has opened these libraries
;/Normally .Library     ^
        *mcc_DOSBase.b        ; for you automatically. You can
;/Normally .Library ^
        *mcc_GfxBase.b        ; use them or decide to open
;/Normally .Library ^
        *mcc_IntuitionBase.b  ; your libraries yourself.
;/Normally .Library       ^
        *mcc_Super.b           ; pointer to super class
;/Normally .IClass ^
        *mcc_Class.b           ; pointer to the new class
;/Normally .IClass ^
        ; ... private data follows ...
End NEWTYPE
