fpc/rtl/morphos/mui.pas
Károly Balogh cea0af646c + Lot of fixes, cleanups and additions for MUI
git-svn-id: trunk@1955 -
2005-12-15 10:47:14 +00:00

3849 lines
128 KiB
ObjectPascal
Raw Blame History

{
This file is part of the Free Pascal run time library.
Copyright (c) 2005 Karoly Balogh
muimaster.library interface unit for MorphOS/PowerPC
Based on work of Nils Sjoholm member of the Amiga RTL
development team.
MorphOS port was done on a free Pegasos II/G4 machine
provided by Genesi S.a.r.l. <www.genesi.lu>
See the file COPYING.FPC, included in this distribution,
for details about the copyright.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
**********************************************************************}
{$mode objfpc}
{$packrecords 2}
{$inline on}
unit mui;
interface
{
MUI - MagicUserInterface
(c) 1993-1997 Stefan Stuntz
Main Header File
Class Tree
rootclass (BOOPSI's base class)
+--Notify (implements notification mechanism)
! +--Family (handles multiple children)
! ! +--Menustrip (describes a complete menu strip)
! ! +--Menu (describes a single menu)
! ! \--Menuitem (describes a single menu item)
! +--Application (main class for all applications)
! +--Window (main class for all windows)
! ! \--Aboutmui (About window of MUI preferences)
! +--Area (base class for all GUI elements)
! +--Rectangle (spacing object)
! +--Balance (balancing separator bar)
! +--Image (image display)
! +--Bitmap (draws bitmaps)
! ! \--Bodychunk (makes bitmap from ILBM body chunk)
! +--Text (text display)
! +--Gadget (base class for intuition gadgets)
! ! +--String (string gadget)
! ! +--Boopsi (interface to BOOPSI gadgets)
! ! \--Prop (proportional gadget)
! +--Gauge (fule gauge)
! +--Scale (percentage scale)
! +--Colorfield (field with changeable color)
! +--List (line-oriented list)
! ! +--Floattext (special list with floating text)
! ! +--Volumelist (special list with volumes)
! ! +--Scrmodelist (special list with screen modes)
! ! \--Dirlist (special list with files)
! +--Numeric (base class for slider gadgets)
! ! +--Knob (turning knob)
! ! +--Levelmeter (level display)
! ! +--Numericbutton (space saving popup slider)
! ! \--Slider (traditional slider)
! +--Framedisplay (private)
! ! \--Popframe (private)
! +--Imagedisplay (private)
! ! \--Popimage (private)
! +--Pendisplay (displays a pen specification)
! ! \--Poppen (popup button to adjust a pen spec)
! +--Group (groups other GUI elements)
! +--Mccprefs (private)
! +--Register (handles page groups with titles)
! ! \--Penadjust (group to adjust a pen)
! +--Settingsgroup (private)
! +--Settings (private)
! +--Frameadjust (private)
! +--Imageadjust (private)
! +--Virtgroup (handles virtual groups)
! +--Scrollgroup (virtual groups with scrollbars)
! +--Scrollbar (traditional scrollbar)
! +--Listview (listview)
! +--Radio (radio button)
! +--Cycle (cycle gadget)
! +--Coloradjust (several gadgets to adjust a color)
! +--Palette (complete palette gadget)
! +--Popstring (base class for popup objects)
! +--Popobject (popup aynthing in a separate window)
! ! +--Poplist (popup a simple listview)
! ! \--Popscreen (popup a list of public screens)
! \--Popasl (popup an asl requester)
+--Semaphore (semaphore equipped objects)
+--Applist (private)
+--Dataspace (handles general purpose data spaces)
\--Configdata (private)
General Header File Information
All macro and structure definitions follow these rules:
Name Meaning
MUIC_<class> Name of a class
MUIM_<class>_<method> Method
MUIP_<class>_<method> Methods parameter structure
MUIV_<class>_<method>_<x> Special method value
MUIA_<class>_<attrib> Attribute
MUIV_<class>_<attrib>_<x> Special attribute value
MUIE_<error> Error return code from MUI_Error()
MUII_<name> Standard MUI image
MUIX_<code> Control codes for text strings
MUIO_<name> Object type for MUI_MakeObject()
MUIA_... attribute definitions are followed by a comment
consisting of the three possible letters I, S and G.
I: it's possible to specify this attribute at object creation time.
S: it's possible to change this attribute with SetAttrs().
G: it's possible to get this attribute with GetAttr().
Items marked with "Custom Class" are for use in custom classes only!
}
uses exec, intuition,utility,graphics{,iffparse};
{$WARNING IffParse required, look for FIX ME!!!}
var
MUIMasterBase : pLibrary;
const
MUIMASTER_NAME : PChar = 'muimaster.library';
MUIMASTER_VMIN = 11;
MUIMASTER_VLATEST = 19;
const
MUI_TRUE = 1;
MUI_FALSE = 0;
const
MUI_END = TAG_DONE; // this can be used instead of C End
{
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
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.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
}
{
Config items for MUIM_GetConfigItem
}
MUICFG_PublicScreen = 36;
{
Black box specification structures for images, pens, frames
}
type
plongword = ^longword;
tMUI_PenSpec = record
buf : array[0..31] of char;
end;
pMUI_PenSpec = ^tMUI_PenSpec;
{
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 = '<27>Frontmost<73>';
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 : Pointer;
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; { PChar label, LongWord flags }
MUIO_Button = 2; { PChar label }
MUIO_Checkmark = 3; { PChar label }
MUIO_Cycle = 4; { PChar label, PChar entries }
MUIO_Radio = 5; { PChar label, PChar entries }
MUIO_Slider = 6; { PChar label, LongInt min, LongInt max }
MUIO_String = 7; { PChar label, LongInt maxlen }
MUIO_PopButton = 8; { PChar imagespec }
MUIO_HSpace = 9; { LongInt space }
MUIO_VSpace = 10; { LongInt space }
MUIO_HBar = 11; { LongInt space }
MUIO_VBar = 12; { LongInt space }
MUIO_MenustripNM = 13; { struct NewMenu nm, LongWord flags }
MUIO_Menuitem = 14; { PChar label, PChar shortcut, LongWord flags, LongWord data }
MUIO_BarTitle = 15; { PChar label }
MUIO_NumericButton = 16; { PChar label, LongInt min, LongInt max, PChar format }
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;
MUIO_MenustripNM_CommandKeyCheck = 1 shl 0; { check for "localized" menu items such as "O\0Open" }
{ ** 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; { MC_TEMPLATE_ID : PCHar = not(0); }
MUI_RXERR_BADDEFINITION = -1;
MUI_RXERR_OUTOFMEMORY = -2;
MUI_RXERR_UNKNOWNCOMMAND = -3;
MUI_RXERR_BADSYNTAX = -4;
{ ** Return values for MUI_Error() }
{ ************************************************************************* }
const
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 }
{ ************************************************************************* }
const
MUII_WindowBack = 0; { These images are configured }
MUII_RequesterBack = 1; { with the preferences program. }
MUII_ButtonBack = 2;
MUII_ListBack = 3;
MUII_TextBack = 4;
MUII_PropBack = 5;
MUII_PopupBack = 6;
MUII_SelectedBack = 7;
MUII_ListCursor = 8;
MUII_ListSelect = 9;
MUII_ListSelCur = 10;
MUII_ArrowUp = 11;
MUII_ArrowDown = 12;
MUII_ArrowLeft = 13;
MUII_ArrowRight = 14;
MUII_CheckMark = 15;
MUII_RadioButton = 16;
MUII_Cycle = 17;
MUII_PopUp = 18;
MUII_PopFile = 19;
MUII_PopDrawer = 20;
MUII_PropKnob = 21;
MUII_Drawer = 22;
MUII_HardDisk = 23;
MUII_Disk = 24;
MUII_Chip = 25;
MUII_Volume = 26;
MUII_RegisterBack = 27;
MUII_Network = 28;
MUII_Assign = 29;
MUII_TapePlay = 30;
MUII_TapePlayBack = 31;
MUII_TapePause = 32;
MUII_TapeStop = 33;
MUII_TapeRecord = 34;
MUII_GroupBack = 35;
MUII_SliderBack = 36;
MUII_SliderKnob = 37;
MUII_TapeUp = 38;
MUII_TapeDown = 39;
MUII_PageBack = 40;
MUII_ReadListBack = 41;
MUII_PopFont = 42;
MUII_ImageButtonBack = 43;
MUII_ImageSelectedBack = 44;
MUII_GaugeFull = 45;
MUII_GaugeEmpty = 46;
MUII_Menudisplay = 47;
MUII_PullOpen = 48;
MUII_StringBack = 49;
MUII_StringActiveBack = 50;
MUII_Count = 51;
MUII_BACKGROUND = 128; { These are direct color }
MUII_SHADOW = 129; { combinations and are not }
MUII_SHINE = 130; { affected by users prefs. }
MUII_FILL = 131;
MUII_SHADOWBACK = 132; { Generally, you should }
MUII_SHADOWFILL = 133; { avoid using them. Better }
MUII_SHADOWSHINE = 134; { use one of the customized }
MUII_FILLBACK = 135; { images above. }
MUII_FILLSHINE = 136;
MUII_SHINEBACK = 137;
MUII_FILLBACK2 = 138;
MUII_HSHINEBACK = 139;
MUII_HSHADOWBACK = 140;
MUII_HSHINESHINE = 141;
MUII_HSHADOWSHADOW = 142;
MUII_MARKSHINE = 143;
MUII_MARKHALFSHINE = 144;
MUII_MARKBACKGROUND = 145;
MUII_BARBLOCK = 146;
MUII_BARDETAIL = 147;
MUII_LASTPAT = 147;
{ ** Special values for some methods }
{ ************************************************************************* }
const
MUIV_TriggerValue = $49893131;
MUIV_NotTriggerValue = $49893133;
MUIV_EveryTime = $49893131;
MUIV_Notify_Self = 1;
MUIV_Notify_Window = 2;
MUIV_Notify_Application = 3;
MUIV_Notify_Parent = 4;
MUIV_Notify_ParentParent = 5;
MUIV_Notify_ParentParentParent = 6;
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_EditEntry_Active = -1;
MUIV_List_Select_Active = -1;
MUIV_List_Select_All = -2;
MUIV_List_Redraw_Active = -1;
MUIV_List_Redraw_All = -2;
MUIV_List_Move_Top = 0;
MUIV_List_Move_Active = -1;
MUIV_List_Move_Bottom = -2;
MUIV_List_Move_Next = -3; { only valid for second parameter }
MUIV_List_Move_Previous = -4; { only valid for second parameter }
MUIV_List_Exchange_Top = 0;
MUIV_List_Exchange_Active = -1;
MUIV_List_Exchange_Bottom = -2;
MUIV_List_Exchange_Next = -3; { only valid for second parameter }
MUIV_List_Exchange_Previous = -4; { only valid for second parameter }
MUIV_List_Jump_Top = 0;
MUIV_List_Jump_Active = -1;
MUIV_List_Jump_Bottom = -2;
MUIV_List_Jump_Up = -4;
MUIV_List_Jump_Down = -3;
MUIV_List_NextSelected_Start = -1;
MUIV_List_NextSelected_End = -1;
MUIV_DragQuery_Refuse = 0;
MUIV_DragQuery_Accept = 1;
MUIV_DragReport_Abort = 0;
MUIV_DragReport_Continue = 1;
MUIV_DragReport_Lock = 2;
MUIV_DragReport_Refresh = 3;
MUIV_CreateBubble_DontHidePointer = (1<<0);
MUIV_Application_OCW_ScreenPage = (1<<1); { show just the screen page of the config window }
MUIV_ContextMenuBuild_Default = $ffffffff;
{ FIX ME!!! #define MUIV_PushMethod_Delay(millis) MIN(0x0ffffff0,(((ULONG)millis)<<8)) }
MUIV_Family_GetChild_First = 0;
MUIV_Family_GetChild_Last = -1;
MUIV_Family_GetChild_Next = -2;
MUIV_Family_GetChild_Previous = -3;
MUIV_Family_GetChild_Iterate = -4;
MUIV_Group_GetChild_First = MUIV_Family_GetChild_First;
MUIV_Group_GetChild_Last = MUIV_Family_GetChild_Last;
MUIV_Group_GetChild_Next = MUIV_Family_GetChild_Next;
MUIV_Group_GetChild_Previous = MUIV_Family_GetChild_Previous;
MUIV_Group_GetChild_Iterate = MUIV_Family_GetChild_Iterate;
{ ** Control codes for text strings }
{ ************************************************************************* }
const
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 }
{ ************************************************************************* }
{$WARNING Clean this mess... }
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;
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
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;
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 : LongInt;
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 : LongInt;
mbq_MinHeight : LongInt;
mbq_MaxWidth : LongInt;
mbq_MaxHeight : LongInt;
mbq_DefWidth : LongInt;
mbq_DefHeight : LongInt;
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;
{ ** Notify }
{ ************************************************************************* }
const
MUIC_Notify : PChar = 'Notify.mui';
{ ** Methods ** }
const
MUIM_CallHook = $8042b96b; { V4 }
MUIM_Export = $80420f1c; { V12 }
MUIM_FindUData = $8042c196; { V8 }
MUIM_GetConfigItem = $80423edb; { V11 }
MUIM_GetUData = $8042ed0c; { V8 }
MUIM_Import = $8042d012; { V12 }
MUIM_KillNotify = $8042d240; { V4 }
MUIM_KillNotifyObj = $8042b145; { V16 }
MUIM_MultiSet = $8042d356; { V7 }
MUIM_NoNotifySet = $8042216f; { V9 }
MUIM_Notify = $8042c9cb; { V4 }
MUIM_Set = $8042549a; { V4 }
MUIM_SetAsString = $80422590; { V4 }
MUIM_SetUData = $8042c920; { V8 }
MUIM_SetUDataOnce = $8042ca19; { V11 }
MUIM_WriteLong = $80428d86; { V6 }
MUIM_WriteString = $80424bf4; { V6 }
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 : Pointer;
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 : Pointer;
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 ** }
const
MUIA_ApplicationObject = $8042d3ee; { V4 ..g Object }
MUIA_AppMessage = $80421955; { V5 ..g struct AppMessage }
MUIA_HelpLine = $8042a825; { V4 isg LongInt }
MUIA_HelpNode = $80420b85; { V4 isg PChar }
MUIA_NoNotify = $804237f9; { V7 .s. BOOL }
MUIA_NoNotifyMethod = $80420a74; { V20 .s. LongWord }
MUIA_ObjectID = $8042d76e; { V11 isg LongWord }
MUIA_Parent = $8042e35f; { V11 ..g Object }
MUIA_Revision = $80427eaa; { V4 ..g LongInt }
MUIA_UserData = $80420313; { V4 isg LongWord }
MUIA_Version = $80422301; { V4 ..g LongInt }
{ ** Family }
{ ************************************************************************* }
const
MUIC_Family : PChar = 'Family.mui';
{ ** Methods ** }
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; { V8 }
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 ** }
const
MUIA_Family_Child = $8042c696; { V8 i.. Object }
MUIA_Family_List = $80424b9e; { V8 ..g struct MinList }
{ ** Menustrip }
{ ************************************************************************* }
const
MUIC_Menustrip : PChar = 'Menustrip.mui';
{ ** Methods ** }
const
MUIM_Menustrip_ExitChange = $8042ce4d; { V20 }
MUIM_Menustrip_InitChange = $8042dcd9; { V20 }
type
tMUIP_Menustrip_ExitChange = record
MethodID : LongWord;
end;
pMUIP_Menustrip_ExitChange = ^tMUIP_Menustrip_ExitChange;
tMUIP_Menustrip_InitChange = record
MethodID : LongWord;
end;
pMUIP_Menustrip_InitChange = ^tMUIP_Menustrip_InitChange;
{ ** Attributes ** }
const
MUIA_Menustrip_Enabled = $8042815b; { V8 isg BOOL }
{ ** Menu }
{ ************************************************************************* }
const
MUIC_Menu : PChar = 'Menu.mui';
{ ** Attributes ** }
const
MUIA_Menu_Enabled = $8042ed48; { V8 isg BOOL }
MUIA_Menu_Title = $8042a0e3; { V8 isg PChar }
{ ** Menuitem }
{ ************************************************************************* }
const
MUIC_Menuitem : PChar = 'Menuitem.mui';
{ ** Methods ** }
{ ** Attributes ** }
const
MUIA_Menuitem_Checked = $8042562a; { V8 isg BOOL }
MUIA_Menuitem_Checkit = $80425ace; { V8 isg BOOL }
MUIA_Menuitem_CommandString = $8042b9cc; { V16 isg BOOL }
MUIA_Menuitem_Enabled = $8042ae0f; { V8 isg BOOL }
MUIA_Menuitem_Exclude = $80420bc6; { V8 isg LongInt }
MUIA_Menuitem_Shortcut = $80422030; { V8 isg PChar }
MUIA_Menuitem_Title = $804218be; { V8 isg PChar }
MUIA_Menuitem_Toggle = $80424d5c; { V8 isg BOOL }
MUIA_Menuitem_Trigger = $80426f32; { V8 ..g struct MenuItem }
const
MUIV_Menuitem_Shortcut_Check = -(1);
{ ** Application }
{ ************************************************************************* }
const
MUIC_Application : PChar = 'Application.mui';
{ ** Methods ** }
const
MUIM_Application_AboutMUI = $8042d21d; { V14 }
MUIM_Application_AddInputHandler = $8042f099; { V11 }
MUIM_Application_BuildSettingsPanel = $8042b58f; { V20 }
MUIM_Application_CheckRefresh = $80424d68; { V11 }
MUIM_Application_DefaultConfigItem = $8042d934; { V20 }
MUIM_Application_InputBuffered = $80427e59; { V4 }
MUIM_Application_Load = $8042f90d; { V4 }
MUIM_Application_NewInput = $80423ba6; { V11 }
MUIM_Application_OpenConfigWindow = $804299ba; { V11 }
MUIM_Application_PushMethod = $80429ef8; { V4 }
MUIM_Application_RemInputHandler = $8042e7af; { V11 }
MUIM_Application_ReturnID = $804276ef; { V4 }
MUIM_Application_Save = $804227ef; { V4 }
MUIM_Application_SetConfigItem = $80424a80; { V11 }
MUIM_Application_ShowHelp = $80426479; { V4 }
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_BuildSettingsPanel = record
MethodID : LongWord;
number: LongWord;
end;
pMUIP_Application_BuildSettingsPanel = ^tMUIP_Application_BuildSettingsPanel;
tMUIP_Application_CheckRefresh = record
MethodID : LongWord;
end;
pMUIP_Application_CheckRefresh = ^tMUIP_Application_CheckRefresh;
tMUIP_Application_DefaultConfigItem = record
MethodID : LongWord;
cfgid : LongWord;
end;
pMUIP_Application_DefaultConfigItem = ^tMUIP_Application_DefaultConfigItem;
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 : PLongWord;
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 : PChar;
end;
tMUIP_Application_NewInput = record
MethodID : LongWord;
signal : PLongWord;
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 : LongInt;
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 : PChar;
end;
tMUIP_Application_SetConfigItem = record
MethodID : LongWord;
item : LongWord;
data : Pointer;
end;
pMUIP_Application_SetConfigItem = ^tMUIP_Application_SetConfigItem;
tMUIP_Application_SetMenuCheck = record
MethodID : LongWord;
MenuID : LongWord;
stat : LongInt;
end;
pMUIP_Application_SetMenuCheck = ^tMUIP_Application_SetMenuCheck;
tMUIP_Application_SetMenuState = record
MethodID : LongWord;
MenuID : LongWord;
stat : LongInt;
end;
pMUIP_Application_SetMenuState = ^tMUIP_Application_SetMenuState;
tMUIP_Application_ShowHelp = record
MethodID : LongWord;
window : pObject_;
name : Pchar;
node : Pchar;
line : LongInt;
end;
pMUIP_Application_ShowHelp = ^tMUIP_Application_ShowHelp;
{ ** Attributes ** }
const
MUIA_Application_Active = $804260ab; { V4 isg BOOL }
MUIA_Application_Author = $80424842; { V4 i.g PChar }
MUIA_Application_Base = $8042e07a; { V4 i.g PChar }
MUIA_Application_Broker = $8042dbce; { V4 ..g Broker }
MUIA_Application_BrokerHook = $80428f4b; { V4 isg struct Hook }
MUIA_Application_BrokerPort = $8042e0ad; { V6 ..g struct MsgPort }
MUIA_Application_BrokerPri = $8042c8d0; { V6 i.g LongInt }
MUIA_Application_Commands = $80428648; { V4 isg struct MUI_Command }
MUIA_Application_Copyright = $8042ef4d; { V4 i.g PChar }
MUIA_Application_Description = $80421fc6; { V4 i.g PChar }
MUIA_Application_DiskObject = $804235cb; { V4 isg struct DiskObject }
MUIA_Application_DoubleStart = $80423bc6; { V4 ..g BOOL }
MUIA_Application_DropObject = $80421266; { V5 is. Object }
MUIA_Application_ForceQuit = $804257df; { V8 ..g BOOL }
MUIA_Application_HelpFile = $804293f4; { V8 isg PChar }
MUIA_Application_Iconified = $8042a07f; { V4 .sg BOOL }
MUIA_Application_MenuAction = $80428961; { V4 ..g LongWord }
MUIA_Application_MenuHelp = $8042540b; { V4 ..g LongWord }
MUIA_Application_Menustrip = $804252d9; { V8 i.. Object }
MUIA_Application_RexxHook = $80427c42; { V7 isg struct Hook }
MUIA_Application_RexxMsg = $8042fd88; { V4 ..g struct RxMsg }
MUIA_Application_RexxString = $8042d711; { V4 .s. PChar }
MUIA_Application_SingleTask = $8042a2c8; { V4 i.. BOOL }
MUIA_Application_Sleep = $80425711; { V4 .s. BOOL }
MUIA_Application_Title = $804281b8; { V4 i.g PChar }
MUIA_Application_UseCommodities = $80425ee5; { V10 i.. BOOL }
MUIA_Application_UsedClasses = $8042e9a7; { V20 isg STRPTR * }
MUIA_Application_UseRexx = $80422387; { V10 i.. BOOL }
MUIA_Application_Version = $8042b33f; { V4 i.g PChar }
MUIA_Application_Window = $8042bfe0; { V4 i.. Object }
MUIA_Application_WindowList = $80429abe; { V13 ..g struct List }
{ ** Window }
{ ************************************************************************* }
const
MUIC_Window : PChar = 'Window.mui';
const
MUIM_Window_AddEventHandler = $804203b7; { V16 }
MUIM_Window_Cleanup = $8042ab26; { V18 }
MUIM_Window_RemEventHandler = $8042679e; { V16 }
MUIM_Window_ScreenToBack = $8042913d; { V4 }
MUIM_Window_ScreenToFront = $804227a4; { V4 }
MUIM_Window_Setup = $8042c34c; { V18 }
MUIM_Window_Snapshot = $8042945e; { V11 }
MUIM_Window_ToBack = $8042152e; { V4 }
MUIM_Window_ToFront = $8042554f; { V4 }
type
tMUIP_Window_AddEventHandler = record
MethodID : LongWord;
ehnode : PMUI_EventHandlerNode;
end;
pMUIP_Window_AddEventHandler = ^tMUIP_Window_AddEventHandler;
tMUIP_Window_Cleanup = record
MethodID : LongWord;
end;
pMUIP_Window_Cleanup = ^tMUIP_Window_Cleanup;
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 : LongInt;
end;
pMUIP_Window_SetMenuCheck = ^tMUIP_Window_SetMenuCheck;
tMUIP_Window_SetMenuState = record
MethodID : LongWord;
MenuID : LongWord;
stat : LongInt;
end;
pMUIP_Window_SetMenuState = ^tMUIP_Window_SetMenuState;
tMUIP_Window_Setup = record
MethodID : LongWord;
end;
pMUIP_Window_Setup = ^tMUIP_Window_Setup;
tMUIP_Window_Snapshot = record
MethodID : LongWord;
flags : LongInt;
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 ** }
const
MUIA_Window_Activate = $80428d2f; { V4 isg BOOL }
MUIA_Window_ActiveObject = $80427925; { V4 .sg Object }
MUIA_Window_AltHeight = $8042cce3; { V4 i.g LongInt }
MUIA_Window_AltLeftEdge = $80422d65; { V4 i.g LongInt }
MUIA_Window_AltTopEdge = $8042e99b; { V4 i.g LongInt }
MUIA_Window_AltWidth = $804260f4; { V4 i.g LongInt }
MUIA_Window_AppWindow = $804280cf; { V5 i.. BOOL }
MUIA_Window_Backdrop = $8042c0bb; { V4 i.. BOOL }
MUIA_Window_Borderless = $80429b79; { V4 i.. BOOL }
MUIA_Window_CloseGadget = $8042a110; { V4 i.. BOOL }
MUIA_Window_CloseRequest = $8042e86e; { V4 ..g BOOL }
MUIA_Window_DefaultObject = $804294d7; { V4 isg Object }
MUIA_Window_DepthGadget = $80421923; { V4 i.. BOOL }
MUIA_Window_DragBar = $8042045d; { V4 i.. BOOL }
MUIA_Window_FancyDrawing = $8042bd0e; { V8 isg BOOL }
MUIA_Window_Height = $80425846; { V4 i.g LongInt }
MUIA_Window_ID = $804201bd; { V4 isg LongWord }
MUIA_Window_InputEvent = $804247d8; { V4 ..g struct InputEvent }
MUIA_Window_IsSubWindow = $8042b5aa; { V4 isg BOOL }
MUIA_Window_LeftEdge = $80426c65; { V4 i.g LongInt }
MUIA_Window_MenuAction = $80427521; { V8 isg LongWord }
MUIA_Window_Menustrip = $8042855e; { V8 i.g Object }
MUIA_Window_MouseObject = $8042bf9b; { V10 ..g Object }
MUIA_Window_NeedsMouseObject = $8042372a; { V10 i.. BOOL }
MUIA_Window_NoMenus = $80429df5; { V4 is. BOOL }
MUIA_Window_Open = $80428aa0; { V4 .sg BOOL }
MUIA_Window_PublicScreen = $804278e4; { V6 isg PChar }
MUIA_Window_RefWindow = $804201f4; { V4 is. Object }
MUIA_Window_RootObject = $8042cba5; { V4 isg Object }
MUIA_Window_Screen = $8042df4f; { V4 isg struct Screen }
MUIA_Window_ScreenTitle = $804234b0; { V5 isg PChar }
MUIA_Window_SizeGadget = $8042e33d; { V4 i.. BOOL }
MUIA_Window_SizeRight = $80424780; { V4 i.. BOOL }
MUIA_Window_Sleep = $8042e7db; { V4 .sg BOOL }
MUIA_Window_Title = $8042ad3d; { V4 isg PChar }
MUIA_Window_TopEdge = $80427c66; { V4 i.g LongInt }
MUIA_Window_UseBottomBorderScroller = $80424e79; { V13 isg BOOL }
MUIA_Window_UseLeftBorderScroller = $8042433e; { V13 isg BOOL }
MUIA_Window_UseRightBorderScroller = $8042c05e; { V13 isg BOOL }
MUIA_Window_Width = $8042dcae; { V4 i.g LongInt }
MUIA_Window_Window = $80426a42; { V4 ..g struct Window }
const
MUIV_Window_ActiveObject_None = 0;
MUIV_Window_ActiveObject_Next = -1;
MUIV_Window_ActiveObject_Prev = -2;
MUIV_Window_ActiveObject_Left = -3;
MUIV_Window_ActiveObject_Right = -4;
MUIV_Window_ActiveObject_Up = -5;
MUIV_Window_ActiveObject_Down = -6;
{ FIX ME!!! #define MUIV_Window_AltHeight_MinMax(p) (0-(p)) }
{ FIX ME!!! #define MUIV_Window_AltHeight_Visible(p) (-100-(p)) }
{ FIX ME!!! #define MUIV_Window_AltHeight_Screen(p) (-200-(p)) }
MUIV_Window_AltHeight_Scaled = -(1000);
MUIV_Window_AltLeftEdge_Centered = -(1);
MUIV_Window_AltLeftEdge_Moused = -(2);
MUIV_Window_AltLeftEdge_NoChange = -(1000);
MUIV_Window_AltTopEdge_Centered = -(1);
MUIV_Window_AltTopEdge_Moused = -(2);
{ FIX ME!!! #define MUIV_Window_AltTopEdge_Delta(p) (-3-(p)) }
MUIV_Window_AltTopEdge_NoChange = -(1000);
{ FIX ME!!! #define MUIV_Window_AltWidth_MinMax(p) (0-(p)) }
{ FIX ME!!! #define MUIV_Window_AltWidth_Visible(p) (-100-(p)) }
{ FIX ME!!! #define MUIV_Window_AltWidth_Screen(p) (-200-(p)) }
MUIV_Window_AltWidth_Scaled = -(1000);
{ FIX ME!!! #define MUIV_Window_Height_MinMax(p) (0-(p)) }
{ FIX ME!!! #define MUIV_Window_Height_Visible(p) (-100-(p)) }
{ FIX ME!!! #define MUIV_Window_Height_Screen(p) (-200-(p)) }
MUIV_Window_Height_Scaled = -(1000);
MUIV_Window_Height_Default = -(1001);
MUIV_Window_LeftEdge_Centered = -(1);
MUIV_Window_LeftEdge_Moused = -(2);
{ FIX ME!!! #define MUIV_Window_LeftEdge_Right(n) (-1000-(n)) }
MUIV_Window_TopEdge_Centered = -(1);
MUIV_Window_TopEdge_Moused = -(2);
{ FIX ME!!! #define MUIV_Window_TopEdge_Delta(p) (-3-(p)) }
{ FIX ME!!! #define MUIV_Window_TopEdge_Bottom(n) (-1000-(n)) }
{ FIX ME!!! #define MUIV_Window_Width_MinMax(p) (0-(p)) }
{ FIX ME!!! #define MUIV_Window_Width_Visible(p) (-100-(p)) }
{ FIX ME!!! #define MUIV_Window_Width_Screen(p) (-200-(p)) }
MUIV_Window_Width_Scaled = -(1000);
MUIV_Window_Width_Default = -(1001);
{ ** Aboutmui }
{ ************************************************************************* }
const
MUIC_Aboutmui : PChar = 'Aboutmui.mui';
{ ** Methods ** }
{ ** Attributes ** }
const
MUIA_Aboutmui_Application = $80422523; { V11 i.. Object }
{ ** Area }
{ ************************************************************************* }
const
MUIC_Area : PChar = 'Area.mui';
{ ** Methods ** }
const
MUIM_AskMinMax = $80423874; { Custom Class } { V4 }
MUIM_Cleanup = $8042d985; { Custom Class } { V4 }
MUIM_ContextMenuAdd = $8042df9e; { V20 }
MUIM_ContextMenuBuild = $80429d2e; { V11 }
MUIM_ContextMenuChoice = $80420f0e; { V11 }
MUIM_CreateBubble = $80421c41; { V18 }
MUIM_CreateShortHelp = $80428e93; { V11 }
MUIM_DeleteBubble = $804211af; { V18 }
MUIM_DeleteShortHelp = $8042d35a; { V11 }
MUIM_DoDrag = $804216bb; { V20 }
MUIM_DragBegin = $8042c03a; { V11 }
MUIM_DragDrop = $8042c555; { V11 }
MUIM_DragFinish = $804251f0; { V11 }
MUIM_DragQuery = $80420261; { V11 }
MUIM_DragReport = $8042edad; { V11 }
MUIM_Draw = $80426f3f; { Custom Class } { V4 }
MUIM_DrawBackground = $804238ca; { V11 }
MUIM_HandleEvent = $80426d66; { Custom Class } { V16 }
MUIM_HandleInput = $80422a1a; { Custom Class } { V4 }
MUIM_Hide = $8042f20f; { Custom Class } { V4 }
MUIM_Setup = $80428354; { Custom Class } { V4 }
MUIM_Show = $8042cc84; { Custom Class } { V4 }
MUIM_UpdateConfig = $8042b0a9; { V20 }
type
{ MUI_MinMax structure holds information about minimum, maximum
and default dimensions of an object. }
tMUI_MinMax = record
MinWidth : shortint;
MinHeight : shortint;
MaxWidth : shortint;
MaxHeight : shortint;
DefWidth : shortint;
DefHeight : shortint;
end;
pMUI_MinMax = ^tMUI_MinMax;
tMUIP_AskMinMax = record { Custom Class }
MethodID : LongWord;
MinMaxInfo : PMUI_MinMax;
end;
pMUIP_AskMinMax = ^tMUIP_AskMinMax;
tMUIP_Cleanup = record { Custom Class }
MethodID : LongWord;
end;
pMUIP_Cleanup = ^tMUIP_Cleanup;
tMUIP_ContextMenuAdd = record
MethodID : LongWord;
menustrip : pObject_;
mx : LongInt;
my : LongInt;
mxp : pLongInt;
myp : pLongInt;
end;
pMUIP_ContextMenuAdd = ^tMUIP_ContextMenuAdd;
tMUIP_ContextMenuBuild = record
MethodID : LongWord;
mx : LongInt;
my : LongInt;
end;
pMUIP_ContextMenuBuild = ^tMUIP_ContextMenuBuild;
tMUIP_ContextMenuChoice = record
MethodID : LongWord;
item : pObject_;
end;
pMUIP_ContextMenuChoice = ^tMUIP_ContextMenuChoice;
tMUIP_CreateBubble = record
MethodID : LongWord;
x : LongInt;
y : LongInt;
txt : PChar;
flags : LongWord;
end;
pMUIP_CreateBubble = ^tMUIP_CreateBubble;
tMUIP_CreateShortHelp = record
MethodID : LongWord;
mx : LongInt;
my : LongInt;
end;
pMUIP_CreateShortHelp = ^tMUIP_CreateShortHelp;
tMUIP_DeleteBubble = record
MethodID : LongWord;
bubble : Pointer;
end;
pMUIP_DeleteBubble = ^tMUIP_DeleteBubble;
tMUIP_DeleteShortHelp = record
MethodID : LongWord;
help : PChar;
end;
pMUIP_DeleteShortHelp = ^tMUIP_DeleteShortHelp;
tMUIP_DoDrag = record
MethodID : LongWord;
touchx : LongInt;
touchy : LongInt;
flags : LongWord;
end;
pMUIP_DoDrag = ^tMUIP_DoDrag;
tMUIP_DragBegin = record
MethodID : LongWord;
obj : pObject_;
end;
pMUIP_DragBegin = ^tMUIP_DragBegin;
tMUIP_DragDrop = record
MethodID : LongWord;
obj : pObject_;
x : LongInt;
y : LongInt;
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 : LongInt;
y : LongInt;
update : LongInt;
end;
pMUIP_DragReport = ^tMUIP_DragReport;
tMUIP_Draw = record { Custom Class }
MethodID : LongWord;
flags : LongWord;
end;
pMUIP_Draw = ^tMUIP_Draw;
tMUIP_DrawBackground = record
MethodID : LongWord;
left : LongInt;
top : LongInt;
width : LongInt;
height : LongInt;
xoffset : LongInt;
yoffset : LongInt;
flags : LongInt;
end;
pMUIP_DrawBackground = ^tMUIP_DrawBackground;
tMUIP_HandleEvent = record { Custom Class }
MethodID : LongWord;
imsg : PIntuiMessage;
muikey : LongInt;
end;
pMUIP_HandleEvent = ^tMUIP_HandleEvent;
tMUIP_HandleInput = record { Custom Class }
MethodID : LongWord;
imsg : PIntuiMessage;
muikey : LongInt;
end;
pMUIP_HandleInput = ^tMUIP_HandleInput;
tMUIP_Hide = record { Custom Class }
MethodID : LongWord;
end;
pMUIP_Hide = ^tMUIP_Hide;
tMUIP_Setup = record { Custom Class }
MethodID : LongWord;
RenderInfo : PMUI_RenderInfo;
end;
pMUIP_Setup = ^tMUIP_Setup;
tMUIP_Show = record { Custom Class }
MethodID : LongWord;
end;
pMUIP_Show = ^tMUIP_Show;
tMUIP_UpdateConfig = record
MethodID : LongWord;
cfgid : LongWord;
redrawcount : LongInt;
redrawobj : array[0..63] of pObject_;
redrawflags : array[0..63] of byte;
end;
pMUIP_UpdateConfig = ^tMUIP_UpdateConfig;
{ ** Attributes ** }
const
MUIA_Background = $8042545b; { V4 is. LongInt }
MUIA_BottomEdge = $8042e552; { V4 ..g LongInt }
MUIA_ContextMenu = $8042b704; { V11 isg Object }
MUIA_ContextMenuTrigger = $8042a2c1; { V11 ..g Object }
MUIA_ControlChar = $8042120b; { V4 isg char }
MUIA_CycleChain = $80421ce7; { V11 isg LongInt }
MUIA_Disabled = $80423661; { V4 isg BOOL }
MUIA_DoubleBuffer = $8042a9c7; { V20 isg BOOL }
MUIA_Draggable = $80420b6e; { V11 isg BOOL }
MUIA_Dropable = $8042fbce; { V11 isg BOOL }
MUIA_FillArea = $804294a3; { V4 is. BOOL }
MUIA_FixHeight = $8042a92b; { V4 i.. LongInt }
MUIA_FixHeightTxt = $804276f2; { V4 i.. PChar }
MUIA_FixWidth = $8042a3f1; { V4 i.. LongInt }
MUIA_FixWidthTxt = $8042d044; { V4 i.. PChar }
MUIA_Font = $8042be50; { V4 i.g struct TextFont }
MUIA_Frame = $8042ac64; { V4 i.. LongInt }
MUIA_FrameDynamic = $804223c9; { V20 isg BOOL }
MUIA_FramePhantomHoriz = $8042ed76; { V4 i.. BOOL }
MUIA_FrameTitle = $8042d1c7; { V4 i.. PChar }
MUIA_FrameVisible = $80426498; { V20 isg BOOL }
MUIA_Height = $80423237; { V4 ..g LongInt }
MUIA_HorizDisappear = $80429615; { V11 isg LongInt }
MUIA_HorizWeight = $80426db9; { V4 isg ShortInt }
MUIA_InnerBottom = $8042f2c0; { V4 i.g LongInt }
MUIA_InnerLeft = $804228f8; { V4 i.g LongInt }
MUIA_InnerRight = $804297ff; { V4 i.g LongInt }
MUIA_InnerTop = $80421eb6; { V4 i.g LongInt }
MUIA_InputMode = $8042fb04; { V4 i.. LongInt }
MUIA_LeftEdge = $8042bec6; { V4 ..g LongInt }
MUIA_MaxHeight = $804293e4; { V11 i.. LongInt }
MUIA_MaxWidth = $8042f112; { V11 i.. LongInt }
MUIA_Pressed = $80423535; { V4 ..g BOOL }
MUIA_RightEdge = $8042ba82; { V4 ..g LongInt }
MUIA_Selected = $8042654b; { V4 isg BOOL }
MUIA_ShortHelp = $80428fe3; { V11 isg PChar }
MUIA_ShowMe = $80429ba8; { V4 isg BOOL }
MUIA_ShowSelState = $8042caac; { V4 i.. BOOL }
MUIA_Timer = $80426435; { V4 ..g LongInt }
MUIA_TopEdge = $8042509b; { V4 ..g LongInt }
MUIA_VertDisappear = $8042d12f; { V11 isg LongInt }
MUIA_VertWeight = $804298d0; { V4 isg WORD }
MUIA_Weight = $80421d1f; { V4 i.. WORD }
MUIA_Width = $8042b59c; { V4 ..g LongInt }
MUIA_Window = $80421591; { V4 ..g struct Window }
MUIA_WindowObject = $8042669e; { V4 ..g Object }
const
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_Slider = -8;
MUIV_Font_Gauge = -9;
MUIV_Font_Menudisplay = -10;
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_SliderKnob = 13;
MUIV_Frame_GaugeInner = 14;
MUIV_Frame_Menudisplay = 15;
MUIV_Frame_MenudisplayMenu = 16;
MUIV_Frame_PropKnob = 17;
MUIV_Frame_Window = 18;
MUIV_Frame_Requester = 19;
MUIV_Frame_Page = 20;
MUIV_Frame_Register = 21;
MUIV_Frame_Count = 22;
MUIV_InputMode_None = 0;
MUIV_InputMode_RelVerify = 1;
MUIV_InputMode_Immediate = 2;
MUIV_InputMode_Toggle = 3;
{ ** Dtpic }
{ ************************************************************************* }
const
MUIC_Dtpic : PChar = 'Dtpic.mui';
{ ** Methods ** }
{ ** Attributes ** }
const
MUIA_Dtpic_Name = $80423d72; { V18 isg STRPTR }
{ ** Rectangle }
{ ************************************************************************* }
const
MUIC_Rectangle : PChar = 'Rectangle.mui';
{ ** Attributes ** }
const
MUIA_Rectangle_BarTitle = $80426689; { V11 i.g PChar }
MUIA_Rectangle_HBar = $8042c943; { V7 i.g BOOL }
MUIA_Rectangle_VBar = $80422204; { V7 i.g BOOL }
{ ** Balance }
{ ************************************************************************* }
const
MUIC_Balance : PChar = 'Balance.mui';
{ ** Attributes ** }
const
MUIA_Balance_Quiet = $80427486; { V20 i.. LONG }
{ ** Image }
{ ************************************************************************* }
const
MUIC_Image : PChar = 'Image.mui';
{ ** Attributes ** }
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.. BOOL }
MUIA_Image_OldImage = $80424f3d; { V4 i.. struct Image }
MUIA_Image_Spec = $804233d5; { V4 i.. char }
MUIA_Image_State = $8042a3ad; { V4 is. LongInt }
{ ** Menubar }
{ ************************************************************************* }
const
MUIC_Menubar : PChar = 'Menubar.mui';
{ ** Bitmap }
{ ************************************************************************* }
const
MUIC_Bitmap : PChar = 'Bitmap.mui';
{ ** Attributes ** }
const
MUIA_Bitmap_Alpha = $80423e71; { V20 isg ULONG }
MUIA_Bitmap_Bitmap = $804279bd; { V8 isg struct BitMap }
MUIA_Bitmap_Height = $80421560; { V8 isg LongInt }
MUIA_Bitmap_MappingTable = $8042e23d; { V8 isg UBYTE }
MUIA_Bitmap_Precision = $80420c74; { V11 isg LongInt }
MUIA_Bitmap_RemappedBitmap = $80423a47; { V11 ..g struct BitMap }
MUIA_Bitmap_SourceColors = $80425360; { V8 isg LongWord }
MUIA_Bitmap_Transparent = $80422805; { V8 isg LongInt }
MUIA_Bitmap_UseFriend = $804239d8; { V11 i.. BOOL }
MUIA_Bitmap_Width = $8042eb3a; { V8 isg LongInt }
{ ** Bodychunk }
{ ************************************************************************* }
const
MUIC_Bodychunk : PChar = 'Bodychunk.mui';
{ ** Attributes ** }
const
MUIA_Bodychunk_Body = $8042ca67; { V8 isg UBYTE }
MUIA_Bodychunk_Compression = $8042de5f; { V8 isg UBYTE }
MUIA_Bodychunk_Depth = $8042c392; { V8 isg LongInt }
MUIA_Bodychunk_Masking = $80423b0e; { V8 isg UBYTE }
{ ** Text }
{ ************************************************************************* }
const
MUIC_Text : PChar = 'Text.mui';
{ ** Attributes ** }
const
MUIA_Text_Contents = $8042f8dc; { V4 isg PChar }
MUIA_Text_ControlChar = $8042e6d0; { V20 isg char }
MUIA_Text_Copy = $80427727; { V20 isg BOOL }
MUIA_Text_HiChar = $804218ff; { V4 i.. char }
MUIA_Text_PreParse = $8042566d; { V4 isg PChar }
MUIA_Text_SetMax = $80424d0a; { V4 i.. BOOL }
MUIA_Text_SetMin = $80424e10; { V4 i.. BOOL }
MUIA_Text_SetVMax = $80420d8b; { V11 i.. BOOL }
MUIA_Text_Shorten = $80428bbd; { V20 isg LONG }
MUIA_Text_Shortened = $80425a86; { V20 ..g BOOL }
const
MUIV_Text_Shorten_Nothing = 0;
MUIV_Text_Shorten_Cutoff = 1;
MUIV_Text_Shorten_Hide = 2;
{ ** Gadget }
{ ************************************************************************* }
const
MUIC_Gadget : PChar = 'Gadget.mui';
{ ** Attributes ** }
const
MUIA_Gadget_Gadget = $8042ec1a; { V11 ..g struct Gadget }
{ ** String }
{ ************************************************************************* }
const
MUIC_String : PChar = 'String.mui';
{ ** Methods ** }
{ ** Attributes ** }
const
MUIA_String_Accept = $8042e3e1; { V4 isg PChar }
MUIA_String_Acknowledge = $8042026c; { V4 ..g PChar }
MUIA_String_AdvanceOnCR = $804226de; { V11 isg BOOL }
MUIA_String_AttachedList = $80420fd2; { V4 isg Object }
MUIA_String_BufferPos = $80428b6c; { V4 .sg LongInt }
MUIA_String_Contents = $80428ffd; { V4 isg PChar }
MUIA_String_DisplayPos = $8042ccbf; { V4 .sg LongInt }
MUIA_String_EditHook = $80424c33; { V7 isg struct Hook }
MUIA_String_Format = $80427484; { V4 i.g LongInt }
MUIA_String_Integer = $80426e8a; { V4 isg LongWord }
MUIA_String_LonelyEditHook = $80421569; { V11 isg BOOL }
MUIA_String_MaxLen = $80424984; { V4 i.g LongInt }
MUIA_String_Reject = $8042179c; { V4 isg PChar }
MUIA_String_Secret = $80428769; { V4 i.g BOOL }
const
MUIV_String_Format_Left = 0;
MUIV_String_Format_Center = 1;
MUIV_String_Format_Right = 2;
{ ** Boopsi }
{ ************************************************************************* }
const
MUIC_Boopsi : PChar = 'Boopsi.mui';
{ ** Attributes ** }
const
MUIA_Boopsi_Class = $80426999; { V4 isg struct IClass }
MUIA_Boopsi_ClassID = $8042bfa3; { V4 isg char }
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 isg LongWord }
MUIA_Boopsi_Object = $80420178; { V4 ..g Object }
MUIA_Boopsi_Remember = $8042f4bd; { V4 i.. LongWord }
MUIA_Boopsi_Smart = $8042b8d7; { V9 i.. BOOL }
MUIA_Boopsi_TagDrawInfo = $8042bae7; { V4 isg LongWord }
MUIA_Boopsi_TagScreen = $8042bc71; { V4 isg LongWord }
MUIA_Boopsi_TagWindow = $8042e11d; { V4 isg LongWord }
{ ** Prop }
{ ************************************************************************* }
const
MUIC_Prop : PChar = 'Prop.mui';
{ ** Methods ** }
const
MUIM_Prop_Decrease = $80420dd1; { V16 }
MUIM_Prop_Increase = $8042cac0; { V16 }
type
tMUIP_Prop_Decrease = record
MethodID : LongWord;
amount : LongInt;
end;
pMUIP_Prop_Decrease = ^tMUIP_Prop_Decrease;
tMUIP_Prop_Increase = record
MethodID : LongWord;
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 BOOL }
MUIA_Prop_Slider = $80429c3a; { V4 isg BOOL }
MUIA_Prop_UseWinBorder = $8042deee; { V13 i.. LongInt }
MUIA_Prop_Visible = $8042fea6; { V4 isg LongInt }
const
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 ** }
const
MUIA_Gauge_Current = $8042f0dd; { V4 isg LongInt }
MUIA_Gauge_Divide = $8042d8df; { V4 isg BOOL }
MUIA_Gauge_Horiz = $804232dd; { V4 i.. BOOL }
MUIA_Gauge_InfoRate = $804253c8; { V4 isg LONG }
MUIA_Gauge_InfoText = $8042bf15; { V7 isg PChar }
MUIA_Gauge_Max = $8042bcdb; { V4 isg LongInt }
{ ** Scale }
{ ************************************************************************* }
const
MUIC_Scale : PChar = 'Scale.mui';
{ ** Attributes ** }
const
MUIA_Scale_Horiz = $8042919a; { V4 isg BOOL }
{ ** Colorfield }
{ ************************************************************************* }
const
MUIC_Colorfield : PChar = 'Colorfield.mui';
{ ** Attributes ** }
const
MUIA_Colorfield_Blue = $8042d3b0; { V4 isg LongWord }
MUIA_Colorfield_Green = $80424466; { V4 isg LongWord }
MUIA_Colorfield_Pen = $8042713a; { V4 ..g LongWord }
MUIA_Colorfield_Red = $804279f6; { V4 isg LongWord }
MUIA_Colorfield_RGB = $8042677a; { V4 isg LongWord }
{ ** 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 : Pointer;
end;
pMUIP_List_DeleteImage = ^tMUIP_List_DeleteImage;
tMUIP_List_Exchange = record
MethodID : LongWord;
pos1 : LongInt;
pos2 : LongInt;
end;
pMUIP_List_Exchange = ^tMUIP_List_Exchange;
tMUIP_List_GetEntry = record
MethodID : LongWord;
pos : LongInt;
entry : PPointer;
end;
pMUIP_List_GetEntry = ^tMUIP_List_GetEntry;
tMUIP_List_Insert = record
MethodID : LongWord;
entries : PPointer;
count : LongInt;
pos : LongInt;
end;
pMUIP_List_Insert = ^tMUIP_List_Insert;
tMUIP_List_InsertSingle = record
MethodID : LongWord;
entry : Pointer;
pos : LongInt;
end;
pMUIP_List_InsertSingle = ^tMUIP_List_InsertSingle;
tMUIP_List_Jump = record
MethodID : LongWord;
pos : LongInt;
end;
pMUIP_List_Jump = ^tMUIP_List_Jump;
tMUIP_List_Move = record
MethodID : LongWord;
from : LongInt;
too : LongInt;
end;
pMUIP_List_Move = ^tMUIP_List_Move;
tMUIP_List_NextSelected = record
MethodID : LongWord;
pos : PLongInt;
end;
pMUIP_List_NextSelected = ^tMUIP_List_NextSelected;
tMUIP_List_Redraw = record
MethodID : LongWord;
pos : LongInt;
end;
pMUIP_List_Redraw = ^tMUIP_List_Redraw;
tMUIP_List_Remove = record
MethodID : LongWord;
pos : LongInt;
end;
pMUIP_List_Remove = ^tMUIP_List_Remove;
tMUIP_List_Select = record
MethodID : LongWord;
pos : LongInt;
seltype : LongInt;
state : PLongInt;
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 : LongInt;
y : LongInt;
res : PMUI_List_TestPos_Result;
end;
pMUIP_List_TestPos = ^tMUIP_List_TestPos;
{ Attributes }
{ V4 isg LongInt }
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 LongInt }
MUIA_List_DropMark = $8042aba6;
{ V4 ..g LongInt }
MUIA_List_Entries = $80421654;
{ V4 ..g LongInt }
MUIA_List_First = $804238d4;
{ V4 isg PChar }
MUIA_List_Format = $80423c0a;
{ V9 ..g LongInt }
MUIA_List_InsertPosition = $8042d0cd;
{ V4 i.. LongInt }
MUIA_List_MinLineHeight = $8042d1c3;
{ V4 is. struct Hook }
MUIA_List_MultiTestHook = $8042c2c6;
{ V13 i.. Pointer }
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.. Pointer }
MUIA_List_SourceArray = $8042c0a0;
{ V6 isg char }
MUIA_List_Title = $80423e66;
{ V4 ..g LongInt }
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. PChar }
MUIA_Floattext_SkipChars = $80425c7d;
{ V4 is. LongInt }
MUIA_Floattext_TabSize = $80427d17;
{ V4 isg PChar }
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. PChar }
const
MUIA_Dirlist_AcceptPattern = $8042760a;
{ V4 isg PChar }
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 LongInt }
MUIA_Dirlist_NumBytes = $80429e26;
{ V4 ..g LongInt }
MUIA_Dirlist_NumDrawers = $80429cb8;
{ V4 ..g LongInt }
MUIA_Dirlist_NumFiles = $8042a6f0;
{ V4 ..g PChar }
MUIA_Dirlist_Path = $80426176;
{ V4 is. BOOL }
MUIA_Dirlist_RejectIcons = $80424808;
{ V4 is. PChar }
MUIA_Dirlist_RejectPattern = $804259c7;
{ V4 is. LongInt }
MUIA_Dirlist_SortDirs = $8042bbb9;
{ V4 is. BOOL }
MUIA_Dirlist_SortHighLow = $80421896;
{ V4 is. LongInt }
MUIA_Dirlist_SortType = $804228bc;
{ V4 ..g LongInt }
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 : LongInt;
end;
pMUIP_Numeric_Decrease = ^tMUIP_Numeric_Decrease;
tMUIP_Numeric_Increase = record
MethodID : LongWord;
amount : LongInt;
end;
pMUIP_Numeric_Increase = ^tMUIP_Numeric_Increase;
tMUIP_Numeric_ScaleToValue = record
MethodID : LongWord;
scalemin : LongInt;
scalemax : LongInt;
scale : LongInt;
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 : LongInt;
end;
pMUIP_Numeric_Stringify = ^tMUIP_Numeric_Stringify;
tMUIP_Numeric_ValueToScale = record
MethodID : LongWord;
scalemin : LongInt;
scalemax : LongInt;
end;
pMUIP_Numeric_ValueToScale = ^tMUIP_Numeric_ValueToScale;
{ Attributes }
{ V11 isg BOOL }
const
MUIA_Numeric_CheckAllSizes = $80421594;
{ V11 isg LongInt }
MUIA_Numeric_Default = $804263e8;
{ V11 isg PChar }
MUIA_Numeric_Format = $804263e9;
{ V11 isg LongInt }
MUIA_Numeric_Max = $8042d78a;
{ V11 isg LongInt }
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 LongInt }
MUIA_Numeric_Value = $8042ae3a;
{ }
{ Knob }
{ }
const
MUIC_Knob : PChar = 'Knob.mui';
{ }
{ Levelmeter }
{ }
const
MUIC_Levelmeter : PChar = 'Levelmeter.mui';
{ Attributes }
{ V11 isg PChar }
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 : LongInt;
end;
MUIP_Pendisplay_SetMUIPen = record
MethodID : LongWord;
muipen : LongInt;
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 LongInt }
const
MUIA_Group_ActivePage = $80424199;
{ V4 i.. Object }
MUIA_Group_Child = $804226e6;
{ V4 ..g struct List }
MUIA_Group_ChildList = $80424748;
{ V4 is. LongInt }
MUIA_Group_Columns = $8042f416;
{ V4 i.. BOOL }
MUIA_Group_Horiz = $8042536b;
{ V4 isg LongInt }
MUIA_Group_HorizSpacing = $8042c651;
{ V11 i.. struct Hook }
MUIA_Group_LayoutHook = $8042c3b2;
{ V5 i.. BOOL }
MUIA_Group_PageMode = $80421a5f;
{ V4 is. LongInt }
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. LongInt }
MUIA_Group_Spacing = $8042866d;
{ V4 isg LongInt }
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 PChar }
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 LongInt }
const
MUIA_Virtgroup_Height = $80423038;
{ V11 i.. BOOL }
MUIA_Virtgroup_Input = $80427f7e;
{ V6 isg LongInt }
MUIA_Virtgroup_Left = $80429371;
{ V6 isg LongInt }
MUIA_Virtgroup_Top = $80425200;
{ V6 ..g LongInt }
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.. LongInt }
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 LongInt }
const
MUIA_Listview_ClickColumn = $8042d1b3;
{ V7 isg LongInt }
MUIA_Listview_DefClickColumn = $8042b296;
{ V4 i.g BOOL }
MUIA_Listview_DoubleClick = $80424635;
{ V11 isg LongInt }
MUIA_Listview_DragType = $80425cd3;
{ V4 i.. BOOL }
MUIA_Listview_Input = $8042682d;
{ V4 i.g Object }
MUIA_Listview_List = $8042bcce;
{ V7 i.. LongInt }
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 LongInt }
const
MUIA_Radio_Active = $80429b41;
{ V4 i.. PChar }
MUIA_Radio_Entries = $8042b6a1;
{ }
{ Cycle }
{ }
const
MUIC_Cycle : PChar = 'Cycle.mui';
{ Attributes }
{ V4 isg LongInt }
const
MUIA_Cycle_Active = $80421788;
{ V4 i.. PChar }
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 : LongInt;
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 : Pointer;
len : LongInt;
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; FIX ME!!
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; FIX ME!!!
type_ : LongWord;
id : LongWord;
end;
pMUIP_Dataspace_WriteIFF = ^tMUIP_Dataspace_WriteIFF;
{ Attributes }
{ V11 i.. Pointer }
const
MUIA_Dataspace_Pool = $80424cf9;
{ }
{ Configdata }
{ }
const
MUIC_Configdata : PChar = 'Configdata.mui';
{ Methods }
{ Attributes }
{ }
{ End of automatic header file creation }
{ }
{
Structures and Macros for creating custom classes.
}
{
GENERAL NOTES:
- Everything described in this header file is only valid within
MUI classes. You may never use any of these things out of
a class, e.g. in a traditional MUI application.
- Except when otherwise stated, all structures are strictly read only.
}
{ Global information for every object }
{ ... 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 : LongInt;
Height : LongInt;
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 : Pointer;
mcc_UtilityBase : PLibrary;
mcc_DOSBase : PLibrary;
mcc_GfxBase : PLibrary;
mcc_IntuitionBase : PLibrary;
mcc_Super : PIClass;
mcc_Class : PIClass;
end;
pMUI_CustomClass = ^tMUI_CustomClass;
function MUI_NewObjectA(class_ : pChar location 'a0'; tags : pTagItem location 'a1') : pObject_;
syscall legacy MUIMasterBase 30;
procedure MUI_DisposeObject(obj : pObject_ location 'a0');
syscall legacy MUIMasterBase 36;
function MUI_RequestA(app : POINTER location 'd0';
win : POINTER location 'd1';
flags : LongWord location 'd2';
title : pChar location 'a0';
gadgets : pChar location 'a1';
format : pChar location 'a2';
params : POINTER location 'a3') : longint;
syscall legacy MUIMasterBase 42;
function MUI_AllocAslRequest(typ : LongWord location 'd0'; tags : pTagItem location 'a0') : POINTER;
syscall legacy MUIMasterBase 48;
function MUI_AslRequest(req : POINTER location 'a0'; tags : pTagItem location 'a1') : BOOLEAN;
syscall legacy MUIMasterBase 54;
procedure MUI_FreeAslRequest(req : POINTER location 'a0');
syscall legacy MUIMasterBase 60;
function MUI_Error : LONGINT;
syscall legacy MUIMasterBase 66;
function MUI_SetError(errnum : LONGINT location 'd0') : LONGINT;
syscall legacy MUIMasterBase 72;
function MUI_GetClass(name : pChar location 'a0') : pIClass;
syscall legacy MUIMasterBase 78;
procedure MUI_FreeClass(cl : pIClass location 'a0');
syscall legacy MUIMasterBase 84;
procedure MUI_RequestIDCMP(obj : pObject_ location 'a0'; flags : LongWord location 'd0');
syscall legacy MUIMasterBase 90;
procedure MUI_RejectIDCMP(obj : pObject_ location 'a0'; flags : LongWord location 'd0');
syscall legacy MUIMasterBase 96;
procedure MUI_Redraw(obj : pObject_ location 'a0'; flags : LongWord location 'd0');
syscall legacy MUIMasterBase 102;
function MUI_CreateCustomClass(base : pLibrary location 'a0';
supername : pChar location 'a1';
supermcc : pMUI_CustomClass location 'a2';
datasize : LONGINT location 'd0';
dispatcher : POINTER location 'a3') : pMUI_CustomClass;
syscall legacy MUIMasterBase 108;
function MUI_DeleteCustomClass(mcc : pMUI_CustomClass location 'a0') : BOOLEAN;
syscall legacy MUIMasterBase 114;
function MUI_MakeObjectA(typ: LONGINT location 'd0'; params : pLongWord location 'a0') : pLongWord;
syscall legacy MUIMasterBase 120;
function MUI_Layout(obj : pObject_ location 'a0';
l : LONGINT location 'd0';
t : LONGINT location 'd1';
w : LONGINT location 'd2';
h : LONGINT location 'd3';
flags : LongWord location 'd4') : BOOLEAN;
syscall legacy MUIMasterBase 126;
function MUI_ObtainPen(mri : pMUI_RenderInfo location 'a0';
spec : pMUI_PenSpec location 'a1';
flags : LongWord location 'd0') : LONGINT;
syscall legacy MUIMasterBase 156;
procedure MUI_ReleasePen(mri : pMUI_RenderInfo location 'a0';
pen : LONGINT location 'd0');
syscall legacy MUIMasterBase 162;
function MUI_AddClipping(mri : pMUI_RenderInfo location 'a0';
l : smallint location 'd0';
t : smallint location 'd1';
w : smallint location 'd2';
h : smallint location 'd3') : POINTER;
syscall legacy MUIMasterBase 168;
procedure MUI_RemoveClipping(mri : pMUI_RenderInfo location 'a0';
h : POINTER location 'a1');
syscall legacy MUIMasterBase 174;
function MUI_AddClipRegion(mri : pMUI_RenderInfo location 'a0'; region : pRegion location 'a1') : POINTER;
syscall legacy MUIMasterBase 180;
procedure MUI_RemoveClipRegion(mri : pMUI_RenderInfo location 'a0'; region : POINTER location 'a1');
syscall legacy MUIMasterBase 186;
function MUI_BeginRefresh(mri : pMUI_RenderInfo location 'a0'; flags : LongWord location 'd0') : BOOLEAN;
syscall legacy MUIMasterBase 192;
procedure MUI_EndRefresh(mri : pMUI_RenderInfo location 'a0'; flags : LongWord location 'd0');
syscall legacy MUIMasterBase 198;
(*
** some procedures to get some information about our object
*)
function MUINotifyData(obj : Pointer) : pMUI_NotifyData;
function MUIAreaData(obj : Pointer) : pMUI_AreaData;
function MUIGlobalInfo(obj : Pointer) : pMUI_GlobalInfo;
function MUIUserData(obj : Pointer) : Pointer ;
function MUIRenderInfo(obj : Pointer) : 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 : Pointer) : pObject_; inline; (* valid between MUIM_Setup/Cleanup *)
function OBJ_Win(obj : Pointer) : pObject_; inline; (* valid between MUIM_Setup/Cleanup *)
function OBJ_Dri(obj : Pointer) : pDrawInfo; inline; (* valid between MUIM_Setup/Cleanup *)
function OBJ_Screen(obj : Pointer) : pScreen; inline; (* valid between MUIM_Setup/Cleanup *)
function OBJ_Pens(obj : Pointer) : pWord; inline; (* valid between MUIM_Setup/Cleanup *)
function OBJ_Window(obj : Pointer) : pWindow; inline; (* valid between MUIM_Show/Hide *)
function OBJ_Rp(obj : Pointer) : pRastPort; inline; (* valid between MUIM_Show/Hide *)
function OBJ_Left(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_Top(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_Width(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_Height(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_Right(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_Bottom(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_AddLeft(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_AddTop(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_SubWidth(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_SubHeight(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_MLeft(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_MTop(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_MWidth(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_MHeight(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_MRight(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_MBottom(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
function OBJ_Font(obj : Pointer) : pTextFont; inline; (* valid between MUIM_Setup/Cleanup *)
function OBJ_MinWidth(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
function OBJ_MinHeight(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
function OBJ_MaxWidth(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
function OBJ_MaxHeight(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
function OBJ_DefWidth(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
function OBJ_DefHeight(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
function OBJ_Flags(obj : Pointer) : LongWord; inline;
function OBJ_Between(a,x,b : smallint): boolean; inline;
function OBJ_IsInObject(x,y : smallint; obj : pObject_): boolean; inline;
function MUIV_Window_AltHeight_MinMax(p : longint) : longint; inline;
function MUIV_Window_AltHeight_Visible(p : longint) : longint; inline;
function MUIV_Window_AltHeight_Screen(p : longint) : longint; inline;
function MUIV_Window_AltTopEdge_Delta(p : longint) : longint; inline;
function MUIV_Window_AltWidth_MinMax(p : longint) : longint; inline;
function MUIV_Window_AltWidth_Visible(p : longint) : longint; inline;
function MUIV_Window_AltWidth_Screen(p : longint) : longint; inline;
function MUIV_Window_Height_MinMax(p : longint) : longint; inline;
function MUIV_Window_Height_Visible(p : longint) : longint; inline;
function MUIV_Window_Height_Screen(p : longint) : longint; inline;
function MUIV_Window_TopEdge_Delta(p : longint) : longint; inline;
function MUIV_Window_Width_MinMax(p : longint) : longint; inline;
function MUIV_Window_Width_Visible(p : longint) : longint; inline;
function MUIV_Window_Width_Screen(p : longint) : longint; inline;
function MAKE_ID(a,b,c,d : char): longword; inline;
function MUIget(obj: pObject_; attr: longword; store: longword): longword; inline;
function MUIset(obj: pObject_; attr: longword; value: longword): longword; inline;
{
Functions and procedures with array of longword go here
}
function MUI_AllocAslRequestTags(_type : longword; tags : array Of LongWord) : POINTER;
function MUI_AslRequestTags(req : POINTER; tags : array Of LongWord) : BOOLEAN;
function MUI_MakeObject(_type : LONGINT; params : array of LongWord) : pLongWord; inline;
function MUI_NewObject(a0arg : pCHAR; tags : array of LongWord) : pLongWord; inline;
function MUI_Request(app : POINTER; win : POINTER; flags : longword; title : pCHAR; gadgets : pCHAR; format : pCHAR; params : array of LongWord) : LONGINT;
function InitMUIMasterLibrary : boolean;
implementation
function MUINotifyData(obj : Pointer) : pMUI_NotifyData;
begin
MUINotifyData := pMUI_NotifyData(@p__dummyXFC2__(obj)^.mnd);
end;
function MUIAreaData(obj : Pointer) : pMUI_AreaData;
begin
MUIAreaData := pMUI_AreaData(@p__dummyXFC2__(obj)^.mad);
end;
function MUIGlobalInfo(obj : Pointer) : pMUI_GlobalInfo;
begin
MUIGlobalInfo := pMUI_GlobalInfo(p__dummyXFC2__(obj)^.mnd.mnd_GlobalInfo);
end;
function MUIUserData(obj : Pointer) : Pointer ;
begin
MUIUserData := Pointer(p__dummyXFC2__(obj)^.mnd.mnd_GlobalInfo);
end;
function MUIRenderInfo(obj : Pointer) : pMUI_RenderInfo;
begin
MUIRenderInfo := pMUI_RenderInfo(p__dummyXFC2__(obj)^.mad.mad_RenderInfo);
end;
function MUIPen(pen : longint): longint;
begin
MUIPen := longint(pen*MUIPEN_Mask);
end;
function OBJ_App(obj : Pointer) : pObject_; (* valid between MUIM_Setup/Cleanup *)
begin
OBJ_App := pMUI_GlobalInfo(obj)^.mgi_ApplicationObject;
end;
function OBJ_Win(obj : Pointer) : pObject_; (* valid between MUIM_Setup/Cleanup *)
begin
OBJ_Win := pMUI_RenderInfo(obj)^.mri_WindowObject;
end;
function OBJ_Dri(obj : Pointer) : pDrawInfo; (* valid between MUIM_Setup/Cleanup *)
begin
OBJ_Dri := pMUI_RenderInfo(obj)^.mri_DrawInfo;
end;
function OBJ_Screen(obj : Pointer) : pScreen; (* valid between MUIM_Setup/Cleanup *)
begin
OBJ_Screen := pMUI_RenderInfo(obj)^.mri_Screen;
end;
function OBJ_Pens(obj : Pointer) : pWord; (* valid between MUIM_Setup/Cleanup *)
begin
OBJ_Pens := pMUI_RenderInfo(obj)^.mri_Pens;
end;
function OBJ_Window(obj : Pointer) : pWindow; (* valid between MUIM_Show/Hide *)
begin
OBJ_Window := PMUI_RenderInfo(obj)^.mri_Window;
end;
function OBJ_Rp(obj : Pointer) : pRastPort; (* valid between MUIM_Show/Hide *)
begin
OBJ_Rp := pMUI_RenderInfo(obj)^.mri_RastPort;
end;
function OBJ_Left(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_Left := pMUI_AreaData(obj)^.mad_Box.Left;
end;
function OBJ_Top(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_Top := pMUI_AreaData(obj)^.mad_Box.Top;
end;
function OBJ_Width(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_Width := pMUI_AreaData(obj)^.mad_Box.Width;
end;
function OBJ_Height(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_Height := pMUI_AreaData(obj)^.mad_Box.Height;
end;
function OBJ_Right(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_Right := OBJ_Left(obj) + OBJ_Width(obj) -1;
end;
function OBJ_Bottom(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_Bottom := OBJ_Top(obj) + OBJ_Height(obj) -1;
end;
function OBJ_AddLeft(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_AddLeft := pMUI_AreaData(obj)^.mad_AddLeft;
end;
function OBJ_AddTop(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_AddTop := pMUI_AreaData(obj)^.mad_AddTop;
end;
function OBJ_SubWidth(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_SubWidth := pMUI_AreaData(obj)^.mad_SubWidth;
end;
function OBJ_SubHeight(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_SubHeight := pMUI_AreaData(obj)^.mad_SubHeight;
end;
function OBJ_MLeft(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_MLeft := OBJ_Left(obj) + OBJ_AddLeft(obj);
end;
function OBJ_MTop(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_MTop := OBJ_Top(obj) + OBJ_AddTop(obj);
end;
function OBJ_MWidth(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_MWidth := OBJ_Width(obj) -OBJ_SubWidth(obj);
end;
function OBJ_MHeight(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_MHeight := OBJ_Height(obj) - OBJ_SubHeight(obj);
end;
function OBJ_MRight(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_MRight := OBJ_MLeft(obj) + OBJ_MWidth(obj) -1;
end;
function OBJ_MBottom(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
begin
OBJ_MBottom := OBJ_MTop(obj) + OBJ_MHeight(obj) -1;
end;
function OBJ_Font(obj : Pointer) : pTextFont; (* valid between MUIM_Setup/Cleanup *)
begin
OBJ_Font := pMUI_AreaData(obj)^.mad_Font;
end;
function OBJ_MinWidth(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
begin
OBJ_MinWidth := pMUI_AreaData(obj)^.mad_MinMax.MinWidth;
end;
function OBJ_MinHeight(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
begin
OBJ_MinHeight := pMUI_AreaData(obj)^.mad_MinMax.MinHeight;
end;
function OBJ_MaxWidth(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
begin
OBJ_maxWidth := pMUI_AreaData(obj)^.mad_MinMax.MaxWidth;
end;
function OBJ_MaxHeight(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
begin
OBJ_maxHeight := pMUI_AreaData(obj)^.mad_MinMax.MaxHeight;
end;
function OBJ_DefWidth(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
begin
OBJ_DefWidth := pMUI_AreaData(obj)^.mad_MinMax.DefWidth;
end;
function OBJ_DefHeight(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
begin
OBJ_DefHeight := pMUI_AreaData(obj)^.mad_MinMax.DefHeight;
end;
function OBJ_Flags(obj : Pointer) : LongWord;
begin
OBJ_Flags := pMUI_AreaData(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... )
*)
function OBJ_Between(a,x,b : smallint): boolean;
begin
OBJ_Between := ((x>=a) and (x<=b));
end;
function OBJ_IsInObject(x,y : smallint; obj : pObject_): boolean;
begin
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;
begin
MUIV_Window_AltHeight_MinMax := (0 - p);
end;
function MUIV_Window_AltHeight_Visible(p : longint) : longint;
begin
MUIV_Window_AltHeight_Visible := (-100 - (p));
end;
function MUIV_Window_AltHeight_Screen(p : longint) : longint;
begin
MUIV_Window_AltHeight_Screen := (-200 - (p));
end;
function MUIV_Window_AltTopEdge_Delta(p : longint) : longint;
begin
MUIV_Window_AltTopEdge_Delta := (-3 - (p));
end;
function MUIV_Window_AltWidth_MinMax(p : longint) : longint;
begin
MUIV_Window_AltWidth_MinMax := 0 - p;
end;
function MUIV_Window_AltWidth_Visible(p : longint) : longint;
begin
MUIV_Window_AltWidth_Visible := (-100 - (p));
end;
function MUIV_Window_AltWidth_Screen(p : longint) : longint;
begin
MUIV_Window_AltWidth_Screen := (-200 - (p));
end;
function MUIV_Window_Height_MinMax(p : longint) : longint;
begin
MUIV_Window_Height_MinMax := 0 - p;
end;
function MUIV_Window_Height_Visible(p : longint) : longint;
begin
MUIV_Window_Height_Visible := (-100 - (p));
end;
function MUIV_Window_Height_Screen(p : longint) : longint;
begin
MUIV_Window_Height_Screen := (-200 - (p));
end;
function MUIV_Window_TopEdge_Delta(p : longint) : longint;
begin
MUIV_Window_TopEdge_Delta := (-3 - (p));
end;
function MUIV_Window_Width_MinMax(p : longint) : longint;
begin
MUIV_Window_Width_MinMax := 0 - p;
end;
function MUIV_Window_Width_Visible(p : longint) : longint;
begin
MUIV_Window_Width_Visible := (-100 - (p));
end;
function MUIV_Window_Width_Screen(p : longint) : longint;
begin
MUIV_Window_Width_Screen := (-200 - (p));
end;
{
Functions and procedures with array of longword go here
}
function MUI_AllocAslRequestTags(_type : longword; tags : array of LongWord) : POINTER;
begin
MUI_AllocAslRequestTags := MUI_AllocAslRequest(_type , @tags);
end;
function MUI_AslRequestTags(req : POINTER; tags : array of LongWord) : BOOLEAN;
begin
MUI_AslRequestTags := MUI_AslRequest(req , @tags);
end;
function MUI_MakeObject(_type : LONGINT; params : array of LongWord) : pLongWord; inline;
begin
MUI_MakeObject := MUI_MakeObjectA(_type , @params);
end;
function MUI_NewObject(a0arg : PChar; tags : array of LongWord) : pLongWord; inline;
begin
MUI_NewObject := MUI_NewObjectA(a0arg, @tags);
end;
function MUI_Request(app : POINTER; win : POINTER; flags : longword; title : pCHAR; gadgets : pCHAR; format : pCHAR; params : array of LongWord) : LONGINT;
begin
MUI_Request := MUI_RequestA(app , win , flags , title , gadgets , format , @params);
end;
function MAKE_ID(a,b,c,d : char): longword;
begin
MAKE_ID:=(byte(a) shl 24)+(byte(b) shl 16)+(byte(c) shl 8)+byte(d);
end;
//#define get(obj,attr,store) GetAttr(attr,obj,(ULONG *)store)
function MUIget(obj: pObject_; attr: longword; store: longword): longword;
begin
MUIget:=GetAttr(attr,obj,store);
end;
//#define set(obj,attr,value) SetAttrs(obj,attr,value,TAG_DONE)
function MUIset(obj: pObject_; attr: longword; value: longword): longword;
var args: array[0..2] of longword;
begin
args[0]:=attr;
args[1]:=value;
args[2]:=TAG_DONE;
MUIset:=SetAttrsA(obj,@args);
end;
const
{ Change VERSION and LIBVERSION to proper values }
VERSION : string[2] = '19';
LIBVERSION : longword = MUIMASTER_VMIN;
var
muimaster_exit : Pointer;
procedure CloseMUIMasterLibrary;
begin
ExitProc := muimaster_exit;
if MUIMasterBase <> nil then begin
CloseLibrary(MUIMasterBase);
MUIMasterBase := nil;
end;
end;
function InitMUIMasterLibrary : boolean;
begin
MUIMasterBase := nil;
MUIMasterBase := OpenLibrary(MUIMASTER_NAME,LIBVERSION);
if MUIMasterBase <> nil then begin
muimaster_exit := ExitProc;
ExitProc := @CloseMUIMasterLibrary;
InitMUIMasterLibrary:=True;
end else begin
InitMUIMasterLibrary:=False;
end;
end;
end.