From 54961de2668c64cc40872aeaa6e06bae2bb333a0 Mon Sep 17 00:00:00 2001 From: marcus Date: Sun, 13 Sep 2015 17:55:55 +0000 Subject: [PATCH] AROS: complete rewrite ASL and MUI git-svn-id: trunk@31663 - --- packages/arosunits/src/asl.pas | 762 ++-- packages/arosunits/src/mui.pas | 7281 ++++++++++++++++---------------- 2 files changed, 4110 insertions(+), 3933 deletions(-) diff --git a/packages/arosunits/src/asl.pas b/packages/arosunits/src/asl.pas index d685ffa759..deec4e4a47 100644 --- a/packages/arosunits/src/asl.pas +++ b/packages/arosunits/src/asl.pas @@ -22,463 +22,446 @@ interface uses exec, utility, workbench, agraphics, tagsarray; -{************************************************************************} - -CONST +const ASLNAME: PChar = 'asl.library'; - ASL_TB = TAG_USER+$80000; + ASL_TB = TAG_USER + $80000; -{************************************************************************} - -{ Types of requesters known to ASL, used as arguments to AllocAslRequest() } +// Types of requesters known to ASL, used as arguments to AllocAslRequest() ASL_FileRequest = 0; ASL_FontRequest = 1; ASL_ScreenModeRequest = 2; {**************************************************************************** - * - * ASL File Requester data structures and constants - * - * This structure must only be allocated by asl.library amd is READ-ONLY! - * Control of the various fields is provided via tags when the requester - * is created with AllocAslRequest() and when it is displayed via - * AslRequest() - } + + ASL File Requester data structures and constants + + This structure must only be allocated by asl.library amd is READ-ONLY! + Control of the various fields is provided via tags when the requester + is created with AllocAslRequest() and when it is displayed via + AslRequest() } type PFileRequester = ^TFileRequester; TFileRequester = record - rf_Reserved0 : array[0..3] of Byte; - rf_File : STRPTR; { Filename pointer } - rf_Dir : STRPTR; { Directory name pointer } - rf_Reserved1 : array[0..9] of Byte; - rf_LeftEdge : SmallInt; - rf_TopEdge : SmallInt; { Preferred window pos } - rf_Width : SmallInt; - rf_Height : SmallInt; { Preferred window size } - rf_Reserved2 : array[0..1] of Byte; - rf_NumArgs : LongInt; { A-la WB Args, FOR multiselects } - rf_ArgList : PWBArgList; - rf_UserData : Pointer; { Applihandle (you may write!!) } - rf_Reserved3 : array[0..7] of Byte; - rf_Pat : STRPTR; { Pattern match pointer } - END; { note - more reserved fields follow } + fr_Reserved0: array[0..3] of byte; + fr_File: STRPTR; // User selected file + fr_Drawer: STRPTR; // User selected drawer + fr_Reserved1: array[0..9] of byte; + fr_LeftEdge: SmallInt; + fr_TopEdge: SmallInt; // Requester size/placement on exit + fr_Width: SmallInt; + fr_Height: SmallInt; + fr_Reserved2: array[0..1] of byte; + fr_NumArgs: LongInt; // How many files were selected ? + fr_ArgList: PWBArgList; // Selected files + fr_UserData: APTR; + fr_Reserved3: array[0..7] of byte; + fr_Pattern: STRPTR; // Pattern on exit + end; -{ File requester tag values, used by AllocAslRequest() and AslRequest() } +// File requester tag values, used by AllocAslRequest() and AslRequest() const -{ Window control } - ASLFR_Window = ASL_TB+2 ; { Parent window } - ASLFR_Screen = ASL_TB+40; { Screen to open on if no window } - ASLFR_PubScreenName = ASL_TB+41; { Name of public screen } - ASLFR_PrivateIDCMP = ASL_TB+42; { Allocate private IDCMP? } - ASLFR_IntuiMsgFunc = ASL_TB+70; { function to handle IntuiMessages } - ASLFR_SleepWindow = ASL_TB+43; { Block input in ASLFR_Window? } - ASLFR_UserData = ASL_TB+52; { What to put in fr_UserData } - ASLFR_PopToFront = ASL_TB+131; { Make the requester window visible } - ASLFR_Activate = ASL_TB+132; { Activate the requester window when } +// Window control + ASLFR_Window = ASL_TB + 2; // Parent window + ASLFR_Screen = ASL_TB + 40; // Screen to open on if no window + ASLFR_PubScreenName = ASL_TB + 41; // Name of public screen + ASLFR_PrivateIDCMP = ASL_TB + 42; // Allocate private IDCMP? + ASLFR_IntuiMsgFunc = ASL_TB + 70; // function to handle IntuiMessages + ASLFR_SleepWindow = ASL_TB + 43; // Block input in ASLFR_Window? + ASLFR_UserData = ASL_TB + 52; // What to put in fr_UserData + ASLFR_PopToFront = ASL_TB + 131; // Make the requester window visible + ASLFR_Activate = ASL_TB + 132; // Activate the requester window when -{ Text display } - ASLFR_TextAttr = ASL_TB+51; { Text font to use for gadget text } - ASLFR_Locale = ASL_TB+50; { Locale ASL should use for text } - ASLFR_TitleText = ASL_TB+1 ; { Title of requester } - ASLFR_PositiveText = ASL_TB+18; { Positive gadget text } - ASLFR_NegativeText = ASL_TB+19; { Negative gadget text } +// Text display + ASLFR_TextAttr = ASL_TB + 51; // Text font to use for gadget text + ASLFR_Locale = ASL_TB + 50; // Locale ASL should use for text + ASLFR_TitleText = ASL_TB + 1; // Title of requester + ASLFR_PositiveText = ASL_TB + 18; // Positive gadget text + ASLFR_NegativeText = ASL_TB + 19; // Negative gadget text -{ Initial settings } - ASLFR_InitialLeftEdge= ASL_TB+3 ; { Initial requester coordinates } - ASLFR_InitialTopEdge = ASL_TB+4 ; - ASLFR_InitialWidth = ASL_TB+5 ; { Initial requester dimensions } - ASLFR_InitialHeight = ASL_TB+6 ; - ASLFR_InitialFile = ASL_TB+8 ; { Initial contents of File gadget } - ASLFR_InitialDrawer = ASL_TB+9 ; { Initial contents of Drawer gadg. } - ASLFR_InitialPattern = ASL_TB+10; { Initial contents of Pattern gadg.} - ASLFR_InitialShowVolumes = ASL_TB+130; { Initially, show the volume list (V44) } +// Initial settings + ASLFR_InitialLeftEdge = ASL_TB + 3; // Initial requester coordinates + ASLFR_InitialTopEdge = ASL_TB + 4; + ASLFR_InitialWidth = ASL_TB + 5; // Initial requester dimensions + ASLFR_InitialHeight = ASL_TB + 6; + ASLFR_InitialFile = ASL_TB + 8; // Initial contents of File gadget + ASLFR_InitialDrawer = ASL_TB + 9; // Initial contents of Drawer gadg. + ASLFR_InitialPattern = ASL_TB + 10; // Initial contents of Pattern gadg. + ASLFR_InitialShowVolumes = ASL_TB + 130; // Initially, show the volume list (V44) -{ Options } - ASLFR_Flags1 = ASL_TB+20; { Option flags } - ASLFR_Flags2 = ASL_TB+22; { Additional option flags } - ASLFR_DoSaveMode = ASL_TB+44; { Being used for saving? } - ASLFR_DoMultiSelect = ASL_TB+45; { Do multi-select? } - ASLFR_DoPatterns = ASL_TB+46; { Display a Pattern gadget? } +// Options + ASLFR_Flags1 = ASL_TB + 20; // Option flags + ASLFR_Flags2 = ASL_TB + 22; // Additional option flags + ASLFR_DoSaveMode = ASL_TB + 44; // Being used for saving? + ASLFR_DoMultiSelect = ASL_TB + 45; // Do multi-select? + ASLFR_DoPatterns = ASL_TB + 46; // Display a Pattern gadget? -{ Filtering } - ASLFR_DrawersOnly = ASL_TB+47; { Don't display files? } - ASLFR_FilterFunc = ASL_TB+49; { function to filter files } - ASLFR_RejectIcons = ASL_TB+60; { Display .info files? } - ASLFR_RejectPattern = ASL_TB+61; { Don't display files matching pat } - ASLFR_AcceptPattern = ASL_TB+62; { Accept only files matching pat } - ASLFR_FilterDrawers = ASL_TB+63; { Also filter drawers with patterns} - ASLFR_HookFunc = ASL_TB+7 ; { Combined callback function } +// Filtering + ASLFR_DrawersOnly = ASL_TB + 47; // Don't display files? + ASLFR_FilterFunc = ASL_TB + 49; // function to filter files + ASLFR_RejectIcons = ASL_TB + 60; // Display .info files? + ASLFR_RejectPattern = ASL_TB + 61; // Don't display files matching pat + ASLFR_AcceptPattern = ASL_TB + 62; // Accept only files matching pat + ASLFR_FilterDrawers = ASL_TB + 63; // Also filter drawers with patterns + ASLFR_HookFunc = ASL_TB + 7; // Combined callback function -{ Sorting } - ASLFR_SetSortBy = ASL_TB+124; { Sort criteria (name, date, size) } - ASLFR_GetSortBy = ASL_TB+125; - ASLFR_SetSortDrawers = ASL_TB+126; { Placement of drawers in the list } - ASLFR_GetSortDrawers = ASL_TB+127; - ASLFR_SetSortOrder = ASL_TB+128; { Order (ascending or descending) } - ASLFR_GetSortOrder = ASL_TB+129; +// Sorting + ASLFR_SetSortBy = ASL_TB + 124; // Sort criteria (name, date, size) + ASLFR_GetSortBy = ASL_TB + 125; + ASLFR_SetSortDrawers = ASL_TB + 126; // Placement of drawers in the list + ASLFR_GetSortDrawers = ASL_TB + 127; + ASLFR_SetSortOrder = ASL_TB + 128; // Order (ascending or descending) + ASLFR_GetSortOrder = ASL_TB + 129; -{ Flag bits for the ASLFR_Flags1 tag } - FRB_FILTERFUNC = 7; - FRB_INTUIFUNC = 6; - FRB_DOSAVEMODE = 5; - FRB_PRIVATEIDCMP = 4; - FRB_DOMULTISELECT = 3; - FRB_DOPATTERNS = 0; +// Flag bits for the ASLFR_Flags1 tag + FRB_FILTERFUNC = 7; + FRB_INTUIFUNC = 6; + FRB_DOSAVEMODE = 5; + FRB_PRIVATEIDCMP = 4; + FRB_DOMULTISELECT = 3; + FRB_DOPATTERNS = 0; - FRF_FILTERFUNC = 128; - FRF_INTUIFUNC = 64; - FRF_DOSAVEMODE = 32; - FRF_PRIVATEIDCMP = 16; - FRF_DOMULTISELECT = 8; - FRF_DOPATTERNS = 1; + FRF_FILTERFUNC = 1 shl FRB_FILTERFUNC; + FRF_INTUIFUNC = 1 shl FRB_INTUIFUNC; + FRF_DOSAVEMODE = 1 shl FRB_DOSAVEMODE; + FRF_PRIVATEIDCMP = 1 shl FRB_PRIVATEIDCMP; + FRF_DOMULTISELECT = 1 shl FRB_DOMULTISELECT; + FRF_DOPATTERNS = 1 shl FRB_DOPATTERNS; -{ Flag bits for the ASLFR_Flags2 tag } - FRB_DRAWERSONLY = 0; - FRB_FILTERDRAWERS = 1; - FRB_REJECTICONS = 2; +// Flag bits for the ASLFR_Flags2 tag + FRB_DRAWERSONLY = 0; + FRB_FILTERDRAWERS = 1; + FRB_REJECTICONS = 2; - FRF_DRAWERSONLY = 1; - FRF_FILTERDRAWERS = 2; - FRF_REJECTICONS = 4; + FRF_DRAWERSONLY = 1 shl FRB_DRAWERSONLY; + FRF_FILTERDRAWERS = 1 shl FRB_FILTERDRAWERS; + FRF_REJECTICONS = 1 shl FRB_REJECTICONS; -{ Sort criteria for the ASLFR_SetSortBy/ASLFR_GetSortBy tags } - ASLFRSORTBY_Name = 0; - ASLFRSORTBY_Date = 1; - ASLFRSORTBY_Size = 2; +// Sort criteria for the ASLFR_SetSortBy/ASLFR_GetSortBy tags + ASLFRSORTBY_Name = 0; + ASLFRSORTBY_Date = 1; + ASLFRSORTBY_Size = 2; -{ Drawer placement for the ASLFR_SetSortDrawers/ASLFR_GetSortDrawers tags } - ASLFRSORTDRAWERS_First = 0; - ASLFRSORTDRAWERS_Mix = 1; - ASLFRSORTDRAWERS_Last = 2; +// Drawer placement for the ASLFR_SetSortDrawers/ASLFR_GetSortDrawers tags + ASLFRSORTDRAWERS_First = 0; + ASLFRSORTDRAWERS_Mix = 1; + ASLFRSORTDRAWERS_Last = 2; -{ Sort order for the ASLFR_SetSortOrder/ASLFR_GetSortOrder tags } - ASLFRSORTORDER_Ascend = 0; - ASLFRSORTORDER_Descend = 1; +// Sort order for the ASLFR_SetSortOrder/ASLFR_GetSortOrder tags + ASLFRSORTORDER_Ascend = 0; + ASLFRSORTORDER_Descend = 1; {**************************************************************************** - * - * ASL Font Requester data structures and constants - * - * This structure must only be allocated by asl.library amd is READ-ONLY! - * Control of the various fields is provided via tags when the requester - * is created with AllocAslRequest() and when it is displayed via - * AslRequest() - } + + ASL Font Requester data structures and constants + + This structure must only be allocated by asl.library amd is READ-ONLY! + Control of the various fields is provided via tags when the requester + is created with AllocAslRequest() and when it is displayed via + AslRequest()} Type PFontRequester = ^TFontRequester; TFontRequester = record - fo_Reserved0 : array[0..7] of Byte; - fo_Attr : TTextAttr; { Returned TextAttr } - fo_FrontPen : Byte; { Returned front pen } - fo_BackPen : Byte; { Returned back pen } - fo_DrawMode : Byte; { Returned drawing mode } - fo_Reserved1 : Byte; - fo_UserData : Pointer; { You can store your own data here } - fo_LeftEdge : smallint; { Coordinates Of requester on Exit } - fo_TopEdge : smallint; - fo_Width : smallint; - fo_Height : smallint; - fo_TAttr : tTTextAttr; { Returned TTextAttr } + fo_Reserved0: array[0..7] of byte; + fo_Attr: TTextAttr; // Returned TextAttr + fo_FrontPen: byte; // Returned front pen + fo_BackPen: byte; // Returned back pen + fo_DrawMode: byte; // Returned drawing mode + fo_Reserved1: byte; + fo_UserData: Pointer; // You can store your own data here + fo_LeftEdge: SmallInt; // Coordinates Of requester on Exit + fo_TopEdge: SmallInt; + fo_Width: SmallInt; + fo_Height: SmallInt; + fo_TAttr: TTTextAttr; // Returned TTextAttr end; -{ Font requester tag values, used by AllocAslRequest() AND AslRequest() } +// Font requester tag values, used by AllocAslRequest() AND AslRequest() const -{ Window control } - ASLFO_Window = ASL_TB+2 ; { Parent window } - ASLFO_Screen = ASL_TB+40; { Screen to open on if no window } - ASLFO_PubScreenName = ASL_TB+41; { Name of public screen } - ASLFO_PrivateIDCMP = ASL_TB+42; { Allocate private IDCMP? } - ASLFO_IntuiMsgFunc = ASL_TB+70; { function to handle IntuiMessages } - ASLFO_SleepWindow = ASL_TB+43; { Block input in ASLFO_Window? } - ASLFO_UserData = ASL_TB+52; { What to put in fo_UserData } - ASLFO_PopToFront = ASL_TB+131; { Make the requester window visible - * when it opens (V44) - } - ASLFO_Activate = ASL_TB+132; { Activate the requester window when - * it opens (V45). - } -{ Text display } - ASLFO_TextAttr = ASL_TB+51; { Text font to use for gadget text } - ASLFO_Locale = ASL_TB+50; { Locale ASL should use for text } - ASLFO_TitleText = ASL_TB+1 ; { Title of requester } - ASLFO_PositiveText = ASL_TB+18; { Positive gadget text } - ASLFO_NegativeText = ASL_TB+19; { Negative gadget text } +// Window control + ASLFO_Window = ASL_TB + 2; // Parent window + ASLFO_Screen = ASL_TB + 40; // Screen to open on if no window + ASLFO_PubScreenName = ASL_TB + 41; // Name of public screen + ASLFO_PrivateIDCMP = ASL_TB + 42; // Allocate private IDCMP? + ASLFO_IntuiMsgFunc = ASL_TB + 70; // function to handle IntuiMessages + ASLFO_SleepWindow = ASL_TB + 43; // Block input in ASLFO_Window? + ASLFO_UserData = ASL_TB + 52; // What to put in fo_UserData + ASLFO_PopToFront = ASL_TB + 131; // Make the requester window visible when it opens (V44) + ASLFO_Activate = ASL_TB + 132; // Activate the requester window when it opens (V45). -{ Initial settings } - ASLFO_InitialLeftEdge= ASL_TB+3 ; { Initial requester coordinates } - ASLFO_InitialTopEdge = ASL_TB+4 ; - ASLFO_InitialWidth = ASL_TB+5 ; { Initial requester dimensions } - ASLFO_InitialHeight = ASL_TB+6 ; - ASLFO_InitialName = ASL_TB+10; { Initial contents of Name gadget } - ASLFO_InitialSize = ASL_TB+11; { Initial contents of Size gadget } - ASLFO_InitialStyle = ASL_TB+12; { Initial font style } - ASLFO_InitialFlags = ASL_TB+13; { Initial font flags for TextAttr } - ASLFO_InitialFrontPen= ASL_TB+14; { Initial front pen } - ASLFO_InitialBackPen = ASL_TB+15; { Initial back pen } - ASLFO_InitialDrawMode= ASL_TB+59; { Initial draw mode } +// Text display + ASLFO_TextAttr = ASL_TB + 51; // Text font to use for gadget text + ASLFO_Locale = ASL_TB + 50; // Locale ASL should use for text + ASLFO_TitleText = ASL_TB + 1 ; // Title of requester + ASLFO_PositiveText = ASL_TB + 18; // Positive gadget text + ASLFO_NegativeText = ASL_TB + 19; // Negative gadget text -{ Options } - ASLFO_Flags = ASL_TB+20; { Option flags } - ASLFO_DoFrontPen = ASL_TB+44; { Display Front color selector? } - ASLFO_DoBackPen = ASL_TB+45; { Display Back color selector? } - ASLFO_DoStyle = ASL_TB+46; { Display Style checkboxes? } - ASLFO_DoDrawMode = ASL_TB+47; { Display DrawMode cycle gadget? } - ASLFO_SampleText = ASL_TB+133; { Text to display in font sample area (V45) } +// Initial settings + ASLFO_InitialLeftEdge = ASL_TB + 3; // Initial requester coordinates + ASLFO_InitialTopEdge = ASL_TB + 4; + ASLFO_InitialWidth = ASL_TB + 5; // Initial requester dimensions + ASLFO_InitialHeight = ASL_TB + 6; + ASLFO_InitialName = ASL_TB + 10; // Initial contents of Name gadget + ASLFO_InitialSize = ASL_TB + 11; // Initial contents of Size gadget + ASLFO_InitialStyle = ASL_TB + 12; // Initial font style + ASLFO_InitialFlags = ASL_TB + 13; // Initial font flags for TextAttr + ASLFO_InitialFrontPen = ASL_TB + 14; // Initial front pen + ASLFO_InitialBackPen = ASL_TB + 15; // Initial back pen + ASLFO_InitialDrawMode = ASL_TB + 59; // Initial draw mode -{ Filtering } - ASLFO_FixedWidthOnly = ASL_TB+48; { Only allow fixed-width fonts? } - ASLFO_MinHeight = ASL_TB+16; { Minimum font height to display } - ASLFO_MaxHeight = ASL_TB+17; { Maximum font height to display } - ASLFO_FilterFunc = ASL_TB+49; { function to filter fonts } - ASLFO_HookFunc = ASL_TB+7 ; { Combined callback function } - ASLFO_MaxFrontPen = ASL_TB+66; { Max # of colors in front palette } - ASLFO_MaxBackPen = ASL_TB+67; { Max # of colors in back palette } +// Options + ASLFO_Flags = ASL_TB + 20; // Option flags + ASLFO_DoFrontPen = ASL_TB + 44; // Display Front color selector? + ASLFO_DoBackPen = ASL_TB + 45; // Display Back color selector? + ASLFO_DoStyle = ASL_TB + 46; // Display Style checkboxes? + ASLFO_DoDrawMode = ASL_TB + 47; // Display DrawMode cycle gadget? + ASLFO_SampleText = ASL_TB + 133; // Text to display in font sample area (V45) -{ Custom additions } - ASLFO_ModeList = ASL_TB+21; { Substitute list for drawmodes } - ASLFO_FrontPens = ASL_TB+64; { Color table for front pen palette} - ASLFO_BackPens = ASL_TB+65; { Color table for back pen palette } +// Filtering + ASLFO_FixedWidthOnly = ASL_TB + 48; // Only allow fixed-width fonts? + ASLFO_MinHeight = ASL_TB + 16; // Minimum font height to display + ASLFO_MaxHeight = ASL_TB + 17; // Maximum font height to display + ASLFO_FilterFunc = ASL_TB + 49; // function to filter fonts + ASLFO_HookFunc = ASL_TB + 7; // Combined callback function + ASLFO_MaxFrontPen = ASL_TB + 66; // Max # of colors in front palette + ASLFO_MaxBackPen = ASL_TB + 67; // Max # of colors in back palette -{ Flag bits for ASLFO_Flags tag } - FOB_DOFRONTPEN = 0; - FOB_DOBACKPEN = 1; - FOB_DOSTYLE = 2; - FOB_DODRAWMODE = 3; - FOB_FIXEDWIDTHONLY= 4; - FOB_PRIVATEIDCMP = 5; - FOB_INTUIFUNC = 6; - FOB_FILTERFUNC = 7; +// Custom additions + ASLFO_ModeList = ASL_TB + 21; // Substitute list for drawmodes + ASLFO_FrontPens = ASL_TB + 64; // Color table for front pen palette + ASLFO_BackPens = ASL_TB + 65; // Color table for back pen palette - FOF_DOFRONTPEN = 1; - FOF_DOBACKPEN = 2; - FOF_DOSTYLE = 4; - FOF_DODRAWMODE = 8; - FOF_FIXEDWIDTHONLY = 16; - FOF_PRIVATEIDCMP = 32; - FOF_INTUIFUNC = 64; - FOF_FILTERFUNC = 128; +// Flag bits for ASLFO_Flags tag + FOB_DOFRONTPEN = 0; + FOB_DOBACKPEN = 1; + FOB_DOSTYLE = 2; + FOB_DODRAWMODE = 3; + FOB_FIXEDWIDTHONLY = 4; + FOB_PRIVATEIDCMP = 5; + FOB_INTUIFUNC = 6; + FOB_FILTERFUNC = 7; + + FOF_DOFRONTPEN = 1 shl FOB_DOFRONTPEN; + FOF_DOBACKPEN = 1 shl FOB_DOBACKPEN; + FOF_DOSTYLE = 1 shl FOB_DOSTYLE; + FOF_DODRAWMODE = 1 shl FOB_DODRAWMODE; + FOF_FIXEDWIDTHONLY = 1 shl FOB_FIXEDWIDTHONLY; + FOF_PRIVATEIDCMP = 1 shl FOB_PRIVATEIDCMP; + FOF_INTUIFUNC = 1 shl FOB_INTUIFUNC; + FOF_FILTERFUNC = 1 shl FOB_FILTERFUNC; {**************************************************************************** - * - * ASL Screen Mode Requester data structures and constants - * - * This structure must only be allocated by asl.library and is READ-ONLY! - * Control of the various fields is provided via tags when the requester - * is created with AllocAslRequest() and when it is displayed via - * AslRequest() - } + + ASL Screen Mode Requester data structures and constants + + This structure must only be allocated by asl.library and is READ-ONLY! + Control of the various fields is provided via tags when the requester + is created with AllocAslRequest() and when it is displayed via + AslRequest() } type PScreenModeRequester = ^TScreenModeRequester; TScreenModeRequester = record - sm_DisplayID : LongWord; { Display mode ID } - sm_DisplayWidth : LongWord; { Width Of display IN pixels } - sm_DisplayHeight : LongWord; { Height Of display IN pixels } - sm_DisplayDepth : Word; { Number OF bit-planes OF display } - sm_OverscanType : Word; { TYPE OF overscan OF display } - sm_AutoScroll : Boolean; { Display should auto-scroll? } + sm_DisplayID: LongWord; // Display mode ID + sm_DisplayWidth: LongWord; // Width Of display IN pixels + sm_DisplayHeight: LongWord; // Height Of display IN pixels + sm_DisplayDepth: word; // Number OF bit-planes OF display + sm_OverscanType: word; // TYPE OF overscan OF display + sm_AutoScroll: WordBool; // Display should auto-scroll? - sm_BitMapWidth : LongWord; { Used TO create your own BitMap } - sm_BitMapHeight : LongWord; + sm_BitMapWidth: LongWord; // Used TO create your own BitMap + sm_BitMapHeight: LongWord; - sm_LeftEdge : smallint; { Coordinates OF requester on Exit } - sm_TopEdge : smallint; - sm_Width : smallint; - sm_Height : smallint; + sm_LeftEdge: SmallInt; // Coordinates OF requester on Exit + sm_TopEdge: SmallInt; + sm_Width: SmallInt; + sm_Height: SmallInt; - sm_InfoOpened : Boolean; { Info window opened on exit? } - sm_InfoLeftEdge : smallint; { Last coordinates OF Info window } - sm_InfoTopEdge : smallint; - sm_InfoWidth : smallint; - sm_InfoHeight : smallint; + sm_InfoOpened: WordBool; // Info window opened on exit? + sm_InfoLeftEdge: SmallInt; // Last coordinates OF Info window + sm_InfoTopEdge: SmallInt; + sm_InfoWidth: SmallInt; + sm_InfoHeight: SmallInt; - sm_UserData : Pointer; { You can store your own data here } + sm_UserData: APTR; // You can store your own data here end; - { An Exec list of custom modes can be added to the list of available modes. - * The DimensionInfo structure must be completely initialized, including the - * Header. See . Custom mode ID's must be in the range - * $FFFF0000..$FFFFFFFF. Regular properties which apply to your custom modes - * can be added in the dn_PropertyFlags field. Custom properties are not - * allowed. - } + The DimensionInfo structure must be completely initialized, including the + Header. See . Custom mode ID's must be in the range + $FFFF0000..$FFFFFFFF. Regular properties which apply to your custom modes + can be added in the dn_PropertyFlags field. Custom properties are not + allowed. } + PDisplayMode = ^TDisplayMode; TDisplayMode = record - dm_Node : TNode; { see ln_Name } - dm_DimensionInfo : tDimensionInfo; { mode description } - dm_PropertyFlags : LongWord; { applicable properties } + dm_Node: TNode; // see ln_Name + dm_DimensionInfo: TDimensionInfo; // mode description + dm_PropertyFlags: LongWord; // applicable properties end; - -{ ScreenMode requester tag values, used by AllocAslRequest() and AslRequest() } +// ScreenMode requester tag values, used by AllocAslRequest() and AslRequest() const -{ Window control } - ASLSM_Window = ASL_TB+2 ; { Parent window } - ASLSM_Screen = ASL_TB+40; { Screen to open on if no window } - ASLSM_PubScreenName = ASL_TB+41; { Name of public screen } - ASLSM_PrivateIDCMP = ASL_TB+42; { Allocate private IDCMP? } - ASLSM_IntuiMsgFunc = ASL_TB+70; { function to handle IntuiMessages } - ASLSM_SleepWindow = ASL_TB+43; { Block input in ASLSM_Window? } - ASLSM_UserData = ASL_TB+52; { What to put in sm_UserData } - ASLSM_PopToFront = ASL_TB+131; { Make the requester window visible - * when it opens (V44) - } - ASLSM_Activate = ASL_TB+132; { Activate the requester window when - * it opens (V45). - } +// Window control + ASLSM_Window = ASL_TB + 2; // Parent window + ASLSM_Screen = ASL_TB + 40; // Screen to open on if no window + ASLSM_PubScreenName = ASL_TB + 41; // Name of public screen + ASLSM_PrivateIDCMP = ASL_TB + 42; // Allocate private IDCMP? + ASLSM_IntuiMsgFunc = ASL_TB + 70; // function to handle IntuiMessages + ASLSM_SleepWindow = ASL_TB + 43; // Block input in ASLSM_Window? + ASLSM_UserData = ASL_TB + 52; // What to put in sm_UserData + ASLSM_PopToFront = ASL_TB + 131; // Make the requester window visible when it opens (V44) + ASLSM_Activate = ASL_TB + 132; // Activate the requester window when it opens (V45). -{ Text display } - ASLSM_TextAttr = ASL_TB+51; { Text font to use for gadget text } - ASLSM_Locale = ASL_TB+50; { Locale ASL should use for text } - ASLSM_TitleText = ASL_TB+1 ; { Title of requester } - ASLSM_PositiveText = ASL_TB+18; { Positive gadget text } - ASLSM_NegativeText = ASL_TB+19; { Negative gadget text } +// Text display + ASLSM_TextAttr = ASL_TB + 51; // Text font to use for gadget text + ASLSM_Locale = ASL_TB + 50; // Locale ASL should use for text + ASLSM_TitleText = ASL_TB + 1; // Title of requester + ASLSM_PositiveText = ASL_TB + 18; // Positive gadget text + ASLSM_NegativeText = ASL_TB + 19; // Negative gadget text -{ Initial settings } - ASLSM_InitialLeftEdge = ASL_TB+3 ; { Initial requester coordinates } - ASLSM_InitialTopEdge = ASL_TB+4 ; - ASLSM_InitialWidth = ASL_TB+5 ; { Initial requester dimensions } - ASLSM_InitialHeight = ASL_TB+6 ; - ASLSM_InitialDisplayID = ASL_TB+100; { Initial display mode id } - ASLSM_InitialDisplayWidth = ASL_TB+101; { Initial display width } - ASLSM_InitialDisplayHeight = ASL_TB+102; { Initial display height } - ASLSM_InitialDisplayDepth = ASL_TB+103; { Initial display depth } - ASLSM_InitialOverscanType = ASL_TB+104; { Initial type of overscan } - ASLSM_InitialAutoScroll = ASL_TB+105; { Initial autoscroll setting } - ASLSM_InitialInfoOpened = ASL_TB+106; { Info wndw initially opened? } - ASLSM_InitialInfoLeftEdge = ASL_TB+107; { Initial Info window coords. } - ASLSM_InitialInfoTopEdge = ASL_TB+108; +// Initial settings + ASLSM_InitialLeftEdge = ASL_TB + 3; // Initial requester coordinates + ASLSM_InitialTopEdge = ASL_TB + 4; + ASLSM_InitialWidth = ASL_TB + 5; // Initial requester dimensions + ASLSM_InitialHeight = ASL_TB + 6; + ASLSM_InitialDisplayID = ASL_TB + 100; // Initial display mode id + ASLSM_InitialDisplayWidth = ASL_TB + 101; // Initial display width + ASLSM_InitialDisplayHeight = ASL_TB + 102; // Initial display height + ASLSM_InitialDisplayDepth = ASL_TB + 103; // Initial display depth + ASLSM_InitialOverscanType = ASL_TB + 104; // Initial type of overscan + ASLSM_InitialAutoScroll = ASL_TB + 105; // Initial autoscroll setting + ASLSM_InitialInfoOpened = ASL_TB + 106; // Info wndw initially opened? + ASLSM_InitialInfoLeftEdge = ASL_TB + 107; // Initial Info window coords. + ASLSM_InitialInfoTopEdge = ASL_TB + 108; -{ Options } - ASLSM_DoWidth = ASL_TB+109; { Display Width gadget? } - ASLSM_DoHeight = ASL_TB+110; { Display Height gadget? } - ASLSM_DoDepth = ASL_TB+111; { Display Depth gadget? } - ASLSM_DoOverscanType = ASL_TB+112; { Display Overscan Type gadget? } - ASLSM_DoAutoScroll = ASL_TB+113; { Display AutoScroll gadget? } +// Options + ASLSM_DoWidth = ASL_TB + 109; // Display Width gadget? + ASLSM_DoHeight = ASL_TB + 110; // Display Height gadget? + ASLSM_DoDepth = ASL_TB + 111; // Display Depth gadget? + ASLSM_DoOverscanType = ASL_TB + 112; // Display Overscan Type gadget? + ASLSM_DoAutoScroll = ASL_TB + 113; // Display AutoScroll gadget? -{ Filtering } - ASLSM_PropertyFlags = ASL_TB+114; { Must have these Property flags } - ASLSM_PropertyMask = ASL_TB+115; { Only these should be looked at } - ASLSM_MinWidth = ASL_TB+116; { Minimum display width to allow } - ASLSM_MaxWidth = ASL_TB+117; { Maximum display width to allow } - ASLSM_MinHeight = ASL_TB+118; { Minimum display height to allow } - ASLSM_MaxHeight = ASL_TB+119; { Maximum display height to allow } - ASLSM_MinDepth = ASL_TB+120; { Minimum display depth } - ASLSM_MaxDepth = ASL_TB+121; { Maximum display depth } - ASLSM_FilterFunc = ASL_TB+122; { function to filter mode id's } +// Filtering + ASLSM_PropertyFlags = ASL_TB + 114; // Must have these Property flags + ASLSM_PropertyMask = ASL_TB + 115; // Only these should be looked at + ASLSM_MinWidth = ASL_TB + 116; // Minimum display width to allow + ASLSM_MaxWidth = ASL_TB + 117; // Maximum display width to allow + ASLSM_MinHeight = ASL_TB + 118; // Minimum display height to allow + ASLSM_MaxHeight = ASL_TB + 119; // Maximum display height to allow + ASLSM_MinDepth = ASL_TB + 120; // Minimum display depth + ASLSM_MaxDepth = ASL_TB + 121; // Maximum display depth + ASLSM_FilterFunc = ASL_TB + 122; // function to filter mode id's -{ Custom additions } - ASLSM_CustomSMList = ASL_TB+123; { Exec list of struct DisplayMode } +// Custom additions + ASLSM_CustomSMList = ASL_TB + 123; // Exec list of struct DisplayMode -{***************************************************************************} + ASL_LAST_TAG = ASL_TB + 133; - ASL_LAST_TAG = ASL_TB+133; - -{***************************************************************************} { This defines the rendezvous data for setting and querying asl.library's - * defaults for the window size and the file requester sort order. The name - * of the semaphore is given below; it exists only with asl.library V45 and - * IPrefs V45 and beyond. - } - ASL_SEMAPHORE_NAME : Pchar = 'asl.library'; + defaults for the window size and the file requester sort order. The name + of the semaphore is given below; it exists only with asl.library V45 and + IPrefs V45 and beyond.} + ASL_SEMAPHORE_NAME: PChar = 'asl.library'; type - PAslSemaphore = ^TAslSemaphore; - TAslSemaphore = record - as_Semaphore : TSignalSemaphore; - as_Version : Word; { Must be >= 45 } - as_Size : LongWord; { Size of this data structure. } - as_SortBy : Byte; { File requester defaults; name, date or size } - as_SortDrawers : Byte; { File requester defaults; first, mix or last } - as_SortOrder : Byte; { File requester defaults; ascending or descending } - as_SizePosition : Byte; { See below } - as_RelativeLeft : Smallint;{ Window position offset } - as_RelativeTop : Smallint; - as_RelativeWidth : Byte; { Window size factor; this is - * a percentage of the parent - * window/screen width. - } - as_RelativeHeight : Byte; + PASLSemaphore = ^TASLSemaphore; + TASLSemaphore = record + as_Semaphore: TSignalSemaphore; + as_Version: word; // Must be >= 45 + as_Size: LongWord; // Size of this data structure. } + as_SortBy: byte; // File requester defaults; name, date or size } + as_SortDrawers: byte; // File requester defaults; first, mix or last } + as_SortOrder: byte; // File requester defaults; ascending or descending } + as_SizePosition: byte; // See below } + as_RelativeLeft: Smallint; // Window position offset } + as_RelativeTop: Smallint; + as_RelativeWidth: byte; // Window size factor; this is a percentage of the parent window/screen width. + as_RelativeHeight: byte; end; const -{ Default position of the ASL window. } - ASLPOS_DefaultPosition = 0; { Position is calculated according to the builtin rules. } - ASLPOS_CenterWindow = 1; { Centred within the bounds of the parent window. } - ASLPOS_CenterScreen = 2; { Centred within the bounds of the parent screen. } - ASLPOS_WindowPosition = 3; { Relative to the top left corner of the parent window, - * using the offset values provided in the - * as_RelativeLeft/as_RelativeTop members. - } - ASLPOS_ScreenPosition = 4; { Relative to the top left corner of the parent screen, - * using the offset values provided in the - * as_RelativeLeft/as_RelativeTop members. - } - ASLPOS_CenterMouse = 5; { Directly below the mouse pointer. } - ASLPOS_MASK = $0F; +// Default position of the ASL window. + ASLPOS_DefaultPosition = 0; // Position is calculated according to the builtin rules. + ASLPOS_CenterWindow = 1; // Centred within the bounds of the parent window. + ASLPOS_CenterScreen = 2; // Centred within the bounds of the parent screen. + ASLPOS_WindowPosition = 3; // Relative to the top left corner of the parent window, using the offset values provided in the as_RelativeLeft/as_RelativeTop members. + ASLPOS_ScreenPosition = 4; // Relative to the top left corner of the parent screen, using the offset values provided in the as_RelativeLeft/as_RelativeTop members. + ASLPOS_CenterMouse = 5; // Directly below the mouse pointer. + ASLPOS_MASK = $0F; -{ Default size of the ASL window. } - ASLSIZE_DefaultSize = (0 shl 4); { Size is calculated according to the builtin rules. } - ASLSIZE_RelativeSize = (1 shl 4); { Size is relative to the size of the parent - * window or screen, using the values provided in - * the as_RelativeWidth/as_RelativeHeight members. - * The as_RelativeWidth/as_RelativeHeight values are - * taken as percentage, i.e. a value of "50" stands for - * 50% of the width/height of the parent window/screen. - } - ASLSIZE_MASK = $30; +// Default size of the ASL window. + ASLSIZE_DefaultSize = 0 shl 4; // Size is calculated according to the builtin rules. + ASLSIZE_RelativeSize = 1 shl 4; // Size is relative to the size of the parent window or screen, using the values provided in + // the as_RelativeWidth/as_RelativeHeight members. The as_RelativeWidth/as_RelativeHeight values are + // taken as percentage, i.e. a value of "50" stands for 50% of the width/height of the parent window/screen. + ASLSIZE_MASK = $30; -{ Other options. } - ASLOPTION_ASLOverrides = (1 shl 6); { ASL determines placement and size of requester - * windows; application's choice is ignored. - } +// Other options. + ASLOPTION_ASLOverrides = 1 shl 6; // ASL determines placement and size of requester windows; application's choice is ignored. {**************************************************************************** - * - * Obsolete ASL definitions, here for source code compatibility only. - * Please do NOT use in new code. - * - * define ASL_V38_NAMES_ONLY to remove these older names + + Obsolete ASL definitions, here for source code compatibility only. + Please do NOT use in new code. + + define ASL_V38_NAMES_ONLY to remove these older names } {$define ASL_V38_NAMES_ONLY} {$ifndef ASL_V38_NAMES_ONLY} -Const - ASL_Dummy = (TAG_USER + $80000); - ASL_Hail = ASL_Dummy+1 ; - ASL_Window = ASL_Dummy+2 ; - ASL_LeftEdge = ASL_Dummy+3 ; - ASL_TopEdge = ASL_Dummy+4 ; - ASL_Width = ASL_Dummy+5 ; - ASL_Height = ASL_Dummy+6 ; - ASL_HookFunc = ASL_Dummy+7 ; - ASL_File = ASL_Dummy+8 ; - ASL_Dir = ASL_Dummy+9 ; - ASL_FontName = ASL_Dummy+10; - ASL_FontHeight = ASL_Dummy+11; - ASL_FontStyles = ASL_Dummy+12; - ASL_FontFlags = ASL_Dummy+13; - ASL_FrontPen = ASL_Dummy+14; - ASL_BackPen = ASL_Dummy+15; - ASL_MinHeight = ASL_Dummy+16; - ASL_MaxHeight = ASL_Dummy+17; - ASL_OKText = ASL_Dummy+18; - ASL_CancelText = ASL_Dummy+19; - ASL_FuncFlags = ASL_Dummy+20; - ASL_ModeList = ASL_Dummy+21; - ASL_ExtFlags1 = ASL_Dummy+22; +const + + TFileRequesterV38 = record + rf_Reserved0: array[0..3] of byte; + rf_File: STRPTR; // Filename pointer + rf_Dir: STRPTR; // Directory name pointer + rf_Reserved1: array[0..9] of Byte; + rf_LeftEdge: SmallInt; + rf_TopEdge: SmallInt; // Preferred window pos + rf_Width: SmallInt; + rf_Height: SmallInt; // Preferred window size + rf_Reserved2: array[0..1] of Byte; + rf_NumArgs: LongInt; // A-la WB Args, FOR multiselects + rf_ArgList: PWBArgList; + rf_UserData: Pointer; // Applihandle (you may write!!) + rf_Reserved3: array[0..7] of Byte; + rf_Pat: STRPTR; // Pattern match pointer + end; // note - more reserved fields follow + + ASL_Dummy = TAG_USER + $80000; + ASL_Hail = ASL_Dummy + 1; + ASL_Window = ASL_Dummy + 2; + ASL_LeftEdge = ASL_Dummy + 3; + ASL_TopEdge = ASL_Dummy + 4; + ASL_Width = ASL_Dummy + 5; + ASL_Height = ASL_Dummy + 6; + ASL_HookFunc = ASL_Dummy + 7; + ASL_File = ASL_Dummy + 8; + ASL_Dir = ASL_Dummy + 9; + ASL_FontName = ASL_Dummy + 10; + ASL_FontHeight = ASL_Dummy + 11; + ASL_FontStyles = ASL_Dummy + 12; + ASL_FontFlags = ASL_Dummy + 13; + ASL_FrontPen = ASL_Dummy + 14; + ASL_BackPen = ASL_Dummy + 15; + ASL_MinHeight = ASL_Dummy + 16; + ASL_MaxHeight = ASL_Dummy + 17; + ASL_OKText = ASL_Dummy + 18; + ASL_CancelText = ASL_Dummy + 19; + ASL_FuncFlags = ASL_Dummy + 20; + ASL_ModeList = ASL_Dummy + 21; + ASL_ExtFlags1 = ASL_Dummy + 22; ASL_Pattern = ASL_FontName; -{ remember what I said up there? Do not use these anymore! } +// remember what I said up there? Do not use these anymore! FILB_DOWILDFUNC = 7; FILB_DOMSGFUNC = 6; FILB_SAVE = 5; @@ -514,27 +497,23 @@ Const {$endif ASL_V38_NAMES_ONLY} var - AslBase: PLibrary; - - -function AllocAslRequestA(ReqType: LongWord; TagList: PTagItem): Pointer; syscall AslBase 8; -function AllocFileRequest: PFileRequester; syscall AslBase 5; -function AslRequestA(Requester: Pointer; TagList: PTagItem): LongBool; syscall AslBase 10; -procedure FreeAslRequest(Requester: Pointer); syscall AslBase 9; -procedure FreeFileRequest(FileReq: PFileRequester); syscall AslBase 6; -function RequestFile(FileReq: PFileRequester): LongBool; syscall AslBase 7; - -procedure AbortAslRequest(Requester: Pointer); syscall AslBase 13; -procedure ActivateAslRequest(Requester: Pointer); syscall AslBase 14; + ASLBase: PLibrary; +function AllocAslRequestA(ReqType: LongWord; TagList: PTagItem): Pointer; syscall ASLBase 8; +function AllocFileRequest: PFileRequester; syscall ASLBase 5; +function AslRequestA(Requester: Pointer; TagList: PTagItem): LongBool; syscall ASLBase 10; +procedure FreeAslRequest(Requester: Pointer); syscall ASLBase 9; +procedure FreeFileRequest(FileReq: PFileRequester); syscall ASLBase 6; +function RequestFile(FileReq: PFileRequester): LongBool; syscall ASLBase 7; +procedure AbortAslRequest(Requester: Pointer); syscall ASLBase 13; +procedure ActivateAslRequest(Requester: Pointer); syscall ASLBase 14; function AllocAslRequest(ReqType: LongWord; const Tags: array of const): Pointer; function AslRequest(Requester: Pointer; const Tags: array of const): LongBool; - +function AslRequestTags(Requester: Pointer; const Tags: array of const): LongBool; implementation - function AllocAslRequest(ReqType: LongWord; const Tags: array of const): Pointer; var TagList: TTagsList; @@ -551,11 +530,18 @@ begin AslRequest := AslRequestA(Requester , GetTagPtr(TagList)); end; -initialization - AslBase := OpenLibrary(ASLNAME, 36); -finalization - CloseLibrary(AslBase); +function AslRequestTags(Requester: Pointer; const Tags: array of const): LongBool; +var + TagList: TTagsList; +begin + AddTags(TagList, Tags); + AslRequestTags := AslRequestA(Requester , GetTagPtr(TagList)); +end; +initialization + ASLBase := OpenLibrary(ASLNAME, 36); +finalization + CloseLibrary(ASLBase); end. diff --git a/packages/arosunits/src/mui.pas b/packages/arosunits/src/mui.pas index e6b5efde91..b7f2b44a4c 100644 --- a/packages/arosunits/src/mui.pas +++ b/packages/arosunits/src/mui.pas @@ -123,3739 +123,3931 @@ interface } uses - exec, intuition,utility,agraphics{,iffparse}; + exec, intuition, utility, agraphics, iffparse; - const - MUIMASTER_NAME: PChar = 'muimaster.library'; - 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. - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - } +const + MUIMASTER_NAME: PChar = 'muimaster.library'; + MUIMASTER_VMIN = 11; + MUIMASTER_VLATEST = 19; - { - Config items for MUIM_GetConfigItem - } - MUICFG_PublicScreen = 36; - { - Black box specification structures for images, pens, frames - } + IMSPEC_EXTERNAL_PREFIX = 'MUI:Images/'; - type - Plongword = ^LongWord; + MUIB_MUI = TAG_USER; // Base for legacy MUI identifiers + MUIB_RSVD = MUIB_MUI or $10400000; // Base for AROS reserved range + MUIB_ZUNE = MUIB_RSVD or $00020000; // Base for Zune core reserved range + MUIB_AROS = MUIB_RSVD or $00070000; // Base for AROS core reserved range - TMUI_PenSpec = record - Buf: array[0..31] of Char; - End; - PMUI_PenSpec = ^TMUI_PenSpec; + PST_MUI = 'm'; + PST_CMAP = 'p'; + PST_RGB = 'r'; + PST_SYS = 's'; - { - 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. - } +// MUI_PenSpec is a an ascii spec like this: +// 'm5' = mui pen #5 +// 'p123' = cmap entry #123 +// 'rFFFFFFFF,00000000,00000000' =rgb #FF0000 +// 's3' = system pen #3 +// It needs to be like this, because for example nlist has default penspecs in it's source encoded like above which it directly passes to MUI_ObtainBestPen +// Black box specification structures for images, pens, frames +type + TMUI_PenSpec = record + ps_buf: array[0..31] of char; + end; + PMUI_PenSpec = ^TMUI_PenSpec; - const - PSD_INITIAL_NAME : PChar = '(unnamed)'; - PSD_INITIAL_TITLE : PChar = 'MUI Public Screen'; + TMUI_FrameSpec = record + buf: array[0..31] of char; + end; + PMUI_FrameSpec = ^TMUI_FrameSpec; + +// 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. +const + PSD_INITIAL_NAME: PChar = '(unnamed)'; + PSD_INITIAL_TITLE: PChar = 'MUI Public Screen'; + +const + PSD_NAME_FRONTMOST: PChar = '«Frontmost»'; + PSD_FILENAME_SAVE: PChar = 'envarc:mui/PublicScreens.iff'; + PSD_FILENAME_USE: PChar = 'env:mui/PublicScreens.iff'; + 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; + +type + TMUI_RGBcolor = record + Red: LongWord; + Green: LongWord; + Blue: LongWord; + end; + PMUI_RGBColor = ^TMUI_RGBColor; + + TMUI_PubScreenDesc = record + Version: LongInt; + Name: array[0..PSD_MAXLEN_NAME-1] of char; + Title: array[0..PSD_MAXLEN_TITLE-1] of char; + Font: array[0..PSD_MAXLEN_FONT-1] of char; + Background: array[0..PSD_MAXLEN_BACKGROUND-1] of char; + + DisplayID: LongWord; + + DisplayWidth: Word; + DisplayHeight : Word; + + DisplayDepth: byte; + OverscanType: byte; + AutoScroll: byte; + NoDrag: byte; + Exclusive : byte; + Interleaved : byte; + SysDefault : byte; + Behind : byte; + AutoClose : byte; + CloseGadget : byte; + DummyWasForeign : byte; + + SystemPens: array[0..(PSD_MAXSYSPENS)-1] of byte; + Reserved: array[0..((1 + (7 * 4)) - PSD_MAXSYSPENS)-1] of byte; + + Palette: array[0..(PSD_NUMCOLS)-1] of tMUI_RGBcolor; + rsvd: array[0..(PSD_MAXSYSPENS - PSD_NUMCOLS)-1] of tMUI_RGBcolor; + rsvd2: array[0..(PSD_MAXMUIPENS)-1] of tMUI_PenSpec; + + Changed: LongInt; + UserData: APTR; + end; + PMUI_PubScreenDesc = ^TMUI_PubScreenDesc; + + TMUIS_InfoClient = record + Node: TMinNode; + Task: PTask; + SigBit: LongWord; + end; + PMUIS_InfoClient = ^TMUIS_InfoClient; + +// Object Types for MUI_MakeObject() + +const + MUIO_Label = 1; // label: STRPTR, flags: LongWord + MUIO_Button = 2; // label: STRPTR + MUIO_Checkmark = 3; // label: STRPTR + MUIO_Cycle = 4; // label: STRPTR, entries: STRPTR + MUIO_Radio = 5; // label: STRPTR, entries: STRPTR + MUIO_Slider = 6; // label: STRPTR, min: LongInt, max: LongInt + MUIO_String = 7; // label: STRPTR, maxlen: LongInt + MUIO_PopButton = 8; // imagespec: STRPTR + MUIO_HSpace = 9; // space: LongInt + MUIO_VSpace = 10; // space: LongInt + MUIO_HBar = 11; // space: LongInt + MUIO_VBar = 12; // space: LongInt + MUIO_MenustripNM = 13; // struct NewMenu nm, LongWord flags + MUIO_Menuitem = 14; // label: STRPTR, shortcut: STRPTR, flags: LongWord, data: LongWord + MUIO_BarTitle = 15; // label: STRPTR + MUIO_NumericButton = 16; // label: STRPTR, min: LongInt, max: LongInt, format: STRPTR + MUIO_CoolButton = 111; // label: STRPTR, CoolImage: APTR, flags: LongWord + MUIO_ImageButton = 112; // label: CONST_STRPTR, imagePath: CONST_STRPTR + + // flags for MUIO_Menuitem + MUIO_Menuitem_CopyStrings = 1 shl 30; + //flags for MUIO_Label type + MUIO_Label_SingleFrame = 1 shl 8; + MUIO_Label_DoubleFrame = 1 shl 9; + MUIO_Label_LeftAligned = 1 shl 10; + MUIO_Label_Centered = 1 shl 11; + MUIO_Label_FreeVert = 1 shl 12; + // flag for MUIO_MenustripNM: check for "localized" menu items such as 'O'#0'Open' + MUIO_MenustripNM_CommandKeyCheck = 1 shl 0; + // flag for MUI_CoolButton + MUIO_CoolButton_CoolImageID = 1 shl 0; + +// ARexx Interface +type + TMUI_Command = record + mc_Name: PChar; + mc_Template: PChar; + mc_Parameters: LongInt; + mc_Hook: PHook; + mc_Reserved: array[0..4] of LongInt; + end; + PMUI_Command = ^TMUI_Command; + +const + 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 + //These images are configured with the preferences program. + MUII_WindowBack = 0; + MUII_RequesterBack = 1; + 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; + // These are direct color combinations and are not affected by users prefs. + // Generally, you should avoid using them. Better use one of the customized images above. + MUII_BACKGROUND = 128; + MUII_SHADOW = 129; + MUII_SHINE = 130; + MUII_FILL = 131; + MUII_SHADOWBACK = 132; + MUII_SHADOWFILL = 133; + MUII_SHADOWSHINE = 134; + MUII_FILLBACK = 135; + 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 = 146; + +// Special values for some methods, Special Values for MUIM_Notify + MUIV_TriggerValue = $49893131; + MUIV_NotTriggerValue = $49893133; + MUIV_EveryTime = $49893131; // as TrigVal + + MUIV_Notify_Self = 1; + MUIV_Notify_Window = 2; + MUIV_Notify_Application = 3; + MUIV_Notify_Parent = 4; +const + MUIV_DragQuery_Refuse = 0; + MUIV_DragQuery_Accept = 1; - const - PSD_NAME_FRONTMOST : PChar = '«Frontmost»'; - PSD_FILENAME_SAVE : PChar = 'envarc:mui/PublicScreens.iff'; - PSD_FILENAME_USE : PChar = 'env:mui/PublicScreens.iff'; - 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; + MUIV_DragReport_Abort = 0; + MUIV_DragReport_Continue = 1; + MUIV_DragReport_Lock = 2; + MUIV_DragReport_Refresh = 3; - type - tMUI_RGBcolor = record - red : LongWord; - green : LongWord; - blue : LongWord; - end; + // Parameter structures for some classes +type + TMUI_Palette_Entry = record + mpe_ID: LongInt; + mpe_Red: LongWord; + mpe_Green: LongWord; + mpe_Blue: LongWord; + mpe_Group: LongInt; + end; + PMUI_Palette_Entry = ^TMUI_Palette_Entry; - pMUI_RGBColor = ^tMUI_RGBColor; - - tMUI_PubScreenDesc = record - Version : LONG; - Name : array[0..(PSD_MAXLEN_NAME)-1] of char; - Title : array[0..(PSD_MAXLEN_TITLE)-1] of char; - Font : array[0..(PSD_MAXLEN_FONT)-1] of char; - Background : array[0..(PSD_MAXLEN_BACKGROUND)-1] of char; - DisplayID : LongWord; - DisplayWidth : WORD; - DisplayHeight : WORD; - DisplayDepth : BYTE; - OverscanType : BYTE; - AutoScroll : BYTE; - NoDrag : BYTE; - Exclusive : BYTE; - Interleaved : BYTE; - SysDefault : BYTE; - Behind : BYTE; - AutoClose : BYTE; - CloseGadget : BYTE; - DummyWasForeign : BYTE; - SystemPens : array[0..(PSD_MAXSYSPENS)-1] of BYTE; - Reserved : array[0..((1 + (7 * 4)) - PSD_MAXSYSPENS)-1] of BYTE; - Palette : array[0..(PSD_NUMCOLS)-1] of tMUI_RGBcolor; - rsvd : array[0..(PSD_MAXSYSPENS - PSD_NUMCOLS)-1] of tMUI_RGBcolor; - rsvd2 : array[0..(PSD_MAXMUIPENS)-1] of tMUI_PenSpec; - Changed : LONG; - UserData : APTR; - end; - pMUI_PubScreenDesc = ^tMUI_PubScreenDesc; - - tMUIS_InfoClient = record - node : tMinNode; - task : PTask; - sigbit : LongWord; - end; - pMUIS_InfoClient = ^tMUIS_InfoClient; - - { - Object Types for MUI_MakeObject() - } - { STRPTR label, LongWord flags } - - const - - MUIO_Label = 1; - { STRPTR label } - MUIO_Button = 2; - { STRPTR label } - MUIO_Checkmark = 3; - { STRPTR label, STRPTR entries } - MUIO_Cycle = 4; - { STRPTR label, STRPTR entries } - MUIO_Radio = 5; - { STRPTR label, LONG min, LONG max } - MUIO_Slider = 6; - { STRPTR label, LONG maxlen } - MUIO_String = 7; - { STRPTR imagespec } - MUIO_PopButton = 8; - { LONG space } - MUIO_HSpace = 9; - { LONG space } - MUIO_VSpace = 10; - { LONG space } - MUIO_HBar = 11; - { LONG space } - MUIO_VBar = 12; - { struct NewMenu nm, LongWord flags } - MUIO_MenustripNM = 13; - { STRPTR label, STRPTR shortcut, LongWord flags, LongWord data } - MUIO_Menuitem = 14; - { STRPTR label } - MUIO_BarTitle = 15; - { STRPTR label, LONG min, LONG max, STRPTR format } - MUIO_NumericButton = 16; - MUIO_Menuitem_CopyStrings = 1 shl 30; - MUIO_Label_SingleFrame = 1 shl 8; - MUIO_Label_DoubleFrame = 1 shl 9; - MUIO_Label_LeftAligned = 1 shl 10; - MUIO_Label_Centered = 1 shl 11; - MUIO_Label_FreeVert = 1 shl 12; - { check for "localized" menu items such as "O\0Open" } - MUIO_MenustripNM_CommandKeyCheck = 1 shl 0; - { - ARexx Interface - } - - type - tMUI_Command = record - mc_Name : Pchar; - mc_Template : Pchar; - mc_Parameters : LONG; - mc_Hook : PHook; - mc_Reserved : array[0..4] of LONG; - end; - pMUI_Command = ^tMUI_Command; - - - - const - { MC_TEMPLATE_ID : PCHar = not(0); } - 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 - } - { These images are configured } - MUII_WindowBack = 0; - { with the preferences program. } - MUII_RequesterBack = 1; - 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; - { These are direct color } - MUII_BACKGROUND = 128; - { combinations and are not } - MUII_SHADOW = 129; - { affected by users prefs. } - MUII_SHINE = 130; - MUII_FILL = 131; - { Generally, you should } - MUII_SHADOWBACK = 132; - { avoid using them. Better } - MUII_SHADOWFILL = 133; - { use one of the customized } - MUII_SHADOWSHINE = 134; - { images above. } - MUII_FILLBACK = 135; - 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; - - - const - 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); - { only valid for second parameter } - MUIV_List_Move_Next = -(3); - { only valid for second parameter } - MUIV_List_Move_Previous = -(4); - MUIV_List_Exchange_Top = 0; - MUIV_List_Exchange_Active = -(1); - MUIV_List_Exchange_Bottom = -(2); - { only valid for second parameter } - MUIV_List_Exchange_Next = -(3); - { only valid for second parameter } - MUIV_List_Exchange_Previous = -(4); - 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 = #27+'r'; // right justified - MUIX_C = #27+'c'; // centered - MUIX_L = #27+'l'; // left justified - - MUIX_N = #27+'n'; // normal - MUIX_B = #27+'b'; // bold - MUIX_I = #27+'i'; // italic - MUIX_U = #27+'u'; // underlined - - MUIX_PT = #27+'2'; // text pen - MUIX_PH = #27+'8'; // highlight text pen - { - Parameter structures for some classes - } - - type - tMUI_Palette_Entry = record - mpe_ID : LONG; - mpe_Red : LongWord; - mpe_Green : LongWord; - mpe_Blue : LongWord; - mpe_Group : LONG; - end; - pMUI_Palette_Entry = ^tMUI_Palette_Entry; - - const - MUIV_Palette_Entry_End = (-1); - { } - { Application Input Handler } - { } - { see below } - - type - tMUI_InputHandlerNode = record - ihn_Node : tMinNode; - ihn_Object : PObject_; - ihn_stuff : record - case LongInt of - 0 : ( ihn_sigs : LongWord ); - 1 : ( ihn_timer : record - ihn_millis : WORD; - ihn_current : WORD; - end ); - end; - ihn_Flags : LongWord; - ihn_Method : LongWord; - end; - pMUI_InputHandlerNode = ^tMUI_InputHandlerNode; - - const - { ihn_Signals = ihn_stuff.ihn_sigs; - ihn_Millis = ihn_stuff.(ihn_timer.ihn_millis); - ihn_Current = ihn_stuff.(ihn_timer.ihn_current); } - { Flags for ihn_Flags } - { set ihn_Ticks to number of 1/100 sec ticks you want to be triggered } - MUIIHNF_TIMER = 1 shl 0; - { } - { Window Event Handler } - { } - { don't touch! } - { event handlers are inserted according to their priority. } - { certain flags, see below for definitions. } - { object which should receive MUIM_HandleEvent. } - { if !=NULL, MUIM_HandleEvent is invoked on exactly this class with CoerceMethod(). } - { one or more IDCMP flags this handler should react on. } - - type +const + MUIV_Palette_Entry_End = -1; +// Window Event Handler (don't touch!) +// event handlers are inserted according to their priority. certain flags, see below for definitions. +// object which should receive MUIM_HandleEvent. if <> nil, MUIM_HandleEvent is invoked on exactly this class with CoerceMethod(). +// one or more IDCMP flags this handler should react on. +// MUIM_Window_AddEventHandler/RemoveEventHandler +type {$ifdef AROS_FLAVOUR_BINCOMPAT} - tMUI_EventHandlerNode = record - ehn_Node : tMinNode; - ehn_Reserved : BYTE; - ehn_Priority : BYTE; - ehn_Flags : WORD; - ehn_Object : PObject_; - ehn_Class : PIClass; - ehn_Events : LongWord; - end; + TMUI_EventHandlerNode = record + ehn_Node: TMinNode; + ehn_Reserved: byte; + ehn_Priority: byte; + ehn_Flags: word; + ehn_Object: PObject_; + ehn_Class: PIClass; + ehn_Events: LongWord; + end; {$else} - tMUI_EventHandlerNode = record - ehn_Node : TNode; - ehn_Flags : WORD; - ehn_Object : PObject_; - ehn_Class : PIClass; - ehn_Events : LongWord; - ehn_Priority : BYTE; - end; + TMUI_EventHandlerNode = record + ehn_Node: TNode; + ehn_Flags: word; + ehn_Object: PObject_; + ehn_Class: PIClass; + ehn_Events: LongWord; + ehn_Priority: byte; + end; {$endif} - pMUI_EventHandlerNode = ^tMUI_EventHandlerNode; - { flags for ehn_Flags } - - const - MUI_EHF_ALWAYSKEYS = 1 shl 0; - { other values reserved for future use } - { return values for MUIM_HandleEvent (bit-masked, all other bits must be 0) } - { stop MUI from calling other handlers } - MUI_EventHandlerRC_Eat = 1 shl 0; - { } - { List Position Test } - { } - { number of entry, -1 if mouse not over valid entry } - { numer of column, -1 if no valid column } - { see below } - { x offset of mouse click relative to column start } - { y offset of mouse click from center of line - (negative values mean click was above center, - positive values mean click was below center) } - - type - tMUI_List_TestPos_Result = record - entry : LONG; - column : WORD; - flags : WORD; - xoffset : WORD; - yoffset : WORD; - end; - pMUI_List_TestPos_Result = ^tMUI_List_TestPos_Result; - - const - MUI_LPR_ABOVE = 1 shl 0; - MUI_LPR_BELOW = 1 shl 1; - MUI_LPR_LEFT = 1 shl 2; - MUI_LPR_RIGHT = 1 shl 3; - - { - - For Boopsi Image Implementors Only: - - If MUI is using a boopsi image object, it will send a special method - immediately after object creation. This method has a parameter structure - where the boopsi can fill in its minimum and maximum size and learn if - its used in a horizontal or vertical context. - - The boopsi image must use the method id (MUIM_BoopsiQuery) as return - value. That's how MUI sees that the method is implemented. - - Note: MUI does not depend on this method. If the boopsi image doesn't - implement it, minimum size will be 0 and maximum size unlimited. - - } - { this is send to the boopsi and } - - const - MUIM_BoopsiQuery = $80427157; - { must be used as return value } - { parameter structure } - { always MUIM_BoopsiQuery } - { obsolete, use mbq_RenderInfo } - { read only, see below } - { write only, fill in min width } - { write only, fill in min height } - { write only, fill in max width } - { write only, fill in max height } - { write only, fill in def width } - { write only, fill in def height } - { read only, display context } - { may grow in future ... } - - type - tMUI_RenderInfo = record - mri_WindowObject : PObject_; - mri_Screen : PScreen; - mri_DrawInfo : PDrawInfo; - mri_Pens : ^WORD; - mri_Window : PWindow; - mri_RastPort : PRastPort; - mri_Flags : LongWord; - end; - PMUI_RenderInfo = ^tMUI_RenderInfo; - - type - tMUI_BoopsiQuery = record - mbq_MethodID : LongWord; - mbq_Screen : PScreen; - mbq_Flags : LongWord; - mbq_MinWidth : LONG; - mbq_MinHeight : LONG; - mbq_MaxWidth : LONG; - mbq_MaxHeight : LONG; - mbq_DefWidth : LONG; - mbq_DefHeight : LONG; - mbq_RenderInfo : PMUI_RenderInfo; - end; - pMUI_BoopsiQuery = ^tMUI_BoopsiQuery; - { old structure name } - - - MUIP_BoopsiQuery = tMUI_BoopsiQuery; - - const - { object used in a horizontal } - MBQF_HORIZ = 1 shl 0; - { context (else vertical) } - { use this for unlimited MaxWidth/Height } - MBQ_MUI_MAXMAX = 10000; - { } - { Begin of automatic header file creation } - { } - { } - { Notify } - { } - - - const - MUIC_Notify : PChar = 'Notify.mui'; - - { Methods } - { V4 } - - const - MUIM_CallHook = $8042b96b; - { V12 } - MUIM_Export = $80420f1c; - { V8 } - MUIM_FindUData = $8042c196; - { V11 } - MUIM_GetConfigItem = $80423edb; - { V8 } - MUIM_GetUData = $8042ed0c; - { V12 } - MUIM_Import = $8042d012; - { V4 } - MUIM_KillNotify = $8042d240; - { V16 } - MUIM_KillNotifyObj = $8042b145; - { V7 } - MUIM_MultiSet = $8042d356; - { V9 } - MUIM_NoNotifySet = $8042216f; - { V4 } - MUIM_Notify = $8042c9cb; - { V4 } - MUIM_Set = $8042549a; - { V4 } - MUIM_SetAsString = $80422590; - { V8 } - MUIM_SetUData = $8042c920; - { V11 } - MUIM_SetUDataOnce = $8042ca19; - { V6 } - MUIM_WriteLong = $80428d86; - { V6 } - MUIM_WriteString = $80424bf4; - { ... } - - type - tMUIP_CallHook = record - MethodID : LongWord; - Hook : PHook; - param1 : LongWord; - end; - pMUIP_CallHook = ^tMUIP_CallHook; - - tMUIP_Export = record - MethodID : LongWord; - dataspace : PObject_; - end; - pMUIP_Export = ^tMUIP_Export; - - tMUIP_FindUData = record - MethodID : LongWord; - udata : LongWord; - end; - pMUIP_FindUData = ^tMUIP_FindUData; - - tMUIP_GetConfigItem = record - MethodID : LongWord; - id : LongWord; - storage : PLongWord; - end; - pMUIP_GetConfigItem = ^tMUIP_GetConfigItem; - - tMUIP_GetUData = record - MethodID : LongWord; - udata : LongWord; - attr : LongWord; - storage : PLongWord; - end; - pMUIP_GetUData = ^tMUIP_GetUData; - - tMUIP_Import = record - MethodID : LongWord; - dataspace : PObject_; - end; - pMUIP_Import = ^tMUIP_Import; - - tMUIP_KillNotify = record - MethodID : LongWord; - TrigAttr : LongWord; - end; - pMUIP_KillNotify = ^tMUIP_KillNotify; - - tMUIP_KillNotifyObj = record - MethodID : LongWord; - TrigAttr : LongWord; - dest : PObject_; - end; - pMUIP_KillNotifyObj = ^tMUIP_KillNotifyObj; - - { ... } - tMUIP_MultiSet = record - MethodID : LongWord; - attr : LongWord; - val : LongWord; - obj : APTR; - end; - pMUIP_MultiSet = ^tMUIP_MultiSet; - - { ... } - tMUIP_NoNotifySet = record - MethodID : LongWord; - attr : LongWord; - format : Pchar; - val : LongWord; - end; - pMUIP_NoNotifySet = ^tMUIP_NoNotifySet; - - { ... } - tMUIP_Notify = record - MethodID : LongWord; - TrigAttr : LongWord; - TrigVal : LongWord; - DestObj : APTR; - FollowParams : LongWord; - end; - pMUIP_Notify = ^tMUIP_Notify; - - tMUIP_Set = record - MethodID : LongWord; - attr : LongWord; - val : LongWord; - end; - pMUIP_Set = ^tMUIP_Set; - - { ... } - tMUIP_SetAsString = record - MethodID : LongWord; - attr : LongWord; - format : Pchar; - val : LongWord; - end; - pMUIP_SetAsString = ^tMUIP_SetAsString; - - tMUIP_SetUData = record - MethodID : LongWord; - udata : LongWord; - attr : LongWord; - val : LongWord; - end; - pMUIP_SetUData = ^tMUIP_SetUData; - - tMUIP_SetUDataOnce = record - MethodID : LongWord; - udata : LongWord; - attr : LongWord; - val : LongWord; - end; - pMUIP_SetUDataOnce = ^tMUIP_SetUDataOnce; - - tMUIP_WriteLong = record - MethodID : LongWord; - val : LongWord; - memory : PLongWord; - end; - pMUIP_WriteLong = ^tMUIP_WriteLong; - - tMUIP_WriteString = record - MethodID : LongWord; - str : Pchar; - memory : Pchar; - end; - pMUIP_WriteString = ^tMUIP_WriteString; - - { Attributes } - { V4 ..g Object } - - const - MUIA_ApplicationObject = $8042d3ee; - { V5 ..g struct AppMessage } - MUIA_AppMessage = $80421955; - { V4 isg LONG } - MUIA_HelpLine = $8042a825; - { V4 isg STRPTR } - MUIA_HelpNode = $80420b85; - { V7 .s. BOOL } - MUIA_NoNotify = $804237f9; - { V11 isg LongWord } - MUIA_ObjectID = $8042d76e; - { V11 ..g Object } - MUIA_Parent = $8042e35f; - { V4 ..g LONG } - MUIA_Revision = $80427eaa; - { V4 isg LongWord } - MUIA_UserData = $80420313; - { V4 ..g LONG } - MUIA_Version = $80422301; - { } - { Family } - { } - - - const - MUIC_Family : PChar = 'Family.mui'; - - { Methods } - { V8 } - - const - 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; - - type - tMUIP_Family_AddHead = record - MethodID : LongWord; - obj : PObject_; - end; - pMUIP_Family_AddHead = ^tMUIP_Family_AddHead; - - tMUIP_Family_AddTail = record - MethodID : LongWord; - obj : PObject_; - end; - pMUIP_Family_AddTail = ^tMUIP_Family_AddTail; - - tMUIP_Family_Insert = record - MethodID : LongWord; - obj : PObject_; - pred : PObject_; - end; - pMUIP_Family_Insert = ^tMUIP_Family_Insert; - - tMUIP_Family_Remove = record - MethodID : LongWord; - obj : PObject_; - end; - pMUIP_Family_Remove = ^tMUIP_Family_Remove; - - tMUIP_Family_Sort = record - MethodID : LongWord; - obj : array[0..0] of PObject_; - end; - pMUIP_Family_Sort = ^tMUIP_Family_Sort; - - tMUIP_Family_Transfer = record - MethodID : LongWord; - family : PObject_; - end; - pMUIP_Family_Transfer = ^tMUIP_Family_Transfer; - - { Attributes } - { V8 i.. Object } - - const - MUIA_Family_Child = $8042c696; - { V8 ..g struct MinList } - MUIA_Family_List = $80424b9e; - { } - { Menustrip } - { } - - - const - MUIC_Menustrip : PChar = 'Menustrip.mui'; - - { Methods } - { Attributes } - { V8 isg BOOL } - - const - MUIA_Menustrip_Enabled = $8042815b; - { } - { Menu } - { } - - - const - MUIC_Menu : PChar = 'Menu.mui'; - - { Methods } - { Attributes } - { V8 isg BOOL } - - const - MUIA_Menu_Enabled = $8042ed48; - { V8 isg STRPTR } - MUIA_Menu_Title = $8042a0e3; - { } - { Menuitem } - { } - - - const - MUIC_Menuitem : PChar = 'Menuitem.mui'; - - { Methods } - { Attributes } - { V8 isg BOOL } - - const - MUIA_Menuitem_Checked = $8042562a; - { V8 isg BOOL } - MUIA_Menuitem_Checkit = $80425ace; - { V16 isg BOOL } - MUIA_Menuitem_CommandString = $8042b9cc; - { V8 isg BOOL } - MUIA_Menuitem_Enabled = $8042ae0f; - { V8 isg LONG } - MUIA_Menuitem_Exclude = $80420bc6; - { V8 isg STRPTR } - MUIA_Menuitem_Shortcut = $80422030; - { V8 isg STRPTR } - MUIA_Menuitem_Title = $804218be; - { V8 isg BOOL } - MUIA_Menuitem_Toggle = $80424d5c; - { V8 ..g struct MenuItem } - MUIA_Menuitem_Trigger = $80426f32; - MUIV_Menuitem_Shortcut_Check = -(1); - { } - { Application } - { } - - - const - MUIC_Application : PChar = 'Application.mui'; - - { Methods } - { V14 } - - const - MUIM_Application_AboutMUI = $8042d21d; - { V11 } - MUIM_Application_AddInputHandler = $8042f099; - { V11 } - MUIM_Application_CheckRefresh = $80424d68; - - { MUI_OBSOLETE } - { V4 } - - const - MUIM_Application_InputBuffered = $80427e59; - { V4 } - MUIM_Application_Load = $8042f90d; - { V11 } - MUIM_Application_NewInput = $80423ba6; - { V11 } - MUIM_Application_OpenConfigWindow = $804299ba; - { V4 } - MUIM_Application_PushMethod = $80429ef8; - { V11 } - MUIM_Application_RemInputHandler = $8042e7af; - { V4 } - MUIM_Application_ReturnID = $804276ef; - { V4 } - MUIM_Application_Save = $804227ef; - { V11 } - MUIM_Application_SetConfigItem = $80424a80; - - { V4 } - - const - MUIM_Application_ShowHelp = $80426479; - - type - tMUIP_Application_AboutMUI = record - MethodID : LongWord; - refwindow : PObject_; - end; - pMUIP_Application_AboutMUI = ^tMUIP_Application_AboutMUI; - - tMUIP_Application_AddInputHandler = record - MethodID : LongWord; - ihnode : PMUI_InputHandlerNode; - end; - pMUIP_Application_AddInputHandler = ^tMUIP_Application_AddInputHandler; - - tMUIP_Application_CheckRefresh = record - MethodID : LongWord; - end; - pMUIP_Application_CheckRefresh = ^tMUIP_Application_CheckRefresh; - - tMUIP_Application_GetMenuCheck = record - MethodID : LongWord; - MenuID : LongWord; - end; - pMUIP_Application_GetMenuCheck = ^tMUIP_Application_GetMenuCheck; - - tMUIP_Application_GetMenuState = record - MethodID : LongWord; - MenuID : LongWord; - end; - pMUIP_Application_GetMenuState = ^tMUIP_Application_GetMenuState; - - tMUIP_Application_Input = record - MethodID : LongWord; - signal : PLONGBITS; - end; - pMUIP_Application_Input = ^tMUIP_Application_Input; - - tMUIP_Application_InputBuffered = record - MethodID : LongWord; - end; - pMUIP_Application_InputBuffered = ^tMUIP_Application_InputBuffered; - - tMUIP_Application_Load = record - MethodID : LongWord; - name : STRPTR; - end; - - tMUIP_Application_NewInput = record - MethodID : LongWord; - signal : PLONGBITS; - end; - pMUIP_Application_NewInput = ^tMUIP_Application_NewInput; - - tMUIP_Application_OpenConfigWindow = record - MethodID : LongWord; - flags : LongWord; - end; - pMUIP_Application_OpenConfigWindow = ^tMUIP_Application_OpenConfigWindow; - - { ... } - tMUIP_Application_PushMethod = record - MethodID : LongWord; - dest : PObject_; - count : LONG; - end; - pMUIP_Application_PushMethod = ^tMUIP_Application_PushMethod; - - tMUIP_Application_RemInputHandler = record - MethodID : LongWord; - ihnode : PMUI_InputHandlerNode; - end; - pMUIP_Application_RemInputHandler = ^tMUIP_Application_RemInputHandler; - - tMUIP_Application_ReturnID = record - MethodID : LongWord; - retid : LongWord; - end; - pMUIP_Application_ReturnID = ^tMUIP_Application_ReturnID; - - tMUIP_Application_Save = record - MethodID : LongWord; - name : STRPTR; - end; - - tMUIP_Application_SetConfigItem = record - MethodID : LongWord; - item : LongWord; - data : APTR; - end; - pMUIP_Application_SetConfigItem = ^tMUIP_Application_SetConfigItem; - - tMUIP_Application_SetMenuCheck = record - MethodID : LongWord; - MenuID : LongWord; - stat : LONG; - end; - pMUIP_Application_SetMenuCheck = ^tMUIP_Application_SetMenuCheck; - - tMUIP_Application_SetMenuState = record - MethodID : LongWord; - MenuID : LongWord; - stat : LONG; - end; - pMUIP_Application_SetMenuState = ^tMUIP_Application_SetMenuState; - - tMUIP_Application_ShowHelp = record - MethodID : LongWord; - window : PObject_; - name : Pchar; - node : Pchar; - line : LONG; - end; - pMUIP_Application_ShowHelp = ^tMUIP_Application_ShowHelp; - - { Attributes } - { V4 isg BOOL } - - const - MUIA_Application_Active = $804260ab; - { V4 i.g STRPTR } - MUIA_Application_Author = $80424842; - { V4 i.g STRPTR } - MUIA_Application_Base = $8042e07a; - { V4 ..g Broker } - MUIA_Application_Broker = $8042dbce; - { V4 isg struct Hook } - MUIA_Application_BrokerHook = $80428f4b; - { V6 ..g struct MsgPort } - MUIA_Application_BrokerPort = $8042e0ad; - { V6 i.g LONG } - MUIA_Application_BrokerPri = $8042c8d0; - { V4 isg struct MUI_Command } - MUIA_Application_Commands = $80428648; - { V4 i.g STRPTR } - MUIA_Application_Copyright = $8042ef4d; - { V4 i.g STRPTR } - MUIA_Application_Description = $80421fc6; - { V4 isg struct DiskObject } - MUIA_Application_DiskObject = $804235cb; - { V4 ..g BOOL } - MUIA_Application_DoubleStart = $80423bc6; - { V5 is. Object } - MUIA_Application_DropObject = $80421266; - { V8 ..g BOOL } - MUIA_Application_ForceQuit = $804257df; - { V8 isg STRPTR } - MUIA_Application_HelpFile = $804293f4; - { V4 .sg BOOL } - MUIA_Application_Iconified = $8042a07f; - - - const - MUIA_Application_MenuAction = $80428961; - { V4 ..g LongWord } - MUIA_Application_MenuHelp = $8042540b; - { V8 i.. Object } - MUIA_Application_Menustrip = $804252d9; - { V7 isg struct Hook } - MUIA_Application_RexxHook = $80427c42; - { V4 ..g struct RxMsg } - MUIA_Application_RexxMsg = $8042fd88; - { V4 .s. STRPTR } - MUIA_Application_RexxString = $8042d711; - { V4 i.. BOOL } - MUIA_Application_SingleTask = $8042a2c8; - { V4 .s. BOOL } - MUIA_Application_Sleep = $80425711; - { V4 i.g STRPTR } - MUIA_Application_Title = $804281b8; - { V10 i.. BOOL } - MUIA_Application_UseCommodities = $80425ee5; - { V10 i.. BOOL } - MUIA_Application_UseRexx = $80422387; - { V4 i.g STRPTR } - MUIA_Application_Version = $8042b33f; - { V4 i.. Object } - MUIA_Application_Window = $8042bfe0; - { V13 ..g struct List } - MUIA_Application_WindowList = $80429abe; - MUIV_Application_Package_NetConnect = $a3ff7b49; - { } - { Window } - { } - - const - MUIC_Window : PChar = 'Window.mui'; - - { V16 } - - const - MUIM_Window_AddEventHandler = $804203b7; - - { V16 } - - const - MUIM_Window_RemEventHandler = $8042679e; - { V4 } - MUIM_Window_ScreenToBack = $8042913d; - { V4 } - MUIM_Window_ScreenToFront = $804227a4; - - { V11 } - - const - MUIM_Window_Snapshot = $8042945e; - { V4 } - MUIM_Window_ToBack = $8042152e; - { V4 } - MUIM_Window_ToFront = $8042554f; - - type - tMUIP_Window_AddEventHandler = record - MethodID : LongWord; - ehnode : PMUI_EventHandlerNode; - end; - pMUIP_Window_AddEventHandler = ^tMUIP_Window_AddEventHandler; - - tMUIP_Window_GetMenuCheck = record - MethodID : LongWord; - MenuID : LongWord; - end; - pMUIP_Window_GetMenuCheck = ^tMUIP_Window_GetMenuCheck; - - tMUIP_Window_GetMenuState = record - MethodID : LongWord; - MenuID : LongWord; - end; - pMUIP_Window_GetMenuState = ^tMUIP_Window_GetMenuState; - - tMUIP_Window_RemEventHandler = record - MethodID : LongWord; - ehnode : PMUI_EventHandlerNode; - end; - pMUIP_Window_RemEventHandler = ^tMUIP_Window_RemEventHandler; - - tMUIP_Window_ScreenToBack = record - MethodID : LongWord; - end; - pMUIP_Window_ScreenToBack = ^tMUIP_Window_ScreenToBack; - - tMUIP_Window_ScreenToFront = record - MethodID : LongWord; - end; - pMUIP_Window_ScreenToFront = ^tMUIP_Window_ScreenToFront; - - tMUIP_Window_SetCycleChain = record - MethodID : LongWord; - obj : array[0..0] of PObject_; - end; - pMUIP_Window_SetCycleChain = ^tMUIP_Window_SetCycleChain; - - tMUIP_Window_SetMenuCheck = record - MethodID : LongWord; - MenuID : LongWord; - stat : LONG; - end; - pMUIP_Window_SetMenuCheck = ^tMUIP_Window_SetMenuCheck; - - tMUIP_Window_SetMenuState = record - MethodID : LongWord; - MenuID : LongWord; - stat : LONG; - end; - pMUIP_Window_SetMenuState = ^tMUIP_Window_SetMenuState; - - tMUIP_Window_Snapshot = record - MethodID : LongWord; - flags : LONG; - end; - pMUIP_Window_Snapshot = ^tMUIP_Window_Snapshot; - - tMUIP_Window_ToBack = record - MethodID : LongWord; - end; - pMUIP_Window_ToBack = ^tMUIP_Window_ToBack; - - tMUIP_Window_ToFront = record - MethodID : LongWord; - end; - pMUIP_Window_ToFront = ^tMUIP_Window_ToFront; - - { Attributes } - { V4 isg BOOL } - - const - MUIA_Window_Activate = $80428d2f; - { V4 .sg Object } - MUIA_Window_ActiveObject = $80427925; - { V4 i.g LONG } - 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; - { V5 i.. BOOL } - MUIA_Window_AppWindow = $804280cf; - { V4 i.. BOOL } - MUIA_Window_Backdrop = $8042c0bb; - { V4 i.. BOOL } - MUIA_Window_Borderless = $80429b79; - { V4 i.. BOOL } - MUIA_Window_CloseGadget = $8042a110; - { V4 ..g BOOL } - MUIA_Window_CloseRequest = $8042e86e; - { V4 isg Object } - MUIA_Window_DefaultObject = $804294d7; - { V4 i.. BOOL } - MUIA_Window_DepthGadget = $80421923; - { V4 i.. BOOL } - MUIA_Window_DragBar = $8042045d; - { V8 isg BOOL } - MUIA_Window_FancyDrawing = $8042bd0e; - { V4 i.g LONG } - MUIA_Window_Height = $80425846; - { V4 isg LongWord } - MUIA_Window_ID = $804201bd; - { V4 ..g struct InputEvent } - MUIA_Window_InputEvent = $804247d8; - { V4 isg BOOL } - MUIA_Window_IsSubWindow = $8042b5aa; - { V4 i.g LONG } - MUIA_Window_LeftEdge = $80426c65; - { MUI_OBSOLETE } - { V8 isg LongWord } - - const - MUIA_Window_MenuAction = $80427521; - { V8 i.g Object } - MUIA_Window_Menustrip = $8042855e; - { V10 ..g Object } - MUIA_Window_MouseObject = $8042bf9b; - { V10 i.. BOOL } - MUIA_Window_NeedsMouseObject = $8042372a; - { V4 is. BOOL } - MUIA_Window_NoMenus = $80429df5; - { V4 .sg BOOL } - MUIA_Window_Open = $80428aa0; - { V6 isg STRPTR } - MUIA_Window_PublicScreen = $804278e4; - { V4 is. Object } - MUIA_Window_RefWindow = $804201f4; - { V4 isg Object } - MUIA_Window_RootObject = $8042cba5; - { V4 isg struct Screen } - MUIA_Window_Screen = $8042df4f; - { V5 isg STRPTR } - MUIA_Window_ScreenTitle = $804234b0; - { V4 i.. BOOL } - MUIA_Window_SizeGadget = $8042e33d; - { V4 i.. BOOL } - MUIA_Window_SizeRight = $80424780; - { V4 .sg BOOL } - MUIA_Window_Sleep = $8042e7db; - { V4 isg STRPTR } - MUIA_Window_Title = $8042ad3d; - { V4 i.g LONG } - MUIA_Window_TopEdge = $80427c66; - { V13 isg BOOL } - MUIA_Window_UseBottomBorderScroller = $80424e79; - { V13 isg BOOL } - MUIA_Window_UseLeftBorderScroller = $8042433e; - { V13 isg BOOL } - MUIA_Window_UseRightBorderScroller = $8042c05e; - { V4 i.g LONG } - MUIA_Window_Width = $8042dcae; - { V4 ..g struct Window } - MUIA_Window_Window = $80426a42; - MUIV_Window_ActiveObject_None = 0; - MUIV_Window_ActiveObject_Next = -(1); - MUIV_Window_ActiveObject_Prev = -(2); - - - const - 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); - - - const - MUIV_Window_AltTopEdge_NoChange = -(1000); - - - const - MUIV_Window_AltWidth_Scaled = -(1000); - - - - const - MUIV_Window_Height_Scaled = -(1000); - MUIV_Window_Height_Default = -(1001); - MUIV_Window_LeftEdge_Centered = -(1); - MUIV_Window_LeftEdge_Moused = -(2); - - - const - MUIV_Window_TopEdge_Centered = -(1); - MUIV_Window_TopEdge_Moused = -(2); - - - const - MUIV_Window_Width_Scaled = -(1000); - MUIV_Window_Width_Default = -(1001); - { } - { Aboutmui } - { } - - - const - MUIC_Aboutmui : PChar = 'Aboutmui.mui'; - - { Methods } - { Attributes } - { V11 i.. Object } - - const - MUIA_Aboutmui_Application = $80422523; - { } - { Area } - { } - - - const - MUIC_Area : PChar = 'Area.mui'; - - { Methods } - { Custom Class } - { V4 } - - const - MUIM_AskMinMax = $80423874; - { Custom Class } - { V4 } - MUIM_Cleanup = $8042d985; - { V11 } - MUIM_ContextMenuBuild = $80429d2e; - { V11 } - MUIM_ContextMenuChoice = $80420f0e; - { V18 } - MUIM_CreateBubble = $80421c41; - { V11 } - MUIM_CreateShortHelp = $80428e93; - { V18 } - MUIM_DeleteBubble = $804211af; - { V11 } - MUIM_DeleteShortHelp = $8042d35a; - { V11 } - MUIM_DragBegin = $8042c03a; - { V11 } - MUIM_DragDrop = $8042c555; - { V11 } - MUIM_DragFinish = $804251f0; - { V11 } - MUIM_DragQuery = $80420261; - { V11 } - MUIM_DragReport = $8042edad; - { Custom Class } - { V4 } - MUIM_Draw = $80426f3f; - { V11 } - MUIM_DrawBackground = $804238ca; - { Custom Class } - { V16 } - MUIM_HandleEvent = $80426d66; - { Custom Class } - { V4 } - MUIM_HandleInput = $80422a1a; - { Custom Class } - { V4 } - MUIM_Hide = $8042f20f; - { Custom Class } - { V4 } - MUIM_Setup = $80428354; - { Custom Class } - { V4 } - MUIM_Show = $8042cc84; - - type - - { MUI_MinMax structure holds information about minimum, maximum - and default dimensions of an object. } - tMUI_MinMax = record - MinWidth : SmallInt; - MinHeight : SmallInt; - MaxWidth : SmallInt; - MaxHeight : SmallInt; - DefWidth : SmallInt; - DefHeight : SmallInt; - end; - pMUI_MinMax = ^tMUI_MinMax; - - tMUIP_AskMinMax = record - MethodID : LongWord; - MinMaxInfo : PMUI_MinMax; - end; - pMUIP_AskMinMax = ^tMUIP_AskMinMax; - - { Custom Class } - tMUIP_Cleanup = record - MethodID : LongWord; - end; - pMUIP_Cleanup = ^tMUIP_Cleanup; - - { Custom Class } - tMUIP_ContextMenuBuild = record - MethodID : LongWord; - mx : LONG; - my : LONG; - end; - pMUIP_ContextMenuBuild = ^tMUIP_ContextMenuBuild; - - tMUIP_ContextMenuChoice = record - MethodID : LongWord; - item : PObject_; - end; - pMUIP_ContextMenuChoice = ^tMUIP_ContextMenuChoice; - - tMUIP_CreateBubble = record - MethodID : LongWord; - x : LONG; - y : LONG; - txt : Pchar; - flags : LongWord; - end; - pMUIP_CreateBubble = ^tMUIP_CreateBubble; - - tMUIP_CreateShortHelp = record - MethodID : LongWord; - mx : LONG; - my : LONG; - end; - pMUIP_CreateShortHelp = ^tMUIP_CreateShortHelp; - - tMUIP_DeleteBubble = record - MethodID : LongWord; - bubble : APTR; - end; - pMUIP_DeleteBubble = ^tMUIP_DeleteBubble; - - tMUIP_DeleteShortHelp = record - MethodID : LongWord; - help : STRPTR; - end; - pMUIP_DeleteShortHelp = ^tMUIP_DeleteShortHelp; - - tMUIP_DragBegin = record - MethodID : LongWord; - obj : PObject_; - end; - pMUIP_DragBegin = ^tMUIP_DragBegin; - - tMUIP_DragDrop = record - MethodID : LongWord; - obj : PObject_; - x : LONG; - y : LONG; - end; - pMUIP_DragDrop = ^tMUIP_DragDrop; - - tMUIP_DragFinish = record - MethodID : LongWord; - obj : PObject_; - end; - pMUIP_DragFinish = ^tMUIP_DragFinish; - - tMUIP_DragQuery = record - MethodID : LongWord; - obj : PObject_; - end; - pMUIP_DragQuery = ^tMUIP_DragQuery; - - tMUIP_DragReport = record - MethodID : LongWord; - obj : PObject_; - x : LONG; - y : LONG; - update : LONG; - end; - pMUIP_DragReport = ^tMUIP_DragReport; - - tMUIP_Draw = record - MethodID : LongWord; - flags : LongWord; - end; - pMUIP_Draw = ^tMUIP_Draw; - - { Custom Class } - tMUIP_DrawBackground = record - MethodID : LongWord; - left : LONG; - top : LONG; - width : LONG; - height : LONG; - xoffset : LONG; - yoffset : LONG; - flags : LONG; - end; - pMUIP_DrawBackground = ^tMUIP_DrawBackground; - - tMUIP_HandleEvent = record - MethodID : LongWord; - imsg : PIntuiMessage; - muikey : LONG; - end; - pMUIP_HandleEvent = ^tMUIP_HandleEvent; - - { Custom Class } - tMUIP_HandleInput = record - MethodID : LongWord; - imsg : PIntuiMessage; - muikey : LONG; - end; - pMUIP_HandleInput = ^tMUIP_HandleInput; - - { Custom Class } - tMUIP_Hide = record - MethodID : LongWord; - end; - pMUIP_Hide = ^tMUIP_Hide; - - { Custom Class } - tMUIP_Setup = record - MethodID : LongWord; - RenderInfo : PMUI_RenderInfo; - end; - pMUIP_Setup = ^tMUIP_Setup; - - { Custom Class } - tMUIP_Show = record - MethodID : LongWord; - end; - pMUIP_Show = ^tMUIP_Show; - - { Custom Class } - { Attributes } - { V4 is. LONG } - - const - MUIA_Background = $8042545b; - { V4 ..g LONG } - MUIA_BottomEdge = $8042e552; - { V11 isg Object } - MUIA_ContextMenu = $8042b704; - { V11 ..g Object } - MUIA_ContextMenuTrigger = $8042a2c1; - { V4 isg char } - MUIA_ControlChar = $8042120b; - { V11 isg LONG } - MUIA_CycleChain = $80421ce7; - { V4 isg BOOL } - MUIA_Disabled = $80423661; - { V11 isg BOOL } - MUIA_Draggable = $80420b6e; - { V11 isg BOOL } - MUIA_Dropable = $8042fbce; - - { V4 is. BOOL } - - const - MUIA_FillArea = $804294a3; - { V4 i.. LONG } - MUIA_FixHeight = $8042a92b; - { V4 i.. STRPTR } - MUIA_FixHeightTxt = $804276f2; - { V4 i.. LONG } - MUIA_FixWidth = $8042a3f1; - { V4 i.. STRPTR } - MUIA_FixWidthTxt = $8042d044; - { V4 i.g struct TextFont } - MUIA_Font = $8042be50; - { V4 i.. LONG } - MUIA_Frame = $8042ac64; - { V4 i.. BOOL } - MUIA_FramePhantomHoriz = $8042ed76; - { V4 i.. STRPTR } - MUIA_FrameTitle = $8042d1c7; - { V4 ..g LONG } - MUIA_Height = $80423237; - { V11 isg LONG } - MUIA_HorizDisappear = $80429615; - { V4 isg WORD } - MUIA_HorizWeight = $80426db9; - { V4 i.g LONG } - 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.. LONG } - MUIA_InputMode = $8042fb04; - { V4 ..g LONG } - MUIA_LeftEdge = $8042bec6; - { V11 i.. LONG } - MUIA_MaxHeight = $804293e4; - { V11 i.. LONG } - MUIA_MaxWidth = $8042f112; - { V4 ..g BOOL } - MUIA_Pressed = $80423535; - { V4 ..g LONG } - MUIA_RightEdge = $8042ba82; - { V4 isg BOOL } - MUIA_Selected = $8042654b; - { V11 isg STRPTR } - MUIA_ShortHelp = $80428fe3; - { V4 isg BOOL } - MUIA_ShowMe = $80429ba8; - { V4 i.. BOOL } - MUIA_ShowSelState = $8042caac; - { V4 ..g LONG } - MUIA_Timer = $80426435; - { V4 ..g LONG } - MUIA_TopEdge = $8042509b; - { V11 isg LONG } - MUIA_VertDisappear = $8042d12f; - { V4 isg WORD } - MUIA_VertWeight = $804298d0; - { V4 i.. WORD } - MUIA_Weight = $80421d1f; - { V4 ..g LONG } - MUIA_Width = $8042b59c; - { V4 ..g struct Window } - MUIA_Window = $80421591; - { V4 ..g Object } - MUIA_WindowObject = $8042669e; - 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 } - { } - - - const - MUIC_Rectangle : PChar = 'Rectangle.mui'; - - { Attributes } - { V11 i.g STRPTR } - - const - MUIA_Rectangle_BarTitle = $80426689; - { V7 i.g BOOL } - MUIA_Rectangle_HBar = $8042c943; - { V7 i.g BOOL } - MUIA_Rectangle_VBar = $80422204; - { } - { Balance } - { } - - - const - MUIC_Balance : PChar = 'Balance.mui'; - - { } - { Image } - { } - - - const - MUIC_Image : PChar = 'Image.mui'; - - { Attributes } - { V4 i.. BOOL } - - const - 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.. struct Image } - MUIA_Image_OldImage = $80424f3d; - { V4 i.. char } - MUIA_Image_Spec = $804233d5; - { V4 is. LONG } - MUIA_Image_State = $8042a3ad; - { } - { Bitmap } - { } - - - const - MUIC_Bitmap : PChar = 'Bitmap.mui'; - - { Attributes } - { V8 isg struct BitMap } - - const - MUIA_Bitmap_Bitmap = $804279bd; - { V8 isg LONG } - MUIA_Bitmap_Height = $80421560; - { V8 isg UBYTE } - MUIA_Bitmap_MappingTable = $8042e23d; - { V11 isg LONG } - MUIA_Bitmap_Precision = $80420c74; - { V11 ..g struct BitMap } - MUIA_Bitmap_RemappedBitmap = $80423a47; - { V8 isg LongWord } - MUIA_Bitmap_SourceColors = $80425360; - { V8 isg LONG } - MUIA_Bitmap_Transparent = $80422805; - { V11 i.. BOOL } - MUIA_Bitmap_UseFriend = $804239d8; - { V8 isg LONG } - MUIA_Bitmap_Width = $8042eb3a; - { } - { Bodychunk } - { } - - - const - MUIC_Bodychunk : PChar = 'Bodychunk.mui'; - - { Attributes } - { V8 isg UBYTE } - - const - MUIA_Bodychunk_Body = $8042ca67; - { V8 isg UBYTE } - MUIA_Bodychunk_Compression = $8042de5f; - { V8 isg LONG } - MUIA_Bodychunk_Depth = $8042c392; - { V8 isg UBYTE } - MUIA_Bodychunk_Masking = $80423b0e; - { } - { Text } - { } - - const - MUIC_Text : PChar = 'Text.mui'; - - { Attributes } - { V4 isg STRPTR } - - const - MUIA_Text_Contents = $8042f8dc; - { V4 i.. char } - MUIA_Text_HiChar = $804218ff; - { V4 isg STRPTR } - MUIA_Text_PreParse = $8042566d; - { V4 i.. BOOL } - MUIA_Text_SetMax = $80424d0a; - { V4 i.. BOOL } - MUIA_Text_SetMin = $80424e10; - { V11 i.. BOOL } - MUIA_Text_SetVMax = $80420d8b; - { } - { Gadget } - { } - - const - MUIC_Gadget : PChar = 'Gadget.mui'; - - { Attributes } - { V11 ..g struct Gadget } - - const - MUIA_Gadget_Gadget = $8042ec1a; - { } - { String } - { } - - - const - MUIC_String : PChar = 'String.mui'; - - { Methods } - { Attributes } - { V4 isg STRPTR } - - const - MUIA_String_Accept = $8042e3e1; - { V4 ..g STRPTR } - MUIA_String_Acknowledge = $8042026c; - { V11 isg BOOL } - MUIA_String_AdvanceOnCR = $804226de; - { V4 isg Object } - MUIA_String_AttachedList = $80420fd2; - { V4 .sg LONG } - MUIA_String_BufferPos = $80428b6c; - { V4 isg STRPTR } - MUIA_String_Contents = $80428ffd; - { V4 .sg LONG } - MUIA_String_DisplayPos = $8042ccbf; - { V7 isg struct Hook } - MUIA_String_EditHook = $80424c33; - { V4 i.g LONG } - MUIA_String_Format = $80427484; - { V4 isg LongWord } - MUIA_String_Integer = $80426e8a; - { V11 isg BOOL } - MUIA_String_LonelyEditHook = $80421569; - { V4 i.g LONG } - MUIA_String_MaxLen = $80424984; - { V4 isg STRPTR } - MUIA_String_Reject = $8042179c; - { V4 i.g BOOL } - MUIA_String_Secret = $80428769; - MUIV_String_Format_Left = 0; - MUIV_String_Format_Center = 1; - MUIV_String_Format_Right = 2; - { } - { Boopsi } - { } - - - const - MUIC_Boopsi : PChar = 'Boopsi.mui'; - - { Attributes } - { V4 isg struct IClass } - - const - MUIA_Boopsi_Class = $80426999; - { V4 isg char } - MUIA_Boopsi_ClassID = $8042bfa3; - { V4 isg LongWord } - MUIA_Boopsi_MaxHeight = $8042757f; - { V4 isg LongWord } - MUIA_Boopsi_MaxWidth = $8042bcb1; - { V4 isg LongWord } - MUIA_Boopsi_MinHeight = $80422c93; - { V4 isg LongWord } - MUIA_Boopsi_MinWidth = $80428fb2; - { V4 ..g Object } - MUIA_Boopsi_Object = $80420178; - { V4 i.. LongWord } - MUIA_Boopsi_Remember = $8042f4bd; - { V9 i.. BOOL } - MUIA_Boopsi_Smart = $8042b8d7; - { V4 isg LongWord } - MUIA_Boopsi_TagDrawInfo = $8042bae7; - { V4 isg LongWord } - MUIA_Boopsi_TagScreen = $8042bc71; - { V4 isg LongWord } - MUIA_Boopsi_TagWindow = $8042e11d; - { } - { Prop } - { } - - - const - MUIC_Prop : PChar = 'Prop.mui'; - - { Methods } - { V16 } - - const - MUIM_Prop_Decrease = $80420dd1; - { V16 } - MUIM_Prop_Increase = $8042cac0; - - type - tMUIP_Prop_Decrease = record - MethodID : LongWord; - amount : LONG; - end; - pMUIP_Prop_Decrease = ^tMUIP_Prop_Decrease; - - tMUIP_Prop_Increase = record - MethodID : LongWord; - amount : LONG; - end; - pMUIP_Prop_Increase = ^tMUIP_Prop_Increase; - - { Attributes } - { V4 isg LONG } - - const - MUIA_Prop_Entries = $8042fbdb; - { V4 isg LONG } - MUIA_Prop_First = $8042d4b2; - { V4 i.g BOOL } - MUIA_Prop_Horiz = $8042f4f3; - { V4 isg BOOL } - MUIA_Prop_Slider = $80429c3a; - { V13 i.. LONG } - MUIA_Prop_UseWinBorder = $8042deee; - { V4 isg LONG } - MUIA_Prop_Visible = $8042fea6; - MUIV_Prop_UseWinBorder_None = 0; - MUIV_Prop_UseWinBorder_Left = 1; - MUIV_Prop_UseWinBorder_Right = 2; - MUIV_Prop_UseWinBorder_Bottom = 3; - { } - { Gauge } - { } - - - const - MUIC_Gauge : PChar = 'Gauge.mui'; - - { Attributes } - { V4 isg LONG } - - const - MUIA_Gauge_Current = $8042f0dd; - { V4 isg BOOL } - MUIA_Gauge_Divide = $8042d8df; - { V4 i.. BOOL } - MUIA_Gauge_Horiz = $804232dd; - { V7 isg STRPTR } - MUIA_Gauge_InfoText = $8042bf15; - { V4 isg LONG } - MUIA_Gauge_Max = $8042bcdb; - { } - { Scale } - { } - - - const - MUIC_Scale : PChar = 'Scale.mui'; - - { Attributes } - { V4 isg BOOL } - - const - MUIA_Scale_Horiz = $8042919a; - { } - { Colorfield } - { } - - - const - MUIC_Colorfield : PChar = 'Colorfield.mui'; - - { Attributes } - { V4 isg LongWord } - - const - MUIA_Colorfield_Blue = $8042d3b0; - { V4 isg LongWord } - MUIA_Colorfield_Green = $80424466; - { V4 ..g LongWord } - MUIA_Colorfield_Pen = $8042713a; - { V4 isg LongWord } - MUIA_Colorfield_Red = $804279f6; - { V4 isg LongWord } - MUIA_Colorfield_RGB = $8042677a; - { } - { List } - { } - - - const - MUIC_List : PChar = 'List.mui'; - - { Methods } - { V4 } - - const - MUIM_List_Clear = $8042ad89; - { V11 } - MUIM_List_CreateImage = $80429804; - { V11 } - MUIM_List_DeleteImage = $80420f58; - { V4 } - MUIM_List_Exchange = $8042468c; - { V4 } - MUIM_List_GetEntry = $804280ec; - { V4 } - MUIM_List_Insert = $80426c87; - { V7 } - MUIM_List_InsertSingle = $804254d5; - { V4 } - MUIM_List_Jump = $8042baab; - { V9 } - MUIM_List_Move = $804253c2; - { V6 } - MUIM_List_NextSelected = $80425f17; - { V4 } - MUIM_List_Redraw = $80427993; - { V4 } - MUIM_List_Remove = $8042647e; - { V4 } - MUIM_List_Select = $804252d8; - { V4 } - MUIM_List_Sort = $80422275; - { V11 } - MUIM_List_TestPos = $80425f48; - - type - tMUIP_List_Clear = record - MethodID : LongWord; - end; - pMUIP_List_Clear = ^tMUIP_List_Clear; - - tMUIP_List_CreateImage = record - MethodID : LongWord; - obj : PObject_; - flags : LongWord; - end; - pMUIP_List_CreateImage = ^tMUIP_List_CreateImage; - - tMUIP_List_DeleteImage = record - MethodID : LongWord; - listimg : APTR; - end; - pMUIP_List_DeleteImage = ^tMUIP_List_DeleteImage; - - tMUIP_List_Exchange = record - MethodID : LongWord; - pos1 : LONG; - pos2 : LONG; - end; - pMUIP_List_Exchange = ^tMUIP_List_Exchange; - - tMUIP_List_GetEntry = record - MethodID : LongWord; - pos : LONG; - entry : PAPTR; - end; - pMUIP_List_GetEntry = ^tMUIP_List_GetEntry; - - tMUIP_List_Insert = record - MethodID : LongWord; - entries : PAPTR; - count : LONG; - pos : LONG; - end; - pMUIP_List_Insert = ^tMUIP_List_Insert; - - tMUIP_List_InsertSingle = record - MethodID : LongWord; - entry : APTR; - pos : LONG; - end; - pMUIP_List_InsertSingle = ^tMUIP_List_InsertSingle; - - tMUIP_List_Jump = record - MethodID : LongWord; - pos : LONG; - end; - pMUIP_List_Jump = ^tMUIP_List_Jump; - - tMUIP_List_Move = record - MethodID : LongWord; - from : LONG; - too : LONG; - end; - pMUIP_List_Move = ^tMUIP_List_Move; - - tMUIP_List_NextSelected = record - MethodID : LongWord; - pos : PLONG; - end; - pMUIP_List_NextSelected = ^tMUIP_List_NextSelected; - - tMUIP_List_Redraw = record - MethodID : LongWord; - pos : LONG; - end; - pMUIP_List_Redraw = ^tMUIP_List_Redraw; - - tMUIP_List_Remove = record - MethodID : LongWord; - pos : LONG; - end; - pMUIP_List_Remove = ^tMUIP_List_Remove; - - tMUIP_List_Select = record - MethodID : LongWord; - pos : LONG; - seltype : LONG; - state : PLONG; - end; - pMUIP_List_Select = ^tMUIP_List_Select; - - tMUIP_List_Sort = record - MethodID : LongWord; - end; - pMUIP_List_Sort = ^tMUIP_List_Sort; - - tMUIP_List_TestPos = record - MethodID : LongWord; - x : LONG; - y : LONG; - res : PMUI_List_TestPos_Result; - end; - pMUIP_List_TestPos = ^tMUIP_List_TestPos; - - { Attributes } - { V4 isg LONG } - - const - MUIA_List_Active = $8042391c; - { V4 i.. BOOL } - MUIA_List_AdjustHeight = $8042850d; - { V4 i.. BOOL } - MUIA_List_AdjustWidth = $8042354a; - { V11 isg BOOL } - MUIA_List_AutoVisible = $8042a445; - { V4 is. struct Hook } - 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; - { V11 isg BOOL } - MUIA_List_DragSortable = $80426099; - { V11 ..g LONG } - MUIA_List_DropMark = $8042aba6; - { V4 ..g LONG } - MUIA_List_Entries = $80421654; - { V4 ..g LONG } - MUIA_List_First = $804238d4; - { V4 isg STRPTR } - MUIA_List_Format = $80423c0a; - { V9 ..g LONG } - MUIA_List_InsertPosition = $8042d0cd; - { V4 i.. LONG } - MUIA_List_MinLineHeight = $8042d1c3; - { V4 is. struct Hook } - MUIA_List_MultiTestHook = $8042c2c6; - { V13 i.. APTR } - MUIA_List_Pool = $80423431; - { V13 i.. LongWord } - MUIA_List_PoolPuddleSize = $8042a4eb; - { V13 i.. LongWord } - MUIA_List_PoolThreshSize = $8042c48c; - { V4 .s. BOOL } - MUIA_List_Quiet = $8042d8c7; - { V11 isg BOOL } - MUIA_List_ShowDropMarks = $8042c6f3; - { V4 i.. APTR } - MUIA_List_SourceArray = $8042c0a0; - { V6 isg char } - MUIA_List_Title = $80423e66; - { V4 ..g LONG } - MUIA_List_Visible = $8042191f; - 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 } - { } - - - const - MUIC_Floattext : PChar = 'Floattext.mui'; - - { Attributes } - { V4 isg BOOL } - - const - MUIA_Floattext_Justify = $8042dc03; - { V4 is. STRPTR } - MUIA_Floattext_SkiPChars = $80425c7d; - { V4 is. LONG } - MUIA_Floattext_TabSize = $80427d17; - { V4 isg STRPTR } - MUIA_Floattext_Text = $8042d16a; - { } - { Volumelist } - { } - - - const - MUIC_Volumelist : PChar = 'Volumelist.mui'; - - { } - { Scrmodelist } - { } - - const - MUIC_Scrmodelist : PChar = 'Scrmodelist.mui'; - - { Attributes } - { } - { Dirlist } - { } - - - const - MUIC_Dirlist : PChar = 'Dirlist.mui'; - - { Methods } - { V4 } - - const - MUIM_Dirlist_ReRead = $80422d71; - - type - MUIP_Dirlist_ReRead = record - MethodID : LongWord; - end; - - { Attributes } - { V4 is. STRPTR } - - const - MUIA_Dirlist_AcceptPattern = $8042760a; - { V4 isg STRPTR } - MUIA_Dirlist_Directory = $8042ea41; - { V4 is. BOOL } - MUIA_Dirlist_DrawersOnly = $8042b379; - { V4 is. BOOL } - MUIA_Dirlist_FilesOnly = $8042896a; - { V4 is. BOOL } - MUIA_Dirlist_FilterDrawers = $80424ad2; - { V4 is. struct Hook } - MUIA_Dirlist_FilterHook = $8042ae19; - { V6 is. BOOL } - MUIA_Dirlist_MultiSelDirs = $80428653; - { V4 ..g LONG } - MUIA_Dirlist_NumBytes = $80429e26; - { V4 ..g LONG } - MUIA_Dirlist_NumDrawers = $80429cb8; - { V4 ..g LONG } - MUIA_Dirlist_NumFiles = $8042a6f0; - { V4 ..g STRPTR } - MUIA_Dirlist_Path = $80426176; - { V4 is. BOOL } - MUIA_Dirlist_RejectIcons = $80424808; - { V4 is. STRPTR } - MUIA_Dirlist_RejectPattern = $804259c7; - { V4 is. LONG } - MUIA_Dirlist_SortDirs = $8042bbb9; - { V4 is. BOOL } - MUIA_Dirlist_SortHighLow = $80421896; - { V4 is. LONG } - MUIA_Dirlist_SortType = $804228bc; - { V4 ..g LONG } - MUIA_Dirlist_Status = $804240de; - 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 } - { } - - const - MUIC_Numeric : PChar = 'Numeric.mui'; - - { Methods } - { V11 } - - const - 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; - - type - tMUIP_Numeric_Decrease = record - MethodID : LongWord; - amount : LONG; - end; - pMUIP_Numeric_Decrease = ^tMUIP_Numeric_Decrease; - - tMUIP_Numeric_Increase = record - MethodID : LongWord; - amount : LONG; - end; - pMUIP_Numeric_Increase = ^tMUIP_Numeric_Increase; - - tMUIP_Numeric_ScaleToValue = record - MethodID : LongWord; - scalemin : LONG; - scalemax : LONG; - scale : LONG; - end; - pMUIP_Numeric_ScaleToValue = ^tMUIP_Numeric_ScaleToValue; - - tMUIP_Numeric_SetDefault = record - MethodID : LongWord; - end; - pMUIP_Numeric_SetDefault = ^tMUIP_Numeric_SetDefault; - - tMUIP_Numeric_Stringify = record - MethodID : LongWord; - value : LONG; - end; - pMUIP_Numeric_Stringify = ^tMUIP_Numeric_Stringify; - - tMUIP_Numeric_ValueToScale = record - MethodID : LongWord; - scalemin : LONG; - scalemax : LONG; - end; - pMUIP_Numeric_ValueToScale = ^tMUIP_Numeric_ValueToScale; - - { Attributes } - { V11 isg BOOL } - - const - MUIA_Numeric_CheckAllSizes = $80421594; - { V11 isg LONG } - MUIA_Numeric_Default = $804263e8; - { V11 isg STRPTR } - MUIA_Numeric_Format = $804263e9; - { V11 isg LONG } - MUIA_Numeric_Max = $8042d78a; - { V11 isg LONG } - MUIA_Numeric_Min = $8042e404; - { V11 isg BOOL } - MUIA_Numeric_Reverse = $8042f2a0; - { V11 isg BOOL } - MUIA_Numeric_RevLeftRight = $804294a7; - { V11 isg BOOL } - MUIA_Numeric_RevUpDown = $804252dd; - { V11 isg LONG } - MUIA_Numeric_Value = $8042ae3a; - { } - { Knob } - { } - - - const - MUIC_Knob : PChar = 'Knob.mui'; - - { } - { Levelmeter } - { } - - - const - MUIC_Levelmeter : PChar = 'Levelmeter.mui'; - - { Attributes } - { V11 isg STRPTR } - - const - MUIA_Levelmeter_Label = $80420dd5; - { } - { Numericbutton } - { } - - - const - MUIC_Numericbutton : PChar = 'Numericbutton.mui'; - - { } - { Slider } - { } - - - const - MUIC_Slider : PChar = 'Slider.mui'; - - { Attributes } - { V11 isg BOOL } - - const - MUIA_Slider_Horiz = $8042fad1; - - { V6 i.. BOOL } - - const - MUIA_Slider_Quiet = $80420b26; - - { } - { Framedisplay } - { } - - - const - MUIC_Framedisplay : PChar = 'Framedisplay.mui'; - - { Attributes } - { } - { Popframe } - { } - - - const - MUIC_Popframe : PChar = 'Popframe.mui'; - - { } - { Imagedisplay } - { } - - const - MUIC_Imagedisplay : PChar = 'Imagedisplay.mui'; - - { Attributes } - { } - { Popimage } - { } - - - const - MUIC_Popimage : PChar = 'Popimage.mui'; - - { } - { Pendisplay } - { } - - - const - MUIC_Pendisplay : PChar = 'Pendisplay.mui'; - - { Methods } - { V13 } - - const - MUIM_Pendisplay_SetColormap = $80426c80; - { V13 } - MUIM_Pendisplay_SetMUIPen = $8042039d; - { V13 } - MUIM_Pendisplay_SetRGB = $8042c131; - - type - MUIP_Pendisplay_SetColormap = record - MethodID : LongWord; - colormap : LONG; - end; - - MUIP_Pendisplay_SetMUIPen = record - MethodID : LongWord; - muipen : LONG; - end; - - MUIP_Pendisplay_SetRGB = record - MethodID : LongWord; - red : LongWord; - green : LongWord; - blue : LongWord; - end; - - { Attributes } - { V13 ..g Object } - - const - MUIA_Pendisplay_Pen = $8042a748; - { V13 isg Object } - MUIA_Pendisplay_Reference = $8042dc24; - { V11 isg struct MUI_RGBcolor } - MUIA_Pendisplay_RGBcolor = $8042a1a9; - { V11 isg struct MUI_PenSpec } - MUIA_Pendisplay_Spec = $8042a204; - { } - { Poppen } - { } - - - const - MUIC_Poppen : PChar = 'Poppen.mui'; - - { } - { Group } - { } - - - const - MUIC_Group : PChar = 'Group.mui'; - - { Methods } - { V11 } - - const - MUIM_Group_ExitChange = $8042d1cc; - { V11 } - MUIM_Group_InitChange = $80420887; - { V4 } - MUIM_Group_Sort = $80427417; - - type - tMUIP_Group_ExitChange = record - MethodID : LongWord; - end; - pMUIP_Group_ExitChange = ^tMUIP_Group_ExitChange; - - tMUIP_Group_InitChange = record - MethodID : LongWord; - end; - pMUIP_Group_InitChange = ^tMUIP_Group_InitChange; - - tMUIP_Group_Sort = record - MethodID : LongWord; - obj : array[0..0] of PObject_; - end; - pMUIP_Group_Sort = ^tMUIP_Group_Sort; - - { Attributes } - { V5 isg LONG } - - const - MUIA_Group_ActivePage = $80424199; - { V4 i.. Object } - MUIA_Group_Child = $804226e6; - { V4 ..g struct List } - MUIA_Group_ChildList = $80424748; - { V4 is. LONG } - MUIA_Group_Columns = $8042f416; - { V4 i.. BOOL } - MUIA_Group_Horiz = $8042536b; - { V4 isg LONG } - MUIA_Group_HorizSpacing = $8042c651; - { V11 i.. struct Hook } - MUIA_Group_LayoutHook = $8042c3b2; - { V5 i.. BOOL } - MUIA_Group_PageMode = $80421a5f; - { V4 is. LONG } - MUIA_Group_Rows = $8042b68f; - { V4 i.. BOOL } - MUIA_Group_SameHeight = $8042037e; - { V4 i.. BOOL } - MUIA_Group_SameSize = $80420860; - { V4 i.. BOOL } - MUIA_Group_SameWidth = $8042b3ec; - { V4 is. LONG } - MUIA_Group_Spacing = $8042866d; - { V4 isg LONG } - MUIA_Group_VertSpacing = $8042e1bf; - 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 } - { } - - - const - MUIC_Mccprefs : PChar = 'Mccprefs.mui'; - - { } - { Register } - { } - - const - MUIC_Register : PChar = 'Register.mui'; - - { Attributes } - { V7 i.g BOOL } - - const - MUIA_Register_Frame = $8042349b; - { V7 i.g STRPTR } - MUIA_Register_Titles = $804297ec; - { } - { Penadjust } - { } - - - const - MUIC_Penadjust : PChar= 'Penadjust.mui'; - - { Methods } - { Attributes } - { V11 i.. BOOL } - - const - MUIA_Penadjust_PSIMode = $80421cbb; - { } - { Settingsgroup } - { } - - - const - MUIC_Settingsgroup : PChar = 'Settingsgroup.mui'; - - { Methods } - { V11 } - - const - MUIM_Settingsgroup_ConfigToGadgets = $80427043; - { V11 } - MUIM_Settingsgroup_GadgetsToConfig = $80425242; - - type - tMUIP_Settingsgroup_ConfigToGadgets = record - MethodID : LongWord; - configdata : PObject_; - end; - pMUIP_Settingsgroup_ConfigToGadgets = ^tMUIP_Settingsgroup_ConfigToGadgets; - - tMUIP_Settingsgroup_GadgetsToConfig = record - MethodID : LongWord; - configdata : PObject_; - end; - pMUIP_Settingsgroup_GadgetsToConfig = ^tMUIP_Settingsgroup_GadgetsToConfig; - - { Attributes } - { } - { Settings } - { } - - const - MUIC_Settings : PChar = 'Settings.mui'; - - { Methods } - { Attributes } - { } - { Frameadjust } - { } - - - const - MUIC_Frameadjust : PChar = 'Frameadjust.mui'; - - { Methods } - { Attributes } - { } - { Imageadjust } - { } - - - const - MUIC_Imageadjust : PChar = 'Imageadjust.mui'; - - { Methods } - { Attributes } - - const - MUIV_Imageadjust_Type_All = 0; - MUIV_Imageadjust_Type_Image = 1; - MUIV_Imageadjust_Type_Background = 2; - MUIV_Imageadjust_Type_Pen = 3; - { } - { Virtgroup } - { } - - - const - MUIC_Virtgroup : PChar = 'Virtgroup.mui'; - - { Methods } - { Attributes } - { V6 ..g LONG } - - const - MUIA_Virtgroup_Height = $80423038; - { V11 i.. BOOL } - MUIA_Virtgroup_Input = $80427f7e; - { V6 isg LONG } - MUIA_Virtgroup_Left = $80429371; - { V6 isg LONG } - MUIA_Virtgroup_Top = $80425200; - { V6 ..g LONG } - MUIA_Virtgroup_Width = $80427c49; - { } - { Scrollgroup } - { } - - - const - MUIC_Scrollgroup : PChar = 'Scrollgroup.mui'; - - { Methods } - { Attributes } - { V4 i.g Object } - - const - MUIA_Scrollgroup_Contents = $80421261; - { V9 i.. BOOL } - MUIA_Scrollgroup_FreeHoriz = $804292f3; - { V9 i.. BOOL } - MUIA_Scrollgroup_FreeVert = $804224f2; - { V16 ..g Object } - MUIA_Scrollgroup_HorizBar = $8042b63d; - { V13 i.. BOOL } - MUIA_Scrollgroup_UseWinBorder = $804284c1; - { V16 ..g Object } - MUIA_Scrollgroup_VertBar = $8042cdc0; - { } - { Scrollbar } - { } - - - const - MUIC_Scrollbar : PChar = 'Scrollbar.mui'; - - { Attributes } - { V11 i.. LONG } - - const - MUIA_Scrollbar_Type = $8042fb6b; - MUIV_Scrollbar_Type_Default = 0; - MUIV_Scrollbar_Type_Bottom = 1; - MUIV_Scrollbar_Type_Top = 2; - MUIV_Scrollbar_Type_Sym = 3; - { } - { Listview } - { } - - - const - MUIC_Listview : PChar = 'Listview.mui'; - - { Attributes } - { V7 ..g LONG } - - const - MUIA_Listview_ClickColumn = $8042d1b3; - { V7 isg LONG } - MUIA_Listview_DefClickColumn = $8042b296; - { V4 i.g BOOL } - MUIA_Listview_DoubleClick = $80424635; - { V11 isg LONG } - MUIA_Listview_DragType = $80425cd3; - { V4 i.. BOOL } - MUIA_Listview_Input = $8042682d; - { V4 i.g Object } - MUIA_Listview_List = $8042bcce; - { V7 i.. LONG } - MUIA_Listview_MultiSelect = $80427e08; - { V10 i.. BOOL } - MUIA_Listview_ScrollerPos = $8042b1b4; - { V4 ..g BOOL } - MUIA_Listview_SelectChange = $8042178f; - 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 } - { } - - - const - MUIC_Radio : PChar = 'Radio.mui'; - - { Attributes } - { V4 isg LONG } - - const - MUIA_Radio_Active = $80429b41; - { V4 i.. STRPTR } - MUIA_Radio_Entries = $8042b6a1; - { } - { Cycle } - { } - - - const - MUIC_Cycle : PChar = 'Cycle.mui'; - - { Attributes } - { V4 isg LONG } - - const - MUIA_Cycle_Active = $80421788; - { V4 i.. STRPTR } - MUIA_Cycle_Entries = $80420629; - MUIV_Cycle_Active_Next = -(1); - MUIV_Cycle_Active_Prev = -(2); - { } - { Coloradjust } - { } - - - const - MUIC_Coloradjust : PChar = 'Coloradjust.mui'; - - { Methods } - { Attributes } - { V4 isg LongWord } - - const - MUIA_Coloradjust_Blue = $8042b8a3; - { V4 isg LongWord } - MUIA_Coloradjust_Green = $804285ab; - { V4 isg LongWord } - MUIA_Coloradjust_ModeID = $8042ec59; - { V4 isg LongWord } - MUIA_Coloradjust_Red = $80420eaa; - { V4 isg LongWord } - MUIA_Coloradjust_RGB = $8042f899; - { } - { Palette } - { } - - - const - MUIC_Palette : PChar = 'Palette.mui'; - - { Attributes } - { V6 i.g struct MUI_Palette_Entry } - - const - MUIA_Palette_Entries = $8042a3d8; - { V6 isg BOOL } - MUIA_Palette_Groupable = $80423e67; - { V6 isg char } - MUIA_Palette_Names = $8042c3a2; - { } - { Popstring } - { } - - - const - MUIC_Popstring : PChar = 'Popstring.mui'; - - { Methods } - { V7 } - - const - MUIM_Popstring_Close = $8042dc52; - { V7 } - MUIM_Popstring_Open = $804258ba; - - type - tMUIP_Popstring_Close = record - MethodID : LongWord; - result : LONG; - end; - pMUIP_Popstring_Close = ^tMUIP_Popstring_Close; - - tMUIP_Popstring_Open = record - MethodID : LongWord; - end; - pMUIP_Popstring_Open = ^tMUIP_Popstring_Open; - - { Attributes } - { V7 i.g Object } - - const - MUIA_Popstring_Button = $8042d0b9; - { V7 isg struct Hook } - MUIA_Popstring_CloseHook = $804256bf; - { V7 isg struct Hook } - MUIA_Popstring_OpenHook = $80429d00; - { V7 i.g Object } - MUIA_Popstring_String = $804239ea; - { V7 isg BOOL } - MUIA_Popstring_Toggle = $80422b7a; - { } - { Popobject } - { } - - - const - MUIC_Popobject : PChar = 'Popobject.mui'; - - { Attributes } - { V7 isg BOOL } - - const - MUIA_Popobject_Follow = $80424cb5; - { V7 isg BOOL } - MUIA_Popobject_Light = $8042a5a3; - { V7 i.g Object } - MUIA_Popobject_Object = $804293e3; - { V7 isg struct Hook } - MUIA_Popobject_ObjStrHook = $8042db44; - { V7 isg struct Hook } - MUIA_Popobject_StrObjHook = $8042fbe1; - { V7 isg BOOL } - MUIA_Popobject_Volatile = $804252ec; - { V9 isg struct Hook } - MUIA_Popobject_WindowHook = $8042f194; - { } - { Poplist } - { } - - - const - MUIC_Poplist : PChar = 'Poplist.mui'; - - { Attributes } - { V8 i.. char } - - const - MUIA_Poplist_Array = $8042084c; - { } - { Popscreen } - { } - - - const - MUIC_Popscreen : PChar = 'Popscreen.mui'; - - { Attributes } - { } - { Popasl } - { } - - const - MUIC_Popasl : PChar = 'Popasl.mui'; - - { Attributes } - { V7 ..g BOOL } - - const - MUIA_Popasl_Active = $80421b37; - { V7 isg struct Hook } - MUIA_Popasl_StartHook = $8042b703; - { V7 isg struct Hook } - MUIA_Popasl_StopHook = $8042d8d2; - { V7 i.g LongWord } - MUIA_Popasl_Type = $8042df3d; - { } - { Semaphore } - { } - - - const - MUIC_Semaphore : PChar = 'Semaphore.mui'; - - { Methods } - { V11 } - - const - MUIM_Semaphore_Attempt = $80426ce2; - { V11 } - MUIM_Semaphore_AttemptShared = $80422551; - { V11 } - MUIM_Semaphore_Obtain = $804276f0; - { V11 } - MUIM_Semaphore_ObtainShared = $8042ea02; - { V11 } - MUIM_Semaphore_Release = $80421f2d; - - type - tMUIP_Semaphore_Attempt = record - MethodID : LongWord; - end; - pMUIP_Semaphore_Attempt = ^tMUIP_Semaphore_Attempt; - - tMUIP_Semaphore_AttemptShared = record - MethodID : LongWord; - end; - pMUIP_Semaphore_AttemptShared = ^tMUIP_Semaphore_AttemptShared; - - tMUIP_Semaphore_Obtain = record - MethodID : LongWord; - end; - pMUIP_Semaphore_Obtain = ^tMUIP_Semaphore_Obtain; - - tMUIP_Semaphore_ObtainShared = record - MethodID : LongWord; - end; - pMUIP_Semaphore_ObtainShared = ^tMUIP_Semaphore_ObtainShared; - - tMUIP_Semaphore_Release = record - MethodID : LongWord; - end; - pMUIP_Semaphore_Release = ^tMUIP_Semaphore_Release; - - { } - { Applist } - { } - - const - MUIC_Applist : PChar = 'Applist.mui'; - { Methods } - { } - { Cclist } - { } - - - const - MUIC_Cclist : PChar = 'Cclist.mui'; - - { Methods } - { } - { Dataspace } - { } - - - const - MUIC_Dataspace : PChar = 'Dataspace.mui'; - - { Methods } - { V11 } - - const - 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; - - type - tMUIP_Dataspace_Add = record - MethodID : LongWord; - data : APTR; - len : LONG; - id : LongWord; - end; - pMUIP_Dataspace_Add = ^tMUIP_Dataspace_Add; - - tMUIP_Dataspace_Clear = record - MethodID : LongWord; - end; - pMUIP_Dataspace_Clear = ^tMUIP_Dataspace_Clear; - - tMUIP_Dataspace_Find = record - MethodID : LongWord; - id : LongWord; - end; - pMUIP_Dataspace_Find = ^tMUIP_Dataspace_Find; - - tMUIP_Dataspace_Merge = record - MethodID : LongWord; - dataspace : PObject_; - end; - pMUIP_Dataspace_Merge = ^tMUIP_Dataspace_Merge; - - tMUIP_Dataspace_ReadIFF = record - MethodID : LongWord; - handle : Pointer;//PIFFHandle; - end; - pMUIP_Dataspace_ReadIFF = ^tMUIP_Dataspace_ReadIFF; - - tMUIP_Dataspace_Remove = record - MethodID : LongWord; - id : LongWord; - end; - pMUIP_Dataspace_Remove = ^tMUIP_Dataspace_Remove; - - tMUIP_Dataspace_WriteIFF = record - MethodID : LongWord; - handle : Pointer; //PIFFHandle; - type_ : LongWord; - id : LongWord; - end; - pMUIP_Dataspace_WriteIFF = ^tMUIP_Dataspace_WriteIFF; - - { Attributes } - { V11 i.. APTR } - - const - MUIA_Dataspace_Pool = $80424cf9; - { } - { Configdata } - { } - - - const - MUIC_Configdata : PChar = 'Configdata.mui'; - - { Methods } - { Attributes } - { } - { Dtpic } - { } - - - const - MUIC_Dtpic : PChar = 'Dtpic.mui'; - { 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 } - { ... private data follows ... } - - type - tMUI_GlobalInfo = record - priv0 : LongWord; - mgi_ApplicationObject : PObject_; - end; - pMUI_GlobalInfo = ^tMUI_GlobalInfo; - - { Instance data of notify class } - tMUI_NotifyData = record - mnd_GlobalInfo : PMUI_GlobalInfo; - mnd_UserData : LongWord; - mnd_ObjectID : LongWord; - priv1 : LongWord; - priv2 : LongWord; - priv3 : LongWord; - priv4 : LongWord; - end; - pMUI_NotifyData = ^tMUI_NotifyData; - - - { use this if a dimension is not limited. } - - const - MUI_MAXMAX = 10000; - { Hook message for custom layout } - { type of message (see defines below) } - { list of this groups children, traverse with NextObject() } - { results for MUILM_MINMAX } - { size (and result) for MUILM_LAYOUT } - - type - tMUI_LayoutMsg = record - lm_Type : LongWord; - lm_Children : PMinList; - lm_MinMax : tMUI_MinMax; - lm_Layout : record - Width : LONG; - Height : LONG; - priv5 : LongWord; - priv6 : LongWord; - end; - end; - pMUI_LayoutMsg = ^tMUI_LayoutMsg; - - { MUI wants you to calc your min & max sizes } - - const - MUILM_MINMAX = 1; - { MUI wants you to layout your children } - MUILM_LAYOUT = 2; - { return this if your hook doesn't implement lm_Type } - MUILM_UNKNOWN = -(1); - { (partial) instance data of area class } - { RenderInfo for this object } - { Font } - { min/max/default sizes } - { position and dimension } - { frame & innerspacing left offset } - { frame & innerspacing top offset } - { frame & innerspacing add. width } - { frame & innerspacing add. height } - { see definitions below } - { ... private data follows ... } - - type - tMUI_AreaData = record - mad_RenderInfo : PMUI_RenderInfo; - priv7 : LongWord; - mad_Font : PTextFont; - mad_MinMax : tMUI_MinMax; - mad_Box : tIBox; - mad_addleft : BYTE; - mad_addtop : BYTE; - mad_subwidth : BYTE; - mad_subheight : BYTE; - mad_Flags : LongWord; - end; - pMUI_AreaData = ^tMUI_AreaData; - - { Definitions for mad_Flags, other flags are private } - { completely redraw yourself } - - const - MADF_DRAWOBJECT = 1 shl 0; - { only update yourself } - MADF_DRAWUPDATE = 1 shl 1; - { 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; - - - { Information on display environment } - { valid between MUIM_Setup/MUIM_Cleanup } - { valid between MUIM_Setup/MUIM_Cleanup } - { valid between MUIM_Setup/MUIM_Cleanup } - { valid between MUIM_Setup/MUIM_Cleanup } - { valid between MUIM_Show/MUIM_Hide } - { valid between MUIM_Show/MUIM_Hide } - { valid between MUIM_Setup/MUIM_Cleanup } - { ... private data follows ... } - - - - { - If mri_Flags & MUIMRI_RECTFILL, RectFill() is quicker - than Move()/Draw() for horizontal or vertical lines. - on the current display. - } - - const - MUIMRI_RECTFILL = 1 shl 0; - { - If mri_Flags & MUIMRI_TRUECOLOR, display environment is a - cybergraphics emulated hicolor or true color display. - } - MUIMRI_TRUECOLOR = 1 shl 1; - { - If mri_Flags & MUIMRI_THINFRAMES, MUI uses thin frames - (1:1) apsect ratio instead of standard 2:1 frames. - } - MUIMRI_THINFRAMES = 1 shl 2; - { - If mri_Flags & MUIMRI_REFRESHMODE, MUI is currently - refreshing a WFLG_SIMPLEREFRESH window and is between - a BeginRefresh()/EndRefresh() pair. - } - MUIMRI_REFRESHMODE = 1 shl 3; - { the following macros can be used to get pointers to an objects - GlobalInfo and RenderInfo structures. } - - type - t__dummyXFC2__ = record - mnd : tMUI_NotifyData; - mad : tMUI_AreaData; - end; - p__dummyXFC2__ = ^t__dummyXFC2__; - - - const - - MUIKEY_RELEASE = -2; - 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; - - MUIKEYF_PRESS = 1 shl MUIKEY_PRESS; - MUIKEYF_TOGGLE = 1 shl MUIKEY_TOGGLE; - MUIKEYF_UP = 1 shl MUIKEY_UP; - MUIKEYF_DOWN = 1 shl MUIKEY_DOWN; - MUIKEYF_PAGEUP = 1 shl MUIKEY_PAGEUP; - MUIKEYF_PAGEDOWN = 1 shl MUIKEY_PAGEDOWN; - MUIKEYF_TOP = 1 shl MUIKEY_TOP; - MUIKEYF_BOTTOM = 1 shl MUIKEY_BOTTOM; - MUIKEYF_LEFT = 1 shl MUIKEY_LEFT; - MUIKEYF_RIGHT = 1 shl MUIKEY_RIGHT; - MUIKEYF_WORDLEFT = 1 shl MUIKEY_WORDLEFT; - MUIKEYF_WORDRIGHT = 1 shl MUIKEY_WORDRIGHT; - MUIKEYF_LINESTART = 1 shl MUIKEY_LINESTART; - MUIKEYF_LINEEND = 1 shl MUIKEY_LINEEND; - MUIKEYF_GADGET_NEXT = 1 shl MUIKEY_GADGET_NEXT; - MUIKEYF_GADGET_PREV = 1 shl MUIKEY_GADGET_PREV; - MUIKEYF_GADGET_OFF = 1 shl MUIKEY_GADGET_OFF; - MUIKEYF_WINDOW_CLOSE = 1 shl MUIKEY_WINDOW_CLOSE; - MUIKEYF_WINDOW_NEXT = 1 shl MUIKEY_WINDOW_NEXT; - MUIKEYF_WINDOW_PREV = 1 shl MUIKEY_WINDOW_PREV; - MUIKEYF_HELP = 1 shl MUIKEY_HELP; - MUIKEYF_POPUP = 1 shl MUIKEY_POPUP; - - { MUI_CustomClass returned by MUI_CreateCustomClass() } - { use for whatever you want } - { MUI has opened these libraries } - { for you automatically. You can } - { use them or decide to open } - { your libraries yourself. } - { pointer to super class } - { pointer to the new class } - { ... private data follows ... } - - type - tMUI_CustomClass = record - mcc_UserData : APTR; - mcc_UtilityBase : PLibrary; - mcc_DOSBase : PLibrary; - mcc_GfxBase : PLibrary; - mcc_IntuitionBase : PLibrary; - mcc_Super : PIClass; - mcc_Class : PIClass; - end; - pMUI_CustomClass = ^tMUI_CustomClass; + PMUI_EventHandlerNode = ^TMUI_EventHandlerNode; + + +const + // flags for ehn_Flags + MUI_EHF_ALWAYSKEYS = 1 shl 0; + MUI_EHF_GUIMODE = 1 shl 1; // handler will not be called if object is not visible or disabled + + MUI_EventHandlerRC_Eat = 1 shl 0; // do not invoke more handlers ers + +// 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; // Number of pens, the single definintion is below + + MUIPEN_MASK = $0000ffff; // Mask for pens from MUI_ObtainPen() + + 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_Font_Knob = -8; + MUIV_Font_NegCount = -9; + + +// List Position Test +type + TMUI_List_TestPos_Result = record + entry: LongInt; // number of entry, -1 if mouse not over valid entry + column: SmallInt; // numer of column, -1 if no valid column + flags: SmallInt; // MUI_LPR_* + xoffset: SmallInt; // x offset of mouse click relative to column start + yoffset: SmallInt; // y offset of mouse click from center of line (negative values mean click was above center, positive values mean click was below center) + end; + PMUI_List_TestPos_Result = ^TMUI_List_TestPos_Result; + +const + MUI_LPR_ABOVE = 1 shl 0; + MUI_LPR_BELOW = 1 shl 1; + MUI_LPR_LEFT = 1 shl 2; + MUI_LPR_RIGHT = 1 shl 3; + +// Structure used by MUIM_Application_AddInputHandler/RemInputHandler +type + TMUI_InputHandlerNode = record + ihn_Node: TMinNode; + ihn_Object: PObject_; + ihn_stuff: record + case LongInt of + 0 : (ihn_sigs: LongWord); + 1 : (ihn_timer: record + ihn_millis: word; + ihn_current: word; + end); + end; + ihn_Flags: LongWord; + ihn_Method: LongWord; + end; + PMUI_InputHandlerNode = ^TMUI_InputHandlerNode; + // ihn_Signals = ihn_stuff.ihn_sigs; + // ihn_Millis = ihn_stuff.(ihn_timer.ihn_millis); + // ihn_Current = ihn_stuff.(ihn_timer.ihn_current); + + TMUI_DragImage = record + bm: PBitmap; + width: SmallInt; // exact width and height of bitmap + height: SmallInt; + touchx: SmallInt; // position of pointer click relative to bitmap + touchy: SmallInt; + flags: LongWord; + end; + PMUI_DragImage =^TMUI_DragImage; + +{ 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. } + +const + MUIM_BoopsiQuery = $80427157; + + MRI_RARRAY_SIZE = 20; +type + Tdt_frame_image = record + end; + Pdt_frame_image = ^Tdt_frame_image; + + // Info about the display environment on which all Area Objects have a reference to it. + TMUI_RenderInfo = record + mri_WindowObject: PObject_; // accessable in-between MUIM_Setup/MUIM_Cleanup + mri_Screen: PScreen; // accessable in-between MUIM_Setup/MUIM_Cleanup + mri_DrawInfo: PDrawInfo; // accessable in-between MUIM_Setup/MUIM_Cleanup + mri_Pens: PWord; // accessable in-between MUIM_Setup/MUIM_Cleanup + mri_Window: PWindow; // accessable in-between MUIM_Show/MUIM_Hide + mri_RastPort: PRastPort; // accessable in-between MUIM_Show/MUIM_Hide + mri_Flags: LongWord; // accessable in-between MUIM_Setup/MUIM_Cleanup + + // the following stuff is private + mri_Colormap: PColorMap; + mri_ScreenWidth: word; + mri_ScreenHeight: word; + mri_PensStorage: array[0..MPEN_COUNT-1] of word; // storage for pens, mri_Pens points to here + + mri_Fonts: array[0..(0-MUIV_Font_NegCount)-1] of PTextFont; // Opened text fonts, done by zune_get_font() + + mri_rArray: array[0..MRI_RARRAY_SIZE-1] of PRegion; // this is for AddClipping/AddClipRegion + mri_rCount: Integer; + + mri_ClipRect: TRectangle; + mri_BorderTop: word; // The height of the windows top border (title) + mri_BorderBottom: word; // The height of the window's bottom bodder + mri_BorderLeft: word; // The width of the window's left border + mri_BorderRight: word; // The width of the window's right border + + // Stuff for Borderscrollers + mri_LeftImage: PObject_; // Valid between MUIM_Setup/MUIM_Cleanup + mri_RightImage: PObject_; + mri_UpImage: PObject_; + mri_DownImage: PObject_; + mri_SizeImage: PObject_; + + mri_VertProp: PObject_; // Valid between MUIM_Show/MUIM_Hide + mri_HorizProp: PObject_; + + // buffering + mri_BufferRP: TRastPort; + mri_BufferBM: PBitmap; + + mri_FrameImage: array[0..15] of Pdt_frame_image; + end; + PMUI_RenderInfo = ^TMUI_RenderInfo; + +const + // Flags for mri_Flags + MUIMRI_RECTFILL = 1 shl 0; // If mri_Flags and MUIMRI_RECTFILL, RectFill() is quicker than Move()/Draw() for horizontal or vertical lines. on the current display. + MUIMRI_TRUECOLOR = 1 shl 1; // If mri_Flags and MUIMRI_TRUECOLOR, display environment is a cybergraphics emulated hicolor or true color display. + MUIMRI_THINFRAMES = 1 shl 2; // If mri_Flags and MUIMRI_THINFRAMES, MUI uses thin frames (1:1) apsect ratio instead of standard 2:1 frames. + MUIMRI_REFRESHMODE = 1 shl 3; // If mri_Flags and MUIMRI_REFRESHMODE, MUI is currently refreshing a WFLG_SIMPLEREFRESH window and is between a BeginRefresh()/EndRefresh() pair. + +type + TMUI_BoopsiQuery = record + mbq_MethodID: LongWord; // always MUIM_BoopsiQuery + mbq_Screen: PScreen; // obsolete, use mbq_RenderInfo + mbq_Flags: LongWord; // read only, see below + mbq_MinWidth: LongInt; // write only, fill in min width + mbq_MinHeight: LongInt; // write only, fill in min height + mbq_MaxWidth: LongInt; // write only, fill in max width + mbq_MaxHeight: LongInt; // write only, fill in max height + mbq_DefWidth: LongInt; // write only, fill in def width + mbq_DefHeight: LongInt; // write only, fill in def height + mbq_RenderInfo: PMUI_RenderInfo; // read only, display context + end; // may grow in future ... + PMUI_BoopsiQuery = ^TMUI_BoopsiQuery; +// old structure name + MUIP_BoopsiQuery = TMUI_BoopsiQuery; + +const + MBQF_HORIZ = 1 shl 0; // object used in a horizontal context (else vertical) use this for unlimited MaxWidth/Height + MBQ_MUI_MAXMAX = 10000; + +// ********************************************************************* +// Notify +const + MUIC_Notify: PChar = 'Notify.mui'; + +// Identifier base (for Zune extensions) + MUIB_Notify = MUIB_ZUNE or $00001d00; + +// Methods + MUIM_CallHook = MUIB_MUI or $42b96b; // V4 + MUIM_Export = MUIB_MUI or $420f1c; // V12 + MUIM_FindUData = MUIB_MUI or $42c196; // V8 + MUIM_GetConfigItem = MUIB_MUI or $423edb; // V11 + MUIM_GetUData = MUIB_MUI or $42ed0c; // V8 + MUIM_Import = MUIB_MUI or $42d012; // V12 + MUIM_KillNotify = MUIB_MUI or $42d240; // V4 + MUIM_KillNotifyObj = MUIB_MUI or $42b145; // V16 + MUIM_MultiSet = MUIB_MUI or $42d356; // V7 + MUIM_NoNotifySet = MUIB_MUI or $42216f; // V9 + MUIM_Notify = MUIB_MUI or $42c9cb; // V4 + MUIM_Set = MUIB_MUI or $42549a; // V4 + MUIM_SetAsString = MUIB_MUI or $422590; // V4 + MUIM_SetUData = MUIB_MUI or $42c920; // V8 + MUIM_SetUDataOnce = MUIB_MUI or $42ca19; // V11 + MUIM_WriteLong = MUIB_MUI or $428d86; // V6 + MUIM_WriteString = MUIB_MUI or $424bf4; // V6 + // AROS Specials + MUIM_ConnectParent = MUIB_Notify or 0; // Zune V1 + MUIM_DisconnectParent = MUIB_Notify or 1; // Zune V1 + +type + TMUIP_CallHook = record + MethodID: LongWord; // MUIM_CallHook + Hook: PHook; + param1: IPTR; // more might follow + end; + PMUIP_CallHook = ^TMUIP_CallHook; + + TMUIP_Export = record + MethodID : LongWord; // MUIM_Export + dataspace : PObject_; + end; + PMUIP_Export = ^TMUIP_Export; + + TMUIP_FindUData = record + MethodID : LongWord; // MUIM_FindUData + udata: IPTR; + end; + PMUIP_FindUData = ^TMUIP_FindUData; + + TMUIP_GetConfigItem = record + MethodID: LongWord; // MUIM_GetConfigItem + id: LongWord; + storage: PIPTR; + end; + PMUIP_GetConfigItem = ^TMUIP_GetConfigItem; + + TMUIP_GetUData = record + MethodID: LongWord; // MUIM_GetUData + udata: LongWord; + attr: LongWord; + storage: PIPTR; + end; + PMUIP_GetUData = ^TMUIP_GetUData; + + TMUIP_Import = record + MethodID : LongWord; // MUIM_Import + dataspace : PObject_; + end; + PMUIP_Import = ^TMUIP_Import; + + TMUIP_KillNotify = record + MethodID : LongWord; // MUIM_KillNotify + TrigAttr : LongWord; + end; + PMUIP_KillNotify = ^TMUIP_KillNotify; + + TMUIP_KillNotifyObj = record + MethodID: LongWord; // MUIM_KillNotifyObj + TrigAttr: LongWord; + dest: PObject_; + end; + PMUIP_KillNotifyObj = ^TMUIP_KillNotifyObj; + + TMUIP_MultiSet = record + MethodID: LongWord; // MUIM_MultiSet + attr: LongWord; + val: IPTR; + obj: APTR; // more might follow + end; + PMUIP_MultiSet = ^TMUIP_MultiSet; + + TMUIP_NoNotifySet = record + MethodID: LongWord; // MUIM_NoNotifySet + attr: LongWord; + val: IPTR; // more might follow + end; + PMUIP_NoNotifySet = ^TMUIP_NoNotifySet; + + TMUIP_Notify = record + MethodID: LongWord; // MUIM_Notify + TrigAttr: LongWord; + TrigVal: IPTR; + DestObj: APTR; + FollowParams: LongWord; // more might follow + end; + PMUIP_Notify = ^TMUIP_Notify; + + TMUIP_Set = record + MethodID: LongWord; // MUIM_Set + attr: LongWord; + val: IPTR; + end; + PMUIP_Set = ^TMUIP_Set; + + TMUIP_SetAsString = record + MethodID: LongWord; // MUIM_SetAsString + attr: LongWord; + format: PChar; + val: IPTR; + end; + PMUIP_SetAsString = ^TMUIP_SetAsString; + + TMUIP_SetUData = record + MethodID: LongWord; // MUIM_SetUData + udata: IPTR; + attr: LongWord; + val: IPTR; + end; + PMUIP_SetUData = ^TMUIP_SetUData; + + TMUIP_SetUDataOnce = record + MethodID : LongWord; // MUIM_SetUDataOnce + udata: IPTR; + attr: LongWord; + val: IPTR; + end; + PMUIP_SetUDataOnce = ^TMUIP_SetUDataOnce; + + TMUIP_WriteLong = record + MethodID: LongWord; // MUIM_WriteLong + val: LongWord; + memory: PLongWord; + end; + PMUIP_WriteLong = ^TMUIP_WriteLong; + + TMUIP_WriteString = record + MethodID: LongWord; // MUIM_WriteString + str: PChar; + memory: PChar; + end; + PMUIP_WriteString = ^TMUIP_WriteString; + + TMUIP_ConnectParent = record + MethodID: LongWord; // MUIM_ConnectParent + parent: PObject_; + end; + PMUIP_ConnectParent = ^TMUIP_ConnectParent; + + TMUIP_DisconnectParent = record + MethodID: LongWord; // MUIM_DisconnectParent + end; + PMUIP_DisconnectParent = ^TMUIP_DisconnectParent; + +// Attributes +const + MUIA_ApplicationObject = MUIB_MUI or $42d3ee; // V4 ..g PObject + MUIA_AppMessage = MUIB_MUI or $421955; // V5 ..g PAppMessage + MUIA_HelpLine = MUIB_MUI or $42a825; // V4 isg LongInt + MUIA_HelpNode = MUIB_MUI or $420b85; // V4 isg STRPTR + MUIA_NoNotify = MUIB_MUI or $4237f9; // V7 .s. WordBool + MUIA_ObjectID = MUIB_MUI or $42d76e; // V11 isg LongWord + MUIA_Parent = MUIB_MUI or $42e35f; // V11 ..g PObject + MUIA_Revision = MUIB_MUI or $427eaa; // V4 ..g LongInt + MUIA_UserData = MUIB_MUI or $420313; // V4 isg LongWord + MUIA_Version = MUIB_MUI or $422301; // V4 ..g LongInt + +// ********************************************************************* +// Family +const + MUIC_Family: PChar = 'Family.mui'; + +// Identifier base (for Zune extensions) + MUIB_Family = MUIB_ZUNE or $00000c00; + +// Methods + MUIM_Family_AddHead = MUIB_MUI or $42e200; // V8 + MUIM_Family_AddTail = MUIB_MUI or $42d752; // V8 + MUIM_Family_Insert = MUIB_MUI or $424d34; // V8 + MUIM_Family_Remove = MUIB_MUI or $42f8a9; // V8 + MUIM_Family_Sort = MUIB_MUI or $421c49; // V8 + MUIM_Family_Transfer = MUIB_MUI or $42c14a; // V8 + MUIM_Family_GetChild = MUIB_MUI or $42c556; // V20 +type + TMUIP_Family_AddHead = record + MethodID: LongWord; // MUIM_Family_AddHead + obj: PObject_; + end; + PMUIP_Family_AddHead = ^TMUIP_Family_AddHead; + + TMUIP_Family_AddTail = record + MethodID: LongWord; // MUIM_Family_AddTail + obj: PObject_; + end; + PMUIP_Family_AddTail = ^TMUIP_Family_AddTail; + + TMUIP_Family_Insert = record + MethodID: LongWord; // MUIM_Family_Insert + obj: PObject_; + pred: PObject_; + end; + PMUIP_Family_Insert = ^TMUIP_Family_Insert; + + TMUIP_Family_Remove = record + MethodID : LongWord; // MUIM_Family_Remove + obj : PObject_; + end; + PMUIP_Family_Remove = ^TMUIP_Family_Remove; + + TMUIP_Family_Sort = record + MethodID : LongWord; // MUIM_Family_Sort + obj : array[0..0] of PObject_; + end; + PMUIP_Family_Sort = ^TMUIP_Family_Sort; + + TMUIP_Family_Transfer = record + MethodID: LongWord; // MUIM_Family_Transfer + family: PObject_; + end; + PMUIP_Family_Transfer = ^TMUIP_Family_Transfer; + + TMUIP_Family_GetChild = record + MethodID: LongWord; // MUIM_Family_GetChild + nr: LongInt; // MUIV_Family_GetChild_* or Number + ref: PObject_; + end; + PMUIP_Family_GetChild = ^TMUIP_Family_GetChild; + +// Attributes +const + MUIA_Family_Child = MUIB_MUI or $42c696; // V8 i.. PObject + MUIA_Family_List = MUIB_MUI or $424b9e; // V8 ..g PMinList + MUIA_Family_ChildCount = MUIB_MUI or $42b25a; // V20 ..g LongInt + + MUIV_Family_GetChild_First = 0; + MUIV_Family_GetChild_Last = -1; + MUIV_Family_GetChild_Next = -2; + MUIV_Family_GetChild_Previous = -3; + +// ********************************************************************* +// Application +const + MUIC_Application: PChar = 'Application.mui'; + +// Identifier base (for Zune extensions) + MUIB_Application = MUIB_ZUNE or $00000100; + +// Methods +const + MUIM_Application_AboutMUI = MUIB_MUI or $42d21d; // V14 + MUIM_Application_AddInputHandler = MUIB_MUI or $42f099; // V11 + MUIM_Application_CheckRefresh = MUIB_MUI or $424d68; // V11 + MUIM_Application_GetMenuCheck = MUIB_MUI or $42c0a7; // V4 + MUIM_Application_GetMenuState = MUIB_MUI or $42a58f; // V4 + MUIM_Application_Input = MUIB_MUI or $42d0f5; // V4 + MUIM_Application_InputBuffered = MUIB_MUI or $427e59; // V4 + MUIM_Application_Load = MUIB_MUI or $42f90d; // V4 + MUIM_Application_NewInput = MUIB_MUI or $423ba6; // V11 + MUIM_Application_OpenConfigWindow = MUIB_MUI or $4299ba; // V11 + MUIM_Application_PushMethod = MUIB_MUI or $429ef8; // V4 + MUIM_Application_RemInputHandler = MUIB_MUI or $42e7af; // V11 + MUIM_Application_ReturnID = MUIB_MUI or $4276ef; // V4 + MUIM_Application_Save = MUIB_MUI or $4227ef; // V4 + MUIM_Application_SetConfigItem = MUIB_MUI or $424a80; // V11 + MUIM_Application_SetMenuCheck = MUIB_MUI or $42a707; // V4 + MUIM_Application_SetMenuState = MUIB_MUI or $428bef; // V4 + MUIM_Application_ShowHelp = MUIB_MUI or $426479; // V4 + MUIM_Application_UnpushMethod = MUIB_MUI or $4211dd; // V20 + +// AROS specials + MUIM_Application_SetConfigdata = MUIB_Application or $00000000; // Zune 20030407 + MUIM_Application_OpenWindows = MUIB_Application or $00000001; // Zune 20030407 + MUIM_Application_Iconify = MUIB_Application or $00000002; // Zune: V1 + MUIM_Application_Execute = MUIB_Application or $00000003; + MUIM_Application_UpdateMenus = MUIB_Application or $00000004; // Zune 20070712 + +type + TMUIP_Application_AboutMUI = record + MethodID: LongWord; // MUIM_Application_AboutMUI + refwindow: PObject_; + end; + PMUIP_Application_AboutMUI = ^TMUIP_Application_AboutMUI; + + TMUIP_Application_AddInputHandler = record + MethodID: LongWord; // MUIM_Application_AddInputHandler + ihnode: PMUI_InputHandlerNode; + end; + PMUIP_Application_AddInputHandler = ^TMUIP_Application_AddInputHandler; + + TMUIP_Application_CheckRefresh = record + MethodID: LongWord; // MUIM_Application_CheckRefresh + end; + PMUIP_Application_CheckRefresh = ^TMUIP_Application_CheckRefresh; + + TMUIP_Application_GetMenuCheck = record + MethodID: LongWord; // MUIM_Application_GetMenuCheck + MenuID: LongWord; + end; + PMUIP_Application_GetMenuCheck = ^TMUIP_Application_GetMenuCheck; + + TMUIP_Application_GetMenuState = record + MethodID: LongWord; // MUIM_Application_GetMenuState + MenuID: LongWord; + end; + PMUIP_Application_GetMenuState = ^TMUIP_Application_GetMenuState; + + TMUIP_Application_Input = record + MethodID: LongWord; // MUIM_Application_Input + signal: PLongWord; + end; + PMUIP_Application_Input = ^TMUIP_Application_Input; + + TMUIP_Application_InputBuffered = record + MethodID: LongWord; // MUIM_Application_InputBuffered + end; + PMUIP_Application_InputBuffered = ^TMUIP_Application_InputBuffered; + + TMUIP_Application_Load = record + MethodID: LongWord; // MUIM_Application_Load + name: STRPTR; + end; + PMUIP_Application_Load = ^TMUIP_Application_Load; + + TMUIP_Application_NewInput = record + MethodID: LongWord; // MUIM_Application_NewInput + signal: PLongWord; + end; + PMUIP_Application_NewInput = ^TMUIP_Application_NewInput; + + TMUIP_Application_OpenConfigWindow = record + MethodID: LongWord; // MUIM_Application_OpenConfigWindow + flags: LongWord; + end; + PMUIP_Application_OpenConfigWindow = ^TMUIP_Application_OpenConfigWindow; + + TMUIP_Application_PushMethod = record + MethodID: LongWord; // MUIM_Application_PushMethod + dest: PObject_; + count: LongInt; // more elements may follow + end; + PMUIP_Application_PushMethod = ^TMUIP_Application_PushMethod; + + TMUIP_Application_UnpushMethod = record + MethodID: LongWord; // MUIM_Application_UnpushMethod + dest: PObject_; + NewMethodID: IPTR; + method: LongWord; + end; + PMUIP_Application_UnpushMethod = ^TMUIP_Application_UnpushMethod; + + TMUIP_Application_RemInputHandler = record + MethodID: LongWord; // MUIM_Application_RemInputHandler + ihnode: PMUI_InputHandlerNode; + end; + PMUIP_Application_RemInputHandler = ^TMUIP_Application_RemInputHandler; + + TMUIP_Application_ReturnID = record + MethodID: LongWord; // MUIM_Application_ReturnID + retid: LongWord; + end; + PMUIP_Application_ReturnID = ^TMUIP_Application_ReturnID; + + TMUIP_Application_Save = record + MethodID: LongWord; // MUIM_Application_Save + name: STRPTR; + end; + + TMUIP_Application_SetConfigItem = record + MethodID: LongWord; // MUIM_Application_SetConfigItem + item: LongWord; + data: APTR; + end; + PMUIP_Application_SetConfigItem = ^TMUIP_Application_SetConfigItem; + + TMUIP_Application_SetMenuCheck = record + MethodID: LongWord; // MUIM_Application_SetMenuCheck + MenuID: LongWord; + stat: LongInt; + end; + PMUIP_Application_SetMenuCheck = ^TMUIP_Application_SetMenuCheck; + + TMUIP_Application_SetMenuState = record + MethodID : LongWord; // MUIM_Application_SetMenuState + MenuID : LongWord; + stat : LongInt; + end; + PMUIP_Application_SetMenuState = ^TMUIP_Application_SetMenuState; + + TMUIP_Application_ShowHelp = record + MethodID: LongWord; // MUIM_Application_ShowHelp + window: PObject_; + name: PChar; + node: PChar; + line: LongInt; + end; + PMUIP_Application_ShowHelp = ^TMUIP_Application_ShowHelp; + +// Attributes +const + MUIA_Application_Active = MUIB_MUI or $4260ab; // V4 isg WordBool + MUIA_Application_Author = MUIB_MUI or $424842; // V4 i.g STRPTR + MUIA_Application_Base = MUIB_MUI or $42e07a; // V4 i.g STRPTR + MUIA_Application_Broker = MUIB_MUI or $42dbce; // V4 ..g PBroker + MUIA_Application_BrokerHook = MUIB_MUI or $428f4b; // V4 isg PHook + MUIA_Application_BrokerPort = MUIB_MUI or $42e0ad; // V6 ..g PMsgPort + MUIA_Application_BrokerPri = MUIB_MUI or $42c8d0; // V6 i.g LongInt + MUIA_Application_Commands = MUIB_MUI or $428648; // V4 isg PMUI_Command + MUIA_Application_Copyright = MUIB_MUI or $42ef4d; // V4 i.g STRPTR + MUIA_Application_Description = MUIB_MUI or $421fc6; // V4 i.g STRPTR + MUIA_Application_DiskObject = MUIB_MUI or $4235cb; // V4 isg PDiskObject + MUIA_Application_DoubleStart = MUIB_MUI or $423bc6; // V4 ..g WordBool + MUIA_Application_DropObject = MUIB_MUI or $421266; // V5 is. PObject + MUIA_Application_ForceQuit = MUIB_MUI or $4257df; // V8 ..g WordBool + MUIA_Application_HelpFile = MUIB_MUI or $4293f4; // V8 isg STRPTR + MUIA_Application_Iconified = MUIB_MUI or $42a07f; // V4 .sg WordBool + MUIA_Application_MenuAction = MUIB_MUI or $428961; // V4 ..g LongWord + MUIA_Application_MenuHelp = MUIB_MUI or $42540b; // V4 ..g LongWord + MUIA_Application_Menustrip = MUIB_MUI or $4252d9; // V8 i.. PObject + MUIA_Application_RexxHook = MUIB_MUI or $427c42; // V7 isg PHook + MUIA_Application_RexxMsg = MUIB_MUI or $42fd88; // V4 ..g PRxMsg + MUIA_Application_RexxString = MUIB_MUI or $42d711; // V4 .s. STRPTR + MUIA_Application_SingleTask = MUIB_MUI or $42a2c8; // V4 i.. WordBool + MUIA_Application_Sleep = MUIB_MUI or $425711; // V4 .s. WordBool + MUIA_Application_Title = MUIB_MUI or $4281b8; // V4 i.g STRPTR + MUIA_Application_UseCommodities = MUIB_MUI or $425ee5; // V10 i.. WordBool + MUIA_Application_UseRexx = MUIB_MUI or $422387; // V10 i.. WordBool + MUIA_Application_SetWinPos = MUIB_MUI or $432387; + MUIA_Application_GetWinPos = MUIB_MUI or $432388; + MUIA_Application_SearchWinId = MUIB_MUI or $432389; + MUIA_Application_GetWinPosAddr = MUIB_MUI or $432390; + MUIA_Application_GetWinPosSize = MUIB_MUI or $432391; + MUIA_Application_CopyWinPosToApp = MUIB_MUI or $432392; + MUIA_Application_Version = MUIB_MUI or $42b33f; // V4 i.g STRPTR Standard DOS version string Example: "$VER: Program 1.3 (14.11.03)". Zune + // Zune extension: If unspecified or NULL, it will be automatically + // constructed from MUIA_Application_Title, MUIA_Application_Version_Number, + // MUIA_Application_Version_Date and MUIA_Application_Version_Extra as + // follows: "$VER: <version> (<date>) [<extra>]". + MUIA_Application_Window = MUIB_MUI or $42bfe0; // V4 i.. PObject + MUIA_Application_WindowList = MUIB_MUI or $429abe; // V13 ..g PList + + MUIA_Application_Configdata = MUIB_Application or $0; // Zune 20030407 .s. PObject + MUIA_Application_Version_Number = MUIB_Application or $1; // Zune i.g CONST_STRPTR Version number. Examples: "1.5", "2.37.4b". + MUIA_Application_Version_Date = MUIB_Application or $2; // Zune i.g CONST_STRPTR Date information on the standard international YYYY-MM-DD format. + MUIA_Application_Version_Extra = MUIB_Application or $3; // Zune i.g CONST_STRPTR Arbitrary extra version information. Example: "nightly build". + +// MUI Obsolete tags +{$ifdef MUI_OBSOLETE} + MUIA_Application_Menu = MUIB_MUI or $420e1f; // V4 i.g PNewMenu +{$endif} // MUI_OBSOLETE + + MAXWINS = 300; + + MUIV_Application_Package_NetConnect = $a3ff7b49; + +type + TWindowPos = record + id: LongWord; + x1, y1, w1, h1: SmallInt; + x2, y2, w2, h2: SmallInt; + end; + +const +// Flags for ihn_Flags set ihn_Ticks to number of 1/100 sec ticks you want to be triggered + MUIIHNF_TIMER = 1 shl 0; // you want to be called every ihn_Millis msecs + +// Special values for the name field of MUIM_Application_Load/Save + MUIV_Application_Save_ENV = 0; + MUIV_Application_Save_ENVARC = -1; + MUIV_Application_Load_ENV = 0; + MUIV_Application_Load_ENVARC = -1; + +// Special Values MUIM_Application_ReturnID. Usually program should leave the event loop if this is set + MUIV_Application_ReturnID_Quit = -1; + +type + TMUI_GlobalInfo = record + priv0: LongWord; + mgi_ApplicationObject: PObject_; + // The following data is private only, might be extended! + end; + PMUI_GlobalInfo = ^TMUI_GlobalInfo; + +// ********************************************************************* +// Window +const + MUIC_Window: PChar = 'Window.mui'; + +// Identifier base (for Zune extensions) + MUIB_Window = MUIB_ZUNE or $00003600; + +// Methods + MUIM_Window_ActionIconify = MUIB_MUI or $422cc0; // V18 undoc + MUIM_Window_AddEventHandler = MUIB_MUI or $4203b7; // V16 + MUIM_Window_Cleanup = MUIB_MUI or $42ab26; // V18 undoc For custom classes only + MUIM_Window_RemEventHandler = MUIB_MUI or $42679e; // V16 + MUIM_Window_ScreenToBack = MUIB_MUI or $42913d; // V4 + MUIM_Window_ScreenToFront = MUIB_MUI or $4227a4; // V4 + MUIM_Window_Setup = MUIB_MUI or $42c34c; // V18 undoc For custom Classes only + MUIM_Window_Snapshot = MUIB_MUI or $42945e; // V11 + MUIM_Window_ToBack = MUIB_MUI or $42152e; // V4 + MUIM_Window_ToFront = MUIB_MUI or $42554f; // V4 + // AROS specials + MUIM_Window_AllocGadgetID = MUIB_Window or $1; // Zune: V1 - allocate a GadgetID for BOOPSI gadgets + MUIM_Window_FreeGadgetID = MUIB_Window or $4; // Zune: V1 - free the GadgetID for BOOPSI gadgets + +type + TMUIP_Window_ActionIconify = record + MethodID: LongWord; // MUIM_Window_ActionIconify + end; + PMUIP_Window_ActionIconify = ^TMUIP_Window_ActionIconify; + + TMUIP_Window_AddEventHandler = record + MethodID: LongWord; // MUIM_Window_AddEventHandler + ehnode: PMUI_EventHandlerNode; + end; + PMUIP_Window_AddEventHandler = ^TMUIP_Window_AddEventHandler; + + TMUIP_Window_Cleanup = record + MethodID: LongWord; // MUIM_Window_Cleanup + end; + PMUIP_Window_Cleanup = ^TMUIP_Window_Cleanup; + + TMUIP_Window_RemEventHandler = record + MethodID: LongWord; // MUIM_Window_RemEventHandler + ehnode: PMUI_EventHandlerNode; + end; + PMUIP_Window_RemEventHandler = ^TMUIP_Window_RemEventHandler; + + TMUIP_Window_ScreenToBack = record + MethodID: LongWord; // MUIM_Window_ScreenToBack + end; + PMUIP_Window_ScreenToBack = ^TMUIP_Window_ScreenToBack; + + TMUIP_Window_ScreenToFront = record + MethodID: LongWord; // MUIM_Window_ScreenToFront + end; + PMUIP_Window_ScreenToFront = ^TMUIP_Window_ScreenToFront; + + TMUIP_Window_Setup = record + MethodID: LongWord; // MUIM_Window_Setup + end; + PMUIP_Window_Setup = ^TMUIP_Window_Setup; + + TMUIP_Window_Snapshot = record + MethodID: LongWord; // MUIM_Window_Snapshot + flags: LongInt; + end; + PMUIP_Window_Snapshot = ^TMUIP_Window_Snapshot; + + TMUIP_Window_ToBack = record + MethodID: LongWord; // MUIM_Window_ToBack + end; + PMUIP_Window_ToBack = ^TMUIP_Window_ToBack; + + TMUIP_Window_ToFront = record + MethodID: LongWord; // MUIM_Window_ToFront + end; + PMUIP_Window_ToFront = ^TMUIP_Window_ToFront; + + TMUIP_Window_AddControlCharHandler = record + MethodID: LongWord; + ccnode: PMUI_EventHandlerNode; + end; + PMUIP_Window_AddControlCharHandler = ^TMUIP_Window_AddControlCharHandler; + + TMUIP_Window_AllocGadgetID = record + MethodID: LongWord; + end; + PMUIP_Window_AllocGadgetID = ^TMUIP_Window_AllocGadgetID; + + TMUIP_Window_DrawBackground = record + MethodID: LongWord; + left: LongInt; + top: LongInt; + width: LongInt; + height: LongInt; + xoffset: LongInt; + yoffset: LongInt; + flags: LongInt; + end; + PMUIP_Window_DrawBackground = ^TMUIP_Window_DrawBackground; + + TMUIP_Window_DragObject = record + MethodID: LongWord; + obj: PObject_; + touchx: LongInt; + touchy: LongInt; + flags: LongWord; + end; + PMUIP_Window_DragObject = ^TMUIP_Window_DragObject; + + TMUIP_Window_FreeGadgetID = record + MethodID: LongWord; + gadgetid: LongInt; + end; + PMUIP_Window_FreeGadgetID = ^TMUIP_Window_FreeGadgetID; + + TMUIP_Window_RecalcDisplay = record + MethodID: LongWord; + originator: PObject_; + end; + PMUIP_Window_RecalcDisplay = ^TMUIP_Window_RecalcDisplay; + + TMUIP_Window_RemControlCharHandler = record + MethodID: LongWord; + ccnode: PMUI_EventHandlerNode; + end; + PMUIP_Window_RemControlCharHandler = ^TMUIP_Window_RemControlCharHandler; + + TMUIP_Window_UpdateMenu = record + MethodID: LongWord; + end; + +{$ifdef MUI_OBSOLETE} +const + MUIM_Window_GetMenuCheck = MUIB_MUI or $420414; // V4 + MUIM_Window_GetMenuState = MUIB_MUI or $420d2f; // V4 + MUIM_Window_SetCycleChain = MUIB_MUI or $426510; // V4 + MUIM_Window_SetMenuCheck = MUIB_MUI or $422243; // V4 + MUIM_Window_SetMenuState = MUIB_MUI or $422b5e; // V4 +type + TMUIP_Window_GetMenuCheck = record + MethodID: LongWord; + MenuID: LongWord; + end; + + TMUIP_Window_GetMenuState = record + MethodID: LongWord; + MenuID: LongWord; + end; + + TMUIP_Window_SetCycleChain = record + MethodID: LongWord; + obj: array[0..0] of PObject_; + end; + + TMUIP_Window_SetMenuCheck = record + MethodID: LongWord; + MenuID: LongWord; + stat: LongInt; + end; + + TMUIP_Window_SetMenuState = record + MethodID: LongWord; + MenuID: LongWord; + stat: LongInt; + end; +{$endif} + +// Attributes +const + MUIA_Window_Activate = MUIB_MUI or $428d2f; // V4 isg WordBool + MUIA_Window_ActiveObject = MUIB_MUI or $427925; // V4 .sg PObject + MUIA_Window_AltHeight = MUIB_MUI or $42cce3; // V4 i.g LongInt + MUIA_Window_AltLeftEdge = MUIB_MUI or $422d65; // V4 i.g LongInt + MUIA_Window_AltTopEdge = MUIB_MUI or $42e99b; // V4 i.g LongInt + MUIA_Window_AltWidth = MUIB_MUI or $4260f4; // V4 i.g LongInt + MUIA_Window_AppWindow = MUIB_MUI or $4280cf; // V5 i.. WordBool + MUIA_Window_Backdrop = MUIB_MUI or $42c0bb; // V4 i.. WordBool + MUIA_Window_Borderless = MUIB_MUI or $429b79; // V4 i.. WordBool + MUIA_Window_CloseGadget = MUIB_MUI or $42a110; // V4 i.. WordBool + MUIA_Window_CloseRequest = MUIB_MUI or $42e86e; // V4 ..g WordBool + MUIA_Window_DefaultObject = MUIB_MUI or $4294d7; // V4 isg PObject + MUIA_Window_DepthGadget = MUIB_MUI or $421923; // V4 i.. WordBool + MUIA_Window_DisableKeys = MUIB_MUI or $424c36; // V15 isg LongWord undoc + MUIA_Window_DragBar = MUIB_MUI or $42045d; // V4 i.. WordBool + MUIA_Window_FancyDrawing = MUIB_MUI or $42bd0e; // V8 isg WordBool + MUIA_Window_Height = MUIB_MUI or $425846; // V4 i.g LongInt + MUIA_Window_ID = MUIB_MUI or $4201bd; // V4 isg LongWord + MUIA_Window_InputEvent = MUIB_MUI or $4247d8; // V4 ..g PInputEvent + MUIA_Window_IsSubWindow = MUIB_MUI or $42b5aa; // V4 isg WordPool + MUIA_Window_LeftEdge = MUIB_MUI or $426c65; // V4 i.g LongInt + + MUIA_Window_MenuAction = MUIB_MUI or $427521; // V8 isg LongWord + MUIA_Window_Menustrip = MUIB_MUI or $42855e; // V8 i.g PObject + MUIA_Window_MouseObject = MUIB_MUI or $42bf9b; // V10 ..g PObject + MUIA_Window_NeedsMouseObject = MUIB_MUI or $42372a; // V10 i.. WordBool + MUIA_Window_NoMenus = MUIB_MUI or $429df5; // V4 is. WordBool + MUIA_Window_Open = MUIB_MUI or $428aa0; // V4 .sg WordBool + MUIA_Window_PublicScreen = MUIB_MUI or $4278e4; // V6 isg STRPTR + MUIA_Window_RefWindow = MUIB_MUI or $4201f4; // V4 is. PObject + MUIA_Window_RootObject = MUIB_MUI or $42cba5; // V4 isg PObject + MUIA_Window_Screen = MUIB_MUI or $42df4f; // V4 isg PScreen + MUIA_Window_ScreenTitle = MUIB_MUI or $4234b0; // V5 isg STRPTR + MUIA_Window_SizeGadget = MUIB_MUI or $42e33d; // V4 i.. WordBool + MUIA_Window_SizeRight = MUIB_MUI or $424780; // V4 i.. WordBool + MUIA_Window_Sleep = MUIB_MUI or $42e7db; // V4 .sg WordBool + MUIA_Window_Title = MUIB_MUI or $42ad3d; // V4 isg STRPTR + MUIA_Window_TopEdge = MUIB_MUI or $427c66; // V4 i.g LongInt + MUIA_Window_UseBottomBorderScroller = MUIB_MUI or $424e79; // V13 isg WordBool + MUIA_Window_UseLeftBorderScroller = MUIB_MUI or $42433e; // V13 isg WordBool + MUIA_Window_UseRightBorderScroller = MUIB_MUI or $42c05e; // V13 isg WordBool + MUIA_Window_Width = MUIB_MUI or $42dcae; // V4 i.g LongInt + MUIA_Window_Window = MUIB_MUI or $426a42; // V4 ..g PWindow + // AROS specials + MUIA_Window_EraseArea = MUIB_Window or $0; // Zune i.. WordBool default: True + MUIA_Window_ZoomGadget = MUIB_Window or $2; // Zune i.. WordBool Show ZoomGadget + MUIA_Window_ToolBox = MUIB_Window or $3; // Zune i.. WordBool default: False Window should be opened as ToolBox + +// Values + MUIV_Window_ActiveObject_None = 0; + MUIV_Window_ActiveObject_Next = -1; + MUIV_Window_ActiveObject_Prev = -2; + + MUIV_Window_AltHeight_Scaled = -1000; + MUIV_Window_AltLeftEdge_Centered = -1; + MUIV_Window_AltLeftEdge_Moused = -2; + MUIV_Window_AltLeftEdge_NoChange = -1000; + MUIV_Window_AltTopEdge_Centered = -1; + MUIV_Window_AltTopEdge_Moused = -2; + MUIV_Window_AltTopEdge_NoChange = -1000; + MUIV_Window_AltWidth_Scaled = -1000; + + MUIV_Window_Height_Scaled = -1000; + MUIV_Window_Height_Default = -1001; + MUIV_Window_LeftEdge_Centered = -1; + MUIV_Window_LeftEdge_Moused = -2; + MUIV_Window_TopEdge_Centered = -1; + MUIV_Window_TopEdge_Moused = -2; + MUIV_Window_Width_Scaled = -1000; + MUIV_Window_Width_Default = -1001; + + MUIV_Window_Button_MUI = 1; + MUIV_Window_Button_Snapshot = 2; + MUIV_Window_Button_Iconify = 4; + MUIV_Window_Button_Popup = 8; + +{$ifdef MUI_OBSOLETE} + MUIA_Window_Menu = MUIB_MUI or $42db94; // V4 i.. PNewMenu + + MUIV_Window_Menu_NoMenu = -1; +{$endif} + + +// ********************************************************************* +// Area +const + MUIC_Area: PChar = 'Area.mui'; + +// Identifier base (for Zune extensions) + MUIB_Area = MUIB_ZUNE or $00000200; + +// Methods +const + MUIM_AskMinMax = MUIB_MUI or $423874; // V4 for Custom Classes only + MUIM_Cleanup = MUIB_MUI or $42d985; // V4 for Custom Classes only + MUIM_ContextMenuBuild = MUIB_MUI or $429d2e; // V11 + MUIM_ContextMenuChoice = MUIB_MUI or $420f0e; // V11 + MUIM_CreateBubble = MUIB_MUI or $421c41; // V18 + MUIM_CreateDragImage = MUIB_MUI or $42eb6f; // V18 for Custom Classes only, undoc + MUIM_CreateShortHelp = MUIB_MUI or $428e93; // V11 + MUIM_CustomBackfill = MUIB_MUI or $428d73; // Undoc + MUIM_DeleteBubble = MUIB_MUI or $4211af; // V18 + MUIM_DeleteDragImage = MUIB_MUI or $423037; // V18 for Custom Classes only, undoc + MUIM_DeleteShortHelp = MUIB_MUI or $42d35a; // V11 + MUIM_DoDrag = MUIB_MUI or $4216bb; // V18 for Custom Classes only, undoc + MUIM_DragBegin = MUIB_MUI or $42c03a; // V11 + MUIM_DragDrop = MUIB_MUI or $42c555; // V11 + MUIM_DragFinish = MUIB_MUI or $4251f0; // V11 + MUIM_DragQuery = MUIB_MUI or $420261; // V11 + MUIM_DragReport = MUIB_MUI or $42edad; // V11 + MUIM_Draw = MUIB_MUI or $426f3f; // V4 Custom Class + MUIM_DrawBackground = MUIB_MUI or $4238ca; // V11 + MUIM_GoActive = MUIB_MUI or $42491a; // Undoc + MUIM_GoInactive = MUIB_MUI or $422c0c; // Undoc + MUIM_HandleEvent = MUIB_MUI or $426d66; // V16 Custom Class + MUIM_HandleInput = MUIB_MUI or $422a1a; // V4 Custom Class + MUIM_Hide = MUIB_MUI or $42f20f; // V4 Custom Class + MUIM_Setup = MUIB_MUI or $428354; // V4 Custom Class + MUIM_Show = MUIB_MUI or $42cc84; // V4 Custom Class + // AROS Specials + MUIM_UnknownDropDestination = MUIB_MUI or $425550; // Zune + MUIM_Layout = MUIB_Area or $0; + MUIM_DrawParentBackground = MUIB_Area or $1; + + MUIV_CreateBubble_DontHidePointer = 1 shl 0; + +type +// MUI_MinMax structure holds information about minimum, maximum and default dimensions of an object. + TMUI_MinMax = record + MinWidth: SmallInt; + MinHeight: SmallInt; + MaxWidth: SmallInt; + MaxHeight: SmallInt; + DefWidth: SmallInt; + DefHeight: SmallInt; + end; + PMUI_MinMax = ^TMUI_MinMax; + + TMUIP_AskMinMax = record + MethodID: LongWord; // MUIM_AskMinMax + MinMaxInfo: PMUI_MinMax; + end; + PMUIP_AskMinMax = ^TMUIP_AskMinMax; + + TMUIP_Cleanup = record + MethodID: LongWord; // MUIM_Cleanup + end; + PMUIP_Cleanup = ^TMUIP_Cleanup; + + TMUIP_ContextMenuBuild = record + MethodID: LongWord; // MUIM_ContextMenuBuild + mx: LongInt; + my: LongInt; + end; + PMUIP_ContextMenuBuild = ^TMUIP_ContextMenuBuild; + + TMUIP_ContextMenuChoice = record + MethodID: LongWord; // MUIM_ContextMenuChoice + item: PObject_; + end; + PMUIP_ContextMenuChoice = ^TMUIP_ContextMenuChoice; + + TMUIP_CreateBubble = record + MethodID: LongWord; // MUIM_CreateBubble + x: LongInt; + y: LongInt; + txt : PChar; + flags: LongWord; + end; + PMUIP_CreateBubble = ^TMUIP_CreateBubble; + + TMUIP_CreateDragImage = record + MethodID: LongWord; // MUIM_CreateDragImage + touchx: LongInt; + touchy: LongInt; + flags: LongWord; + end; + PMUIP_CreateDragImage = ^TMUIP_CreateDragImage; + + TMUIP_CreateShortHelp = record + MethodID: LongWord; // MUIM_CreateShortHelp + mx: LongInt; + my: LongInt; + end; + PMUIP_CreateShortHelp = ^TMUIP_CreateShortHelp; + + TMUIP_CustomBackfill = record + MethodID: LongWord; // MUIM_CustomBackfill + left: LongInt; + top: LongInt; + right: LongInt; + bottom: LongInt; + xoffset: LongInt; + yoffset: LongInt; + end; + PMUIP_CustomBackfill = ^TMUIP_CustomBackfill; + + TMUIP_DeleteBubble = record + MethodID: LongWord; // MUIM_DeleteBubble + bubble: APTR; + end; + PMUIP_DeleteBubble = ^TMUIP_DeleteBubble; + + TMUIP_DeleteDragImage = record + MethodID: LongWord; // MUIM_DeleteDragImage + di: PMUI_DragImage; + end; + PMUIP_DeleteDragImage = ^TMUIP_DeleteDragImage; + + TMUIP_DeleteShortHelp = record + MethodID: LongWord; // MUIM_DeleteShortHelp + help: STRPTR; + end; + PMUIP_DeleteShortHelp = ^TMUIP_DeleteShortHelp; + + TMUIP_DoDrag = record + MethodID: LongWord; // MUIM_DoDrag + touchx: LongInt; + touchy: LongInt; + flags: LongWord; + end; + PMUIP_DoDrag = ^TMUIP_DoDrag; + + TMUIP_UnknownDropDestination = record + MethodID: LongWord; // MUIM_UnknownDropDestination + imsg: PIntuiMessage; + end; + PMUIP_UnknownDropDestination = ^TMUIP_UnknownDropDestination; + + TMUIP_DragBegin = record + MethodID: LongWord; // MUIM_DragBegin + obj: PObject_; + end; + PMUIP_DragBegin = ^TMUIP_DragBegin; + + TMUIP_DragDrop = record + MethodID: LongWord; // MUIM_DragDrop + obj: PObject_; + x: LongInt; + y: LongInt; + end; + PMUIP_DragDrop = ^TMUIP_DragDrop; + + TMUIP_DragFinish = record + MethodID: LongWord; // MUIM_DragFinish + obj: PObject_; + end; + PMUIP_DragFinish = ^TMUIP_DragFinish; + + TMUIP_DragQuery = record + MethodID: LongWord; // MUIM_DragQuery + obj: PObject_; + end; + PMUIP_DragQuery = ^TMUIP_DragQuery; + + TMUIP_DragReport = record + MethodID: LongWord; // MUIM_DragReport + obj: PObject_; + x: LongInt; + y: LongInt; + update: LongInt; + end; + PMUIP_DragReport = ^TMUIP_DragReport; + + TMUIP_Draw = record + MethodID: LongWord; // MUIM_Draw + flags: LongWord; + end; + PMUIP_Draw = ^TMUIP_Draw; + + TMUIP_DrawBackground = record + MethodID: LongWord; // MUIM_DrawBackground + left: LongInt; + top: LongInt; + width: LongInt; + height: LongInt; + xoffset: LongInt; + yoffset: LongInt; + flags: LongInt; + end; + PMUIP_DrawBackground = ^TMUIP_DrawBackground; + + TMUIP_DrawBackgroundBuffered = record + MethodID: LongWord; + rp: PRastPort; + left: LongInt; + top: LongInt; + width: LongInt; + height: LongInt; + xoffset: LongInt; + yoffset: LongInt; + flags: LongInt; + end; + PMUIP_DrawBackgroundBuffered = ^TMUIP_DrawBackgroundBuffered; + + TMUIP_GoActive = record + MethodID: LongWord; // MUIM_GoActive + end; + PMUIP_GoActive = ^TMUIP_GoActive; + + TMUIP_GoInactive = record + MethodID: LongWord; // MUIM_GoInactive + end; + PMUIP_GoInactive = ^TMUIP_GoInactive; + + TMUIP_HandleEvent = record + MethodID: LongWord; // MUIM_HandleEvent + imsg: PIntuiMessage; + muikey: LongInt; + end; + PMUIP_HandleEvent = ^TMUIP_HandleEvent; + + TMUIP_HandleInput = record + MethodID: LongWord; // MUIM_HandleInput + imsg: PIntuiMessage; + muikey: LongInt; + end; + PMUIP_HandleInput = ^TMUIP_HandleInput; + + TMUIP_Hide = record + MethodID: LongWord; // MUIM_Hide + end; + PMUIP_Hide = ^TMUIP_Hide; + + TMUIP_Setup = record + MethodID: LongWord; // MUIM_Setup + RenderInfo: PMUI_RenderInfo; + end; + PMUIP_Setup = ^TMUIP_Setup; + + TMUIP_Show = record + MethodID: LongWord; // MUIM_Show + end; + PMUIP_Show = ^TMUIP_Show; + + TMUIP_Layout = record + MethodID: LongWord; // MUIM_Layout + end; + PMUIP_Layout = ^TMUIP_Layout; + + TMUIP_DrawParentBackground = record + MethodID: LongWord; // MUIM_DrawParentBackground + left: LongInt; + top: LongInt; + width: LongInt; + height: LongInt; + xoffset: LongInt; + yoffset: LongInt; + flags: LongInt; + end; + PMUIP_DrawParentBackground = ^TMUIP_DrawParentBackground; + +const + MUIF_DRAGIMAGE_HASMASK = 1 shl 0; // Use provided mask for drawing Not supported at the moment + MUIF_DRAGIMAGE_SOURCEALPHA = 1 shl 1; // Use drag image source alpha information for transparent drawing + +// Attributes +const + MUIA_Background = MUIB_MUI or $42545b; // V4 is. LongInt + MUIA_BottomEdge = MUIB_MUI or $42e552; // V4 ..g LongInt + MUIA_ContextMenu = MUIB_MUI or $42b704; // V11 isg PObject + MUIA_ContextMenuTrigger = MUIB_MUI or $42a2c1; // V11 ..g PObject + MUIA_ControlChar = MUIB_MUI or $42120b; // V4 isg Char + MUIA_CycleChain = MUIB_MUI or $421ce7; // V11 isg LongInt + MUIA_Disabled = MUIB_MUI or $423661; // V4 isg WordBool + MUIA_DoubleBuffer = MUIB_MUI or $42a9c7; // V20 isg WordBool + MUIA_Draggable = MUIB_MUI or $420b6e; // V11 isg WordBool + MUIA_Dropable = MUIB_MUI or $42fbce; // V11 isg WordBool + MUIA_FillArea = MUIB_MUI or $4294a3; // V4 is. WordBool + + MUIA_FixHeight = MUIB_MUI or $42a92b; // V4 i.. LongInt + MUIA_FixHeightTxt = MUIB_MUI or $4276f2; // V4 i.. STRPTR + MUIA_FixWidth = MUIB_MUI or $42a3f1; // V4 i.. LongInt + MUIA_FixWidthTxt = MUIB_MUI or $42d044; // V4 i.. STRPTR + + MUIA_Font = MUIB_MUI or $42be50; // V4 i.g PTextFont + MUIA_Frame = MUIB_MUI or $42ac64; // V4 i.. LongInt + MUIA_FramePhantomHoriz = MUIB_MUI or $42ed76; // V4 i.. WordBool + MUIA_FrameTitle = MUIB_MUI or $42d1c7; // V4 i.. STRPTR + + MUIA_Height = MUIB_MUI or $423237; // V4 ..g LongInt + MUIA_HorizDisappear = MUIB_MUI or $429615; // V11 isg LongInt + MUIA_HorizWeight = MUIB_MUI or $426db9; // V4 isg SmallInt + + MUIA_InnerBottom = MUIB_MUI or $42f2c0; // V4 i.g LongInt + MUIA_InnerLeft = MUIB_MUI or $4228f8; // V4 i.g LongInt + MUIA_InnerRight = MUIB_MUI or $4297ff; // V4 i.g LongInt + MUIA_InnerTop = MUIB_MUI or $421eb6; // V4 i.g LongInt + MUIA_InputMode = MUIB_MUI or $42fb04; // V4 i.. LongInt + + MUIA_LeftEdge = MUIB_MUI or $42bec6; // V4 ..g LongInt + MUIA_MaxHeight = MUIB_MUI or $4293e4; // V11 i.. LongInt + MUIA_MaxWidth = MUIB_MUI or $42f112; // V11 i.. LongInt + + MUIA_Pressed = MUIB_MUI or $423535; // V4 ..g WordBool + MUIA_RightEdge = MUIB_MUI or $42ba82; // V4 ..g LongInt + MUIA_Selected = MUIB_MUI or $42654b; // V4 isg WordBool + MUIA_ShortHelp = MUIB_MUI or $428fe3; // V11 isg STRPTR + MUIA_ShowMe = MUIB_MUI or $429ba8; // V4 isg WordBool + MUIA_ShowSelState = MUIB_MUI or $42caac; // V4 i.. WordBool + MUIA_Timer = MUIB_MUI or $426435; // V4 ..g LongInt + MUIA_TopEdge = MUIB_MUI or $42509b; // V4 ..g LongInt + MUIA_VertDisappear = MUIB_MUI or $42d12f; // V11 isg LongInt + MUIA_VertWeight = MUIB_MUI or $4298d0; // V4 isg SmallInt + MUIA_Weight = MUIB_MUI or $421d1f; // V4 i.. SmallInt + MUIA_Width = MUIB_MUI or $42b59c; // V4 ..g LongInt + MUIA_Window = MUIB_MUI or $421591; // V4 ..g PWindow + MUIA_WindowObject = MUIB_MUI or $42669e; // V4 ..g PObject + + // AROS Special + MUIA_NestedDisabled = MUIB_Area or $0; // Zune 20030530 isg WordBool + +{$ifdef MUI_OBSOLETE} + MUIA_ExportID = MUIB_MUI or $42d76e; // V4 isg LongWord +{$endif} + +type + TMUI_ImageSpec_intern = record + end; + PMUI_ImageSpec_intern = ^TMUI_ImageSpec_intern; + +type + { (partial) instance data of area class } + TMUI_AreaData = record + mad_RenderInfo : PMUI_RenderInfo; // RenderInfo for this object + mad_Background: PMUI_ImageSpec_intern; // bg setting - private + mad_Font: PTextFont; // Font which is used to draw + mad_MinMax: TMUI_MinMax; // min/max/default sizes + mad_Box: TIBox; // coordinates and dim of this object after layout + mad_addleft: ShortInt; // left offset (frame & innerspacing) + mad_addtop: ShortInt; // top offset (frame & innerspacing) + mad_subwidth: ShortInt; // additional width (frame & innerspacing) + mad_subheight: ShortInt; // additional height (frame & innerspacing) + mad_Flags: LongWord; // see definitions below + mad_Flags2: LongWord; + // 40 bytes up to here + // The following data is private + end; + PMUI_AreaData = ^TMUI_AreaData; + +const + // mad_Flags Flags during MUIM_Draw + MADF_DRAWOBJECT = 1 shl 0; + MADF_DRAWUPDATE = 1 shl 1; // only update yourself + MADF_DRAWALL = 1 shl 31; + + 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_Knob = 13; + MUIV_Frame_Drag = 14; + MUIV_Frame_Count = 15; + MUIV_Frame_Register = 21; + + MUIV_InputMode_None = 0; // $00 + MUIV_InputMode_RelVerify = 1; // $40 (1 shl 6) + MUIV_InputMode_Immediate = 2; // $80 (1 shl 7) + MUIV_InputMode_Toggle = 3; // $c0 (1 shl 7) or (1 shl 6) + +// ********************************************************************* +// Group +const + MUIC_Group: PChar = 'Group.mui'; + +// Identifier base (for Zune extensions) + MUIB_Group = MUIB_ZUNE or $00001000; + +// Methods +const + MUIM_Group_AddHead = MUIB_MUI or $42e200; // V8 + MUIM_Group_AddTail = MUIB_MUI or $42d752; // V8 + MUIM_Group_ExitChange = MUIB_MUI or $42d1cc; // V11 + MUIM_Group_InitChange = MUIB_MUI or $420887; // V11 + MUIM_Group_Sort = MUIB_MUI or $427417; // V4 + MUIM_Group_Remove = MUIB_MUI or $42f8a9; // V8 + // AROS special + MUIM_Group_DoMethodNoForward = MUIB_Group or $0; + +type + TMUIP_Group_AddHead = record + MethodID: LongWord; // MUIM_Group_AddHead + obj: PObject_; + end; + PMUIP_Group_AddHead = ^TMUIP_Group_AddHead; + + TMUIP_Group_AddTail = record + MethodID : LongWord; // MUIM_Group_AddTail + obj: PObject_; + end; + PMUIP_Group_AddTail = ^TMUIP_Group_AddTail; + + TMUIP_Group_ExitChange = record + MethodID : LongWord; // MUIM_Group_ExitChange + end; + PMUIP_Group_ExitChange = ^TMUIP_Group_ExitChange; + + TMUIP_Group_InitChange = record + MethodID: LongWord; // MUIM_Group_InitChange + end; + PMUIP_Group_InitChange = ^TMUIP_Group_InitChange; + + TMUIP_Group_Sort = record + MethodID: LongWord; // MUIM_Group_Sort + obj: array[0..0] of PObject_; + end; + PMUIP_Group_Sort = ^TMUIP_Group_Sort; + + TMUIP_Group_Remove = record + MethodID : LongWord; // MUIM_Group_Remove + obj: PObject_; + end; + PMUIP_Group_Remove = ^TMUIP_Group_Remove; + + TMUIP_Group_DoMethodNoForward = record + MethodID: LongWord; // MUIM_Group_DoMethodNoForward + DoMethodID: LongWord; + end; // msg stuff follows + PMUIP_Group_DoMethodNoForward = ^TMUIP_Group_DoMethodNoForward; + +// Attributes +const + MUIA_Group_ActivePage = MUIB_MUI or $424199; // V5 isg LongInt + MUIA_Group_Child = MUIB_MUI or $4226e6; // V4 i.. PObject_ + MUIA_Group_ChildList = MUIB_MUI or $424748; // V4 ..g PList + MUIA_Group_Columns = MUIB_MUI or $42f416; // V4 is. LongInt + MUIA_Group_Forward = MUIB_MUI or $421422; // V11 .s. WordBool + MUIA_Group_Horiz = MUIB_MUI or $42536b; // V4 i.. WordBool + MUIA_Group_HorizSpacing = MUIB_MUI or $42c651; // V4 isg LongInt + MUIA_Group_LayoutHook = MUIB_MUI or $42c3b2; // V11 i.. PHook + MUIA_Group_PageMode = MUIB_MUI or $421a5f; // V5 i.. WordBool + MUIA_Group_Rows = MUIB_MUI or $42b68f; // V4 is. LongInt + MUIA_Group_SameHeight = MUIB_MUI or $42037e; // V4 i.. WordBool + MUIA_Group_SameSize = MUIB_MUI or $420860; // V4 i.. WordBool + MUIA_Group_SameWidth = MUIB_MUI or $42b3ec; // V4 i.. WordBool + MUIA_Group_Spacing = MUIB_MUI or $42866d; // V4 is. LongInt + MUIA_Group_VertSpacing = MUIB_MUI or $42e1bf; // V4 isg LongInt + // AROS special + MUIA_Group_Virtual = MUIB_Group or $0; // Zune V1 i.. WordBool + + 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; + +type + // This is the message you get if your custom layout hook is called + TMUI_LayoutMsg = record + lm_Type: LongWord; // type of message (see defines below) + lm_Children: PMinList; // list of this groups children, traverse with NextObject() + lm_MinMax: TMUI_MinMax; // results for MUILM_MINMAX + lm_Layout: record // size (and result) for MUILM_LAYOUT + Width: LongInt; + Height: LongInt; + priv5: LongWord; + priv6: LongWord; + end; + end; + PMUI_LayoutMsg = ^TMUI_LayoutMsg; + +const + 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 + +// ********************************************************************* +// Rectangle +const + MUIC_Rectangle: PChar = 'Rectangle.mui'; + +// Identifier base (for Zune extensions) + MUIB_Rectangle = MUIB_ZUNE or $00002b00; + +// Attributes +const + MUIA_Rectangle_BarTitle = MUIB_MUI or $426689; // V11 i.g STRPTR + MUIA_Rectangle_HBar = MUIB_MUI or $42c943; // V7 i.g WordBool + MUIA_Rectangle_VBar = MUIB_MUI or $422204; // V7 i.g WordBool + +// ********************************************************************* +// Text +const + MUIC_Text: PChar = 'Text.mui'; + +// Identifier base (for Zune extensions) + MUIB_Text = MUIB_ZUNE or $00003500; + +// Attributes +const + MUIA_Text_Contents = MUIB_MUI or $42f8dc; // V4 isg STRPTR + MUIA_Text_HiChar = MUIB_MUI or $4218ff; // V4 i.. Char + MUIA_Text_HiCharIdx = MUIB_MUI or $4214f5; // i.. Char + MUIA_Text_PreParse = MUIB_MUI or $42566d; // V4 isg STRPTR + MUIA_Text_SetMax = MUIB_MUI or $424d0a; // V4 i.. WordBool + MUIA_Text_SetMin = MUIB_MUI or $424e10; // V4 i.. WordBool + MUIA_Text_SetVMax = MUIB_MUI or $420d8b; // V11 i.. WordBool + +// Control codes for text strings + MUIX_R = #27+'r'; // right justified + MUIX_C = #27+'c'; // centered + MUIX_L = #27+'l'; // left justified + + MUIX_N = #27+'n'; // normal + MUIX_B = #27+'b'; // bold + MUIX_I = #27+'i'; // italic + MUIX_U = #27+'u'; // underlined + + MUIX_PT = #27+'2'; // text pen + MUIX_PH = #27+'8'; // highlight text pen + +// ********************************************************************* +// Numeric +const + MUIC_Numeric: PChar = 'Numeric.mui'; + +// Identifier base (for Zune extensions) + MUIB_Numeric = MUIB_ZUNE or $00001e00; + +// Methods +const + MUIM_Numeric_Decrease = MUIB_MUI or $4243a7; // V11 + MUIM_Numeric_Increase = MUIB_MUI or $426ecd; // V11 + MUIM_Numeric_ScaleToValue = MUIB_MUI or $42032c; // V11 + MUIM_Numeric_SetDefault = MUIB_MUI or $42ab0a; // V11 + MUIM_Numeric_Stringify = MUIB_MUI or $424891; // V11 + MUIM_Numeric_ValueToScale = MUIB_MUI or $423e4f; // V11 + // AROS special + MUIM_Numeric_ValueToScaleExt = MUIB_Numeric or $0; // ZUNE only + +type + TMUIP_Numeric_Decrease = record + MethodID: LongWord; // MUIM_Numeric_Decrease + amount: LongInt; + end; + PMUIP_Numeric_Decrease = ^TMUIP_Numeric_Decrease; + + TMUIP_Numeric_Increase = record + MethodID: LongWord; // MUIM_Numeric_Increase + amount: LongInt; + end; + PMUIP_Numeric_Increase = ^TMUIP_Numeric_Increase; + + TMUIP_Numeric_ScaleToValue = record + MethodID: LongWord; // MUIM_Numeric_ScaleToValue + scalemin: LongInt; + scalemax: LongInt; + scale: LongInt; + end; + PMUIP_Numeric_ScaleToValue = ^TMUIP_Numeric_ScaleToValue; + + TMUIP_Numeric_SetDefault = record + MethodID: LongWord; // MUIM_Numeric_SetDefault + end; + PMUIP_Numeric_SetDefault = ^TMUIP_Numeric_SetDefault; + + TMUIP_Numeric_Stringify = record + MethodID: LongWord; // MUIM_Numeric_Stringify + value: LongInt; + end; + PMUIP_Numeric_Stringify = ^TMUIP_Numeric_Stringify; + + TMUIP_Numeric_ValueToScale = record + MethodID: LongWord; // MUIM_Numeric_ValueToScale + scalemin: LongInt; + scalemax: LongInt; + end; + PMUIP_Numeric_ValueToScale = ^TMUIP_Numeric_ValueToScale; + + TMUIP_Numeric_ValueToScaleExt = record + MethodID: LongWord; // MUIM_Numeric_ValueToScaleExt + value: LongInt; + scalemin: LongInt; + scalemax: LongInt; + end; + PMUIP_Numeric_ValueToScaleExt = ^TMUIP_Numeric_ValueToScaleExt; + +// Attributes +const + MUIA_Numeric_CheckAllSizes = MUIB_MUI or $421594; // V11 isg WordBool + MUIA_Numeric_Default = MUIB_MUI or $4263e8; // V11 isg LongInt + MUIA_Numeric_Format = MUIB_MUI or $4263e9; // V11 isg STRPTR + MUIA_Numeric_Max = MUIB_MUI or $42d78a; // V11 isg LongInt + MUIA_Numeric_Min = MUIB_MUI or $42e404; // V11 isg LongInt + MUIA_Numeric_Reverse = MUIB_MUI or $42f2a0; // V11 isg WordBool + MUIA_Numeric_RevLeftRight = MUIB_MUI or $4294a7; // V11 isg WordBool + MUIA_Numeric_RevUpDown = MUIB_MUI or $4252dd; // V11 isg WordBool + MUIA_Numeric_Value = MUIB_MUI or $42ae3a; // V11 isg LongInt + +// ********************************************************************* +// Slider +const + MUIC_Slider: PChar = 'Slider.mui'; + +// Identifier base (for Zune extensions) + MUIB_Slider = MUIB_ZUNE or $00003300; + +// Attributes +const + MUIA_Slider_Horiz = $8042fad1;{ V11 isg BOOL } + MUIA_Slider_Quiet = $80420b26;{ V6 i.. BOOL } + +{$ifdef MUI_OBSOLETE} + MUIA_Slider_Level = MUIB_MUI or $42ae3a; // V4 isg LongInt + MUIA_Slider_Max = MUIB_MUI or $42d78a; // V4 isg LongInt + MUIA_Slider_Min = MUIB_MUI or $42e404; // V4 isg LongInt + MUIA_Slider_Reverse = MUIB_MUI or $42f2a0; // V4 isg WordBool +{$endif} + +// ********************************************************************* +// String +const + MUIC_String: PChar = 'String.mui'; + +// Identifier base (for Zune extensions) + MUIB_String = MUIB_ZUNE or $00003400; + +// Attributes +const + MUIA_String_Accept = MUIB_MUI or $42e3e1; // V4 isg STRPTR + MUIA_String_Acknowledge = MUIB_MUI or $42026c; // V4 ..g STRPTR + MUIA_String_AdvanceOnCR = MUIB_MUI or $4226de; // V11 isg WordBool + MUIA_String_AttachedList = MUIB_MUI or $420fd2; // V4 isg PObject_ + MUIA_String_BufferPos = MUIB_MUI or $428b6c; // V4 .sg LongInt + MUIA_String_Contents = MUIB_MUI or $428ffd; // V4 isg STRPTR + MUIA_String_DisplayPos = MUIB_MUI or $42ccbf; // V4 .sg LongInt + MUIA_String_EditHook = MUIB_MUI or $424c33; // V7 isg PHook + MUIA_String_Format = MUIB_MUI or $427484; // V4 i.g LongInt + MUIA_String_Integer = MUIB_MUI or $426e8a; // V4 isg LongWord + MUIA_String_LonelyEditHook = MUIB_MUI or $421569; // V11 isg WordBool + MUIA_String_MaxLen = MUIB_MUI or $424984; // V4 i.g LongInt + MUIA_String_Reject = MUIB_MUI or $42179c; // V4 isg STRPTR + MUIA_String_Secret = MUIB_MUI or $428769; // V4 i.g WordBool + + MUIV_String_Format_Left = 0; + MUIV_String_Format_Center = 1; + MUIV_String_Format_Right = 2; + + +// Extended features taken over from Alan Odgaard's BetterString MCC. +// Attribute and method IDs match those of BetterString class. + MUIA_String_Columns = $ad001005; // Zune + MUIA_String_NoInput = $ad001007; // Zune + MUIA_String_SelectSize = $ad001001; // Zune + MUIA_String_StayActive = $ad001003; // Zune + MUIA_String_KeyUpFocus = $ad001008; // Zune + MUIA_String_KeyDownFocus = $ad001009; // Zune + + MUIM_String_ClearSelected = $ad001004; // Zune + MUIM_String_FileNameStart = $ad001006; // Zune + MUIM_String_Insert = $ad001002; // Zune + + MUIV_String_Insert_StartOfString = $00000000; // Zune + MUIV_String_Insert_EndOfString = $fffffffe; // Zune + MUIV_String_Insert_BufferPos = $ffffffff; // Zune + MUIV_String_BufferPos_End = $ffffffff; // Zune + + MUIR_String_FileNameStart_Volume = $ffffffff; // Zune + +type + TMUIP_String_ClearSelected = record + MethodID: LongWord; // MUIM_String_ClearSelected + end; + PMUIP_String_ClearSelected = ^TMUIP_String_ClearSelected; + + TMUIP_String_FileNameStart = record + MethodID: LongWord; // MUIM_String_FileNameStart + buffer: STRPTR; + pos: LongInt; + end; + + TMUIP_String_Insert = record + MethodID: LongWord; + text: STRPTR; // MUIM_String_Insert + pos: LongInt; + end; + +// ********************************************************************* +// Boopsi +const + MUIC_Boopsi: PChar = 'Boopsi.mui'; + +// Identifier base (for Zune extensions) + MUIB_Boopsi = MUIB_ZUNE or $00000600; + +// Attributes +const + MUIA_Boopsi_Class = MUIB_MUI or $426999; // V4 isg PIClass + MUIA_Boopsi_ClassID = MUIB_MUI or $42bfa3; // V4 isg PChar + MUIA_Boopsi_MaxHeight = MUIB_MUI or $42757f; // V4 isg LongWord + MUIA_Boopsi_MaxWidth = MUIB_MUI or $42bcb1; // V4 isg LongWord + MUIA_Boopsi_MinHeight = MUIB_MUI or $422c93; // V4 isg LongWord + MUIA_Boopsi_MinWidth = MUIB_MUI or $428fb2; // V4 isg LongWord + MUIA_Boopsi_Object = MUIB_MUI or $420178; // V4 ..g PObject_ + MUIA_Boopsi_Remember = MUIB_MUI or $42f4bd; // V4 i.. LongWord + MUIA_Boopsi_Smart = MUIB_MUI or $42b8d7; // V9 i.. BOOL + MUIA_Boopsi_TagDrawInfo = MUIB_MUI or $42bae7; // V4 isg LongWord + MUIA_Boopsi_TagScreen = MUIB_MUI or $42bc71; // V4 isg LongWord + MUIA_Boopsi_TagWindow = MUIB_MUI or $42e11d; // V4 isg LongWord + +// ********************************************************************* +// Prop +const + MUIC_Prop: PChar = 'Prop.mui'; + +// Identifier base (for Zune extensions) + MUIB_Prop = MUIB_ZUNE or $00002900; + +// Methods +const + MUIM_Prop_Decrease = MUIB_MUI or $420dd1; // V16 + MUIM_Prop_Increase = MUIB_MUI or $42cac0; // V16 + +type + TMUIP_Prop_Decrease = record + MethodID: LongWord; // MUIM_Prop_Decrease + amount: LongInt; + end; + PMUIP_Prop_Decrease = ^TMUIP_Prop_Decrease; + + TMUIP_Prop_Increase = record + MethodID: LongWord; // MUIM_Prop_Increase + amount: LongInt; + end; + PMUIP_Prop_Increase = ^TMUIP_Prop_Increase; + +// Attributes +const + MUIA_Prop_Entries = $8042fbdb; // V4 isg LongInt + MUIA_Prop_First = $8042d4b2; // V4 isg LongInt + MUIA_Prop_Horiz = $8042f4f3; // V4 i.g WordBool + MUIA_Prop_Slider = $80429c3a; // V4 isg WordBool + MUIA_Prop_UseWinBorder = $8042deee; // V13 i.. LongInt + MUIA_Prop_Visible = $8042fea6; // V4 isg LongInt + + MUIV_Prop_UseWinBorder_None = 0; + MUIV_Prop_UseWinBorder_Left = 1; + MUIV_Prop_UseWinBorder_Right = 2; + MUIV_Prop_UseWinBorder_Bottom = 3; + + MUIA_Prop_DeltaFactor = MUIB_MUI or $427c5e; // is. LongInt + MUIA_Prop_DoSmooth = MUIB_MUI or $4236ce; // V4 i.. LongInt + +// ********************************************************************* +// Scrollbar +const + MUIC_Scrollbar: PChar = 'Scrollbar.mui'; + +// Identifier base (for Zune extensions) + MUIB_Scrollbar = MUIB_ZUNE or $00002e00; + +// Attributes +const + MUIA_Scrollbar_Type = MUIB_MUI or $42fb6b; // V11 i.. LongInt + + MUIV_Scrollbar_Type_Default = 0; + MUIV_Scrollbar_Type_Bottom = 1; + MUIV_Scrollbar_Type_Top = 2; + MUIV_Scrollbar_Type_Sym = 3; + +// ********************************************************************* +// Register +const + MUIC_Register: PChar = 'Register.mui'; + +// Identifier base (for Zune extensions) + MUIB_Register = MUIB_ZUNE or $00002c00; + +// Attributes +const + MUIA_Register_Frame = MUIB_MUI or $42349b; // V7 i.g BOOL + MUIA_Register_Titles = MUIB_MUI or $4297ec; // V7 i.g STRPTR + // AROS special + MUIA_Register_Columns = MUIB_Register or $0; // Zune V1 i.. + +// ********************************************************************* +// Menustrip +const + MUIC_Menustrip: PChar = 'Menustrip.mui'; + +// Identifier base (for Zune extensions) + MUIB_Menustrip = MUIB_ZUNE or $00001a00; + +// Attributes +const + MUIA_Menustrip_Enabled = MUIB_MUI or $42815b; // V8 isg WordBool + +// ********************************************************************* +// Menu +const + MUIC_Menu: PChar = 'Menu.mui'; + +// Identifier base (for Zune extensions) + MUIB_Menu = MUIB_ZUNE or $00001b00; + +// Attributes } +const + MUIA_Menu_Enabled = MUIB_MUI or $42ed48; // V8 isg WordBool + MUIA_Menu_Title = MUIB_MUI or $42a0e3; // V8 isg STRPTR + +// ********************************************************************* +// Menuitem +const + MUIC_Menuitem: PChar = 'Menuitem.mui'; + +// Identifier base (for Zune extensions) + MUIB_Menuitem = MUIB_ZUNE or $00001c00; + +// Attributes +const + MUIA_Menuitem_Checked = MUIB_MUI or $42562a; // V8 isg WordBool + MUIA_Menuitem_Checkit = MUIB_MUI or $425ace; // V8 isg WordBool + MUIA_Menuitem_CommandString = MUIB_MUI or $42b9cc; // V16 isg WordBool + MUIA_Menuitem_Enabled = MUIB_MUI or $42ae0f; // V8 isg WordBool + MUIA_Menuitem_Exclude = MUIB_MUI or $420bc6; // V8 isg LongInt + MUIA_Menuitem_Shortcut = MUIB_MUI or $422030; // V8 isg STRPTR + MUIA_Menuitem_Title = MUIB_MUI or $4218be; // V8 isg STRPTR + MUIA_Menuitem_Toggle = MUIB_MUI or $424d5c; // V8 isg WordBool + MUIA_Menuitem_Trigger = MUIB_MUI or $426f32; // V8 ..g PMenuItem + // AROS special + MUIA_Menuitem_NewMenu = MUIB_Menuitem or $0; // Zune: V1 ..g PNewMenu + + MUIV_Menuitem_Shortcut_Check = -1; + +// ********************************************************************* +// Dataspace +const + MUIC_Dataspace: PChar = 'Dataspace.mui'; + +// Identifier base (for Zune extensions) + MUIB_Dataspace = MUIB_ZUNE or $00000b00; + +// Methods +const + MUIM_Dataspace_Add = MUIB_MUI or $423366; // V11 + MUIM_Dataspace_Clear = MUIB_MUI or $42b6c9; // V11 + MUIM_Dataspace_Find = MUIB_MUI or $42832c; // V11 + MUIM_Dataspace_Merge = MUIB_MUI or $423e2b; // V11 + MUIM_Dataspace_ReadIFF = MUIB_MUI or $420dfb; // V11 + MUIM_Dataspace_Remove = MUIB_MUI or $42dce1; // V11 + MUIM_Dataspace_WriteIFF = MUIB_MUI or $425e8e; // V11 + +type + TMUIP_Dataspace_Add = record + MethodID: LongWord; // MUIM_Dataspace_Add + data: APTR; + len: LongInt; + id: LongWord; + end; + PMUIP_Dataspace_Add = ^TMUIP_Dataspace_Add; + + TMUIP_Dataspace_Clear = record + MethodID: LongWord; // MUIM_Dataspace_Clear + end; + PMUIP_Dataspace_Clear = ^TMUIP_Dataspace_Clear; + + TMUIP_Dataspace_Find = record + MethodID: LongWord; // MUIM_Dataspace_Find + id: LongWord; + end; + PMUIP_Dataspace_Find = ^TMUIP_Dataspace_Find; + + TMUIP_Dataspace_Merge = record + MethodID: LongWord; // MUIM_Dataspace_Merge + dataspace: PObject_; + end; + PMUIP_Dataspace_Merge = ^TMUIP_Dataspace_Merge; + + TMUIP_Dataspace_ReadIFF = record + MethodID: LongWord; // MUIM_Dataspace_ReadIFF + Handle: PIFFHandle; + end; + PMUIP_Dataspace_ReadIFF = ^TMUIP_Dataspace_ReadIFF; + + TMUIP_Dataspace_Remove = record + MethodID: LongWord; // MUIM_Dataspace_Remove + id: LongWord; + end; + PMUIP_Dataspace_Remove = ^TMUIP_Dataspace_Remove; + + TMUIP_Dataspace_WriteIFF = record + MethodID: LongWord; // MUIM_Dataspace_WriteIFF + handle: PIFFHandle; + type_: LongWord; + id: LongWord; + end; + PMUIP_Dataspace_WriteIFF = ^TMUIP_Dataspace_WriteIFF; + +// Attributes +const + MUIA_Dataspace_Pool = MUIB_MUI or $424cf9; // V11 i.. APTR + +// ********************************************************************* +// Virtgroup +const + MUIC_Virtgroup: PChar = 'Virtgroup.mui'; + +// Identifier base (for Zune extensions) + MUIB_Virtgroup = MUIB_ZUNE or $00003700; + +// Attributes +const + MUIA_Virtgroup_Height = MUIB_MUI or $423038; // V6 ..g LongInt + MUIA_Virtgroup_Input = MUIB_MUI or $427f7e; // V11 i.. WordBool + MUIA_Virtgroup_Left = MUIB_MUI or $429371; // V6 isg LongInt + MUIA_Virtgroup_Top = MUIB_MUI or $425200; // V6 isg LongInt + MUIA_Virtgroup_Width = MUIB_MUI or $427c49; // V6 ..g LongInt + +// ********************************************************************* +// Scrollgroup +const + MUIC_Scrollgroup: PChar = 'Scrollgroup.mui'; + +// Identifier base (for Zune extensions) + MUIB_Scrollgroup = MUIB_ZUNE or $00002f00; + +// Attributes +const + MUIA_Scrollgroup_Contents = MUIB_MUI or $421261; // V4 i.g PObject_ + MUIA_Scrollgroup_FreeHoriz = MUIB_MUI or $4292f3; // V9 i.. WordBool + MUIA_Scrollgroup_FreeVert = MUIB_MUI or $4224f2; // V9 i.. WordBool + MUIA_Scrollgroup_HorizBar = MUIB_MUI or $42b63d; // V16 ..g PObject_ + MUIA_Scrollgroup_UseWinBorder = MUIB_MUI or $4284c1; // V13 i.. WordBool + MUIA_Scrollgroup_VertBar = MUIB_MUI or $42cdc0; // V16 ..g PObject_ + +// ********************************************************************* +// ScrollButton +const + MUIC_Scrollbutton: PChar = 'Scrollbutton.mui'; + +// Identifier base + MUIB_Scrollbutton = MUIB_ZUNE or $00004100; + +// Attributes +const + MUIA_Scrollbutton_NewPosition = MUIB_Scrollbutton or $0; // --G LongWord (2 x SmallInt) + MUIA_Scrollbutton_Horiz = MUIB_Scrollbutton or $1; // -SG SmallInt + MUIA_Scrollbutton_Vert = MUIB_Scrollbutton or $2; // -SG SmallInt + MUIA_Scrollbutton_HorizProp = MUIB_Scrollbutton or $3; // --G PObject_ + MUIA_Scrollbutton_VertProp = MUIB_Scrollbutton or $4; // --G PObject_ + +// ********************************************************************* +// Semaphore +const + MUIC_Semaphore: PChar = 'Semaphore.mui'; + +// Identifier base (for Zune extensions) + MUIB_Semaphore = MUIB_ZUNE or $00003000; + +// Methods +const + MUIM_Semaphore_Attempt = MUIB_MUI or $426ce2; // V11 + MUIM_Semaphore_AttemptShared = MUIB_MUI or $422551; // V11 + MUIM_Semaphore_Obtain = MUIB_MUI or $4276f0; // V11 + MUIM_Semaphore_ObtainShared = MUIB_MUI or $42ea02; // V11 + MUIM_Semaphore_Release = MUIB_MUI or $421f2d; // V11 + +type + TMUIP_Semaphore_Attempt = record + MethodID: LongWord; // MUIM_Semaphore_Attempt + end; + PMUIP_Semaphore_Attempt = ^TMUIP_Semaphore_Attempt; + + TMUIP_Semaphore_AttemptShared = record + MethodID: LongWord; // MUIM_Semaphore_AttemptShared + end; + PMUIP_Semaphore_AttemptShared = ^TMUIP_Semaphore_AttemptShared; + + TMUIP_Semaphore_Obtain = record + MethodID: LongWord; // MUIM_Semaphore_Obtain + end; + PMUIP_Semaphore_Obtain = ^TMUIP_Semaphore_Obtain; + + TMUIP_Semaphore_ObtainShared = record + MethodID: LongWord; // MUIM_Semaphore_ObtainShared + end; + PMUIP_Semaphore_ObtainShared = ^TMUIP_Semaphore_ObtainShared; + + TMUIP_Semaphore_Release = record + MethodID: LongWord; // MUIM_Semaphore_Release + end; + PMUIP_Semaphore_Release = ^TMUIP_Semaphore_Release; + +// ********************************************************************* +// Bitmap +const + MUIC_Bitmap: PChar = 'Bitmap.mui'; + +// Identifier base (for Zune extensions) + MUIB_Bitmap = MUIB_ZUNE or $00000400; + +// Attributes +const + MUIA_Bitmap_Alpha = MUIB_MUI or $423e71; // V20 isg LongWord + MUIA_Bitmap_Bitmap = MUIB_MUI or $4279bd; // V8 isg PBitMap + MUIA_Bitmap_Height = MUIB_MUI or $421560; // V8 isg LongInt + MUIA_Bitmap_MappingTable = MUIB_MUI or $42e23d; // V8 isg Byte + MUIA_Bitmap_Precision = MUIB_MUI or $420c74; // V11 isg LongInt + MUIA_Bitmap_RemappedBitmap = MUIB_MUI or $423a47; // V11 ..g PBitMap + MUIA_Bitmap_SourceColors = MUIB_MUI or $425360; // V8 isg LongWord + MUIA_Bitmap_Transparent = MUIB_MUI or $422805; // V8 isg LongInt + MUIA_Bitmap_UseFriend = MUIB_MUI or $4239d8; // V11 i.. WordBool + MUIA_Bitmap_Width = MUIB_MUI or $42eb3a; // V8 isg LongInt + +// ********************************************************************* +// Bodychunk +const + MUIC_Bodychunk : PChar = 'Bodychunk.mui'; + +// Identifier base (for Zune extensions) + MUIB_Bodychunk = MUIB_ZUNE or $00000500; + +// Attributes +const + MUIA_Bodychunk_Body = MUIB_MUI or $42ca67; // V8 isg Byte + MUIA_Bodychunk_Compression = MUIB_MUI or $42de5f; // V8 isg Byte + MUIA_Bodychunk_Depth = MUIB_MUI or $42c392; // V8 isg LongInt + MUIA_Bodychunk_Masking = MUIB_MUI or $423b0e; // V8 isg Byte + +// ********************************************************************* +// ChunkyImage +const + MUIC_ChunkyImage : PChar = 'ChunkyImage.mui'; + +// Identifier base (for Zune extensions) + MUIB_ChunkyImage = MUIB_ZUNE or $00004000; + +// Attributes +const + MUIA_ChunkyImage_Pixels = MUIB_ChunkyImage or $0; // V8 isg PByte + MUIA_ChunkyImage_Palette = MUIB_ChunkyImage or $1; // V8 isg PByte + MUIA_ChunkyImage_NumColors = MUIB_ChunkyImage or $2; // V8 isg LongInt + MUIA_ChunkyImage_Modulo = MUIB_ChunkyImage or $3; // V8 isg LongInt + +// ********************************************************************* +// Listview +const + MUIC_Listview: PChar = 'Listview.mui'; + +// Identifier base (for Zune extensions) + MUIB_Listview = MUIB_ZUNE or $00001900; + +// Attributes +const + MUIA_Listview_ClickColumn = MUIB_MUI or $42d1b3; // V7 ..g LongInt + MUIA_Listview_DefClickColumn = MUIB_MUI or $42b296; // V7 isg LongInt + MUIA_Listview_DoubleClick = MUIB_MUI or $424635; // V4 i.g WordBool + MUIA_Listview_DragType = MUIB_MUI or $425cd3; // V11 isg LongInt + MUIA_Listview_Input = MUIB_MUI or $42682d; // V4 i.. WordBool + MUIA_Listview_List = MUIB_MUI or $42bcce; // V4 i.g PObject_ + MUIA_Listview_MultiSelect = MUIB_MUI or $427e08; // V7 i.. LongInt + MUIA_Listview_ScrollerPos = MUIB_MUI or $42b1b4; // V10 i.. WordBool + MUIA_Listview_SelectChange = MUIB_MUI or $42178f; // V4 ..g WordBool + + 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; + +// ********************************************************************* +// List +const + MUIC_List: PChar = 'List.mui'; + +// Identifier base (for Zune extensions) + MUIB_List = MUIB_ZUNE or $00001400; + +// Methods +const + MUIM_List_Clear = MUIB_MUI or $42ad89; // V4 + MUIM_List_Compare = MUIB_MUI or $421b68; // V20 + MUIM_List_Construct = MUIB_MUI or $42d662; // V20 + MUIM_List_CreateImage = MUIB_MUI or $429804; // V11 + MUIM_List_DeleteImage = MUIB_MUI or $420f58; // V11 + MUIM_List_Exchange = MUIB_MUI or $42468c; // V4 + MUIM_List_GetEntry = MUIB_MUI or $4280ec; // V4 + MUIM_List_Insert = MUIB_MUI or $426c87; // V4 + MUIM_List_InsertSingle = MUIB_MUI or $4254d5; // V7 + MUIM_List_Jump = MUIB_MUI or $42baab; // V4 + MUIM_List_Move = MUIB_MUI or $4253c2; // V9 + MUIM_List_NextSelected = MUIB_MUI or $425f17; // V6 + MUIM_List_Redraw = MUIB_MUI or $427993; // V4 + MUIM_List_Remove = MUIB_MUI or $42647e; // V4 + MUIM_List_Select = MUIB_MUI or $4252d8; // V4 + MUIM_List_Sort = MUIB_MUI or $422275; // V4 + MUIM_List_TestPos = MUIB_MUI or $425f48; // V11 + +type + TMUIP_List_Clear = record + MethodID: LongWord; // MUIM_List_Clear + end; + PMUIP_List_Clear = ^TMUIP_List_Clear; + + TMUIP_List_Compare = record + MethodID: LongWord; // MUIM_List_Compare + entry1: APTR; + entry2: APTR; + sort_type1: LongInt; + sort_type2: LongInt; + end; + PMUIP_List_Compare = ^TMUIP_List_Compare; + + TMUIP_List_Construct = record + MethodID: LongWord; // MUIM_List_Construct + entry: APTR; + pool: APTR; + end; + PMUIP_List_Construct = ^TMUIP_List_Construct; + + TMUIP_List_CreateImage = record + MethodID: LongWord; // MUIM_List_CreateImage + obj: PObject_; + flags: LongWord; + end; + PMUIP_List_CreateImage = ^TMUIP_List_CreateImage; + + TMUIP_List_DeleteImage = record + MethodID: LongWord; // MUIM_List_DeleteImage + listimg: APTR; + end; + PMUIP_List_DeleteImage = ^TMUIP_List_DeleteImage; + + TMUIP_List_Exchange = record + MethodID: LongWord; // MUIM_List_Exchange + pos1: LongInt; + pos2: LongInt; + end; + PMUIP_List_Exchange = ^TMUIP_List_Exchange; + + TMUIP_List_GetEntry = record + MethodID: LongWord; // MUIM_List_GetEntry + pos: LongInt; + entry: PAPTR; + end; + PMUIP_List_GetEntry = ^TMUIP_List_GetEntry; + + TMUIP_List_Insert = record + MethodID: LongWord; // MUIM_List_Insert + entries: PAPTR; + count: LongInt; + pos: LongInt; + end; + PMUIP_List_Insert = ^TMUIP_List_Insert; + + TMUIP_List_InsertSingle = record + MethodID: LongWord; // MUIM_List_InsertSingle + entry: APTR; + pos: LongInt; + end; + PMUIP_List_InsertSingle = ^TMUIP_List_InsertSingle; + + TMUIP_List_Jump = record + MethodID: LongWord; // MUIM_List_Jump + pos: LongInt; + end; + PMUIP_List_Jump = ^TMUIP_List_Jump; + + TMUIP_List_Move = record + MethodID: LongWord; // MUIM_List_Move + from: LongInt; + too: LongInt; + end; + PMUIP_List_Move = ^TMUIP_List_Move; + + TMUIP_List_NextSelected = record + MethodID: LongWord; // MUIM_List_NextSelected + pos: PLongInt; + end; + PMUIP_List_NextSelected = ^TMUIP_List_NextSelected; + + TMUIP_List_Redraw = record + MethodID: LongWord; // MUIM_List_Redraw + pos: LongInt; + end; + PMUIP_List_Redraw = ^TMUIP_List_Redraw; + + TMUIP_List_Remove = record + MethodID: LongWord; // MUIM_List_Remove + pos: LongInt; + end; + PMUIP_List_Remove = ^TMUIP_List_Remove; + + TMUIP_List_Select = record + MethodID: LongWord; // MUIM_List_Select + pos: LongInt; + seltype: LongInt; + state: PLongInt; + end; + PMUIP_List_Select = ^TMUIP_List_Select; + + TMUIP_List_Sort = record + MethodID: LongWord; // MUIM_List_Sort + end; + PMUIP_List_Sort = ^TMUIP_List_Sort; + + TMUIP_List_TestPos = record + MethodID: LongWord; // MUIM_List_TestPos + x: LongInt; + y: LongInt; + res: PMUI_List_TestPos_Result; + end; + PMUIP_List_TestPos = ^TMUIP_List_TestPos; + +// Attributes +const + MUIA_List_Active = MUIB_MUI or $42391c; // V4 isg LongInt + MUIA_List_AdjustHeight = MUIB_MUI or $42850d; // V4 i.. WordBool + MUIA_List_AdjustWidth = MUIB_MUI or $42354a; // V4 i.. WordBool + MUIA_List_AutoVisible = MUIB_MUI or $42a445; // V11 isg WordBool + MUIA_List_CompareHook = MUIB_MUI or $425c14; // V4 is. PHook + MUIA_List_ConstructHook = MUIB_MUI or $42894f; // V4 is. PHook + MUIA_List_DestructHook = MUIB_MUI or $4297ce; // V4 is. PHook + MUIA_List_DisplayHook = MUIB_MUI or $42b4d5; // V4 is. PHook + MUIA_List_DragSortable = MUIB_MUI or $426099; // V11 isg WordBool + MUIA_List_DropMark = MUIB_MUI or $42aba6; // V11 ..g LongInt + MUIA_List_Entries = MUIB_MUI or $421654; // V4 ..g LongInt + MUIA_List_First = MUIB_MUI or $4238d4; // V4 ..g LongInt + MUIA_List_Format = MUIB_MUI or $423c0a; // V4 isg STRPTR + MUIA_List_InsertPosition = MUIB_MUI or $42d0cd; // V9 ..g LongInt + MUIA_List_MinLineHeight = MUIB_MUI or $42d1c3; // V4 i.. LongInt + MUIA_List_MultiTestHook = MUIB_MUI or $42c2c6; // V4 is. PHook + MUIA_List_Pool = MUIB_MUI or $423431; // V13 i.. APTR + MUIA_List_PoolPuddleSize = MUIB_MUI or $42a4eb; // V13 i.. LongWord + MUIA_List_PoolThreshSize = MUIB_MUI or $42c48c; // V13 i.. LongWord + MUIA_List_Quiet = MUIB_MUI or $42d8c7; // V4 .s. WordBool + MUIA_List_ShowDropMarks = MUIB_MUI or $42c6f3; // V11 isg WordBool + MUIA_List_SourceArray = MUIB_MUI or $42c0a0; // V4 i.. APTR + MUIA_List_Title = MUIB_MUI or $423e66; // V6 isg PChar + MUIA_List_Visible = MUIB_MUI or $42191f; // V4 ..g LongInt + + 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_DestructHook_String = -1; + + MUIV_List_CopyHook_String = -1; + + MUIV_List_CursorType_None = 0; + MUIV_List_CursorType_Bar = 1; + MUIV_List_CursorType_Rect = 2; + + 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_Select_Active = -1; + MUIV_List_Select_All = -2; + + MUIV_List_GetEntry_Active = -1; + + 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_NList_SelectChange_Flag_Multi = 1 shl 0; + +// ********************************************************************* +// Scrmodelist +const + MUIC_Scrmodelist: PChar = 'Scrmodelist.mui'; + +// Identifier base (for Zune extensions) + MUIB_Scrmodelist = MUIB_ZUNE or $00001700; + +// ********************************************************************* +// Floattext +const + MUIC_Floattext: PChar = 'Floattext.mui'; + +// Identifier base (for Zune extensions) + MUIB_Floattext = MUIB_ZUNE or $00001500; + +// Methods + MUIM_Floattext_Append = MUIB_MUI or $42a221; // V20 + +type + TMUIP_Floattext_Append = record + MethodID: LongWord; // MUIM_Floattext_Append + Text: CONST_STRPTR; + end; + PMUIP_Floattext_Append = ^TMUIP_Floattext_Append; + +// Attributes +const + MUIA_Floattext_Justify = MUIB_MUI or $42dc03; // V4 isg WordBool + MUIA_Floattext_SkiPChars = MUIB_MUI or $425c7d; // V4 is. STRPTR + MUIA_Floattext_TabSize = MUIB_MUI or $427d17; // V4 is. LongInt + MUIA_Floattext_Text = MUIB_MUI or $42d16a; // V4 isg STRPTR + +// ********************************************************************* +// Popstring +const + MUIC_Popstring: PChar = 'Popstring.mui'; + +// Identifier base (for Zune extensions) + MUIB_Popstring = MUIB_ZUNE or $00002800; + +// Methods +const + MUIM_Popstring_Close = MUIB_MUI or $42dc52; // V7 + MUIM_Popstring_Open = MUIB_MUI or $4258ba; // V7 + +type + TMUIP_Popstring_Close = record + MethodID: LongWord; // MUIM_Popstring_Close + result: LongInt; + end; + PMUIP_Popstring_Close = ^TMUIP_Popstring_Close; + + TMUIP_Popstring_Open = record + MethodID: LongWord; // MUIM_Popstring_Open + end; + PMUIP_Popstring_Open = ^TMUIP_Popstring_Open; + +// Attributes +const + MUIA_Popstring_Button = MUIB_MUI or $42d0b9; // V7 i.g PObject_ + MUIA_Popstring_CloseHook = MUIB_MUI or $4256bf; // V7 isg PHook + MUIA_Popstring_OpenHook = MUIB_MUI or $429d00; // V7 isg PHook + MUIA_Popstring_String = MUIB_MUI or $4239ea; // V7 i.g PObject_ + MUIA_Popstring_Toggle = MUIB_MUI or $422b7a; // V7 isg WordBool + +// ********************************************************************* +// Popobject +const + MUIC_Popobject: PChar = 'Popobject.mui'; + +// Identifier base + MUIB_Popobject = MUIB_ZUNE or $00002400; + +// Attributes +const + MUIA_Popobject_Follow = MUIB_MUI or $424cb5; // V7 isg WordBool + MUIA_Popobject_Light = MUIB_MUI or $42a5a3; // V7 isg WordBool + MUIA_Popobject_Object = MUIB_MUI or $4293e3; // V7 i.g PObject_ + MUIA_Popobject_ObjStrHook = MUIB_MUI or $42db44; // V7 isg PHook + MUIA_Popobject_StrObjHook = MUIB_MUI or $42fbe1; // V7 isg PHook + MUIA_Popobject_Volatile = MUIB_MUI or $4252ec; // V7 isg WordBool + MUIA_Popobject_WindowHook = MUIB_MUI or $42f194; // V9 isg PHook + +// ********************************************************************* +// Cycle +const + MUIC_Cycle: PChar = 'Cycle.mui'; + +// Identifier base (for Zune extensions) + MUIB_Cycle = MUIB_ZUNE or $00000a00; + +// Attributes +const + MUIA_Cycle_Active = MUIB_MUI or $421788; // V4 isg LongInt + MUIA_Cycle_Entries = MUIB_MUI or $420629; // V4 i.. STRPTR + + MUIV_Cycle_Active_Next = -1; + MUIV_Cycle_Active_Prev = -2; + +// ********************************************************************* +// Gauge +const + MUIC_Gauge: PChar = 'Gauge.mui'; + +// Identifier base (for Zune extensions) + MUIB_Gauge = MUIB_ZUNE or $00000f00; + +// Attributes +const + MUIA_Gauge_Current = MUIB_MUI or $42f0dd; // V4 isg LongInt + MUIA_Gauge_Divide = MUIB_MUI or $42d8df; // V4 isg WordBool + MUIA_Gauge_Horiz = MUIB_MUI or $4232dd; // V4 i.. WordBool + MUIA_Gauge_InfoText = MUIB_MUI or $42bf15; // V7 isg STRPTR + MUIA_Gauge_Max = MUIB_MUI or $42bcdb; // V4 isg LongInt + // AROS special + MUIA_Gauge_DupInfoText = MUIB_Gauge or $0; // ZUNE: V1 i.. WordBool - defaults to False + +// ********************************************************************* +// Image +const + MUIC_Image: PChar = 'Image.mui'; + +// Identifier base (for Zune extensions) + MUIB_Image = MUIB_ZUNE or $00001300; + +// Attributes +const + MUIA_Image_FontMatch = MUIB_MUI or $42815d; // V4 i.. WordBool + MUIA_Image_FontMatchHeight = MUIB_MUI or $429f26; // V4 i.. WordBool + MUIA_Image_FontMatchWidth = MUIB_MUI or $4239bf; // V4 i.. WordBool + MUIA_Image_FreeHoriz = MUIB_MUI or $42da84; // V4 i.. WordBool + MUIA_Image_FreeVert = MUIB_MUI or $42ea28; // V4 i.. WordBool + MUIA_Image_OldImage = MUIB_MUI or $424f3d; // V4 i.. PImage + MUIA_Image_Spec = MUIB_MUI or $4233d5; // V4 i.. PChar + MUIA_Image_State = MUIB_MUI or $42a3ad; // V4 is. LongInt + +// ********************************************************************* +// Imagedisplay +const + MUIC_Imagedisplay: PChar = 'Imagedisplay.mui'; + +// Identifier base (for Zune extensions) + MUIB_Imagedisplay = MUIB_ZUNE or $00001200; + +// Attributes + MUIA_Imagedisplay_Spec = MUIB_MUI or $42a547; // V11 isg PMUI_ImageSpec + MUIA_Imagedisplay_UseDefSize = MUIB_MUI or $42186d; // V11 i.. WordBool undoc + // Aros Special + MUIA_Imagedisplay_FreeHoriz = MUIB_Imagedisplay or $0; // Zune 20030323 i.. WordBool default: True + MUIA_Imagedisplay_FreeVert = MUIB_Imagedisplay or $1; // Zune 20030323 i.. WordBool default: True + +// ********************************************************************* +// Popasl +const + MUIC_Popasl: PChar = 'Popasl.mui'; + +// Identifier base (for Zune extensions) + MUIB_Popasl = MUIB_ZUNE or $00002100; + +// Attributes +const + MUIA_Popasl_Active = MUIB_MUI or $421b37; // V7 ..g WordBool + MUIA_Popasl_StartHook = MUIB_MUI or $42b703; // V7 isg PHook + MUIA_Popasl_StopHook = MUIB_MUI or $42d8d2; // V7 isg PHook + MUIA_Popasl_Type = MUIB_MUI or $42df3d; // V7 i.g LongWord + +// ********************************************************************* +// Settingsgroup +const + MUIC_Settingsgroup: PChar = 'Settingsgroup.mui'; + +// Identifier base (for Zune extensions) + MUIB_Settingsgroup = MUIB_ZUNE or $00003100; + +// Methods +const + MUIM_Settingsgroup_ConfigToGadgets = MUIB_MUI or $427043; // V11 + MUIM_Settingsgroup_GadgetsToConfig = MUIB_MUI or $425242; // V11 + +type + TMUIP_Settingsgroup_ConfigToGadgets = record + MethodID: LongWord; // MUIM_Settingsgroup_ConfigToGadgets + configdata: PObject_; + end; + PMUIP_Settingsgroup_ConfigToGadgets = ^TMUIP_Settingsgroup_ConfigToGadgets; + + TMUIP_Settingsgroup_GadgetsToConfig = record + MethodID: LongWord; // MUIM_Settingsgroup_GadgetsToConfig + configdata: PObject_; + end; + PMUIP_Settingsgroup_GadgetsToConfig = ^TMUIP_Settingsgroup_GadgetsToConfig; + +// ********************************************************************* +// Settings +const + MUIC_Settings: PChar = 'Settings.mui'; + +// Identifier base (for Zune extensions) + MUIB_Settings = MUIB_ZUNE or $00003200; + +// ********************************************************************* +// Aboutmui +const + MUIC_Aboutmui: PChar = 'Aboutmui.mui'; + +// Identifier base (for Zune extensions) + MUIB_Aboutmui = MUIB_ZUNE or $0; + +// Attributes +const + MUIA_Aboutmui_Application = MUIB_MUI or $422523; // V11 i.. PObject + +// ********************************************************************* +// Configdata +const + MUIC_Configdata : PChar = 'Configdata.mui'; + +// Identifier base (for Zune extensions) + MUIB_Configdata = MUIB_ZUNE or $00000900; + +// Methods + MUIM_Configdata_GetWindowPos = MUIB_Configdata or $0000002A; + MUIM_Configdata_SetWindowPos = MUIB_Configdata or $0000002B; + MUIM_Configdata_GetString = MUIB_Configdata or $00000000; + MUIM_Configdata_GetULong = MUIB_Configdata or $00000001; + MUIM_Configdata_SetULong = MUIB_Configdata or $00000002; + MUIM_Configdata_SetImspec = MUIB_Configdata or $00000003; + MUIM_Configdata_SetFramespec = MUIB_Configdata or $00000004; + MUIM_Configdata_SetFont = MUIB_Configdata or $00000005; + MUIM_Configdata_Save = MUIB_Configdata or $00000006; + MUIM_Configdata_Load = MUIB_Configdata or $00000007; + MUIM_Configdata_SetPenspec = MUIB_Configdata or $00000008; + MUIM_Configdata_SetString = MUIB_Configdata or $00000009; + +type + TMUIP_Configdata_GetString = record + MethodID: LongWord; + id: LongWord; + end; + PMUIP_Configdata_GetString = ^TMUIP_Configdata_GetString; + + TMUIP_Configdata_GetULong = record + MethodID: LongWord; + id: LongWord; + end; + PMUIP_Configdata_GetULong = ^TMUIP_Configdata_GetULong; + + TMUIP_Configdata_SetULong = record + MethodID: LongWord; + id: LongWord; + val: LongWord; + end; + PMUIP_Configdata_SetULong = ^TMUIP_Configdata_SetULong; + + TMUIP_Configdata_SetImspec = record + MethodID: LongWord; + id: LongWord; + imspec: CONST_STRPTR; + end; + PMUIP_Configdata_SetImspec = ^TMUIP_Configdata_SetImspec; + + TMUIP_Configdata_SetFramespec = record + MethodID: LongWord; + id: LongWord; + framespec: CONST_STRPTR; + end; + PMUIP_Configdata_SetFramespec = ^TMUIP_Configdata_SetFramespec; + + TMUIP_Configdata_SetFont = record + MethodID: LongWord; + id: LongWord; + font: CONST_STRPTR; + end; + PMUIP_Configdata_SetFont = ^TMUIP_Configdata_SetFont; + + TMUIP_Configdata_Save = record + MethodID: LongWord; + filename: CONST_STRPTR; + end; + PMUIP_Configdata_Save = ^TMUIP_Configdata_Save; + + TMUIP_Configdata_Load = record + MethodID: LongWord; + filename: CONST_STRPTR; + end; + PMUIP_Configdata_Load = ^TMUIP_Configdata_Load; + + TMUIP_Configdata_SetPenspec = record + MethodID: LongWord; + id: LongWord; + penspec: CONST_STRPTR; + end; + PMUIP_Configdata_SetPenspec = ^TMUIP_Configdata_SetPenspec; + + TMUIP_Configdata_SetString = record + MethodID: LongWord; + id: LongWord; + Newstring: CONST_STRPTR; + end; + PMUIP_Configdata_SetString = ^TMUIP_Configdata_SetString; + +// Attributes +const + MUIA_Configdata_Application = MUIB_Configdata or $00000000; // Zune V1: i.. PObject_ + MUIA_Configdata_ApplicationBase = MUIB_Configdata or $00000002; // Zune V1: i.. PObject_ + +// The config items for MUIM_GetConfigItem + MUICFG_Invalid = -1; + MUICFG_Window_Spacing_Left = $01; // LongWord, horiz pixels (def=4) + MUICFG_Window_Spacing_Right = $02; // LongWord, horiz pixels (def=4) + MUICFG_Window_Spacing_Top = $03; // LongWord, vert pixels (def=3) + MUICFG_Window_Spacing_Bottom = $04; // LongWord, vert pixels (def=3) + MUICFG_Radio_HSpacing = $05; // LongWord, horiz pixels (def=4) + MUICFG_Radio_VSpacing = $06; // LongWord, vertical pixels (def=1) + MUICFG_Group_HSpacing = $07; // LongWord, horiz pixels (def=6) + MUICFG_Group_VSpacing = $08; // LongWord, vertical pixels (def=3) + MUICFG_Scrollbar_Arrangement = $09; // LongWord, top = 0 (def), middle, bottom + MUICFG_Listview_Refresh = $0a; // LongWord, linear, mixed = 1 (def) + MUICFG_Listview_Font_Leading = $0b; // LongWord, vertical pixels (def=1) + MUICFG_Listview_SmoothVal = $0c; // LongWord, ? (def=0) + MUICFG_Listview_Multi = $0d; // LongWord, shifted = 0 (def), always + MUICFG_GroupTitle_Position = $0f; // LongWord, 1=centered + MUICFG_GroupTitle_Color = $10; // LongWord, 0=normal + MUICFG_Cycle_MenuCtrl_Level = $11; // LongWord, num of entries (def=2) + MUICFG_Cycle_MenuCtrl_Position = $12; // LongWord, below = 0 (def), on active + MUICFG_Frame_Drag = $18; + MUICFG_Cycle_Menu_Recessed = $19; // LongWord, false = 0 (def), true + MUICFG_Cycle_MenuCtrl_Speed = $1a; // LongWord, num of ticks (0..50) (def=0) + MUICFG_Listview_Smoothed = $1b; // LongWord, false = 0 (def), true + MUICFG_Window_Redraw = $1d; // LongWord, no clear, clear = 1 (def) + MUICFG_Font_Normal = $1e; + MUICFG_Font_List = $1f; + MUICFG_Font_Tiny = $20; + MUICFG_Font_Fixed = $21; + MUICFG_Font_Title = $22; + MUICFG_Font_Big = $23; + MUICFG_PublicScreen = $24; + MUICFG_Frame_Button = $2b; + MUICFG_Frame_ImageButton = $2c; + MUICFG_Frame_Text = $2d; + MUICFG_Frame_String = $2e; + MUICFG_Frame_ReadList = $2f; + MUICFG_Frame_InputList = $30; + MUICFG_Frame_Prop = $31; + MUICFG_Frame_Gauge = $32; + MUICFG_Frame_Group = $33; + MUICFG_Frame_PopUp = $34; + MUICFG_Frame_Virtual = $35; + MUICFG_Frame_Slider = $36; + MUICFG_Background_Window = $37; + MUICFG_Background_Requester = $38; + MUICFG_Background_Button = $39; + MUICFG_Background_List = $3a; + MUICFG_Background_Text = $3b; + MUICFG_Background_Prop = $3c; + MUICFG_Background_PopUp = $3d; + MUICFG_Background_Selected = $3e; + MUICFG_Background_ListCursor = $3f; + MUICFG_Background_ListSelect = $40; + MUICFG_Background_ListSelCur = $41; + MUICFG_Image_ArrowUp = $42; + MUICFG_Image_ArrowDown = $43; + MUICFG_Image_ArrowLeft = $44; + MUICFG_Image_ArrowRight = $45; + MUICFG_Image_CheckMark = $46; + MUICFG_Image_RadioButton = $47; + MUICFG_Image_Cycle = $48; + MUICFG_Image_PopUp = $49; + MUICFG_Image_PopFile = $4a; + MUICFG_Image_PopDrawer = $4b; + MUICFG_Image_PropKnob = $4c; + MUICFG_Image_Drawer = $4d; + MUICFG_Image_HardDisk = $4e; + MUICFG_Image_Disk = $4f; + MUICFG_Image_Chip = $50; + MUICFG_Image_Volume = $51; + MUICFG_Image_Network = $52; + MUICFG_Image_Assign = $53; + MUICFG_Background_Register = $54; + MUICFG_Image_TapePlay = $55; + MUICFG_Image_TapePlayBack = $56; + MUICFG_Image_TapePause = $57; + MUICFG_Image_TapeStop = $58; + MUICFG_Image_TapeRecord = $59; + MUICFG_Background_Framed = $5a; + MUICFG_Background_Slider = $5b; + MUICFG_Background_SliderKnob = $5c; + MUICFG_Image_TapeUp = $5d; + MUICFG_Image_TapeDown = $5e; + MUICFG_Keyboard_Press = $5f; + MUICFG_Keyboard_Toggle = $60; + MUICFG_Keyboard_Up = $61; + MUICFG_Keyboard_Down = $62; + MUICFG_Keyboard_PageUp = $63; + MUICFG_Keyboard_PageDown = $64; + MUICFG_Keyboard_Top = $65; + MUICFG_Keyboard_Bottom = $66; + MUICFG_Keyboard_Left = $67; + MUICFG_Keyboard_Right = $68; + MUICFG_Keyboard_WordLeft = $69; + MUICFG_Keyboard_WordRight = $6a; + MUICFG_Keyboard_LineStart = $6b; + MUICFG_Keyboard_LineEnd = $6c; + MUICFG_Keyboard_NextGadget = $6d; + MUICFG_Keyboard_PrevGadget = $6e; + MUICFG_Keyboard_GadgetOff = $6f; + MUICFG_Keyboard_CloseWindow = $70; + MUICFG_Keyboard_NextWindow = $71; + MUICFG_Keyboard_PrevWindow = $72; + MUICFG_Keyboard_Help = $73; + MUICFG_Keyboard_Popup = $74; + MUICFG_Window_Positions = $7a; + MUICFG_Balance_Look = $7b; // LongWord, frame = 0 (def), object + MUICFG_Font_Button = $80; + MUICFG_Scrollbar_Type = $83; // LongWord, standard = 0 (def), newlook, custom + MUICFG_String_Background = $84; + MUICFG_String_Text = $85; + MUICFG_String_ActiveBackground = $86; + MUICFG_String_ActiveText = $87; + MUICFG_Font_Knob = $88; + MUICFG_Drag_LeftButton = $89; // LongWord, false, true (def) + MUICFG_Drag_MiddleButton = $8a; // LongWord, false (def), true + MUICFG_Drag_LMBModifier = $8b; // key desc (def = control) + MUICFG_Drag_MMBModifier = $8c; // key desc + MUICFG_Drag_Autostart = $8d; // LongWord, false = 0, true (def) + MUICFG_Drag_Autostart_Length = $8e; // LongWord, pixels (def = 3) + MUICFG_ActiveObject_Color = $8f; // penspec + MUICFG_Frame_Knob = $90; + MUICFG_Dragndrop_Look = $94; // LongWord, solid, ghosted on obj (def), ... + MUICFG_Background_Page = $95; + MUICFG_Background_ReadList = $96; + MUICFG_String_Cursor = $400; + MUICFG_String_MarkedBackground = $401; + MUICFG_String_MarkedText = $402; + MUICFG_Register_TruncateTitles = $403; + MUICFG_Window_Refresh = $404; + MUICFG_Screen_Mode = $505; + MUICFG_Screen_Mode_ID = $506; + MUICFG_Screen_Width = $507; + MUICFG_Screen_Height = $508; + MUICFG_WindowPos = $509; + MUICFG_Window_Buttons = $50a; + + MUICFG_CustomFrame_1 = $600; + MUICFG_CustomFrame_2 = $601; + MUICFG_CustomFrame_3 = $602; + MUICFG_CustomFrame_4 = $603; + MUICFG_CustomFrame_5 = $604; + MUICFG_CustomFrame_6 = $605; + MUICFG_CustomFrame_7 = $606; + MUICFG_CustomFrame_8 = $607; + MUICFG_CustomFrame_9 = $608; + MUICFG_CustomFrame_10 = $609; + MUICFG_CustomFrame_11 = $60a; + MUICFG_CustomFrame_12 = $60b; + MUICFG_CustomFrame_13 = $60c; + MUICFG_CustomFrame_14 = $60d; + MUICFG_CustomFrame_15 = $60e; + MUICFG_CustomFrame_16 = $60f; + + MUICFG_PublicScreen_PopToFront = $700; + MUICFG_Iconification_Hotkey = $701; + MUICFG_Iconification_ShowIcon = $702; + MUICFG_Iconification_ShowMenu = $703; + MUICFG_Iconification_OnStartup = $704; + MUICFG_Interfaces_EnableARexx = $705; + MUICFG_BubbleHelp_FirstDelay = $706; + MUICFG_BubbleHelp_NextDelay = $707; + +// ********************************************************************* +// Imageadjust +const + MUIC_Imageadjust: PChar = 'Imageadjust.mui'; + +// Identifier base (for AROS extensions) + MUIB_Imageadjust = MUIB_ZUNE or $00001100; + +// Attributes +const + MUIA_Imageadjust_Type = MUIB_MUI or $422f2b; // V11 i.. LongInt + MUIA_Imageadjust_Spec = MUIB_MUI or $4279e1; // ??? .g. PChar + // AROS special + MUIA_Imageadjust_Originator = MUIB_Imageadjust or $0; // Zune: i.. PObject_ + + MUIV_Imageadjust_Type_All = 0; + MUIV_Imageadjust_Type_Image = 1; + MUIV_Imageadjust_Type_Background = 2; + MUIV_Imageadjust_Type_Pen = 3; + +// ********************************************************************* +// Popimage +const + MUIC_Popimage: PChar = 'Popimage.mui'; + +// Identifier base (for Zune extensions) + MUIB_Popimage = MUIB_ZUNE or $00002300; + +// ********************************************************************* +// Scale +const + MUIC_Scale: PChar = 'Scale.mui'; + +// Identifier base (for Zune extensions) + MUIB_Scale = MUIB_ZUNE or $00002d00; + +// Attributes +const + MUIA_Scale_Horiz = MUIB_MUI or $42919a; // V4 isg WordBool + +// ********************************************************************* +// Radio +const + MUIC_Radio: PChar = 'Radio.mui'; + +// Identifier base (for Zune extensions) + MUIB_Radio = MUIB_ZUNE or $00002a00; + +// Attributes +const + MUIA_Radio_Active = MUIB_MUI or $429b41; // V4 isg LongInt + MUIA_Radio_Entries = MUIB_MUI or $42b6a1; // V4 i.. STRPTR + +// ********************************************************************* +// Balance +const + MUIC_Balance: PChar = 'Balance.mui'; + +// Identifier base (for Zune extensions) + MUIB_Balance = MUIB_ZUNE or $00000300; + +// Attributes + MUIA_Balance_Quiet = MUIB_Balance or $0; // Zune V20 i.. LongInt + +// ********************************************************************* +// Pendisplay +const + MUIC_Pendisplay: PChar = 'Pendisplay.mui'; + +// Identifier base (for Zune extensions) + MUIB_Pendisplay = MUIB_ZUNE or $00002000; + +// Methods +const + MUIM_Pendisplay_SetColormap = MUIB_MUI or $426c80; // V13 + MUIM_Pendisplay_SetMUIPen = MUIB_MUI or $42039d; // V13 + MUIM_Pendisplay_SetRGB = MUIB_MUI or $42c131; // V13 + +type + TMUIP_Pendisplay_SetColormap = record + MethodID: LongWord; // MUIM_Pendisplay_SetColormap + colormap: LongInt; + end; + PMUIP_Pendisplay_SetColormap = ^TMUIP_Pendisplay_SetColormap; + + TMUIP_Pendisplay_SetMUIPen = record + MethodID: LongWord; // MUIM_Pendisplay_SetMUIPen + muipen: LongInt; + end; + PMUIP_Pendisplay_SetMUIPen = ^TMUIP_Pendisplay_SetMUIPen; + + TMUIP_Pendisplay_SetRGB = record + MethodID: LongWord; // MUIM_Pendisplay_SetRGB + red: LongWord; + green: LongWord; + blue: LongWord; + end; + PMUIP_Pendisplay_SetRGB = ^TMUIP_Pendisplay_SetRGB; + +// Attributes +const + MUIA_Pendisplay_Pen = MUIB_MUI or $42a748; // V13 ..g PObject_ + MUIA_Pendisplay_Reference = MUIB_MUI or $42dc24; // V13 isg PObject_ + MUIA_Pendisplay_RGBcolor = MUIB_MUI or $42a1a9; // V11 isg PMUI_RGBcolor + MUIA_Pendisplay_Spec = MUIB_MUI or $42a204; // V11 isg PMUI_PenSpec + +// ********************************************************************* +// Penadjust +const + MUIC_Penadjust: PChar= 'Penadjust.mui'; + +// Identifier base (for Zune extensions) + MUIB_Penadjust = MUIB_ZUNE or $00001f00; + +// Attributes +const + MUIA_Penadjust_PSIMode = MUIB_MUI or $421cbb; // V11 i.. WordBool + +// ********************************************************************* +// Poppen +const + MUIC_Poppen: PChar = 'Poppen.mui'; + +// Identifier base (for Zune extensions) + MUIB_Poppen = MUIB_ZUNE or $00002700; + +// ********************************************************************* +// Colorfield +const + MUIC_Colorfield: PChar = 'Colorfield.mui'; + +// Identifier base (for Zune extensions) + MUIB_Colorfield = MUIB_ZUNE or $00000800; + +// Attributes +const + MUIA_Colorfield_Blue = MUIB_MUI or $42d3b0; // V4 isg LongWord + MUIA_Colorfield_Green = MUIB_MUI or $424466; // V4 isg LongWord + MUIA_Colorfield_Pen = MUIB_MUI or $42713a; // V4 ..g LongWord + MUIA_Colorfield_Red = MUIB_MUI or $4279f6; // V4 isg LongWord + MUIA_Colorfield_RGB = MUIB_MUI or $42677a; // V4 isg LongWord + +// ********************************************************************* +// Coloradjust +const + MUIC_Coloradjust: PChar = 'Coloradjust.mui'; + +// Identifier base (for Zune extensions) + MUIB_Coloradjust = MUIB_ZUNE or $00000700; + +// Attributes +const + MUIA_Coloradjust_Blue = MUIB_MUI or $42b8a3; // V4 isg LongWord + MUIA_Coloradjust_Green = MUIB_MUI or $4285ab; // V4 isg LongWord + MUIA_Coloradjust_ModeID = MUIB_MUI or $42ec59; // V4 isg LongWord + MUIA_Coloradjust_Red = MUIB_MUI or $420eaa; // V4 isg LongWord + MUIA_Coloradjust_RGB = MUIB_MUI or $42f899; // V4 isg LongWord + +// ********************************************************************* +// Mccprefs +const + MUIC_Mccprefs: PChar = 'Mccprefs.mui'; + +// ********************************************************************* +// Frameadjust +const + MUIC_Frameadjust: PChar = 'Frameadjust.mui'; + +// Identifier base (for Zune extensions) + MUIB_Frameadjust = MUIB_ZUNE or $00000d00; + +// Attributes + MUIA_Frameadjust_Spec = MUIB_Frameadjust or $0; // Zune 20030330 ig. CONST_STRPTR + +// ********************************************************************* +// Framedisplay +const + MUIC_Framedisplay: PChar = 'Framedisplay.mui'; + +// Identifier base (for Zune extensions) + MUIB_Framedisplay = MUIB_ZUNE or $00000e00; + +// Attributes + MUIA_Framedisplay_Spec = MUIB_MUI or $421794; // MUI: V?? isg PMUI_FrameSpec + +// ********************************************************************* +// Popframe +const + MUIC_Popframe: PChar = 'Popframe.mui'; + +// Identifier base (for Zune extensions) + MUIB_Popframe = MUIB_ZUNE or $00002200; + +// ********************************************************************* +// Volumelist +const + MUIC_Volumelist: PChar = 'Volumelist.mui'; + +// Identifier base (for Zune extensions) + MUIB_Volumelist = MUIB_ZUNE or $1600; + +// ********************************************************************* +// Dirlist +const + MUIC_Dirlist: PChar = 'Dirlist.mui'; + +// Identifer base (for Zune extensions) + MUIB_Dirlist = MUIB_ZUNE or $00001800; + +// Methods +const + MUIM_Dirlist_ReRead = MUIB_MUI or $422d71; // V4 + +type + TMUIP_Dirlist_ReRead = record + MethodID : LongWord; // MUIM_Dirlist_ReRead + end; + +// Attributes +const + MUIA_Dirlist_AcceptPattern = MUIB_MUI or $42760a; // V4 is. STRPTR + MUIA_Dirlist_Directory = MUIB_MUI or $42ea41; // V4 isg STRPTR + MUIA_Dirlist_DrawersOnly = MUIB_MUI or $42b379; // V4 is. WordBool + MUIA_Dirlist_FilesOnly = MUIB_MUI or $42896a; // V4 is. WordBool + MUIA_Dirlist_FilterDrawers = MUIB_MUI or $424ad2; // V4 is. WordBool + MUIA_Dirlist_FilterHook = MUIB_MUI or $42ae19; // V4 is. PHook + MUIA_Dirlist_MultiSelDirs = MUIB_MUI or $428653; // V6 is. WordBool + MUIA_Dirlist_NumBytes = MUIB_MUI or $429e26; // V4 ..g LongInt + MUIA_Dirlist_NumDrawers = MUIB_MUI or $429cb8; // V4 ..g LongInt + MUIA_Dirlist_NumFiles = MUIB_MUI or $42a6f0; // V4 ..g LongInt + MUIA_Dirlist_Path = MUIB_MUI or $426176; // V4 ..g STRPTR + MUIA_Dirlist_RejectIcons = MUIB_MUI or $424808; // V4 is. WordBool + MUIA_Dirlist_RejectPattern = MUIB_MUI or $4259c7; // V4 is. STRPTR + MUIA_Dirlist_SortDirs = MUIB_MUI or $42bbb9; // V4 is. LongInt + MUIA_Dirlist_SortHighLow = MUIB_MUI or $421896; // V4 is. WordBool + MUIA_Dirlist_SortType = MUIB_MUI or $4228bc; // V4 is. LongInt + MUIA_Dirlist_Status = MUIB_MUI or $4240de; // V4 ..g LongInt + + 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; + +// ********************************************************************* +// Numericbutton +const + MUIC_Numericbutton: PChar = 'Numericbutton.mui'; + +// ********************************************************************* +// Poplist +const + MUIC_Poplist: PChar = 'Poplist.mui'; + +// Identifier base (for Zune extensions) + MUIB_Poplist = MUIB_ZUNE or $00002500; + +// Attributes +const + MUIA_Poplist_Array = MUIB_MUI or $42084c; // V8 i.. PPChar + +// ********************************************************************* +// Popscreen +const + MUIC_Popscreen: PChar = 'Popscreen.mui'; + +// Identifier base (for Zune extensions) + MUIB_Popscreen = MUIB_ZUNE or $00002600; + +// ********************************************************************* +// Crawling +const + MUIC_Crawling: PChar = 'Crawling.mui'; + +// ********************************************************************* +// Levelmeter +const + MUIC_Levelmeter: PChar = 'Levelmeter.mui'; + +// Attributes +const + MUIA_Levelmeter_Label = MUIB_MUI or $420dd5; // V11 isg STRPTR + +// ********************************************************************* +// Knob +const + MUIC_Knob: PChar = 'Knob.mui'; + +// ********************************************************************* +// Dtpic +const + MUIC_Dtpic: PChar = 'Dtpic.mui'; + +// Identifier base (for Zune extensions) + MUIB_Palette = MUIB_ZUNE or $00008a00; + +// Attributes +const + MUIA_Dtpic_Alpha = MUIB_MUI or $42b4db; // V20 isg LongInt + MUIA_Dtpic_DarkenSelState = MUIB_MUI or $423247; // V20 i.g WordBool + MUIA_Dtpic_Fade = MUIB_MUI or $420429; // V20 isg LongInt + MUIA_Dtpic_LightenOnMouse = MUIB_MUI or $42966a; // V20 i.g WordBool + MUIA_Dtpic_Name = MUIB_MUI or $423d72; // V18 isg STRPTR + +// ********************************************************************* +// Palette +const + MUIC_Palette: PChar = 'Palette.mui'; + +// Attributes +const + 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 } + +// ********************************************************************* +// Title +const + MUIC_Title: PChar = 'Title.mui'; + +// ********************************************************************* +// Process +const + MUIC_Process: PChar = 'Process.mui'; + +// Methods + MUIM_Process_Kill = MUIB_MUI or $4264cf; // V20 + MUIM_Process_Launch = MUIB_MUI or $425df7; // V20 + MUIM_Process_Process = MUIB_MUI or $4230aa; // V20 + MUIM_Process_Signal = MUIB_MUI or $42e791; // V20 + +type + TMUIP_Process_Kill = record + MethodID : LongWord; + maxdelay: LongInt; + end; + + TMUIP_Process_Launch = record + MethodID : LongWord; + end; + + TMUIP_Process_Process = record + MethodID : LongWord; + kill: PLongWord; + proc: PObject_; + end; + + TMUIP_Process_Signal = record + MethodID : LongWord; + sigs: LongWord; + end; + +// Attributes +const + MUIA_Process_AutoLaunch = MUIB_MUI or $428855; // V20 i.. LongWord + MUIA_Process_Name = MUIB_MUI or $42732b; // V20 i.. LongWord + MUIA_Process_Priority = MUIB_MUI or $422a54; // V20 i.. LongWord + MUIA_Process_SourceClass = MUIB_MUI or $42cf8b; // V20 i.. LongWord + MUIA_Process_SourceObject = MUIB_MUI or $4212a2; // V20 i.. LongWord + MUIA_Process_StackSize = MUIB_MUI or $4230d0; // V20 i.. LongWord + MUIA_Process_Task = MUIB_MUI or $42b123; // V20 ..g LongWord + +// ********************************************************************* +// Pixmap +const + MUIC_Pixmap: PChar = 'Pixmap.mui'; + +// Identifier base (for Zune extensions) + MUIB_Pixmap = MUIB_ZUNE or $00003600; + +/// Methods + MUIM_Pixmap_DrawSection = MUIB_MUI or $42ce0f; // private, V20 + +type + TMUIP_Pixmap_DrawSection = record // private + MethodID: LongWord; // MUIM_Pixmap_DrawSection + sx: LongInt; + sy: LongInt; + sw: LongInt; + sh: LongInt; + mri: PMUI_RenderInfo; + dx: LongInt; + dy: LongInt; + end; + +// Attributes +const + MUIA_Pixmap_Alpha = MUIB_MUI or $421fef; // V20 isg LongWord + MUIA_Pixmap_CLUT = MUIB_MUI or $42042a; // V20 isg LongWord + MUIA_Pixmap_CompressedSize = MUIB_MUI or $42e7e4; // V20 isg LongWord + MUIA_Pixmap_Compression = MUIB_MUI or $42ce74; // V20 isg LongWord + MUIA_Pixmap_Data = MUIB_MUI or $429ea0; // V20 isg APTR + MUIA_Pixmap_Format = MUIB_MUI or $42ab14; // V20 isg LongWord + MUIA_Pixmap_Height = MUIB_MUI or $4288be; // V20 isg LongInt + MUIA_Pixmap_UncompressedData = MUIB_MUI or $42b085; // V20 ..g APTR + MUIA_Pixmap_Width = MUIB_MUI or $42ccb8; // V20 isg LongInt + + MUIV_Pixmap_Compression_None = 0; + MUIV_Pixmap_Compression_RLE = 1; + MUIV_Pixmap_Compression_BZip2 = 2; + + MUIV_Pixmap_Format_CLUT8 = 0; + MUIV_Pixmap_Format_RGB24 = 1; + MUIV_Pixmap_Format_ARGB32 = 2; + +// ********************************************************************* +// Gadget +const + MUIC_Gadget: PChar = 'Gadget.mui'; + +// Attributes +const + MUIA_Gadget_Gadget = MUIB_MUI or $42ec1a; // V11 ..g PGadget + +// ********************************************************************* +// Applist +const + MUIC_Applist: PChar = 'Applist.mui'; + +// ********************************************************************* +// Cclist +const + MUIC_Cclist: PChar = 'Cclist.mui'; + +type +// Instance data of notify class + TMUI_NotifyData = record + mnd_GlobalInfo: PMUI_GlobalInfo; + mnd_UserData: LongWord; + mnd_ObjectID: LongWord; + priv1: LongWord; + priv2: LongWord; + priv3: LongWord; + priv4: LongWord; + end; + PMUI_NotifyData = ^TMUI_NotifyData; + +const + // special maximum dimension in case it is unlimited + MUI_MAXMAX = 10000; + +type + T__dummyAreaData__ = record + mnd: TMUI_NotifyData; + mad: TMUI_AreaData; + end; + P__dummyAreaData__ = ^T__dummyAreaData__; + +const +// Possible keyevents (user configurable) + MUIKEY_RELEASE = -2; // this one is faked only, so not configurable + 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; + + // The mask definitions of the above keys + MUIKEYF_PRESS = 1 shl MUIKEY_PRESS; + MUIKEYF_TOGGLE = 1 shl MUIKEY_TOGGLE; + MUIKEYF_UP = 1 shl MUIKEY_UP; + MUIKEYF_DOWN = 1 shl MUIKEY_DOWN; + MUIKEYF_PAGEUP = 1 shl MUIKEY_PAGEUP; + MUIKEYF_PAGEDOWN = 1 shl MUIKEY_PAGEDOWN; + MUIKEYF_TOP = 1 shl MUIKEY_TOP; + MUIKEYF_BOTTOM = 1 shl MUIKEY_BOTTOM; + MUIKEYF_LEFT = 1 shl MUIKEY_LEFT; + MUIKEYF_RIGHT = 1 shl MUIKEY_RIGHT; + MUIKEYF_WORDLEFT = 1 shl MUIKEY_WORDLEFT; + MUIKEYF_WORDRIGHT = 1 shl MUIKEY_WORDRIGHT; + MUIKEYF_LINESTART = 1 shl MUIKEY_LINESTART; + MUIKEYF_LINEEND = 1 shl MUIKEY_LINEEND; + MUIKEYF_GADGET_NEXT = 1 shl MUIKEY_GADGET_NEXT; + MUIKEYF_GADGET_PREV = 1 shl MUIKEY_GADGET_PREV; + MUIKEYF_GADGET_OFF = 1 shl MUIKEY_GADGET_OFF; + MUIKEYF_WINDOW_CLOSE = 1 shl MUIKEY_WINDOW_CLOSE; + MUIKEYF_WINDOW_NEXT = 1 shl MUIKEY_WINDOW_NEXT; + MUIKEYF_WINDOW_PREV = 1 shl MUIKEY_WINDOW_PREV; + MUIKEYF_HELP = 1 shl MUIKEY_HELP; + MUIKEYF_POPUP = 1 shl MUIKEY_POPUP; + +// MUI_CustomClass returned by MUI_CreateCustomClass() +// use for whatever you want MUI has opened these libraries for you automatically. You can use them or decide to open +type + TMUI_CustomClass = record + mcc_UserData: APTR; // freely usable + + // Zune/MUI had the following libraries opened for you + mcc_UtilityBase: PLibrary; + mcc_DOSBase: PLibrary; + mcc_GfxBase: PLibrary; + mcc_IntuitionBase: PLibrary; + + mcc_Super: PIClass; // the boopsi class' superclass + mcc_Class: PIClass; // the boopsi class + + // the following stuff is private + mcc_Module: PLibrary; // non-null if external class + end; + PMUI_CustomClass = ^TMUI_CustomClass; var - MUIMasterBase : pLibrary; + MUIMasterBase: PLibrary; -function MUI_NewObjectA(class_ : PChar; tags : pTagItem) : PObject_; syscall MUIMasterBase 5; -procedure MUI_DisposeObject(obj : PObject_); syscall MUIMasterBase 6; -function MUI_RequestA(app : Pointer; win : Pointer; flags : LONGBITS; title : PChar; gadgets : PChar; format : PChar; params : Pointer) : LongInt; syscall MUIMasterBase 7; -function MUI_AllocAslRequest(typ : LongWord; tags : pTagItem) : Pointer; syscall MUIMasterBase 8; -function MUI_AslRequest(req : Pointer; tags : pTagItem) : LongBool; syscall MUIMasterBase 9; -procedure MUI_FreeAslRequest(req : Pointer); syscall MUIMasterBase 10; -function MUI_Error : LongInt; syscall MUIMasterBase 11; -function MUI_SetError(errnum : LongInt) : LongInt; syscall MUIMasterBase 12; -function MUI_GetClass(name : pCHar) : PIClass; syscall MUIMasterBase 13; -procedure MUI_FreeClass(cl : PIClass); syscall MUIMasterBase 14; -procedure MUI_RequestIDCMP(obj : PObject_; flags : LongWord); syscall MUIMasterBase 15; -procedure MUI_RejectIDCMP(obj : PObject_; flags : LongWord); syscall MUIMasterBase 16; -procedure MUI_Redraw(obj : PObject_; flags : LongWord); syscall MUIMasterBase 17; -function MUI_CreateCustomClass(base : pLibrary; supername : PChar; supermcc : pMUI_CustomClass; datasize : LongInt; dispatcher : Pointer) : PMUI_CustomClass; syscall MUIMasterBase 18; -function MUI_DeleteCustomClass(mcc : pMUI_CustomClass) : LongBool; syscall MUIMasterBase 19; -function MUI_MakeObjectA(typ: LongInt; params : pLongWord) : PObject_; syscall MUIMasterBase 20; -function MUI_Layout(obj: PObject_; l : LongInt; t : LongInt; w : LongInt; h : LongInt; flags : LongWord) : LongBool; syscall MUIMasterBase 21; -function MUI_ObtainPen(mri: PMUI_RenderInfo; spec : pMUI_PenSpec; flags : LongWord) : LongInt; syscall MUIMasterBase 22; -procedure MUI_ReleasePen(mri: PMUI_RenderInfo; pen : LongInt); syscall MUIMasterBase 23; -function MUI_AddClipping(mri: PMUI_RenderInfo; l : smallint; t : smallint; w : smallint; h : smallint) : Pointer; syscall MUIMasterBase 24; -procedure MUI_RemoveClipping(mri: PMUI_RenderInfo; h : Pointer); syscall MUIMasterBase 25; -function MUI_AddClipRegion(mri: PMUI_RenderInfo; region : pRegion) : Pointer; syscall MUIMasterBase 26; -procedure MUI_RemoveClipRegion(mri: PMUI_RenderInfo; region : Pointer); syscall MUIMasterBase 27; -function MUI_BeginRefresh(mri: PMUI_RenderInfo; flags : LongWord) : LongBool; syscall MUIMasterBase 28; -procedure MUI_EndRefresh(mri: PMUI_RenderInfo; flags : LongWord); syscall MUIMasterBase 29; +function MUI_NewObjectA(ClassID: PChar; Tags: pTagItem): PObject_; syscall MUIMasterBase 5; +procedure MUI_DisposeObject(Obj: PObject_); syscall MUIMasterBase 6; +function MUI_RequestA(App: APTR; Win: APTR; Flags: LongBits; Title: PChar; Gadgets: PChar; Format: PChar; Params: APTR): LongInt; syscall MUIMasterBase 7; +function MUI_AllocAslRequest(ReqTyp: LongWord; TagList: PTagItem): Pointer; syscall MUIMasterBase 8; +function MUI_AslRequest(Requester: Pointer; TagList: PTagItem): LongBool; syscall MUIMasterBase 9; +procedure MUI_FreeAslRequest(Requester: APTR); syscall MUIMasterBase 10; +function MUI_Error: LongInt; syscall MUIMasterBase 11; +function MUI_SetError(ErrNum: LongInt): LongInt; syscall MUIMasterBase 12; +function MUI_GetClass(ClassID: PChar): PIClass; syscall MUIMasterBase 13; +procedure MUI_FreeClass(Cl: PIClass); syscall MUIMasterBase 14; +procedure MUI_RequestIDCMP(Obj: PObject_; Flags: LongWord); syscall MUIMasterBase 15; +procedure MUI_RejectIDCMP(Obj: PObject_; Flags: LongWord); syscall MUIMasterBase 16; +procedure MUI_Redraw(Obj: PObject_; Flags: LongWord); syscall MUIMasterBase 17; +function MUI_CreateCustomClass(Base: PLibrary; Supername: PChar; Supermcc: PMUI_CustomClass; DataSize: LongInt; Dispatcher: Pointer): PMUI_CustomClass; syscall MUIMasterBase 18; +function MUI_DeleteCustomClass(Mcc: PMUI_CustomClass): LongBool; syscall MUIMasterBase 19; +function MUI_MakeObjectA(Typ: LongInt; Params: PIPTR): PObject_; syscall MUIMasterBase 20; +function MUI_Layout(Obj: PObject_; Left: LongInt; Top: LongInt; Width: LongInt; Height: LongInt; Flags: LongWord): LongBool; syscall MUIMasterBase 21; +function MUI_ObtainPen(Mri: PMUI_RenderInfo; spec : pMUI_PenSpec; flags : LongWord) : LongInt; syscall MUIMasterBase 22; +procedure MUI_ReleasePen(Mri: PMUI_RenderInfo; Pen: LongInt); syscall MUIMasterBase 23; +function MUI_AddClipping(Mri: PMUI_RenderInfo; Left: SmallInt; Top: SmallInt; Width: SmallInt; Height: SmallInt): APTR; syscall MUIMasterBase 24; +procedure MUI_RemoveClipping(Mri: PMUI_RenderInfo; Handle: APTR); syscall MUIMasterBase 25; +function MUI_AddClipRegion(Mri: PMUI_RenderInfo; Region: PRegion): APTR; syscall MUIMasterBase 26; +procedure MUI_RemoveClipRegion(Mri: PMUI_RenderInfo; Handle: Pointer); syscall MUIMasterBase 27; +function MUI_BeginRefresh(Mri: PMUI_RenderInfo; Flags: LongWord): LongBool; syscall MUIMasterBase 28; +procedure MUI_EndRefresh(Mri: PMUI_RenderInfo; Flags: LongWord); syscall MUIMasterBase 29; + +// some procedures to get some information about our object + +function MUINotifyData(Obj: APTR): PMUI_NotifyData; +function MUIAreaData(Obj: APTR): PMUI_AreaData; +function MUIGlobalInfo(Obj: APTR): PMUI_GlobalInfo; +function MUIUserData(Obj: APTR): Pointer ; +function MUIRenderInfo(Obj: APTR): PMUI_RenderInfo; +function MUIPen(Pen: LongInt): LongInt; + +// some more specialized functions to retain information about special +// object-data like rastport, window, etc. + +// NOTE: These macros may only be used in custom classes and are +// only valid if your class is inbetween the specified methods! + +function OBJ_App(Obj: APTR): PObject_; // valid between MUIM_Setup/Cleanup +function OBJ_Win(Obj: APTR): PObject_; // valid between MUIM_Setup/Cleanup +function OBJ_Dri(Obj: APTR): PDrawInfo; // valid between MUIM_Setup/Cleanup +function OBJ_Screen(Obj: APTR): PScreen; // valid between MUIM_Setup/Cleanup +function OBJ_Pens(Obj: APTR): PWord; // valid between MUIM_Setup/Cleanup +function OBJ_Window(Obj: APTR): PWindow; // valid between MUIM_Show/Hide +function OBJ_Rp(Obj: APTR): PRastPort; // valid between MUIM_Show/Hide +function OBJ_Left(Obj: APTR): SmallInt; // valid during MUIM_Draw +function OBJ_Top(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_Width(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_Height(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_Right(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_Bottom(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_AddLeft(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_AddTop(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_SubWidth(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_SubHeight(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_MLeft(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_MTop(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_MWidth(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_MHeight(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_MRight(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_MBottom(Obj: APTR): SmallInt; // valid during MUIM_Draw *) +function OBJ_Font(Obj: APTR): PTextFont; // valid between MUIM_Setup/Cleanup *) +function OBJ_MinWidth(Obj: APTR): LongWord; // valid between MUIM_Show/Hide *) +function OBJ_MinHeight(Obj: APTR): LongWord; // valid between MUIM_Show/Hide *) +function OBJ_MaxWidth(Obj: APTR): LongWord; // valid between MUIM_Show/Hide *) +function OBJ_MaxHeight(Obj: APTR): LongWord; // valid between MUIM_Show/Hide *) +function OBJ_DefWidth(Obj: APTR): LongWord; // valid between MUIM_Show/Hide *) +function OBJ_DefHeight(Obj: APTR): LongWord; // valid between MUIM_Show/Hide *) +function OBJ_Flags(Obj: APTR): LongWord; + +function OBJ_Between(a, x, b: SmallInt): Boolean; +function OBJ_IsInObject(x, y: SmallInt; Obj: PObject_): Boolean; + +function MUIV_Window_AltHeight_MinMax(p: LongInt): LongInt; +function MUIV_Window_AltHeight_Visible(p: LongInt): LongInt; +function MUIV_Window_AltHeight_Screen(p: LongInt): LongInt; +function MUIV_Window_AltTopEdge_Delta(p: LongInt): LongInt; +function MUIV_Window_AltWidth_MinMax(p: LongInt): LongInt; +function MUIV_Window_AltWidth_Visible(p: LongInt): LongInt; +function MUIV_Window_AltWidth_Screen(p: LongInt): LongInt; +function MUIV_Window_Height_MinMax(p: LongInt): LongInt; +function MUIV_Window_Height_Visible(p: LongInt): LongInt; +function MUIV_Window_Height_Screen(p: LongInt): LongInt; +function MUIV_Window_TopEdge_Delta(p: LongInt): LongInt; +function MUIV_Window_Width_MinMax(p: LongInt): LongInt; +function MUIV_Window_Width_Visible(p: LongInt): LongInt; +function MUIV_Window_Width_Screen(p: LongInt): LongInt; -(* -** some procedures to get some information about our object -*) - -function MUINotifyData(obj : APTR) : pMUI_NotifyData; -function MUIAreaData(obj : APTR) : pMUI_AreaData; -function MUIGlobalInfo(obj : APTR) : pMUI_GlobalInfo; -function MUIUserData(obj : APTR) : Pointer ; -function MUIRenderInfo(obj : APTR) : PMUI_RenderInfo; -function MUIPen(pen : LongInt): LongInt; -(* -** some more specialized functions to retain information about special -** object-data like rastport, window, etc. -** -** NOTE: These macros may only be used in custom classes and are -** only valid if your class is inbetween the specified methods! -*) - -function OBJ_App(obj : APTR) : PObject_; (* valid between MUIM_Setup/Cleanup *) -function OBJ_Win(obj : APTR) : PObject_; (* valid between MUIM_Setup/Cleanup *) -function OBJ_Dri(obj : APTR) : pDrawInfo; (* valid between MUIM_Setup/Cleanup *) -function OBJ_Screen(obj : APTR) : pScreen; (* valid between MUIM_Setup/Cleanup *) -function OBJ_Pens(obj : APTR) : pWord; (* valid between MUIM_Setup/Cleanup *) -function OBJ_Window(obj : APTR) : pWindow; (* valid between MUIM_Show/Hide *) -function OBJ_Rp(obj : APTR) : pRastPort; (* valid between MUIM_Show/Hide *) -function OBJ_Left(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_Top(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_Width(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_Height(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_Right(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_Bottom(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_AddLeft(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_AddTop(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_SubWidth(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_SubHeight(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_MLeft(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_MTop(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_MWidth(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_MHeight(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_MRight(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_MBottom(obj : APTR) : smallint; (* valid during MUIM_Draw *) -function OBJ_Font(obj : APTR) : pTextFont; (* valid between MUIM_Setup/Cleanup *) -function OBJ_MinWidth(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) -function OBJ_MinHeight(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) -function OBJ_MaxWidth(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) -function OBJ_MaxHeight(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) -function OBJ_DefWidth(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) -function OBJ_DefHeight(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) -function OBJ_Flags(obj : APTR) : LongWord; - -function OBJ_Between(a,x,b : smallint): boolean; -function OBJ_IsInObject(x,y : smallint; obj : PObject_): boolean; - -function MUIV_Window_AltHeight_MinMax(p : LongInt) : LongInt; -function MUIV_Window_AltHeight_Visible(p : LongInt) : LongInt; -function MUIV_Window_AltHeight_Screen(p : LongInt) : LongInt; -function MUIV_Window_AltTopEdge_Delta(p : LongInt) : LongInt; -function MUIV_Window_AltWidth_MinMax(p : LongInt) : LongInt; -function MUIV_Window_AltWidth_Visible(p : LongInt) : LongInt; -function MUIV_Window_AltWidth_Screen(p : LongInt) : LongInt; -function MUIV_Window_Height_MinMax(p : LongInt) : LongInt; -function MUIV_Window_Height_Visible(p : LongInt) : LongInt; -function MUIV_Window_Height_Screen(p : LongInt) : LongInt; -function MUIV_Window_TopEdge_Delta(p : LongInt) : LongInt; -function MUIV_Window_Width_MinMax(p : LongInt) : LongInt; -function MUIV_Window_Width_Visible(p : LongInt) : LongInt; -function MUIV_Window_Width_Screen(p : LongInt) : LongInt; - -{ - Functions and procedures with array of const go here -} -function MUI_AllocAslRequestTags(_type : longword; const tags : Array Of Const) : Pointer; -function MUI_AslRequestTags(req : Pointer; const tags : Array Of Const) : LongBool; -function MUI_MakeObject(_type : LongInt; const params : Array Of Const) : pLongWord; -function MUI_NewObject(a0arg : pCHAR; const tags : Array Of Const) : pLongWord; -function MUI_Request(app : Pointer; win : Pointer; flags : longword; title : pCHAR; gadgets : pCHAR; format : pCHAR; const params : Array Of Const) : LongInt; - - - -{This is a variable that knows how the unit is compiled} -var - MUIMASTERIsCompiledHow : LongInt; +// Functions and procedures with array of const go here +function MUI_AllocAslRequestTags(ReqTyp: Longword; const Tags: array of const): Pointer; +function MUI_AslRequestTags(req: Pointer; const Tags : array of const): LongBool; +function MUI_MakeObject(_type: LongInt; const Params : array of const): PLongWord; +function MUI_NewObject(a0arg: PCHAR; const Tags: array of const): PLongWord; +function MUI_Request(App: Pointer; Win: Pointer; Flags: LongWord; Title: PChar; Gadgets: PChar; Format: PChar; const Params: array of const): LongInt; implementation uses - tagsarray,longarray; + tagsarray, longarray; -function MUINotifyData(obj : APTR) : pMUI_NotifyData; +function MUINotifyData(Obj: APTR): PMUI_NotifyData; inline; begin - MUINotifyData := pMUI_NotifyData(@p__dummyXFC2__(obj)^.mnd); + MUINotifyData := PMUI_NotifyData(@P__dummyAreaData__(Obj)^.mnd); end; -function MUIAreaData(obj : APTR) : pMUI_AreaData; +function MUIAreaData(Obj: APTR): PMUI_AreaData; inline; begin - MUIAreaData := pMUI_AreaData(@p__dummyXFC2__(obj)^.mad); + MUIAreaData := PMUI_AreaData(@P__dummyAreaData__(Obj)^.mad); end; -function MUIGlobalInfo(obj : APTR) : pMUI_GlobalInfo; +function MUIGlobalInfo(Obj: APTR): PMUI_GlobalInfo; inline; begin - MUIGlobalInfo := pMUI_GlobalInfo(p__dummyXFC2__(obj)^.mnd.mnd_GlobalInfo); + MUIGlobalInfo := PMUI_GlobalInfo(P__dummyAreaData__(Obj)^.mnd.mnd_GlobalInfo); end; -function MUIUserData(obj : APTR) : Pointer ; +function MUIUserData(Obj: APTR): Pointer; inline; begin - MUIUserData := Pointer(p__dummyXFC2__(obj)^.mnd.mnd_GlobalInfo); + MUIUserData := Pointer(p__dummyAreaData__(obj)^.mnd.mnd_GlobalInfo); end; -function MUIRenderInfo(obj : APTR) : PMUI_RenderInfo; +function MUIRenderInfo(Obj: APTR): PMUI_RenderInfo; inline; begin - MUIRenderInfo := PMUI_RenderInfo(p__dummyXFC2__(obj)^.mad.mad_RenderInfo); + MUIRenderInfo := PMUI_RenderInfo(P__dummyAreaData__(obj)^.mad.mad_RenderInfo); end; -function MUIPen(pen : LongInt): LongInt; +function MUIPen(Pen: LongInt): LongInt; inline; begin - MUIPen := LongInt(pen*MUIPEN_Mask); + MUIPen := LongInt(Pen and MUIPEN_Mask); end; -function OBJ_App(obj : APTR) : PObject_; (* valid between MUIM_Setup/Cleanup *) +function OBJ_App(Obj: APTR): PObject_; inline; begin - OBJ_App := MUIGlobalInfo(obj)^.mgi_ApplicationObject; + OBJ_App := MUIGlobalInfo(Obj)^.mgi_ApplicationObject; end; -function OBJ_Win(obj : APTR) : PObject_; (* valid between MUIM_Setup/Cleanup *) +function OBJ_Win(Obj: APTR): PObject_; inline; begin - OBJ_Win := MUIRenderInfo(obj)^.mri_WindowObject; + OBJ_Win := MUIRenderInfo(Obj)^.mri_WindowObject; end; -function OBJ_Dri(obj : APTR) : pDrawInfo; (* valid between MUIM_Setup/Cleanup *) +function OBJ_Dri(Obj: APTR): PDrawInfo; inline; begin - OBJ_Dri := MUIRenderInfo(obj)^.mri_DrawInfo; + OBJ_Dri := MUIRenderInfo(obj)^.mri_DrawInfo; end; -function OBJ_Screen(obj : APTR) : pScreen; (* valid between MUIM_Setup/Cleanup *) +function OBJ_Screen(Obj: APTR): PScreen; inline; begin - OBJ_Screen := MUIRenderInfo(obj)^.mri_Screen; + OBJ_Screen := MUIRenderInfo(Obj)^.mri_Screen; end; -function OBJ_Pens(obj : APTR) : pWord; (* valid between MUIM_Setup/Cleanup *) +function OBJ_Pens(Obj: APTR): PWord; inline; begin - OBJ_Pens := MUIRenderInfo(obj)^.mri_Pens; + OBJ_Pens := MUIRenderInfo(obj)^.mri_Pens; end; -function OBJ_Window(obj : APTR) : pWindow; (* valid between MUIM_Show/Hide *) +function OBJ_Window(Obj: APTR): PWindow; inline; begin - OBJ_Window := MUIRenderInfo(obj)^.mri_Window; + OBJ_Window := MUIRenderInfo(obj)^.mri_Window; end; -function OBJ_Rp(obj : APTR) : pRastPort; (* valid between MUIM_Show/Hide *) +function OBJ_Rp(Obj: APTR): PRastPort; inline; begin - OBJ_Rp := MUIRenderInfo(obj)^.mri_RastPort; + OBJ_Rp := MUIRenderInfo(Obj)^.mri_RastPort; end; -function OBJ_Left(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_Left(Obj: APTR): SmallInt; inline; begin - OBJ_Left := MUIAreaData(obj)^.mad_Box.Left; + OBJ_Left := MUIAreaData(Obj)^.mad_Box.Left; end; -function OBJ_Top(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_Top(Obj: APTR): SmallInt; inline; begin - OBJ_Top := MUIAreaData(obj)^.mad_Box.Top; + OBJ_Top := MUIAreaData(Obj)^.mad_Box.Top; end; -function OBJ_Width(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_Width(Obj: APTR): SmallInt; inline; begin - OBJ_Width := MUIAreaData(obj)^.mad_Box.Width; + OBJ_Width := MUIAreaData(Obj)^.mad_Box.Width; end; -function OBJ_Height(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_Height(Obj: APTR): SmallInt; inline; begin - OBJ_Height := MUIAreaData(obj)^.mad_Box.Height; + OBJ_Height := MUIAreaData(Obj)^.mad_Box.Height; end; -function OBJ_Right(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_Right(Obj: APTR): SmallInt; inline; begin - OBJ_Right := OBJ_Left(obj) + OBJ_Width(obj) -1; + OBJ_Right := OBJ_Left(Obj) + OBJ_Width(Obj) - 1; end; -function OBJ_Bottom(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_Bottom(Obj: APTR): SmallInt; inline; begin - OBJ_Bottom := OBJ_Top(obj) + OBJ_Height(obj) -1; + OBJ_Bottom := OBJ_Top(Obj) + OBJ_Height(Obj) - 1; end; -function OBJ_AddLeft(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_AddLeft(Obj: APTR): SmallInt; inline; begin - OBJ_AddLeft := MUIAreaData(obj)^.mad_AddLeft; + OBJ_AddLeft := MUIAreaData(obj)^.mad_AddLeft; end; -function OBJ_AddTop(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_AddTop(Obj: APTR): SmallInt; inline; begin - OBJ_AddTop := MUIAreaData(obj)^.mad_AddTop; + OBJ_AddTop := MUIAreaData(obj)^.mad_AddTop; end; -function OBJ_SubWidth(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_SubWidth(Obj: APTR): SmallInt; inline; begin - OBJ_SubWidth := MUIAreaData(obj)^.mad_SubWidth; + OBJ_SubWidth := MUIAreaData(obj)^.mad_SubWidth; end; -function OBJ_SubHeight(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_SubHeight(Obj: APTR): SmallInt; inline; begin - OBJ_SubHeight := MUIAreaData(obj)^.mad_SubHeight; + OBJ_SubHeight := MUIAreaData(obj)^.mad_SubHeight; end; -function OBJ_MLeft(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_MLeft(Obj: APTR): SmallInt; inline; begin - OBJ_MLeft := OBJ_Left(obj) + OBJ_AddLeft(obj); + OBJ_MLeft := OBJ_Left(obj) + OBJ_AddLeft(obj); end; -function OBJ_MTop(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_MTop(Obj: APTR): SmallInt; inline; begin - OBJ_MTop := OBJ_Top(obj) + OBJ_AddTop(obj); + OBJ_MTop := OBJ_Top(obj) + OBJ_AddTop(obj); end; -function OBJ_MWidth(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_MWidth(Obj: APTR): SmallInt; inline; begin - OBJ_MWidth := OBJ_Width(obj) -OBJ_SubWidth(obj); + OBJ_MWidth := OBJ_Width(obj) - OBJ_SubWidth(obj); end; -function OBJ_MHeight(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_MHeight(Obj: APTR): SmallInt; inline; begin - OBJ_MHeight := OBJ_Height(obj) - OBJ_SubHeight(obj); + OBJ_MHeight := OBJ_Height(obj) - OBJ_SubHeight(obj); end; -function OBJ_MRight(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_MRight(Obj: APTR): SmallInt; inline; begin - OBJ_MRight := OBJ_MLeft(obj) + OBJ_MWidth(obj) -1; + OBJ_MRight := OBJ_MLeft(obj) + OBJ_MWidth(obj) - 1; end; -function OBJ_MBottom(obj : APTR) : smallint; (* valid during MUIM_Draw *) +function OBJ_MBottom(Obj: APTR): SmallInt; inline; begin - OBJ_MBottom := OBJ_MTop(obj) + OBJ_MHeight(obj) -1; + OBJ_MBottom := OBJ_MTop(obj) + OBJ_MHeight(obj) - 1; end; -function OBJ_Font(obj : APTR) : pTextFont; (* valid between MUIM_Setup/Cleanup *) +function OBJ_Font(Obj: APTR): PTextFont; inline; begin - OBJ_Font := MUIAreaData(obj)^.mad_Font; + OBJ_Font := MUIAreaData(obj)^.mad_Font; end; -function OBJ_MinWidth(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) +function OBJ_MinWidth(Obj: APTR): LongWord; inline; begin - OBJ_MinWidth := MUIAreaData(obj)^.mad_MinMax.MinWidth; + OBJ_MinWidth := MUIAreaData(obj)^.mad_MinMax.MinWidth; end; -function OBJ_MinHeight(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) +function OBJ_MinHeight(Obj: APTR): LongWord; inline; begin - OBJ_MinHeight := MUIAreaData(obj)^.mad_MinMax.MinHeight; + OBJ_MinHeight := MUIAreaData(obj)^.mad_MinMax.MinHeight; end; -function OBJ_MaxWidth(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) +function OBJ_MaxWidth(Obj: APTR): LongWord; inline; begin - OBJ_maxWidth := MUIAreaData(obj)^.mad_MinMax.MaxWidth; + OBJ_maxWidth := MUIAreaData(obj)^.mad_MinMax.MaxWidth; end; -function OBJ_MaxHeight(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) +function OBJ_MaxHeight(Obj: APTR): LongWord; inline; begin - OBJ_maxHeight := MUIAreaData(obj)^.mad_MinMax.MaxHeight; + OBJ_maxHeight := MUIAreaData(obj)^.mad_MinMax.MaxHeight; end; -function OBJ_DefWidth(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) +function OBJ_DefWidth(Obj: APTR): LongWord; inline; begin - OBJ_DefWidth := MUIAreaData(obj)^.mad_MinMax.DefWidth; + OBJ_DefWidth := MUIAreaData(obj)^.mad_MinMax.DefWidth; end; -function OBJ_DefHeight(obj : APTR) : LongWord; (* valid between MUIM_Show/Hide *) +function OBJ_DefHeight(Obj: APTR): LongWord; inline; begin - OBJ_DefHeight := MUIAreaData(obj)^.mad_MinMax.DefHeight; + OBJ_DefHeight := MUIAreaData(obj)^.mad_MinMax.DefHeight; end; -function OBJ_Flags(obj : APTR) : LongWord; +function OBJ_Flags(Obj: APTR): LongWord; inline; begin - OBJ_Flags := MUIAreaData(obj)^.mad_Flags; + OBJ_Flags := MUIAreaData(obj)^.mad_Flags; end; -(* -** 2 useful procedures for testing if some coordinates are inside your object -** (converted from the ones in class3.c. So look there how to use... ) -*) +// 2 useful procedures for testing if some coordinates are inside your object (converted from the ones in class3.c. So look there how to use... ) -function OBJ_Between(a,x,b : smallint): boolean; +function OBJ_Between(a,x,b : SmallInt): boolean; inline; begin - OBJ_Between := ((x>=a) and (x<=b)); + OBJ_Between := (x >= a) and (x <= b); end; -function OBJ_IsInObject(x,y : smallint; obj : PObject_): boolean; +function OBJ_IsInObject(x, y: SmallInt; Obj: PObject_): boolean; inline; begin - OBJ_IsInObject := (OBJ_Between(OBJ_MLeft(obj),x,OBJ_MRight(obj)) - and OBJ_Between(OBJ_MTop(obj),y,OBJ_MBottom(obj))); + OBJ_IsInObject := OBJ_Between(OBJ_MLeft(obj), x, OBJ_MRight(obj)) and OBJ_Between(OBJ_MTop(obj), y, OBJ_MBottom(obj)); end; -function MUIV_Window_AltHeight_MinMax(p : LongInt) : LongInt; +function MUIV_Window_AltHeight_MinMax(p: LongInt): LongInt; inline; begin - MUIV_Window_AltHeight_MinMax := (0 - p); + MUIV_Window_AltHeight_MinMax := 0 - p; end; -function MUIV_Window_AltHeight_Visible(p : LongInt) : LongInt; +function MUIV_Window_AltHeight_Visible(p: LongInt): LongInt; inline; begin - MUIV_Window_AltHeight_Visible := (-100 - (p)); + MUIV_Window_AltHeight_Visible := -100 - p; end; -function MUIV_Window_AltHeight_Screen(p : LongInt) : LongInt; +function MUIV_Window_AltHeight_Screen(p: LongInt): LongInt; inline; begin - MUIV_Window_AltHeight_Screen := (-200 - (p)); + MUIV_Window_AltHeight_Screen := -200 - p; end; -function MUIV_Window_AltTopEdge_Delta(p : LongInt) : LongInt; +function MUIV_Window_AltTopEdge_Delta(p: LongInt): LongInt; inline; begin - MUIV_Window_AltTopEdge_Delta := (-3 - (p)); + MUIV_Window_AltTopEdge_Delta := -3 - p; end; -function MUIV_Window_AltWidth_MinMax(p : LongInt) : LongInt; +function MUIV_Window_AltWidth_MinMax(p: LongInt): LongInt; inline; begin - MUIV_Window_AltWidth_MinMax := 0 - p; + MUIV_Window_AltWidth_MinMax := 0 - p; end; -function MUIV_Window_AltWidth_Visible(p : LongInt) : LongInt; +function MUIV_Window_AltWidth_Visible(p: LongInt): LongInt; inline; begin - MUIV_Window_AltWidth_Visible := (-100 - (p)); + MUIV_Window_AltWidth_Visible := -100 - p; end; -function MUIV_Window_AltWidth_Screen(p : LongInt) : LongInt; +function MUIV_Window_AltWidth_Screen(p: LongInt): LongInt; inline; begin - MUIV_Window_AltWidth_Screen := (-200 - (p)); + MUIV_Window_AltWidth_Screen := -200 - p; end; -function MUIV_Window_Height_MinMax(p : LongInt) : LongInt; +function MUIV_Window_Height_MinMax(p: LongInt): LongInt; inline; begin - MUIV_Window_Height_MinMax := 0 - p; + MUIV_Window_Height_MinMax := 0 - p; end; -function MUIV_Window_Height_Visible(p : LongInt) : LongInt; +function MUIV_Window_Height_Visible(p: LongInt): LongInt; inline; begin - MUIV_Window_Height_Visible := (-100 - (p)); + MUIV_Window_Height_Visible := -100 - p; end; -function MUIV_Window_Height_Screen(p : LongInt) : LongInt; +function MUIV_Window_Height_Screen(p: LongInt): LongInt; inline; begin - MUIV_Window_Height_Screen := (-200 - (p)); + MUIV_Window_Height_Screen := -200 - p; end; -function MUIV_Window_TopEdge_Delta(p : LongInt) : LongInt; +function MUIV_Window_TopEdge_Delta(p: LongInt): LongInt; inline; begin - MUIV_Window_TopEdge_Delta := (-3 - (p)); + MUIV_Window_TopEdge_Delta := -3 - p; end; -function MUIV_Window_Width_MinMax(p : LongInt) : LongInt; +function MUIV_Window_Width_MinMax(p: LongInt): LongInt; inline; begin - MUIV_Window_Width_MinMax := 0 - p; + MUIV_Window_Width_MinMax := 0 - p; end; -function MUIV_Window_Width_Visible(p : LongInt) : LongInt; +function MUIV_Window_Width_Visible(p: LongInt): LongInt; inline; begin - MUIV_Window_Width_Visible := (-100 - (p)); + MUIV_Window_Width_Visible := -100 - p; end; -function MUIV_Window_Width_Screen(p : LongInt) : LongInt; +function MUIV_Window_Width_Screen(p : LongInt) : LongInt; inline; begin MUIV_Window_Width_Screen := (-200 - (p)); end; -{ - Functions and procedures with array of const go here -} -function MUI_AllocAslRequestTags(_type : longword; const tags : Array Of Const) : Pointer; +// Functions and procedures with array of const go here + +function MUI_AllocAslRequestTags(ReqTyp : longword; const tags : Array Of Const) : Pointer; var TagList: TTagsList; begin AddTags(TagList, Tags); - MUI_AllocAslRequestTags := MUI_AllocAslRequest(_type, GetTagPtr(TagList)); + MUI_AllocAslRequestTags := MUI_AllocAslRequest(ReqTyp, GetTagPtr(TagList)); end; function MUI_AslRequestTags(req : Pointer; const tags : Array Of Const) : LongBool; @@ -3891,13 +4083,12 @@ begin end; const - { Change VERSION and LIBVERSION to proper values } - + // Change VERSION and LIBVERSION to proper values VERSION : string[2] = '0'; LIBVERSION : longword = 0; initialization - MUIMasterBase := OpenLibrary(MUIMASTER_NAME,LIBVERSION); + MUIMasterBase := OpenLibrary(MUIMASTER_NAME, LIBVERSION); finalization CloseLibrary(MUIMasterBase); end.