mui.pas 128 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848
  1. {
  2. This file is part of the Free Pascal run time library.
  3. Copyright (c) 2005 Karoly Balogh
  4. muimaster.library interface unit for MorphOS/PowerPC
  5. Based on work of Nils Sjoholm member of the Amiga RTL
  6. development team.
  7. MorphOS port was done on a free Pegasos II/G4 machine
  8. provided by Genesi S.a.r.l. <www.genesi.lu>
  9. See the file COPYING.FPC, included in this distribution,
  10. for details about the copyright.
  11. This program is distributed in the hope that it will be useful,
  12. but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  14. **********************************************************************}
  15. {$mode objfpc}
  16. {$packrecords 2}
  17. {$inline on}
  18. unit mui;
  19. interface
  20. {
  21. MUI - MagicUserInterface
  22. (c) 1993-1997 Stefan Stuntz
  23. Main Header File
  24. Class Tree
  25. rootclass (BOOPSI's base class)
  26. +--Notify (implements notification mechanism)
  27. ! +--Family (handles multiple children)
  28. ! ! +--Menustrip (describes a complete menu strip)
  29. ! ! +--Menu (describes a single menu)
  30. ! ! \--Menuitem (describes a single menu item)
  31. ! +--Application (main class for all applications)
  32. ! +--Window (main class for all windows)
  33. ! ! \--Aboutmui (About window of MUI preferences)
  34. ! +--Area (base class for all GUI elements)
  35. ! +--Rectangle (spacing object)
  36. ! +--Balance (balancing separator bar)
  37. ! +--Image (image display)
  38. ! +--Bitmap (draws bitmaps)
  39. ! ! \--Bodychunk (makes bitmap from ILBM body chunk)
  40. ! +--Text (text display)
  41. ! +--Gadget (base class for intuition gadgets)
  42. ! ! +--String (string gadget)
  43. ! ! +--Boopsi (interface to BOOPSI gadgets)
  44. ! ! \--Prop (proportional gadget)
  45. ! +--Gauge (fule gauge)
  46. ! +--Scale (percentage scale)
  47. ! +--Colorfield (field with changeable color)
  48. ! +--List (line-oriented list)
  49. ! ! +--Floattext (special list with floating text)
  50. ! ! +--Volumelist (special list with volumes)
  51. ! ! +--Scrmodelist (special list with screen modes)
  52. ! ! \--Dirlist (special list with files)
  53. ! +--Numeric (base class for slider gadgets)
  54. ! ! +--Knob (turning knob)
  55. ! ! +--Levelmeter (level display)
  56. ! ! +--Numericbutton (space saving popup slider)
  57. ! ! \--Slider (traditional slider)
  58. ! +--Framedisplay (private)
  59. ! ! \--Popframe (private)
  60. ! +--Imagedisplay (private)
  61. ! ! \--Popimage (private)
  62. ! +--Pendisplay (displays a pen specification)
  63. ! ! \--Poppen (popup button to adjust a pen spec)
  64. ! +--Group (groups other GUI elements)
  65. ! +--Mccprefs (private)
  66. ! +--Register (handles page groups with titles)
  67. ! ! \--Penadjust (group to adjust a pen)
  68. ! +--Settingsgroup (private)
  69. ! +--Settings (private)
  70. ! +--Frameadjust (private)
  71. ! +--Imageadjust (private)
  72. ! +--Virtgroup (handles virtual groups)
  73. ! +--Scrollgroup (virtual groups with scrollbars)
  74. ! +--Scrollbar (traditional scrollbar)
  75. ! +--Listview (listview)
  76. ! +--Radio (radio button)
  77. ! +--Cycle (cycle gadget)
  78. ! +--Coloradjust (several gadgets to adjust a color)
  79. ! +--Palette (complete palette gadget)
  80. ! +--Popstring (base class for popup objects)
  81. ! +--Popobject (popup aynthing in a separate window)
  82. ! ! +--Poplist (popup a simple listview)
  83. ! ! \--Popscreen (popup a list of public screens)
  84. ! \--Popasl (popup an asl requester)
  85. +--Semaphore (semaphore equipped objects)
  86. +--Applist (private)
  87. +--Dataspace (handles general purpose data spaces)
  88. \--Configdata (private)
  89. General Header File Information
  90. All macro and structure definitions follow these rules:
  91. Name Meaning
  92. MUIC_<class> Name of a class
  93. MUIM_<class>_<method> Method
  94. MUIP_<class>_<method> Methods parameter structure
  95. MUIV_<class>_<method>_<x> Special method value
  96. MUIA_<class>_<attrib> Attribute
  97. MUIV_<class>_<attrib>_<x> Special attribute value
  98. MUIE_<error> Error return code from MUI_Error()
  99. MUII_<name> Standard MUI image
  100. MUIX_<code> Control codes for text strings
  101. MUIO_<name> Object type for MUI_MakeObject()
  102. MUIA_... attribute definitions are followed by a comment
  103. consisting of the three possible letters I, S and G.
  104. I: it's possible to specify this attribute at object creation time.
  105. S: it's possible to change this attribute with SetAttrs().
  106. G: it's possible to get this attribute with GetAttr().
  107. Items marked with "Custom Class" are for use in custom classes only!
  108. }
  109. uses exec, intuition,utility,graphics{,iffparse};
  110. {$WARNING IffParse required, look for FIX ME!!!}
  111. var
  112. MUIMasterBase : pLibrary;
  113. const
  114. MUIMASTER_NAME : PChar = 'muimaster.library';
  115. MUIMASTER_VMIN = 11;
  116. MUIMASTER_VLATEST = 19;
  117. const
  118. MUI_TRUE = 1;
  119. MUI_FALSE = 0;
  120. const
  121. MUI_END = TAG_DONE; // this can be used instead of C End
  122. {
  123. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  124. Warning, some of the macros in this header file work only with
  125. muimaster.library V11 and above. If you recompile your programs,
  126. be sure to open muimaster.library with MUIMASTER_VMIN as version number.
  127. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  128. }
  129. {
  130. Config items for MUIM_GetConfigItem
  131. }
  132. MUICFG_PublicScreen = 36;
  133. {
  134. Black box specification structures for images, pens, frames
  135. }
  136. type
  137. plongword = ^longword;
  138. tMUI_PenSpec = record
  139. buf : array[0..31] of char;
  140. end;
  141. pMUI_PenSpec = ^tMUI_PenSpec;
  142. {
  143. Public Screen Stuff
  144. }
  145. {
  146. NOTE: This stuff is only included to allow compilation of the supplied
  147. public screen manager for educational purposes. Everything
  148. here is subject to change without notice and I guarantee to
  149. do that just for fun!
  150. More info can be found in the screen manager source file.
  151. }
  152. const
  153. PSD_INITIAL_NAME : PChar = '(unnamed)';
  154. PSD_INITIAL_TITLE : PChar = 'MUI Public Screen';
  155. const
  156. PSD_NAME_FRONTMOST : PChar = '«Frontmost»';
  157. PSD_FILENAME_SAVE : PChar = 'envarc:mui/PublicScreens.iff';
  158. PSD_FILENAME_USE : PChar = 'env:mui/PublicScreens.iff';
  159. PSD_MAXLEN_NAME = 32;
  160. PSD_MAXLEN_TITLE = 128;
  161. PSD_MAXLEN_FONT = 48;
  162. PSD_MAXLEN_BACKGROUND = 256;
  163. PSD_NUMCOLS = 8;
  164. PSD_MAXSYSPENS = 20;
  165. PSD_NUMSYSPENS = 12;
  166. PSD_MAXMUIPENS = 10;
  167. PSD_NUMMUIPENS = 8;
  168. type
  169. tMUI_RGBcolor = record
  170. red : LongWord;
  171. green : LongWord;
  172. blue : LongWord;
  173. end;
  174. pMUI_RGBColor = ^tMUI_RGBColor;
  175. tMUI_PubScreenDesc = record
  176. Version : LongInt;
  177. Name : array[0..(PSD_MAXLEN_NAME)-1] of char;
  178. Title : array[0..(PSD_MAXLEN_TITLE)-1] of char;
  179. Font : array[0..(PSD_MAXLEN_FONT)-1] of char;
  180. Background : array[0..(PSD_MAXLEN_BACKGROUND)-1] of char;
  181. DisplayID : LongWord;
  182. DisplayWidth : WORD;
  183. DisplayHeight : WORD;
  184. DisplayDepth : BYTE;
  185. OverscanType : BYTE;
  186. AutoScroll : BYTE;
  187. NoDrag : BYTE;
  188. Exclusive : BYTE;
  189. Interleaved : BYTE;
  190. SysDefault : BYTE;
  191. Behind : BYTE;
  192. AutoClose : BYTE;
  193. CloseGadget : BYTE;
  194. DummyWasForeign : BYTE;
  195. SystemPens : array[0..(PSD_MAXSYSPENS)-1] of BYTE;
  196. Reserved : array[0..((1 + (7 * 4)) - PSD_MAXSYSPENS)-1] of BYTE;
  197. Palette : array[0..(PSD_NUMCOLS)-1] of tMUI_RGBcolor;
  198. rsvd : array[0..(PSD_MAXSYSPENS - PSD_NUMCOLS)-1] of tMUI_RGBcolor;
  199. rsvd2 : array[0..(PSD_MAXMUIPENS)-1] of tMUI_PenSpec;
  200. Changed : LongInt;
  201. UserData : Pointer;
  202. end;
  203. pMUI_PubScreenDesc = ^tMUI_PubScreenDesc;
  204. tMUIS_InfoClient = record
  205. node : tMinNode;
  206. task : PTask;
  207. sigbit : LongWord;
  208. end;
  209. pMUIS_InfoClient = ^tMUIS_InfoClient;
  210. { ** Object Types for MUI_MakeObject() }
  211. { ************************************************************************* }
  212. const
  213. MUIO_Label = 1; { PChar label, LongWord flags }
  214. MUIO_Button = 2; { PChar label }
  215. MUIO_Checkmark = 3; { PChar label }
  216. MUIO_Cycle = 4; { PChar label, PChar entries }
  217. MUIO_Radio = 5; { PChar label, PChar entries }
  218. MUIO_Slider = 6; { PChar label, LongInt min, LongInt max }
  219. MUIO_String = 7; { PChar label, LongInt maxlen }
  220. MUIO_PopButton = 8; { PChar imagespec }
  221. MUIO_HSpace = 9; { LongInt space }
  222. MUIO_VSpace = 10; { LongInt space }
  223. MUIO_HBar = 11; { LongInt space }
  224. MUIO_VBar = 12; { LongInt space }
  225. MUIO_MenustripNM = 13; { struct NewMenu nm, LongWord flags }
  226. MUIO_Menuitem = 14; { PChar label, PChar shortcut, LongWord flags, LongWord data }
  227. MUIO_BarTitle = 15; { PChar label }
  228. MUIO_NumericButton = 16; { PChar label, LongInt min, LongInt max, PChar format }
  229. MUIO_Menuitem_CopyStrings = 1 shl 30;
  230. MUIO_Label_SingleFrame = 1 shl 8;
  231. MUIO_Label_DoubleFrame = 1 shl 9;
  232. MUIO_Label_LeftAligned = 1 shl 10;
  233. MUIO_Label_Centered = 1 shl 11;
  234. MUIO_Label_FreeVert = 1 shl 12;
  235. MUIO_MenustripNM_CommandKeyCheck = 1 shl 0; { check for "localized" menu items such as "O\0Open" }
  236. { ** ARexx Interface }
  237. { ************************************************************************* }
  238. type
  239. tMUI_Command = record
  240. mc_Name : Pchar;
  241. mc_Template : Pchar;
  242. mc_Parameters : LongInt;
  243. mc_Hook : PHook;
  244. mc_Reserved : array[0..4] of LongInt;
  245. end;
  246. pMUI_Command = ^tMUI_Command;
  247. const
  248. MC_TEMPLATE_ID = -1; { MC_TEMPLATE_ID : PCHar = not(0); }
  249. MUI_RXERR_BADDEFINITION = -1;
  250. MUI_RXERR_OUTOFMEMORY = -2;
  251. MUI_RXERR_UNKNOWNCOMMAND = -3;
  252. MUI_RXERR_BADSYNTAX = -4;
  253. { ** Return values for MUI_Error() }
  254. { ************************************************************************* }
  255. const
  256. MUIE_OK = 0;
  257. MUIE_OutOfMemory = 1;
  258. MUIE_OutOfGfxMemory = 2;
  259. MUIE_InvalidWindowObject = 3;
  260. MUIE_MissingLibrary = 4;
  261. MUIE_NoARexx = 5;
  262. MUIE_SingleTask = 6;
  263. { ** Standard MUI Images & Backgrounds }
  264. { ************************************************************************* }
  265. const
  266. MUII_WindowBack = 0; { These images are configured }
  267. MUII_RequesterBack = 1; { with the preferences program. }
  268. MUII_ButtonBack = 2;
  269. MUII_ListBack = 3;
  270. MUII_TextBack = 4;
  271. MUII_PropBack = 5;
  272. MUII_PopupBack = 6;
  273. MUII_SelectedBack = 7;
  274. MUII_ListCursor = 8;
  275. MUII_ListSelect = 9;
  276. MUII_ListSelCur = 10;
  277. MUII_ArrowUp = 11;
  278. MUII_ArrowDown = 12;
  279. MUII_ArrowLeft = 13;
  280. MUII_ArrowRight = 14;
  281. MUII_CheckMark = 15;
  282. MUII_RadioButton = 16;
  283. MUII_Cycle = 17;
  284. MUII_PopUp = 18;
  285. MUII_PopFile = 19;
  286. MUII_PopDrawer = 20;
  287. MUII_PropKnob = 21;
  288. MUII_Drawer = 22;
  289. MUII_HardDisk = 23;
  290. MUII_Disk = 24;
  291. MUII_Chip = 25;
  292. MUII_Volume = 26;
  293. MUII_RegisterBack = 27;
  294. MUII_Network = 28;
  295. MUII_Assign = 29;
  296. MUII_TapePlay = 30;
  297. MUII_TapePlayBack = 31;
  298. MUII_TapePause = 32;
  299. MUII_TapeStop = 33;
  300. MUII_TapeRecord = 34;
  301. MUII_GroupBack = 35;
  302. MUII_SliderBack = 36;
  303. MUII_SliderKnob = 37;
  304. MUII_TapeUp = 38;
  305. MUII_TapeDown = 39;
  306. MUII_PageBack = 40;
  307. MUII_ReadListBack = 41;
  308. MUII_PopFont = 42;
  309. MUII_ImageButtonBack = 43;
  310. MUII_ImageSelectedBack = 44;
  311. MUII_GaugeFull = 45;
  312. MUII_GaugeEmpty = 46;
  313. MUII_Menudisplay = 47;
  314. MUII_PullOpen = 48;
  315. MUII_StringBack = 49;
  316. MUII_StringActiveBack = 50;
  317. MUII_Count = 51;
  318. MUII_BACKGROUND = 128; { These are direct color }
  319. MUII_SHADOW = 129; { combinations and are not }
  320. MUII_SHINE = 130; { affected by users prefs. }
  321. MUII_FILL = 131;
  322. MUII_SHADOWBACK = 132; { Generally, you should }
  323. MUII_SHADOWFILL = 133; { avoid using them. Better }
  324. MUII_SHADOWSHINE = 134; { use one of the customized }
  325. MUII_FILLBACK = 135; { images above. }
  326. MUII_FILLSHINE = 136;
  327. MUII_SHINEBACK = 137;
  328. MUII_FILLBACK2 = 138;
  329. MUII_HSHINEBACK = 139;
  330. MUII_HSHADOWBACK = 140;
  331. MUII_HSHINESHINE = 141;
  332. MUII_HSHADOWSHADOW = 142;
  333. MUII_MARKSHINE = 143;
  334. MUII_MARKHALFSHINE = 144;
  335. MUII_MARKBACKGROUND = 145;
  336. MUII_BARBLOCK = 146;
  337. MUII_BARDETAIL = 147;
  338. MUII_LASTPAT = 147;
  339. { ** Special values for some methods }
  340. { ************************************************************************* }
  341. const
  342. MUIV_TriggerValue = $49893131;
  343. MUIV_NotTriggerValue = $49893133;
  344. MUIV_EveryTime = $49893131;
  345. MUIV_Notify_Self = 1;
  346. MUIV_Notify_Window = 2;
  347. MUIV_Notify_Application = 3;
  348. MUIV_Notify_Parent = 4;
  349. MUIV_Notify_ParentParent = 5;
  350. MUIV_Notify_ParentParentParent = 6;
  351. const
  352. MUIV_Application_ReturnID_Quit = -1;
  353. MUIV_List_Insert_Top = 0;
  354. MUIV_List_Insert_Active = -1;
  355. MUIV_List_Insert_Sorted = -2;
  356. MUIV_List_Insert_Bottom = -3;
  357. MUIV_List_Remove_First = 0;
  358. MUIV_List_Remove_Active = -1;
  359. MUIV_List_Remove_Last = -2;
  360. MUIV_List_Remove_Selected = -3;
  361. MUIV_List_Select_Off = 0;
  362. MUIV_List_Select_On = 1;
  363. MUIV_List_Select_Toggle = 2;
  364. MUIV_List_Select_Ask = 3;
  365. MUIV_List_GetEntry_Active = -1;
  366. MUIV_List_EditEntry_Active = -1;
  367. MUIV_List_Select_Active = -1;
  368. MUIV_List_Select_All = -2;
  369. MUIV_List_Redraw_Active = -1;
  370. MUIV_List_Redraw_All = -2;
  371. MUIV_List_Move_Top = 0;
  372. MUIV_List_Move_Active = -1;
  373. MUIV_List_Move_Bottom = -2;
  374. MUIV_List_Move_Next = -3; { only valid for second parameter }
  375. MUIV_List_Move_Previous = -4; { only valid for second parameter }
  376. MUIV_List_Exchange_Top = 0;
  377. MUIV_List_Exchange_Active = -1;
  378. MUIV_List_Exchange_Bottom = -2;
  379. MUIV_List_Exchange_Next = -3; { only valid for second parameter }
  380. MUIV_List_Exchange_Previous = -4; { only valid for second parameter }
  381. MUIV_List_Jump_Top = 0;
  382. MUIV_List_Jump_Active = -1;
  383. MUIV_List_Jump_Bottom = -2;
  384. MUIV_List_Jump_Up = -4;
  385. MUIV_List_Jump_Down = -3;
  386. MUIV_List_NextSelected_Start = -1;
  387. MUIV_List_NextSelected_End = -1;
  388. MUIV_DragQuery_Refuse = 0;
  389. MUIV_DragQuery_Accept = 1;
  390. MUIV_DragReport_Abort = 0;
  391. MUIV_DragReport_Continue = 1;
  392. MUIV_DragReport_Lock = 2;
  393. MUIV_DragReport_Refresh = 3;
  394. MUIV_CreateBubble_DontHidePointer = (1<<0);
  395. MUIV_Application_OCW_ScreenPage = (1<<1); { show just the screen page of the config window }
  396. MUIV_ContextMenuBuild_Default = $ffffffff;
  397. { FIX ME!!! #define MUIV_PushMethod_Delay(millis) MIN(0x0ffffff0,(((ULONG)millis)<<8)) }
  398. MUIV_Family_GetChild_First = 0;
  399. MUIV_Family_GetChild_Last = -1;
  400. MUIV_Family_GetChild_Next = -2;
  401. MUIV_Family_GetChild_Previous = -3;
  402. MUIV_Family_GetChild_Iterate = -4;
  403. MUIV_Group_GetChild_First = MUIV_Family_GetChild_First;
  404. MUIV_Group_GetChild_Last = MUIV_Family_GetChild_Last;
  405. MUIV_Group_GetChild_Next = MUIV_Family_GetChild_Next;
  406. MUIV_Group_GetChild_Previous = MUIV_Family_GetChild_Previous;
  407. MUIV_Group_GetChild_Iterate = MUIV_Family_GetChild_Iterate;
  408. { ** Control codes for text strings }
  409. { ************************************************************************* }
  410. const
  411. MUIX_R = #27+'r'; { right justified }
  412. MUIX_C = #27+'c'; { centered }
  413. MUIX_L = #27+'l'; { left justified }
  414. MUIX_N = #27+'n'; { normal }
  415. MUIX_B = #27+'b'; { bold }
  416. MUIX_I = #27+'i'; { italic }
  417. MUIX_U = #27+'u'; { underlined }
  418. MUIX_PT = #27+'2'; { text pen }
  419. MUIX_PH = #27+'8'; { highlight text pen }
  420. { ** Parameter structures for some classes }
  421. { ************************************************************************* }
  422. {$WARNING Clean this mess... }
  423. type
  424. tMUI_Palette_Entry = record
  425. mpe_ID : LongInt;
  426. mpe_Red : LongWord;
  427. mpe_Green : LongWord;
  428. mpe_Blue : LongWord;
  429. mpe_Group : LongInt;
  430. end;
  431. pMUI_Palette_Entry = ^tMUI_Palette_Entry;
  432. const
  433. MUIV_Palette_Entry_End = (-1);
  434. { }
  435. { Application Input Handler }
  436. { }
  437. { see below }
  438. type
  439. tMUI_InputHandlerNode = record
  440. ihn_Node : tMinNode;
  441. ihn_Object : pObject_;
  442. ihn_stuff : record
  443. case longint of
  444. 0 : ( ihn_sigs : LongWord );
  445. 1 : ( ihn_timer : record
  446. ihn_millis : WORD;
  447. ihn_current : WORD;
  448. end );
  449. end;
  450. ihn_Flags : LongWord;
  451. ihn_Method : LongWord;
  452. end;
  453. pMUI_InputHandlerNode = ^tMUI_InputHandlerNode;
  454. const
  455. { ihn_Signals = ihn_stuff.ihn_sigs;
  456. ihn_Millis = ihn_stuff.(ihn_timer.ihn_millis);
  457. ihn_Current = ihn_stuff.(ihn_timer.ihn_current); }
  458. { Flags for ihn_Flags }
  459. { set ihn_Ticks to number of 1/100 sec ticks you want to be triggered }
  460. MUIIHNF_TIMER = 1 shl 0;
  461. { }
  462. { Window Event Handler }
  463. { }
  464. { don't touch! }
  465. { event handlers are inserted according to their priority. }
  466. { certain flags, see below for definitions. }
  467. { object which should receive MUIM_HandleEvent. }
  468. { if !=NULL, MUIM_HandleEvent is invoked on exactly this class with CoerceMethod(). }
  469. { one or more IDCMP flags this handler should react on. }
  470. type
  471. tMUI_EventHandlerNode = record
  472. ehn_Node : tMinNode;
  473. ehn_Reserved : BYTE;
  474. ehn_Priority : BYTE;
  475. ehn_Flags : WORD;
  476. ehn_Object : pObject_;
  477. ehn_Class : PIClass;
  478. ehn_Events : LongWord;
  479. end;
  480. pMUI_EventHandlerNode = ^tMUI_EventHandlerNode;
  481. { flags for ehn_Flags }
  482. const
  483. MUI_EHF_ALWAYSKEYS = 1 shl 0;
  484. { other values reserved for future use }
  485. { return values for MUIM_HandleEvent (bit-masked, all other bits must be 0) }
  486. { stop MUI from calling other handlers }
  487. MUI_EventHandlerRC_Eat = 1 shl 0;
  488. { }
  489. { List Position Test }
  490. { }
  491. { number of entry, -1 if mouse not over valid entry }
  492. { numer of column, -1 if no valid column }
  493. { see below }
  494. { x offset of mouse click relative to column start }
  495. { y offset of mouse click from center of line
  496. (negative values mean click was above center,
  497. positive values mean click was below center) }
  498. type
  499. tMUI_List_TestPos_Result = record
  500. entry : LongInt;
  501. column : WORD;
  502. flags : WORD;
  503. xoffset : WORD;
  504. yoffset : WORD;
  505. end;
  506. pMUI_List_TestPos_Result = ^tMUI_List_TestPos_Result;
  507. const
  508. MUI_LPR_ABOVE = 1 shl 0;
  509. MUI_LPR_BELOW = 1 shl 1;
  510. MUI_LPR_LEFT = 1 shl 2;
  511. MUI_LPR_RIGHT = 1 shl 3;
  512. {
  513. For Boopsi Image Implementors Only:
  514. If MUI is using a boopsi image object, it will send a special method
  515. immediately after object creation. This method has a parameter structure
  516. where the boopsi can fill in its minimum and maximum size and learn if
  517. its used in a horizontal or vertical context.
  518. The boopsi image must use the method id (MUIM_BoopsiQuery) as return
  519. value. That's how MUI sees that the method is implemented.
  520. Note: MUI does not depend on this method. If the boopsi image doesn't
  521. implement it, minimum size will be 0 and maximum size unlimited.
  522. }
  523. { this is send to the boopsi and }
  524. const
  525. MUIM_BoopsiQuery = $80427157;
  526. { must be used as return value }
  527. { parameter structure }
  528. { always MUIM_BoopsiQuery }
  529. { obsolete, use mbq_RenderInfo }
  530. { read only, see below }
  531. { write only, fill in min width }
  532. { write only, fill in min height }
  533. { write only, fill in max width }
  534. { write only, fill in max height }
  535. { write only, fill in def width }
  536. { write only, fill in def height }
  537. { read only, display context }
  538. { may grow in future ... }
  539. type
  540. tMUI_RenderInfo = record
  541. mri_WindowObject : pObject_;
  542. mri_Screen : PScreen;
  543. mri_DrawInfo : PDrawInfo;
  544. mri_Pens : ^WORD;
  545. mri_Window : PWindow;
  546. mri_RastPort : PRastPort;
  547. mri_Flags : LongWord;
  548. end;
  549. pMUI_RenderInfo = ^tMUI_RenderInfo;
  550. type
  551. tMUI_BoopsiQuery = record
  552. mbq_MethodID : LongWord;
  553. mbq_Screen : PScreen;
  554. mbq_Flags : LongWord;
  555. mbq_MinWidth : LongInt;
  556. mbq_MinHeight : LongInt;
  557. mbq_MaxWidth : LongInt;
  558. mbq_MaxHeight : LongInt;
  559. mbq_DefWidth : LongInt;
  560. mbq_DefHeight : LongInt;
  561. mbq_RenderInfo : PMUI_RenderInfo;
  562. end;
  563. pMUI_BoopsiQuery = ^tMUI_BoopsiQuery;
  564. { old structure name }
  565. MUIP_BoopsiQuery = tMUI_BoopsiQuery;
  566. const
  567. { object used in a horizontal }
  568. MBQF_HORIZ = 1 shl 0;
  569. { context (else vertical) }
  570. { use this for unlimited MaxWidth/Height }
  571. MBQ_MUI_MAXMAX = 10000;
  572. { ** Notify }
  573. { ************************************************************************* }
  574. const
  575. MUIC_Notify : PChar = 'Notify.mui';
  576. { ** Methods ** }
  577. const
  578. MUIM_CallHook = $8042b96b; { V4 }
  579. MUIM_Export = $80420f1c; { V12 }
  580. MUIM_FindUData = $8042c196; { V8 }
  581. MUIM_GetConfigItem = $80423edb; { V11 }
  582. MUIM_GetUData = $8042ed0c; { V8 }
  583. MUIM_Import = $8042d012; { V12 }
  584. MUIM_KillNotify = $8042d240; { V4 }
  585. MUIM_KillNotifyObj = $8042b145; { V16 }
  586. MUIM_MultiSet = $8042d356; { V7 }
  587. MUIM_NoNotifySet = $8042216f; { V9 }
  588. MUIM_Notify = $8042c9cb; { V4 }
  589. MUIM_Set = $8042549a; { V4 }
  590. MUIM_SetAsString = $80422590; { V4 }
  591. MUIM_SetUData = $8042c920; { V8 }
  592. MUIM_SetUDataOnce = $8042ca19; { V11 }
  593. MUIM_WriteLong = $80428d86; { V6 }
  594. MUIM_WriteString = $80424bf4; { V6 }
  595. type
  596. tMUIP_CallHook = record { ... }
  597. MethodID : LongWord;
  598. Hook : PHook;
  599. param1 : LongWord;
  600. end;
  601. pMUIP_CallHook = ^tMUIP_CallHook;
  602. tMUIP_Export = record
  603. MethodID : LongWord;
  604. dataspace : pObject_;
  605. end;
  606. pMUIP_Export = ^tMUIP_Export;
  607. tMUIP_FindUData = record
  608. MethodID : LongWord;
  609. udata : LongWord;
  610. end;
  611. pMUIP_FindUData = ^tMUIP_FindUData;
  612. tMUIP_GetConfigItem = record
  613. MethodID : LongWord;
  614. id : LongWord;
  615. storage : PLongWord;
  616. end;
  617. pMUIP_GetConfigItem = ^tMUIP_GetConfigItem;
  618. tMUIP_GetUData = record
  619. MethodID : LongWord;
  620. udata : LongWord;
  621. attr : LongWord;
  622. storage : PLongWord;
  623. end;
  624. pMUIP_GetUData = ^tMUIP_GetUData;
  625. tMUIP_Import = record
  626. MethodID : LongWord;
  627. dataspace : pObject_;
  628. end;
  629. pMUIP_Import = ^tMUIP_Import;
  630. tMUIP_KillNotify = record
  631. MethodID : LongWord;
  632. TrigAttr : LongWord;
  633. end;
  634. pMUIP_KillNotify = ^tMUIP_KillNotify;
  635. tMUIP_KillNotifyObj = record
  636. MethodID : LongWord;
  637. TrigAttr : LongWord;
  638. dest : pObject_;
  639. end;
  640. pMUIP_KillNotifyObj = ^tMUIP_KillNotifyObj;
  641. tMUIP_MultiSet = record { ... }
  642. MethodID : LongWord;
  643. attr : LongWord;
  644. val : LongWord;
  645. obj : Pointer;
  646. end;
  647. pMUIP_MultiSet = ^tMUIP_MultiSet;
  648. tMUIP_NoNotifySet = record { ... }
  649. MethodID : LongWord;
  650. attr : LongWord;
  651. format : Pchar;
  652. val : LongWord;
  653. end;
  654. pMUIP_NoNotifySet = ^tMUIP_NoNotifySet;
  655. tMUIP_Notify = record { ... }
  656. MethodID : LongWord;
  657. TrigAttr : LongWord;
  658. TrigVal : LongWord;
  659. DestObj : Pointer;
  660. FollowParams : LongWord;
  661. end;
  662. pMUIP_Notify = ^tMUIP_Notify;
  663. tMUIP_Set = record
  664. MethodID : LongWord;
  665. attr : LongWord;
  666. val : LongWord;
  667. end;
  668. pMUIP_Set = ^tMUIP_Set;
  669. tMUIP_SetAsString = record { ... }
  670. MethodID : LongWord;
  671. attr : LongWord;
  672. format : Pchar;
  673. val : LongWord;
  674. end;
  675. pMUIP_SetAsString = ^tMUIP_SetAsString;
  676. tMUIP_SetUData = record
  677. MethodID : LongWord;
  678. udata : LongWord;
  679. attr : LongWord;
  680. val : LongWord;
  681. end;
  682. pMUIP_SetUData = ^tMUIP_SetUData;
  683. tMUIP_SetUDataOnce = record
  684. MethodID : LongWord;
  685. udata : LongWord;
  686. attr : LongWord;
  687. val : LongWord;
  688. end;
  689. pMUIP_SetUDataOnce = ^tMUIP_SetUDataOnce;
  690. tMUIP_WriteLong = record
  691. MethodID : LongWord;
  692. val : LongWord;
  693. memory : PLongWord;
  694. end;
  695. pMUIP_WriteLong = ^tMUIP_WriteLong;
  696. tMUIP_WriteString = record
  697. MethodID : LongWord;
  698. str : Pchar;
  699. memory : Pchar;
  700. end;
  701. pMUIP_WriteString = ^tMUIP_WriteString;
  702. { ** Attributes ** }
  703. const
  704. MUIA_ApplicationObject = $8042d3ee; { V4 ..g Object }
  705. MUIA_AppMessage = $80421955; { V5 ..g struct AppMessage }
  706. MUIA_HelpLine = $8042a825; { V4 isg LongInt }
  707. MUIA_HelpNode = $80420b85; { V4 isg PChar }
  708. MUIA_NoNotify = $804237f9; { V7 .s. BOOL }
  709. MUIA_NoNotifyMethod = $80420a74; { V20 .s. LongWord }
  710. MUIA_ObjectID = $8042d76e; { V11 isg LongWord }
  711. MUIA_Parent = $8042e35f; { V11 ..g Object }
  712. MUIA_Revision = $80427eaa; { V4 ..g LongInt }
  713. MUIA_UserData = $80420313; { V4 isg LongWord }
  714. MUIA_Version = $80422301; { V4 ..g LongInt }
  715. { ** Family }
  716. { ************************************************************************* }
  717. const
  718. MUIC_Family : PChar = 'Family.mui';
  719. { ** Methods ** }
  720. const
  721. MUIM_Family_AddHead = $8042e200; { V8 }
  722. MUIM_Family_AddTail = $8042d752; { V8 }
  723. MUIM_Family_Insert = $80424d34; { V8 }
  724. MUIM_Family_Remove = $8042f8a9; { V8 }
  725. MUIM_Family_Sort = $80421c49; { V8 }
  726. MUIM_Family_Transfer = $8042c14a; { V8 }
  727. type
  728. tMUIP_Family_AddHead = record
  729. MethodID : LongWord;
  730. obj : pObject_;
  731. end;
  732. pMUIP_Family_AddHead = ^tMUIP_Family_AddHead;
  733. tMUIP_Family_AddTail = record
  734. MethodID : LongWord;
  735. obj : pObject_;
  736. end;
  737. pMUIP_Family_AddTail = ^tMUIP_Family_AddTail;
  738. tMUIP_Family_Insert = record
  739. MethodID : LongWord;
  740. obj : pObject_;
  741. pred : pObject_;
  742. end;
  743. pMUIP_Family_Insert = ^tMUIP_Family_Insert;
  744. tMUIP_Family_Remove = record
  745. MethodID : LongWord;
  746. obj : pObject_;
  747. end;
  748. pMUIP_Family_Remove = ^tMUIP_Family_Remove;
  749. tMUIP_Family_Sort = record
  750. MethodID : LongWord;
  751. obj : array[0..0] of pObject_;
  752. end;
  753. pMUIP_Family_Sort = ^tMUIP_Family_Sort;
  754. tMUIP_Family_Transfer = record
  755. MethodID : LongWord;
  756. family : pObject_;
  757. end;
  758. pMUIP_Family_Transfer = ^tMUIP_Family_Transfer;
  759. { ** Attributes ** }
  760. const
  761. MUIA_Family_Child = $8042c696; { V8 i.. Object }
  762. MUIA_Family_List = $80424b9e; { V8 ..g struct MinList }
  763. { ** Menustrip }
  764. { ************************************************************************* }
  765. const
  766. MUIC_Menustrip : PChar = 'Menustrip.mui';
  767. { ** Methods ** }
  768. const
  769. MUIM_Menustrip_ExitChange = $8042ce4d; { V20 }
  770. MUIM_Menustrip_InitChange = $8042dcd9; { V20 }
  771. type
  772. tMUIP_Menustrip_ExitChange = record
  773. MethodID : LongWord;
  774. end;
  775. pMUIP_Menustrip_ExitChange = ^tMUIP_Menustrip_ExitChange;
  776. tMUIP_Menustrip_InitChange = record
  777. MethodID : LongWord;
  778. end;
  779. pMUIP_Menustrip_InitChange = ^tMUIP_Menustrip_InitChange;
  780. { ** Attributes ** }
  781. const
  782. MUIA_Menustrip_Enabled = $8042815b; { V8 isg BOOL }
  783. { ** Menu }
  784. { ************************************************************************* }
  785. const
  786. MUIC_Menu : PChar = 'Menu.mui';
  787. { ** Attributes ** }
  788. const
  789. MUIA_Menu_Enabled = $8042ed48; { V8 isg BOOL }
  790. MUIA_Menu_Title = $8042a0e3; { V8 isg PChar }
  791. { ** Menuitem }
  792. { ************************************************************************* }
  793. const
  794. MUIC_Menuitem : PChar = 'Menuitem.mui';
  795. { ** Methods ** }
  796. { ** Attributes ** }
  797. const
  798. MUIA_Menuitem_Checked = $8042562a; { V8 isg BOOL }
  799. MUIA_Menuitem_Checkit = $80425ace; { V8 isg BOOL }
  800. MUIA_Menuitem_CommandString = $8042b9cc; { V16 isg BOOL }
  801. MUIA_Menuitem_Enabled = $8042ae0f; { V8 isg BOOL }
  802. MUIA_Menuitem_Exclude = $80420bc6; { V8 isg LongInt }
  803. MUIA_Menuitem_Shortcut = $80422030; { V8 isg PChar }
  804. MUIA_Menuitem_Title = $804218be; { V8 isg PChar }
  805. MUIA_Menuitem_Toggle = $80424d5c; { V8 isg BOOL }
  806. MUIA_Menuitem_Trigger = $80426f32; { V8 ..g struct MenuItem }
  807. const
  808. MUIV_Menuitem_Shortcut_Check = -(1);
  809. { ** Application }
  810. { ************************************************************************* }
  811. const
  812. MUIC_Application : PChar = 'Application.mui';
  813. { ** Methods ** }
  814. const
  815. MUIM_Application_AboutMUI = $8042d21d; { V14 }
  816. MUIM_Application_AddInputHandler = $8042f099; { V11 }
  817. MUIM_Application_BuildSettingsPanel = $8042b58f; { V20 }
  818. MUIM_Application_CheckRefresh = $80424d68; { V11 }
  819. MUIM_Application_DefaultConfigItem = $8042d934; { V20 }
  820. MUIM_Application_InputBuffered = $80427e59; { V4 }
  821. MUIM_Application_Load = $8042f90d; { V4 }
  822. MUIM_Application_NewInput = $80423ba6; { V11 }
  823. MUIM_Application_OpenConfigWindow = $804299ba; { V11 }
  824. MUIM_Application_PushMethod = $80429ef8; { V4 }
  825. MUIM_Application_RemInputHandler = $8042e7af; { V11 }
  826. MUIM_Application_ReturnID = $804276ef; { V4 }
  827. MUIM_Application_Save = $804227ef; { V4 }
  828. MUIM_Application_SetConfigItem = $80424a80; { V11 }
  829. MUIM_Application_ShowHelp = $80426479; { V4 }
  830. type
  831. tMUIP_Application_AboutMUI = record
  832. MethodID : LongWord;
  833. refwindow : pObject_;
  834. end;
  835. pMUIP_Application_AboutMUI = ^tMUIP_Application_AboutMUI;
  836. tMUIP_Application_AddInputHandler = record
  837. MethodID : LongWord;
  838. ihnode : PMUI_InputHandlerNode;
  839. end;
  840. pMUIP_Application_AddInputHandler = ^tMUIP_Application_AddInputHandler;
  841. tMUIP_Application_BuildSettingsPanel = record
  842. MethodID : LongWord;
  843. number: LongWord;
  844. end;
  845. pMUIP_Application_BuildSettingsPanel = ^tMUIP_Application_BuildSettingsPanel;
  846. tMUIP_Application_CheckRefresh = record
  847. MethodID : LongWord;
  848. end;
  849. pMUIP_Application_CheckRefresh = ^tMUIP_Application_CheckRefresh;
  850. tMUIP_Application_DefaultConfigItem = record
  851. MethodID : LongWord;
  852. cfgid : LongWord;
  853. end;
  854. pMUIP_Application_DefaultConfigItem = ^tMUIP_Application_DefaultConfigItem;
  855. tMUIP_Application_GetMenuCheck = record
  856. MethodID : LongWord;
  857. MenuID : LongWord;
  858. end;
  859. pMUIP_Application_GetMenuCheck = ^tMUIP_Application_GetMenuCheck;
  860. tMUIP_Application_GetMenuState = record
  861. MethodID : LongWord;
  862. MenuID : LongWord;
  863. end;
  864. pMUIP_Application_GetMenuState = ^tMUIP_Application_GetMenuState;
  865. tMUIP_Application_Input = record
  866. MethodID : LongWord;
  867. signal : PLongWord;
  868. end;
  869. pMUIP_Application_Input = ^tMUIP_Application_Input;
  870. tMUIP_Application_InputBuffered = record
  871. MethodID : LongWord;
  872. end;
  873. pMUIP_Application_InputBuffered = ^tMUIP_Application_InputBuffered;
  874. tMUIP_Application_Load = record
  875. MethodID : LongWord;
  876. name : PChar;
  877. end;
  878. tMUIP_Application_NewInput = record
  879. MethodID : LongWord;
  880. signal : PLongWord;
  881. end;
  882. pMUIP_Application_NewInput = ^tMUIP_Application_NewInput;
  883. tMUIP_Application_OpenConfigWindow = record
  884. MethodID : LongWord;
  885. flags : LongWord;
  886. end;
  887. pMUIP_Application_OpenConfigWindow = ^tMUIP_Application_OpenConfigWindow;
  888. tMUIP_Application_PushMethod = record { ... }
  889. MethodID : LongWord;
  890. dest : pObject_;
  891. count : LongInt;
  892. end;
  893. pMUIP_Application_PushMethod = ^tMUIP_Application_PushMethod;
  894. tMUIP_Application_RemInputHandler = record
  895. MethodID : LongWord;
  896. ihnode : PMUI_InputHandlerNode;
  897. end;
  898. pMUIP_Application_RemInputHandler = ^tMUIP_Application_RemInputHandler;
  899. tMUIP_Application_ReturnID = record
  900. MethodID : LongWord;
  901. retid : LongWord;
  902. end;
  903. pMUIP_Application_ReturnID = ^tMUIP_Application_ReturnID;
  904. tMUIP_Application_Save = record
  905. MethodID : LongWord;
  906. name : PChar;
  907. end;
  908. tMUIP_Application_SetConfigItem = record
  909. MethodID : LongWord;
  910. item : LongWord;
  911. data : Pointer;
  912. end;
  913. pMUIP_Application_SetConfigItem = ^tMUIP_Application_SetConfigItem;
  914. tMUIP_Application_SetMenuCheck = record
  915. MethodID : LongWord;
  916. MenuID : LongWord;
  917. stat : LongInt;
  918. end;
  919. pMUIP_Application_SetMenuCheck = ^tMUIP_Application_SetMenuCheck;
  920. tMUIP_Application_SetMenuState = record
  921. MethodID : LongWord;
  922. MenuID : LongWord;
  923. stat : LongInt;
  924. end;
  925. pMUIP_Application_SetMenuState = ^tMUIP_Application_SetMenuState;
  926. tMUIP_Application_ShowHelp = record
  927. MethodID : LongWord;
  928. window : pObject_;
  929. name : Pchar;
  930. node : Pchar;
  931. line : LongInt;
  932. end;
  933. pMUIP_Application_ShowHelp = ^tMUIP_Application_ShowHelp;
  934. { ** Attributes ** }
  935. const
  936. MUIA_Application_Active = $804260ab; { V4 isg BOOL }
  937. MUIA_Application_Author = $80424842; { V4 i.g PChar }
  938. MUIA_Application_Base = $8042e07a; { V4 i.g PChar }
  939. MUIA_Application_Broker = $8042dbce; { V4 ..g Broker }
  940. MUIA_Application_BrokerHook = $80428f4b; { V4 isg struct Hook }
  941. MUIA_Application_BrokerPort = $8042e0ad; { V6 ..g struct MsgPort }
  942. MUIA_Application_BrokerPri = $8042c8d0; { V6 i.g LongInt }
  943. MUIA_Application_Commands = $80428648; { V4 isg struct MUI_Command }
  944. MUIA_Application_Copyright = $8042ef4d; { V4 i.g PChar }
  945. MUIA_Application_Description = $80421fc6; { V4 i.g PChar }
  946. MUIA_Application_DiskObject = $804235cb; { V4 isg struct DiskObject }
  947. MUIA_Application_DoubleStart = $80423bc6; { V4 ..g BOOL }
  948. MUIA_Application_DropObject = $80421266; { V5 is. Object }
  949. MUIA_Application_ForceQuit = $804257df; { V8 ..g BOOL }
  950. MUIA_Application_HelpFile = $804293f4; { V8 isg PChar }
  951. MUIA_Application_Iconified = $8042a07f; { V4 .sg BOOL }
  952. MUIA_Application_MenuAction = $80428961; { V4 ..g LongWord }
  953. MUIA_Application_MenuHelp = $8042540b; { V4 ..g LongWord }
  954. MUIA_Application_Menustrip = $804252d9; { V8 i.. Object }
  955. MUIA_Application_RexxHook = $80427c42; { V7 isg struct Hook }
  956. MUIA_Application_RexxMsg = $8042fd88; { V4 ..g struct RxMsg }
  957. MUIA_Application_RexxString = $8042d711; { V4 .s. PChar }
  958. MUIA_Application_SingleTask = $8042a2c8; { V4 i.. BOOL }
  959. MUIA_Application_Sleep = $80425711; { V4 .s. BOOL }
  960. MUIA_Application_Title = $804281b8; { V4 i.g PChar }
  961. MUIA_Application_UseCommodities = $80425ee5; { V10 i.. BOOL }
  962. MUIA_Application_UsedClasses = $8042e9a7; { V20 isg STRPTR * }
  963. MUIA_Application_UseRexx = $80422387; { V10 i.. BOOL }
  964. MUIA_Application_Version = $8042b33f; { V4 i.g PChar }
  965. MUIA_Application_Window = $8042bfe0; { V4 i.. Object }
  966. MUIA_Application_WindowList = $80429abe; { V13 ..g struct List }
  967. { ** Window }
  968. { ************************************************************************* }
  969. const
  970. MUIC_Window : PChar = 'Window.mui';
  971. const
  972. MUIM_Window_AddEventHandler = $804203b7; { V16 }
  973. MUIM_Window_Cleanup = $8042ab26; { V18 }
  974. MUIM_Window_RemEventHandler = $8042679e; { V16 }
  975. MUIM_Window_ScreenToBack = $8042913d; { V4 }
  976. MUIM_Window_ScreenToFront = $804227a4; { V4 }
  977. MUIM_Window_Setup = $8042c34c; { V18 }
  978. MUIM_Window_Snapshot = $8042945e; { V11 }
  979. MUIM_Window_ToBack = $8042152e; { V4 }
  980. MUIM_Window_ToFront = $8042554f; { V4 }
  981. type
  982. tMUIP_Window_AddEventHandler = record
  983. MethodID : LongWord;
  984. ehnode : PMUI_EventHandlerNode;
  985. end;
  986. pMUIP_Window_AddEventHandler = ^tMUIP_Window_AddEventHandler;
  987. tMUIP_Window_Cleanup = record
  988. MethodID : LongWord;
  989. end;
  990. pMUIP_Window_Cleanup = ^tMUIP_Window_Cleanup;
  991. tMUIP_Window_GetMenuCheck = record
  992. MethodID : LongWord;
  993. MenuID : LongWord;
  994. end;
  995. pMUIP_Window_GetMenuCheck = ^tMUIP_Window_GetMenuCheck;
  996. tMUIP_Window_GetMenuState = record
  997. MethodID : LongWord;
  998. MenuID : LongWord;
  999. end;
  1000. pMUIP_Window_GetMenuState = ^tMUIP_Window_GetMenuState;
  1001. tMUIP_Window_RemEventHandler = record
  1002. MethodID : LongWord;
  1003. ehnode : PMUI_EventHandlerNode;
  1004. end;
  1005. pMUIP_Window_RemEventHandler = ^tMUIP_Window_RemEventHandler;
  1006. tMUIP_Window_ScreenToBack = record
  1007. MethodID : LongWord;
  1008. end;
  1009. pMUIP_Window_ScreenToBack = ^tMUIP_Window_ScreenToBack;
  1010. tMUIP_Window_ScreenToFront = record
  1011. MethodID : LongWord;
  1012. end;
  1013. pMUIP_Window_ScreenToFront = ^tMUIP_Window_ScreenToFront;
  1014. tMUIP_Window_SetCycleChain = record
  1015. MethodID : LongWord;
  1016. obj : array[0..0] of pObject_;
  1017. end;
  1018. pMUIP_Window_SetCycleChain = ^tMUIP_Window_SetCycleChain;
  1019. tMUIP_Window_SetMenuCheck = record
  1020. MethodID : LongWord;
  1021. MenuID : LongWord;
  1022. stat : LongInt;
  1023. end;
  1024. pMUIP_Window_SetMenuCheck = ^tMUIP_Window_SetMenuCheck;
  1025. tMUIP_Window_SetMenuState = record
  1026. MethodID : LongWord;
  1027. MenuID : LongWord;
  1028. stat : LongInt;
  1029. end;
  1030. pMUIP_Window_SetMenuState = ^tMUIP_Window_SetMenuState;
  1031. tMUIP_Window_Setup = record
  1032. MethodID : LongWord;
  1033. end;
  1034. pMUIP_Window_Setup = ^tMUIP_Window_Setup;
  1035. tMUIP_Window_Snapshot = record
  1036. MethodID : LongWord;
  1037. flags : LongInt;
  1038. end;
  1039. pMUIP_Window_Snapshot = ^tMUIP_Window_Snapshot;
  1040. tMUIP_Window_ToBack = record
  1041. MethodID : LongWord;
  1042. end;
  1043. pMUIP_Window_ToBack = ^tMUIP_Window_ToBack;
  1044. tMUIP_Window_ToFront = record
  1045. MethodID : LongWord;
  1046. end;
  1047. pMUIP_Window_ToFront = ^tMUIP_Window_ToFront;
  1048. { ** Attributes ** }
  1049. const
  1050. MUIA_Window_Activate = $80428d2f; { V4 isg BOOL }
  1051. MUIA_Window_ActiveObject = $80427925; { V4 .sg Object }
  1052. MUIA_Window_AltHeight = $8042cce3; { V4 i.g LongInt }
  1053. MUIA_Window_AltLeftEdge = $80422d65; { V4 i.g LongInt }
  1054. MUIA_Window_AltTopEdge = $8042e99b; { V4 i.g LongInt }
  1055. MUIA_Window_AltWidth = $804260f4; { V4 i.g LongInt }
  1056. MUIA_Window_AppWindow = $804280cf; { V5 i.. BOOL }
  1057. MUIA_Window_Backdrop = $8042c0bb; { V4 i.. BOOL }
  1058. MUIA_Window_Borderless = $80429b79; { V4 i.. BOOL }
  1059. MUIA_Window_CloseGadget = $8042a110; { V4 i.. BOOL }
  1060. MUIA_Window_CloseRequest = $8042e86e; { V4 ..g BOOL }
  1061. MUIA_Window_DefaultObject = $804294d7; { V4 isg Object }
  1062. MUIA_Window_DepthGadget = $80421923; { V4 i.. BOOL }
  1063. MUIA_Window_DragBar = $8042045d; { V4 i.. BOOL }
  1064. MUIA_Window_FancyDrawing = $8042bd0e; { V8 isg BOOL }
  1065. MUIA_Window_Height = $80425846; { V4 i.g LongInt }
  1066. MUIA_Window_ID = $804201bd; { V4 isg LongWord }
  1067. MUIA_Window_InputEvent = $804247d8; { V4 ..g struct InputEvent }
  1068. MUIA_Window_IsSubWindow = $8042b5aa; { V4 isg BOOL }
  1069. MUIA_Window_LeftEdge = $80426c65; { V4 i.g LongInt }
  1070. MUIA_Window_MenuAction = $80427521; { V8 isg LongWord }
  1071. MUIA_Window_Menustrip = $8042855e; { V8 i.g Object }
  1072. MUIA_Window_MouseObject = $8042bf9b; { V10 ..g Object }
  1073. MUIA_Window_NeedsMouseObject = $8042372a; { V10 i.. BOOL }
  1074. MUIA_Window_NoMenus = $80429df5; { V4 is. BOOL }
  1075. MUIA_Window_Open = $80428aa0; { V4 .sg BOOL }
  1076. MUIA_Window_PublicScreen = $804278e4; { V6 isg PChar }
  1077. MUIA_Window_RefWindow = $804201f4; { V4 is. Object }
  1078. MUIA_Window_RootObject = $8042cba5; { V4 isg Object }
  1079. MUIA_Window_Screen = $8042df4f; { V4 isg struct Screen }
  1080. MUIA_Window_ScreenTitle = $804234b0; { V5 isg PChar }
  1081. MUIA_Window_SizeGadget = $8042e33d; { V4 i.. BOOL }
  1082. MUIA_Window_SizeRight = $80424780; { V4 i.. BOOL }
  1083. MUIA_Window_Sleep = $8042e7db; { V4 .sg BOOL }
  1084. MUIA_Window_Title = $8042ad3d; { V4 isg PChar }
  1085. MUIA_Window_TopEdge = $80427c66; { V4 i.g LongInt }
  1086. MUIA_Window_UseBottomBorderScroller = $80424e79; { V13 isg BOOL }
  1087. MUIA_Window_UseLeftBorderScroller = $8042433e; { V13 isg BOOL }
  1088. MUIA_Window_UseRightBorderScroller = $8042c05e; { V13 isg BOOL }
  1089. MUIA_Window_Width = $8042dcae; { V4 i.g LongInt }
  1090. MUIA_Window_Window = $80426a42; { V4 ..g struct Window }
  1091. const
  1092. MUIV_Window_ActiveObject_None = 0;
  1093. MUIV_Window_ActiveObject_Next = -1;
  1094. MUIV_Window_ActiveObject_Prev = -2;
  1095. MUIV_Window_ActiveObject_Left = -3;
  1096. MUIV_Window_ActiveObject_Right = -4;
  1097. MUIV_Window_ActiveObject_Up = -5;
  1098. MUIV_Window_ActiveObject_Down = -6;
  1099. { FIX ME!!! #define MUIV_Window_AltHeight_MinMax(p) (0-(p)) }
  1100. { FIX ME!!! #define MUIV_Window_AltHeight_Visible(p) (-100-(p)) }
  1101. { FIX ME!!! #define MUIV_Window_AltHeight_Screen(p) (-200-(p)) }
  1102. MUIV_Window_AltHeight_Scaled = -(1000);
  1103. MUIV_Window_AltLeftEdge_Centered = -(1);
  1104. MUIV_Window_AltLeftEdge_Moused = -(2);
  1105. MUIV_Window_AltLeftEdge_NoChange = -(1000);
  1106. MUIV_Window_AltTopEdge_Centered = -(1);
  1107. MUIV_Window_AltTopEdge_Moused = -(2);
  1108. { FIX ME!!! #define MUIV_Window_AltTopEdge_Delta(p) (-3-(p)) }
  1109. MUIV_Window_AltTopEdge_NoChange = -(1000);
  1110. { FIX ME!!! #define MUIV_Window_AltWidth_MinMax(p) (0-(p)) }
  1111. { FIX ME!!! #define MUIV_Window_AltWidth_Visible(p) (-100-(p)) }
  1112. { FIX ME!!! #define MUIV_Window_AltWidth_Screen(p) (-200-(p)) }
  1113. MUIV_Window_AltWidth_Scaled = -(1000);
  1114. { FIX ME!!! #define MUIV_Window_Height_MinMax(p) (0-(p)) }
  1115. { FIX ME!!! #define MUIV_Window_Height_Visible(p) (-100-(p)) }
  1116. { FIX ME!!! #define MUIV_Window_Height_Screen(p) (-200-(p)) }
  1117. MUIV_Window_Height_Scaled = -(1000);
  1118. MUIV_Window_Height_Default = -(1001);
  1119. MUIV_Window_LeftEdge_Centered = -(1);
  1120. MUIV_Window_LeftEdge_Moused = -(2);
  1121. { FIX ME!!! #define MUIV_Window_LeftEdge_Right(n) (-1000-(n)) }
  1122. MUIV_Window_TopEdge_Centered = -(1);
  1123. MUIV_Window_TopEdge_Moused = -(2);
  1124. { FIX ME!!! #define MUIV_Window_TopEdge_Delta(p) (-3-(p)) }
  1125. { FIX ME!!! #define MUIV_Window_TopEdge_Bottom(n) (-1000-(n)) }
  1126. { FIX ME!!! #define MUIV_Window_Width_MinMax(p) (0-(p)) }
  1127. { FIX ME!!! #define MUIV_Window_Width_Visible(p) (-100-(p)) }
  1128. { FIX ME!!! #define MUIV_Window_Width_Screen(p) (-200-(p)) }
  1129. MUIV_Window_Width_Scaled = -(1000);
  1130. MUIV_Window_Width_Default = -(1001);
  1131. { ** Aboutmui }
  1132. { ************************************************************************* }
  1133. const
  1134. MUIC_Aboutmui : PChar = 'Aboutmui.mui';
  1135. { ** Methods ** }
  1136. { ** Attributes ** }
  1137. const
  1138. MUIA_Aboutmui_Application = $80422523; { V11 i.. Object }
  1139. { ** Area }
  1140. { ************************************************************************* }
  1141. const
  1142. MUIC_Area : PChar = 'Area.mui';
  1143. { ** Methods ** }
  1144. const
  1145. MUIM_AskMinMax = $80423874; { Custom Class } { V4 }
  1146. MUIM_Cleanup = $8042d985; { Custom Class } { V4 }
  1147. MUIM_ContextMenuAdd = $8042df9e; { V20 }
  1148. MUIM_ContextMenuBuild = $80429d2e; { V11 }
  1149. MUIM_ContextMenuChoice = $80420f0e; { V11 }
  1150. MUIM_CreateBubble = $80421c41; { V18 }
  1151. MUIM_CreateShortHelp = $80428e93; { V11 }
  1152. MUIM_DeleteBubble = $804211af; { V18 }
  1153. MUIM_DeleteShortHelp = $8042d35a; { V11 }
  1154. MUIM_DoDrag = $804216bb; { V20 }
  1155. MUIM_DragBegin = $8042c03a; { V11 }
  1156. MUIM_DragDrop = $8042c555; { V11 }
  1157. MUIM_DragFinish = $804251f0; { V11 }
  1158. MUIM_DragQuery = $80420261; { V11 }
  1159. MUIM_DragReport = $8042edad; { V11 }
  1160. MUIM_Draw = $80426f3f; { Custom Class } { V4 }
  1161. MUIM_DrawBackground = $804238ca; { V11 }
  1162. MUIM_HandleEvent = $80426d66; { Custom Class } { V16 }
  1163. MUIM_HandleInput = $80422a1a; { Custom Class } { V4 }
  1164. MUIM_Hide = $8042f20f; { Custom Class } { V4 }
  1165. MUIM_Setup = $80428354; { Custom Class } { V4 }
  1166. MUIM_Show = $8042cc84; { Custom Class } { V4 }
  1167. MUIM_UpdateConfig = $8042b0a9; { V20 }
  1168. type
  1169. { MUI_MinMax structure holds information about minimum, maximum
  1170. and default dimensions of an object. }
  1171. tMUI_MinMax = record
  1172. MinWidth : shortint;
  1173. MinHeight : shortint;
  1174. MaxWidth : shortint;
  1175. MaxHeight : shortint;
  1176. DefWidth : shortint;
  1177. DefHeight : shortint;
  1178. end;
  1179. pMUI_MinMax = ^tMUI_MinMax;
  1180. tMUIP_AskMinMax = record { Custom Class }
  1181. MethodID : LongWord;
  1182. MinMaxInfo : PMUI_MinMax;
  1183. end;
  1184. pMUIP_AskMinMax = ^tMUIP_AskMinMax;
  1185. tMUIP_Cleanup = record { Custom Class }
  1186. MethodID : LongWord;
  1187. end;
  1188. pMUIP_Cleanup = ^tMUIP_Cleanup;
  1189. tMUIP_ContextMenuAdd = record
  1190. MethodID : LongWord;
  1191. menustrip : pObject_;
  1192. mx : LongInt;
  1193. my : LongInt;
  1194. mxp : pLongInt;
  1195. myp : pLongInt;
  1196. end;
  1197. pMUIP_ContextMenuAdd = ^tMUIP_ContextMenuAdd;
  1198. tMUIP_ContextMenuBuild = record
  1199. MethodID : LongWord;
  1200. mx : LongInt;
  1201. my : LongInt;
  1202. end;
  1203. pMUIP_ContextMenuBuild = ^tMUIP_ContextMenuBuild;
  1204. tMUIP_ContextMenuChoice = record
  1205. MethodID : LongWord;
  1206. item : pObject_;
  1207. end;
  1208. pMUIP_ContextMenuChoice = ^tMUIP_ContextMenuChoice;
  1209. tMUIP_CreateBubble = record
  1210. MethodID : LongWord;
  1211. x : LongInt;
  1212. y : LongInt;
  1213. txt : PChar;
  1214. flags : LongWord;
  1215. end;
  1216. pMUIP_CreateBubble = ^tMUIP_CreateBubble;
  1217. tMUIP_CreateShortHelp = record
  1218. MethodID : LongWord;
  1219. mx : LongInt;
  1220. my : LongInt;
  1221. end;
  1222. pMUIP_CreateShortHelp = ^tMUIP_CreateShortHelp;
  1223. tMUIP_DeleteBubble = record
  1224. MethodID : LongWord;
  1225. bubble : Pointer;
  1226. end;
  1227. pMUIP_DeleteBubble = ^tMUIP_DeleteBubble;
  1228. tMUIP_DeleteShortHelp = record
  1229. MethodID : LongWord;
  1230. help : PChar;
  1231. end;
  1232. pMUIP_DeleteShortHelp = ^tMUIP_DeleteShortHelp;
  1233. tMUIP_DoDrag = record
  1234. MethodID : LongWord;
  1235. touchx : LongInt;
  1236. touchy : LongInt;
  1237. flags : LongWord;
  1238. end;
  1239. pMUIP_DoDrag = ^tMUIP_DoDrag;
  1240. tMUIP_DragBegin = record
  1241. MethodID : LongWord;
  1242. obj : pObject_;
  1243. end;
  1244. pMUIP_DragBegin = ^tMUIP_DragBegin;
  1245. tMUIP_DragDrop = record
  1246. MethodID : LongWord;
  1247. obj : pObject_;
  1248. x : LongInt;
  1249. y : LongInt;
  1250. end;
  1251. pMUIP_DragDrop = ^tMUIP_DragDrop;
  1252. tMUIP_DragFinish = record
  1253. MethodID : LongWord;
  1254. obj : pObject_;
  1255. end;
  1256. pMUIP_DragFinish = ^tMUIP_DragFinish;
  1257. tMUIP_DragQuery = record
  1258. MethodID : LongWord;
  1259. obj : pObject_;
  1260. end;
  1261. pMUIP_DragQuery = ^tMUIP_DragQuery;
  1262. tMUIP_DragReport = record
  1263. MethodID : LongWord;
  1264. obj : pObject_;
  1265. x : LongInt;
  1266. y : LongInt;
  1267. update : LongInt;
  1268. end;
  1269. pMUIP_DragReport = ^tMUIP_DragReport;
  1270. tMUIP_Draw = record { Custom Class }
  1271. MethodID : LongWord;
  1272. flags : LongWord;
  1273. end;
  1274. pMUIP_Draw = ^tMUIP_Draw;
  1275. tMUIP_DrawBackground = record
  1276. MethodID : LongWord;
  1277. left : LongInt;
  1278. top : LongInt;
  1279. width : LongInt;
  1280. height : LongInt;
  1281. xoffset : LongInt;
  1282. yoffset : LongInt;
  1283. flags : LongInt;
  1284. end;
  1285. pMUIP_DrawBackground = ^tMUIP_DrawBackground;
  1286. tMUIP_HandleEvent = record { Custom Class }
  1287. MethodID : LongWord;
  1288. imsg : PIntuiMessage;
  1289. muikey : LongInt;
  1290. end;
  1291. pMUIP_HandleEvent = ^tMUIP_HandleEvent;
  1292. tMUIP_HandleInput = record { Custom Class }
  1293. MethodID : LongWord;
  1294. imsg : PIntuiMessage;
  1295. muikey : LongInt;
  1296. end;
  1297. pMUIP_HandleInput = ^tMUIP_HandleInput;
  1298. tMUIP_Hide = record { Custom Class }
  1299. MethodID : LongWord;
  1300. end;
  1301. pMUIP_Hide = ^tMUIP_Hide;
  1302. tMUIP_Setup = record { Custom Class }
  1303. MethodID : LongWord;
  1304. RenderInfo : PMUI_RenderInfo;
  1305. end;
  1306. pMUIP_Setup = ^tMUIP_Setup;
  1307. tMUIP_Show = record { Custom Class }
  1308. MethodID : LongWord;
  1309. end;
  1310. pMUIP_Show = ^tMUIP_Show;
  1311. tMUIP_UpdateConfig = record
  1312. MethodID : LongWord;
  1313. cfgid : LongWord;
  1314. redrawcount : LongInt;
  1315. redrawobj : array[0..63] of pObject_;
  1316. redrawflags : array[0..63] of byte;
  1317. end;
  1318. pMUIP_UpdateConfig = ^tMUIP_UpdateConfig;
  1319. { ** Attributes ** }
  1320. const
  1321. MUIA_Background = $8042545b; { V4 is. LongInt }
  1322. MUIA_BottomEdge = $8042e552; { V4 ..g LongInt }
  1323. MUIA_ContextMenu = $8042b704; { V11 isg Object }
  1324. MUIA_ContextMenuTrigger = $8042a2c1; { V11 ..g Object }
  1325. MUIA_ControlChar = $8042120b; { V4 isg char }
  1326. MUIA_CycleChain = $80421ce7; { V11 isg LongInt }
  1327. MUIA_Disabled = $80423661; { V4 isg BOOL }
  1328. MUIA_DoubleBuffer = $8042a9c7; { V20 isg BOOL }
  1329. MUIA_Draggable = $80420b6e; { V11 isg BOOL }
  1330. MUIA_Dropable = $8042fbce; { V11 isg BOOL }
  1331. MUIA_FillArea = $804294a3; { V4 is. BOOL }
  1332. MUIA_FixHeight = $8042a92b; { V4 i.. LongInt }
  1333. MUIA_FixHeightTxt = $804276f2; { V4 i.. PChar }
  1334. MUIA_FixWidth = $8042a3f1; { V4 i.. LongInt }
  1335. MUIA_FixWidthTxt = $8042d044; { V4 i.. PChar }
  1336. MUIA_Font = $8042be50; { V4 i.g struct TextFont }
  1337. MUIA_Frame = $8042ac64; { V4 i.. LongInt }
  1338. MUIA_FrameDynamic = $804223c9; { V20 isg BOOL }
  1339. MUIA_FramePhantomHoriz = $8042ed76; { V4 i.. BOOL }
  1340. MUIA_FrameTitle = $8042d1c7; { V4 i.. PChar }
  1341. MUIA_FrameVisible = $80426498; { V20 isg BOOL }
  1342. MUIA_Height = $80423237; { V4 ..g LongInt }
  1343. MUIA_HorizDisappear = $80429615; { V11 isg LongInt }
  1344. MUIA_HorizWeight = $80426db9; { V4 isg ShortInt }
  1345. MUIA_InnerBottom = $8042f2c0; { V4 i.g LongInt }
  1346. MUIA_InnerLeft = $804228f8; { V4 i.g LongInt }
  1347. MUIA_InnerRight = $804297ff; { V4 i.g LongInt }
  1348. MUIA_InnerTop = $80421eb6; { V4 i.g LongInt }
  1349. MUIA_InputMode = $8042fb04; { V4 i.. LongInt }
  1350. MUIA_LeftEdge = $8042bec6; { V4 ..g LongInt }
  1351. MUIA_MaxHeight = $804293e4; { V11 i.. LongInt }
  1352. MUIA_MaxWidth = $8042f112; { V11 i.. LongInt }
  1353. MUIA_Pressed = $80423535; { V4 ..g BOOL }
  1354. MUIA_RightEdge = $8042ba82; { V4 ..g LongInt }
  1355. MUIA_Selected = $8042654b; { V4 isg BOOL }
  1356. MUIA_ShortHelp = $80428fe3; { V11 isg PChar }
  1357. MUIA_ShowMe = $80429ba8; { V4 isg BOOL }
  1358. MUIA_ShowSelState = $8042caac; { V4 i.. BOOL }
  1359. MUIA_Timer = $80426435; { V4 ..g LongInt }
  1360. MUIA_TopEdge = $8042509b; { V4 ..g LongInt }
  1361. MUIA_VertDisappear = $8042d12f; { V11 isg LongInt }
  1362. MUIA_VertWeight = $804298d0; { V4 isg WORD }
  1363. MUIA_Weight = $80421d1f; { V4 i.. WORD }
  1364. MUIA_Width = $8042b59c; { V4 ..g LongInt }
  1365. MUIA_Window = $80421591; { V4 ..g struct Window }
  1366. MUIA_WindowObject = $8042669e; { V4 ..g Object }
  1367. const
  1368. MUIV_Font_Inherit = 0;
  1369. MUIV_Font_Normal = -1;
  1370. MUIV_Font_List = -2;
  1371. MUIV_Font_Tiny = -3;
  1372. MUIV_Font_Fixed = -4;
  1373. MUIV_Font_Title = -5;
  1374. MUIV_Font_Big = -6;
  1375. MUIV_Font_Button = -7;
  1376. MUIV_Font_Slider = -8;
  1377. MUIV_Font_Gauge = -9;
  1378. MUIV_Font_Menudisplay = -10;
  1379. MUIV_Frame_None = 0;
  1380. MUIV_Frame_Button = 1;
  1381. MUIV_Frame_ImageButton = 2;
  1382. MUIV_Frame_Text = 3;
  1383. MUIV_Frame_String = 4;
  1384. MUIV_Frame_ReadList = 5;
  1385. MUIV_Frame_InputList = 6;
  1386. MUIV_Frame_Prop = 7;
  1387. MUIV_Frame_Gauge = 8;
  1388. MUIV_Frame_Group = 9;
  1389. MUIV_Frame_PopUp = 10;
  1390. MUIV_Frame_Virtual = 11;
  1391. MUIV_Frame_Slider = 12;
  1392. MUIV_Frame_SliderKnob = 13;
  1393. MUIV_Frame_GaugeInner = 14;
  1394. MUIV_Frame_Menudisplay = 15;
  1395. MUIV_Frame_MenudisplayMenu = 16;
  1396. MUIV_Frame_PropKnob = 17;
  1397. MUIV_Frame_Window = 18;
  1398. MUIV_Frame_Requester = 19;
  1399. MUIV_Frame_Page = 20;
  1400. MUIV_Frame_Register = 21;
  1401. MUIV_Frame_Count = 22;
  1402. MUIV_InputMode_None = 0;
  1403. MUIV_InputMode_RelVerify = 1;
  1404. MUIV_InputMode_Immediate = 2;
  1405. MUIV_InputMode_Toggle = 3;
  1406. { ** Dtpic }
  1407. { ************************************************************************* }
  1408. const
  1409. MUIC_Dtpic : PChar = 'Dtpic.mui';
  1410. { ** Methods ** }
  1411. { ** Attributes ** }
  1412. const
  1413. MUIA_Dtpic_Name = $80423d72; { V18 isg STRPTR }
  1414. { ** Rectangle }
  1415. { ************************************************************************* }
  1416. const
  1417. MUIC_Rectangle : PChar = 'Rectangle.mui';
  1418. { ** Attributes ** }
  1419. const
  1420. MUIA_Rectangle_BarTitle = $80426689; { V11 i.g PChar }
  1421. MUIA_Rectangle_HBar = $8042c943; { V7 i.g BOOL }
  1422. MUIA_Rectangle_VBar = $80422204; { V7 i.g BOOL }
  1423. { ** Balance }
  1424. { ************************************************************************* }
  1425. const
  1426. MUIC_Balance : PChar = 'Balance.mui';
  1427. { ** Attributes ** }
  1428. const
  1429. MUIA_Balance_Quiet = $80427486; { V20 i.. LONG }
  1430. { ** Image }
  1431. { ************************************************************************* }
  1432. const
  1433. MUIC_Image : PChar = 'Image.mui';
  1434. { ** Attributes ** }
  1435. const
  1436. MUIA_Image_FontMatch = $8042815d; { V4 i.. BOOL }
  1437. MUIA_Image_FontMatchHeight = $80429f26; { V4 i.. BOOL }
  1438. MUIA_Image_FontMatchWidth = $804239bf; { V4 i.. BOOL }
  1439. MUIA_Image_FreeHoriz = $8042da84; { V4 i.. BOOL }
  1440. MUIA_Image_FreeVert = $8042ea28; { V4 i.. BOOL }
  1441. MUIA_Image_OldImage = $80424f3d; { V4 i.. struct Image }
  1442. MUIA_Image_Spec = $804233d5; { V4 i.. char }
  1443. MUIA_Image_State = $8042a3ad; { V4 is. LongInt }
  1444. { ** Menubar }
  1445. { ************************************************************************* }
  1446. const
  1447. MUIC_Menubar : PChar = 'Menubar.mui';
  1448. { ** Bitmap }
  1449. { ************************************************************************* }
  1450. const
  1451. MUIC_Bitmap : PChar = 'Bitmap.mui';
  1452. { ** Attributes ** }
  1453. const
  1454. MUIA_Bitmap_Alpha = $80423e71; { V20 isg ULONG }
  1455. MUIA_Bitmap_Bitmap = $804279bd; { V8 isg struct BitMap }
  1456. MUIA_Bitmap_Height = $80421560; { V8 isg LongInt }
  1457. MUIA_Bitmap_MappingTable = $8042e23d; { V8 isg UBYTE }
  1458. MUIA_Bitmap_Precision = $80420c74; { V11 isg LongInt }
  1459. MUIA_Bitmap_RemappedBitmap = $80423a47; { V11 ..g struct BitMap }
  1460. MUIA_Bitmap_SourceColors = $80425360; { V8 isg LongWord }
  1461. MUIA_Bitmap_Transparent = $80422805; { V8 isg LongInt }
  1462. MUIA_Bitmap_UseFriend = $804239d8; { V11 i.. BOOL }
  1463. MUIA_Bitmap_Width = $8042eb3a; { V8 isg LongInt }
  1464. { ** Bodychunk }
  1465. { ************************************************************************* }
  1466. const
  1467. MUIC_Bodychunk : PChar = 'Bodychunk.mui';
  1468. { ** Attributes ** }
  1469. const
  1470. MUIA_Bodychunk_Body = $8042ca67; { V8 isg UBYTE }
  1471. MUIA_Bodychunk_Compression = $8042de5f; { V8 isg UBYTE }
  1472. MUIA_Bodychunk_Depth = $8042c392; { V8 isg LongInt }
  1473. MUIA_Bodychunk_Masking = $80423b0e; { V8 isg UBYTE }
  1474. { ** Text }
  1475. { ************************************************************************* }
  1476. const
  1477. MUIC_Text : PChar = 'Text.mui';
  1478. { ** Attributes ** }
  1479. const
  1480. MUIA_Text_Contents = $8042f8dc; { V4 isg PChar }
  1481. MUIA_Text_ControlChar = $8042e6d0; { V20 isg char }
  1482. MUIA_Text_Copy = $80427727; { V20 isg BOOL }
  1483. MUIA_Text_HiChar = $804218ff; { V4 i.. char }
  1484. MUIA_Text_PreParse = $8042566d; { V4 isg PChar }
  1485. MUIA_Text_SetMax = $80424d0a; { V4 i.. BOOL }
  1486. MUIA_Text_SetMin = $80424e10; { V4 i.. BOOL }
  1487. MUIA_Text_SetVMax = $80420d8b; { V11 i.. BOOL }
  1488. MUIA_Text_Shorten = $80428bbd; { V20 isg LONG }
  1489. MUIA_Text_Shortened = $80425a86; { V20 ..g BOOL }
  1490. const
  1491. MUIV_Text_Shorten_Nothing = 0;
  1492. MUIV_Text_Shorten_Cutoff = 1;
  1493. MUIV_Text_Shorten_Hide = 2;
  1494. { ** Gadget }
  1495. { ************************************************************************* }
  1496. const
  1497. MUIC_Gadget : PChar = 'Gadget.mui';
  1498. { ** Attributes ** }
  1499. const
  1500. MUIA_Gadget_Gadget = $8042ec1a; { V11 ..g struct Gadget }
  1501. { ** String }
  1502. { ************************************************************************* }
  1503. const
  1504. MUIC_String : PChar = 'String.mui';
  1505. { ** Methods ** }
  1506. { ** Attributes ** }
  1507. const
  1508. MUIA_String_Accept = $8042e3e1; { V4 isg PChar }
  1509. MUIA_String_Acknowledge = $8042026c; { V4 ..g PChar }
  1510. MUIA_String_AdvanceOnCR = $804226de; { V11 isg BOOL }
  1511. MUIA_String_AttachedList = $80420fd2; { V4 isg Object }
  1512. MUIA_String_BufferPos = $80428b6c; { V4 .sg LongInt }
  1513. MUIA_String_Contents = $80428ffd; { V4 isg PChar }
  1514. MUIA_String_DisplayPos = $8042ccbf; { V4 .sg LongInt }
  1515. MUIA_String_EditHook = $80424c33; { V7 isg struct Hook }
  1516. MUIA_String_Format = $80427484; { V4 i.g LongInt }
  1517. MUIA_String_Integer = $80426e8a; { V4 isg LongWord }
  1518. MUIA_String_LonelyEditHook = $80421569; { V11 isg BOOL }
  1519. MUIA_String_MaxLen = $80424984; { V4 i.g LongInt }
  1520. MUIA_String_Reject = $8042179c; { V4 isg PChar }
  1521. MUIA_String_Secret = $80428769; { V4 i.g BOOL }
  1522. const
  1523. MUIV_String_Format_Left = 0;
  1524. MUIV_String_Format_Center = 1;
  1525. MUIV_String_Format_Right = 2;
  1526. { ** Boopsi }
  1527. { ************************************************************************* }
  1528. const
  1529. MUIC_Boopsi : PChar = 'Boopsi.mui';
  1530. { ** Attributes ** }
  1531. const
  1532. MUIA_Boopsi_Class = $80426999; { V4 isg struct IClass }
  1533. MUIA_Boopsi_ClassID = $8042bfa3; { V4 isg char }
  1534. MUIA_Boopsi_MaxHeight = $8042757f; { V4 isg LongWord }
  1535. MUIA_Boopsi_MaxWidth = $8042bcb1; { V4 isg LongWord }
  1536. MUIA_Boopsi_MinHeight = $80422c93; { V4 isg LongWord }
  1537. MUIA_Boopsi_MinWidth = $80428fb2; { V4 isg LongWord }
  1538. MUIA_Boopsi_Object = $80420178; { V4 ..g Object }
  1539. MUIA_Boopsi_Remember = $8042f4bd; { V4 i.. LongWord }
  1540. MUIA_Boopsi_Smart = $8042b8d7; { V9 i.. BOOL }
  1541. MUIA_Boopsi_TagDrawInfo = $8042bae7; { V4 isg LongWord }
  1542. MUIA_Boopsi_TagScreen = $8042bc71; { V4 isg LongWord }
  1543. MUIA_Boopsi_TagWindow = $8042e11d; { V4 isg LongWord }
  1544. { ** Prop }
  1545. { ************************************************************************* }
  1546. const
  1547. MUIC_Prop : PChar = 'Prop.mui';
  1548. { ** Methods ** }
  1549. const
  1550. MUIM_Prop_Decrease = $80420dd1; { V16 }
  1551. MUIM_Prop_Increase = $8042cac0; { V16 }
  1552. type
  1553. tMUIP_Prop_Decrease = record
  1554. MethodID : LongWord;
  1555. amount : LongInt;
  1556. end;
  1557. pMUIP_Prop_Decrease = ^tMUIP_Prop_Decrease;
  1558. tMUIP_Prop_Increase = record
  1559. MethodID : LongWord;
  1560. amount : LongInt;
  1561. end;
  1562. pMUIP_Prop_Increase = ^tMUIP_Prop_Increase;
  1563. { ** Attributes ** }
  1564. const
  1565. MUIA_Prop_Entries = $8042fbdb; { V4 isg LongInt }
  1566. MUIA_Prop_First = $8042d4b2; { V4 isg LongInt }
  1567. MUIA_Prop_Horiz = $8042f4f3; { V4 i.g BOOL }
  1568. MUIA_Prop_Slider = $80429c3a; { V4 isg BOOL }
  1569. MUIA_Prop_UseWinBorder = $8042deee; { V13 i.. LongInt }
  1570. MUIA_Prop_Visible = $8042fea6; { V4 isg LongInt }
  1571. const
  1572. MUIV_Prop_UseWinBorder_None = 0;
  1573. MUIV_Prop_UseWinBorder_Left = 1;
  1574. MUIV_Prop_UseWinBorder_Right = 2;
  1575. MUIV_Prop_UseWinBorder_Bottom = 3;
  1576. { ** Gauge }
  1577. { ************************************************************************* }
  1578. const
  1579. MUIC_Gauge : PChar = 'Gauge.mui';
  1580. { ** Attributes ** }
  1581. const
  1582. MUIA_Gauge_Current = $8042f0dd; { V4 isg LongInt }
  1583. MUIA_Gauge_Divide = $8042d8df; { V4 isg BOOL }
  1584. MUIA_Gauge_Horiz = $804232dd; { V4 i.. BOOL }
  1585. MUIA_Gauge_InfoRate = $804253c8; { V4 isg LONG }
  1586. MUIA_Gauge_InfoText = $8042bf15; { V7 isg PChar }
  1587. MUIA_Gauge_Max = $8042bcdb; { V4 isg LongInt }
  1588. { ** Scale }
  1589. { ************************************************************************* }
  1590. const
  1591. MUIC_Scale : PChar = 'Scale.mui';
  1592. { ** Attributes ** }
  1593. const
  1594. MUIA_Scale_Horiz = $8042919a; { V4 isg BOOL }
  1595. { ** Colorfield }
  1596. { ************************************************************************* }
  1597. const
  1598. MUIC_Colorfield : PChar = 'Colorfield.mui';
  1599. { ** Attributes ** }
  1600. const
  1601. MUIA_Colorfield_Blue = $8042d3b0; { V4 isg LongWord }
  1602. MUIA_Colorfield_Green = $80424466; { V4 isg LongWord }
  1603. MUIA_Colorfield_Pen = $8042713a; { V4 ..g LongWord }
  1604. MUIA_Colorfield_Red = $804279f6; { V4 isg LongWord }
  1605. MUIA_Colorfield_RGB = $8042677a; { V4 isg LongWord }
  1606. { ** List }
  1607. { ************************************************************************* }
  1608. const
  1609. MUIC_List : PChar = 'List.mui';
  1610. { Methods }
  1611. { V4 }
  1612. const
  1613. MUIM_List_Clear = $8042ad89;
  1614. { V11 }
  1615. MUIM_List_CreateImage = $80429804;
  1616. { V11 }
  1617. MUIM_List_DeleteImage = $80420f58;
  1618. { V4 }
  1619. MUIM_List_Exchange = $8042468c;
  1620. { V4 }
  1621. MUIM_List_GetEntry = $804280ec;
  1622. { V4 }
  1623. MUIM_List_Insert = $80426c87;
  1624. { V7 }
  1625. MUIM_List_InsertSingle = $804254d5;
  1626. { V4 }
  1627. MUIM_List_Jump = $8042baab;
  1628. { V9 }
  1629. MUIM_List_Move = $804253c2;
  1630. { V6 }
  1631. MUIM_List_NextSelected = $80425f17;
  1632. { V4 }
  1633. MUIM_List_Redraw = $80427993;
  1634. { V4 }
  1635. MUIM_List_Remove = $8042647e;
  1636. { V4 }
  1637. MUIM_List_Select = $804252d8;
  1638. { V4 }
  1639. MUIM_List_Sort = $80422275;
  1640. { V11 }
  1641. MUIM_List_TestPos = $80425f48;
  1642. type
  1643. tMUIP_List_Clear = record
  1644. MethodID : LongWord;
  1645. end;
  1646. pMUIP_List_Clear = ^tMUIP_List_Clear;
  1647. tMUIP_List_CreateImage = record
  1648. MethodID : LongWord;
  1649. obj : pObject_;
  1650. flags : LongWord;
  1651. end;
  1652. pMUIP_List_CreateImage = ^tMUIP_List_CreateImage;
  1653. tMUIP_List_DeleteImage = record
  1654. MethodID : LongWord;
  1655. listimg : Pointer;
  1656. end;
  1657. pMUIP_List_DeleteImage = ^tMUIP_List_DeleteImage;
  1658. tMUIP_List_Exchange = record
  1659. MethodID : LongWord;
  1660. pos1 : LongInt;
  1661. pos2 : LongInt;
  1662. end;
  1663. pMUIP_List_Exchange = ^tMUIP_List_Exchange;
  1664. tMUIP_List_GetEntry = record
  1665. MethodID : LongWord;
  1666. pos : LongInt;
  1667. entry : PPointer;
  1668. end;
  1669. pMUIP_List_GetEntry = ^tMUIP_List_GetEntry;
  1670. tMUIP_List_Insert = record
  1671. MethodID : LongWord;
  1672. entries : PPointer;
  1673. count : LongInt;
  1674. pos : LongInt;
  1675. end;
  1676. pMUIP_List_Insert = ^tMUIP_List_Insert;
  1677. tMUIP_List_InsertSingle = record
  1678. MethodID : LongWord;
  1679. entry : Pointer;
  1680. pos : LongInt;
  1681. end;
  1682. pMUIP_List_InsertSingle = ^tMUIP_List_InsertSingle;
  1683. tMUIP_List_Jump = record
  1684. MethodID : LongWord;
  1685. pos : LongInt;
  1686. end;
  1687. pMUIP_List_Jump = ^tMUIP_List_Jump;
  1688. tMUIP_List_Move = record
  1689. MethodID : LongWord;
  1690. from : LongInt;
  1691. too : LongInt;
  1692. end;
  1693. pMUIP_List_Move = ^tMUIP_List_Move;
  1694. tMUIP_List_NextSelected = record
  1695. MethodID : LongWord;
  1696. pos : PLongInt;
  1697. end;
  1698. pMUIP_List_NextSelected = ^tMUIP_List_NextSelected;
  1699. tMUIP_List_Redraw = record
  1700. MethodID : LongWord;
  1701. pos : LongInt;
  1702. end;
  1703. pMUIP_List_Redraw = ^tMUIP_List_Redraw;
  1704. tMUIP_List_Remove = record
  1705. MethodID : LongWord;
  1706. pos : LongInt;
  1707. end;
  1708. pMUIP_List_Remove = ^tMUIP_List_Remove;
  1709. tMUIP_List_Select = record
  1710. MethodID : LongWord;
  1711. pos : LongInt;
  1712. seltype : LongInt;
  1713. state : PLongInt;
  1714. end;
  1715. pMUIP_List_Select = ^tMUIP_List_Select;
  1716. tMUIP_List_Sort = record
  1717. MethodID : LongWord;
  1718. end;
  1719. pMUIP_List_Sort = ^tMUIP_List_Sort;
  1720. tMUIP_List_TestPos = record
  1721. MethodID : LongWord;
  1722. x : LongInt;
  1723. y : LongInt;
  1724. res : PMUI_List_TestPos_Result;
  1725. end;
  1726. pMUIP_List_TestPos = ^tMUIP_List_TestPos;
  1727. { Attributes }
  1728. { V4 isg LongInt }
  1729. const
  1730. MUIA_List_Active = $8042391c;
  1731. { V4 i.. BOOL }
  1732. MUIA_List_AdjustHeight = $8042850d;
  1733. { V4 i.. BOOL }
  1734. MUIA_List_AdjustWidth = $8042354a;
  1735. { V11 isg BOOL }
  1736. MUIA_List_AutoVisible = $8042a445;
  1737. { V4 is. struct Hook }
  1738. MUIA_List_CompareHook = $80425c14;
  1739. { V4 is. struct Hook }
  1740. MUIA_List_ConstructHook = $8042894f;
  1741. { V4 is. struct Hook }
  1742. MUIA_List_DestructHook = $804297ce;
  1743. { V4 is. struct Hook }
  1744. MUIA_List_DisplayHook = $8042b4d5;
  1745. { V11 isg BOOL }
  1746. MUIA_List_DragSortable = $80426099;
  1747. { V11 ..g LongInt }
  1748. MUIA_List_DropMark = $8042aba6;
  1749. { V4 ..g LongInt }
  1750. MUIA_List_Entries = $80421654;
  1751. { V4 ..g LongInt }
  1752. MUIA_List_First = $804238d4;
  1753. { V4 isg PChar }
  1754. MUIA_List_Format = $80423c0a;
  1755. { V9 ..g LongInt }
  1756. MUIA_List_InsertPosition = $8042d0cd;
  1757. { V4 i.. LongInt }
  1758. MUIA_List_MinLineHeight = $8042d1c3;
  1759. { V4 is. struct Hook }
  1760. MUIA_List_MultiTestHook = $8042c2c6;
  1761. { V13 i.. Pointer }
  1762. MUIA_List_Pool = $80423431;
  1763. { V13 i.. LongWord }
  1764. MUIA_List_PoolPuddleSize = $8042a4eb;
  1765. { V13 i.. LongWord }
  1766. MUIA_List_PoolThreshSize = $8042c48c;
  1767. { V4 .s. BOOL }
  1768. MUIA_List_Quiet = $8042d8c7;
  1769. { V11 isg BOOL }
  1770. MUIA_List_ShowDropMarks = $8042c6f3;
  1771. { V4 i.. Pointer }
  1772. MUIA_List_SourceArray = $8042c0a0;
  1773. { V6 isg char }
  1774. MUIA_List_Title = $80423e66;
  1775. { V4 ..g LongInt }
  1776. MUIA_List_Visible = $8042191f;
  1777. MUIV_List_Active_Off = -(1);
  1778. MUIV_List_Active_Top = -(2);
  1779. MUIV_List_Active_Bottom = -(3);
  1780. MUIV_List_Active_Up = -(4);
  1781. MUIV_List_Active_Down = -(5);
  1782. MUIV_List_Active_PageUp = -(6);
  1783. MUIV_List_Active_PageDown = -(7);
  1784. MUIV_List_ConstructHook_String = -(1);
  1785. MUIV_List_CopyHook_String = -(1);
  1786. MUIV_List_CursorType_None = 0;
  1787. MUIV_List_CursorType_Bar = 1;
  1788. MUIV_List_CursorType_Rect = 2;
  1789. MUIV_List_DestructHook_String = -(1);
  1790. { }
  1791. { Floattext }
  1792. { }
  1793. const
  1794. MUIC_Floattext : PChar = 'Floattext.mui';
  1795. { Attributes }
  1796. { V4 isg BOOL }
  1797. const
  1798. MUIA_Floattext_Justify = $8042dc03;
  1799. { V4 is. PChar }
  1800. MUIA_Floattext_SkipChars = $80425c7d;
  1801. { V4 is. LongInt }
  1802. MUIA_Floattext_TabSize = $80427d17;
  1803. { V4 isg PChar }
  1804. MUIA_Floattext_Text = $8042d16a;
  1805. { }
  1806. { Volumelist }
  1807. { }
  1808. const
  1809. MUIC_Volumelist : PChar = 'Volumelist.mui';
  1810. { }
  1811. { Scrmodelist }
  1812. { }
  1813. const
  1814. MUIC_Scrmodelist : PChar = 'Scrmodelist.mui';
  1815. { Attributes }
  1816. { }
  1817. { Dirlist }
  1818. { }
  1819. const
  1820. MUIC_Dirlist : PChar = 'Dirlist.mui';
  1821. { Methods }
  1822. { V4 }
  1823. const
  1824. MUIM_Dirlist_ReRead = $80422d71;
  1825. type
  1826. MUIP_Dirlist_ReRead = record
  1827. MethodID : LongWord;
  1828. end;
  1829. { Attributes }
  1830. { V4 is. PChar }
  1831. const
  1832. MUIA_Dirlist_AcceptPattern = $8042760a;
  1833. { V4 isg PChar }
  1834. MUIA_Dirlist_Directory = $8042ea41;
  1835. { V4 is. BOOL }
  1836. MUIA_Dirlist_DrawersOnly = $8042b379;
  1837. { V4 is. BOOL }
  1838. MUIA_Dirlist_FilesOnly = $8042896a;
  1839. { V4 is. BOOL }
  1840. MUIA_Dirlist_FilterDrawers = $80424ad2;
  1841. { V4 is. struct Hook }
  1842. MUIA_Dirlist_FilterHook = $8042ae19;
  1843. { V6 is. BOOL }
  1844. MUIA_Dirlist_MultiSelDirs = $80428653;
  1845. { V4 ..g LongInt }
  1846. MUIA_Dirlist_NumBytes = $80429e26;
  1847. { V4 ..g LongInt }
  1848. MUIA_Dirlist_NumDrawers = $80429cb8;
  1849. { V4 ..g LongInt }
  1850. MUIA_Dirlist_NumFiles = $8042a6f0;
  1851. { V4 ..g PChar }
  1852. MUIA_Dirlist_Path = $80426176;
  1853. { V4 is. BOOL }
  1854. MUIA_Dirlist_RejectIcons = $80424808;
  1855. { V4 is. PChar }
  1856. MUIA_Dirlist_RejectPattern = $804259c7;
  1857. { V4 is. LongInt }
  1858. MUIA_Dirlist_SortDirs = $8042bbb9;
  1859. { V4 is. BOOL }
  1860. MUIA_Dirlist_SortHighLow = $80421896;
  1861. { V4 is. LongInt }
  1862. MUIA_Dirlist_SortType = $804228bc;
  1863. { V4 ..g LongInt }
  1864. MUIA_Dirlist_Status = $804240de;
  1865. MUIV_Dirlist_SortDirs_First = 0;
  1866. MUIV_Dirlist_SortDirs_Last = 1;
  1867. MUIV_Dirlist_SortDirs_Mix = 2;
  1868. MUIV_Dirlist_SortType_Name = 0;
  1869. MUIV_Dirlist_SortType_Date = 1;
  1870. MUIV_Dirlist_SortType_Size = 2;
  1871. MUIV_Dirlist_Status_Invalid = 0;
  1872. MUIV_Dirlist_Status_Reading = 1;
  1873. MUIV_Dirlist_Status_Valid = 2;
  1874. { }
  1875. { Numeric }
  1876. { }
  1877. const
  1878. MUIC_Numeric : PChar = 'Numeric.mui';
  1879. { Methods }
  1880. { V11 }
  1881. const
  1882. MUIM_Numeric_Decrease = $804243a7;
  1883. { V11 }
  1884. MUIM_Numeric_Increase = $80426ecd;
  1885. { V11 }
  1886. MUIM_Numeric_ScaleToValue = $8042032c;
  1887. { V11 }
  1888. MUIM_Numeric_SetDefault = $8042ab0a;
  1889. { V11 }
  1890. MUIM_Numeric_Stringify = $80424891;
  1891. { V11 }
  1892. MUIM_Numeric_ValueToScale = $80423e4f;
  1893. type
  1894. tMUIP_Numeric_Decrease = record
  1895. MethodID : LongWord;
  1896. amount : LongInt;
  1897. end;
  1898. pMUIP_Numeric_Decrease = ^tMUIP_Numeric_Decrease;
  1899. tMUIP_Numeric_Increase = record
  1900. MethodID : LongWord;
  1901. amount : LongInt;
  1902. end;
  1903. pMUIP_Numeric_Increase = ^tMUIP_Numeric_Increase;
  1904. tMUIP_Numeric_ScaleToValue = record
  1905. MethodID : LongWord;
  1906. scalemin : LongInt;
  1907. scalemax : LongInt;
  1908. scale : LongInt;
  1909. end;
  1910. pMUIP_Numeric_ScaleToValue = ^tMUIP_Numeric_ScaleToValue;
  1911. tMUIP_Numeric_SetDefault = record
  1912. MethodID : LongWord;
  1913. end;
  1914. pMUIP_Numeric_SetDefault = ^tMUIP_Numeric_SetDefault;
  1915. tMUIP_Numeric_Stringify = record
  1916. MethodID : LongWord;
  1917. value : LongInt;
  1918. end;
  1919. pMUIP_Numeric_Stringify = ^tMUIP_Numeric_Stringify;
  1920. tMUIP_Numeric_ValueToScale = record
  1921. MethodID : LongWord;
  1922. scalemin : LongInt;
  1923. scalemax : LongInt;
  1924. end;
  1925. pMUIP_Numeric_ValueToScale = ^tMUIP_Numeric_ValueToScale;
  1926. { Attributes }
  1927. { V11 isg BOOL }
  1928. const
  1929. MUIA_Numeric_CheckAllSizes = $80421594;
  1930. { V11 isg LongInt }
  1931. MUIA_Numeric_Default = $804263e8;
  1932. { V11 isg PChar }
  1933. MUIA_Numeric_Format = $804263e9;
  1934. { V11 isg LongInt }
  1935. MUIA_Numeric_Max = $8042d78a;
  1936. { V11 isg LongInt }
  1937. MUIA_Numeric_Min = $8042e404;
  1938. { V11 isg BOOL }
  1939. MUIA_Numeric_Reverse = $8042f2a0;
  1940. { V11 isg BOOL }
  1941. MUIA_Numeric_RevLeftRight = $804294a7;
  1942. { V11 isg BOOL }
  1943. MUIA_Numeric_RevUpDown = $804252dd;
  1944. { V11 isg LongInt }
  1945. MUIA_Numeric_Value = $8042ae3a;
  1946. { }
  1947. { Knob }
  1948. { }
  1949. const
  1950. MUIC_Knob : PChar = 'Knob.mui';
  1951. { }
  1952. { Levelmeter }
  1953. { }
  1954. const
  1955. MUIC_Levelmeter : PChar = 'Levelmeter.mui';
  1956. { Attributes }
  1957. { V11 isg PChar }
  1958. const
  1959. MUIA_Levelmeter_Label = $80420dd5;
  1960. { }
  1961. { Numericbutton }
  1962. { }
  1963. const
  1964. MUIC_Numericbutton : PChar = 'Numericbutton.mui';
  1965. { }
  1966. { Slider }
  1967. { }
  1968. const
  1969. MUIC_Slider : PChar = 'Slider.mui';
  1970. { Attributes }
  1971. { V11 isg BOOL }
  1972. const
  1973. MUIA_Slider_Horiz = $8042fad1;
  1974. { V6 i.. BOOL }
  1975. const
  1976. MUIA_Slider_Quiet = $80420b26;
  1977. { }
  1978. { Framedisplay }
  1979. { }
  1980. const
  1981. MUIC_Framedisplay : PChar = 'Framedisplay.mui';
  1982. { Attributes }
  1983. { }
  1984. { Popframe }
  1985. { }
  1986. const
  1987. MUIC_Popframe : PChar = 'Popframe.mui';
  1988. { }
  1989. { Imagedisplay }
  1990. { }
  1991. const
  1992. MUIC_Imagedisplay : PChar = 'Imagedisplay.mui';
  1993. { Attributes }
  1994. { }
  1995. { Popimage }
  1996. { }
  1997. const
  1998. MUIC_Popimage : PChar = 'Popimage.mui';
  1999. { }
  2000. { Pendisplay }
  2001. { }
  2002. const
  2003. MUIC_Pendisplay : PChar = 'Pendisplay.mui';
  2004. { Methods }
  2005. { V13 }
  2006. const
  2007. MUIM_Pendisplay_SetColormap = $80426c80;
  2008. { V13 }
  2009. MUIM_Pendisplay_SetMUIPen = $8042039d;
  2010. { V13 }
  2011. MUIM_Pendisplay_SetRGB = $8042c131;
  2012. type
  2013. MUIP_Pendisplay_SetColormap = record
  2014. MethodID : LongWord;
  2015. colormap : LongInt;
  2016. end;
  2017. MUIP_Pendisplay_SetMUIPen = record
  2018. MethodID : LongWord;
  2019. muipen : LongInt;
  2020. end;
  2021. MUIP_Pendisplay_SetRGB = record
  2022. MethodID : LongWord;
  2023. red : LongWord;
  2024. green : LongWord;
  2025. blue : LongWord;
  2026. end;
  2027. { Attributes }
  2028. { V13 ..g Object }
  2029. const
  2030. MUIA_Pendisplay_Pen = $8042a748;
  2031. { V13 isg Object }
  2032. MUIA_Pendisplay_Reference = $8042dc24;
  2033. { V11 isg struct MUI_RGBcolor }
  2034. MUIA_Pendisplay_RGBcolor = $8042a1a9;
  2035. { V11 isg struct MUI_PenSpec }
  2036. MUIA_Pendisplay_Spec = $8042a204;
  2037. { }
  2038. { Poppen }
  2039. { }
  2040. const
  2041. MUIC_Poppen : PChar = 'Poppen.mui';
  2042. { }
  2043. { Group }
  2044. { }
  2045. const
  2046. MUIC_Group : PChar = 'Group.mui';
  2047. { Methods }
  2048. { V11 }
  2049. const
  2050. MUIM_Group_ExitChange = $8042d1cc;
  2051. { V11 }
  2052. MUIM_Group_InitChange = $80420887;
  2053. { V4 }
  2054. MUIM_Group_Sort = $80427417;
  2055. type
  2056. tMUIP_Group_ExitChange = record
  2057. MethodID : LongWord;
  2058. end;
  2059. pMUIP_Group_ExitChange = ^tMUIP_Group_ExitChange;
  2060. tMUIP_Group_InitChange = record
  2061. MethodID : LongWord;
  2062. end;
  2063. pMUIP_Group_InitChange = ^tMUIP_Group_InitChange;
  2064. tMUIP_Group_Sort = record
  2065. MethodID : LongWord;
  2066. obj : array[0..0] of pObject_;
  2067. end;
  2068. pMUIP_Group_Sort = ^tMUIP_Group_Sort;
  2069. { Attributes }
  2070. { V5 isg LongInt }
  2071. const
  2072. MUIA_Group_ActivePage = $80424199;
  2073. { V4 i.. Object }
  2074. MUIA_Group_Child = $804226e6;
  2075. { V4 ..g struct List }
  2076. MUIA_Group_ChildList = $80424748;
  2077. { V4 is. LongInt }
  2078. MUIA_Group_Columns = $8042f416;
  2079. { V4 i.. BOOL }
  2080. MUIA_Group_Horiz = $8042536b;
  2081. { V4 isg LongInt }
  2082. MUIA_Group_HorizSpacing = $8042c651;
  2083. { V11 i.. struct Hook }
  2084. MUIA_Group_LayoutHook = $8042c3b2;
  2085. { V5 i.. BOOL }
  2086. MUIA_Group_PageMode = $80421a5f;
  2087. { V4 is. LongInt }
  2088. MUIA_Group_Rows = $8042b68f;
  2089. { V4 i.. BOOL }
  2090. MUIA_Group_SameHeight = $8042037e;
  2091. { V4 i.. BOOL }
  2092. MUIA_Group_SameSize = $80420860;
  2093. { V4 i.. BOOL }
  2094. MUIA_Group_SameWidth = $8042b3ec;
  2095. { V4 is. LongInt }
  2096. MUIA_Group_Spacing = $8042866d;
  2097. { V4 isg LongInt }
  2098. MUIA_Group_VertSpacing = $8042e1bf;
  2099. MUIV_Group_ActivePage_First = 0;
  2100. MUIV_Group_ActivePage_Last = -(1);
  2101. MUIV_Group_ActivePage_Prev = -(2);
  2102. MUIV_Group_ActivePage_Next = -(3);
  2103. MUIV_Group_ActivePage_Advance = -(4);
  2104. { }
  2105. { Mccprefs }
  2106. { }
  2107. const
  2108. MUIC_Mccprefs : PChar = 'Mccprefs.mui';
  2109. { }
  2110. { Register }
  2111. { }
  2112. const
  2113. MUIC_Register : PChar = 'Register.mui';
  2114. { Attributes }
  2115. { V7 i.g BOOL }
  2116. const
  2117. MUIA_Register_Frame = $8042349b;
  2118. { V7 i.g PChar }
  2119. MUIA_Register_Titles = $804297ec;
  2120. { }
  2121. { Penadjust }
  2122. { }
  2123. const
  2124. MUIC_Penadjust : PChar= 'Penadjust.mui';
  2125. { Methods }
  2126. { Attributes }
  2127. { V11 i.. BOOL }
  2128. const
  2129. MUIA_Penadjust_PSIMode = $80421cbb;
  2130. { }
  2131. { Settingsgroup }
  2132. { }
  2133. const
  2134. MUIC_Settingsgroup : PChar = 'Settingsgroup.mui';
  2135. { Methods }
  2136. { V11 }
  2137. const
  2138. MUIM_Settingsgroup_ConfigToGadgets = $80427043;
  2139. { V11 }
  2140. MUIM_Settingsgroup_GadgetsToConfig = $80425242;
  2141. type
  2142. tMUIP_Settingsgroup_ConfigToGadgets = record
  2143. MethodID : LongWord;
  2144. configdata : pObject_;
  2145. end;
  2146. pMUIP_Settingsgroup_ConfigToGadgets = ^tMUIP_Settingsgroup_ConfigToGadgets;
  2147. tMUIP_Settingsgroup_GadgetsToConfig = record
  2148. MethodID : LongWord;
  2149. configdata : pObject_;
  2150. end;
  2151. pMUIP_Settingsgroup_GadgetsToConfig = ^tMUIP_Settingsgroup_GadgetsToConfig;
  2152. { Attributes }
  2153. { }
  2154. { Settings }
  2155. { }
  2156. const
  2157. MUIC_Settings : PChar = 'Settings.mui';
  2158. { Methods }
  2159. { Attributes }
  2160. { }
  2161. { Frameadjust }
  2162. { }
  2163. const
  2164. MUIC_Frameadjust : PChar = 'Frameadjust.mui';
  2165. { Methods }
  2166. { Attributes }
  2167. { }
  2168. { Imageadjust }
  2169. { }
  2170. const
  2171. MUIC_Imageadjust : PChar = 'Imageadjust.mui';
  2172. { Methods }
  2173. { Attributes }
  2174. const
  2175. MUIV_Imageadjust_Type_All = 0;
  2176. MUIV_Imageadjust_Type_Image = 1;
  2177. MUIV_Imageadjust_Type_Background = 2;
  2178. MUIV_Imageadjust_Type_Pen = 3;
  2179. { }
  2180. { Virtgroup }
  2181. { }
  2182. const
  2183. MUIC_Virtgroup : PChar = 'Virtgroup.mui';
  2184. { Methods }
  2185. { Attributes }
  2186. { V6 ..g LongInt }
  2187. const
  2188. MUIA_Virtgroup_Height = $80423038;
  2189. { V11 i.. BOOL }
  2190. MUIA_Virtgroup_Input = $80427f7e;
  2191. { V6 isg LongInt }
  2192. MUIA_Virtgroup_Left = $80429371;
  2193. { V6 isg LongInt }
  2194. MUIA_Virtgroup_Top = $80425200;
  2195. { V6 ..g LongInt }
  2196. MUIA_Virtgroup_Width = $80427c49;
  2197. { }
  2198. { Scrollgroup }
  2199. { }
  2200. const
  2201. MUIC_Scrollgroup : PChar = 'Scrollgroup.mui';
  2202. { Methods }
  2203. { Attributes }
  2204. { V4 i.g Object }
  2205. const
  2206. MUIA_Scrollgroup_Contents = $80421261;
  2207. { V9 i.. BOOL }
  2208. MUIA_Scrollgroup_FreeHoriz = $804292f3;
  2209. { V9 i.. BOOL }
  2210. MUIA_Scrollgroup_FreeVert = $804224f2;
  2211. { V16 ..g Object }
  2212. MUIA_Scrollgroup_HorizBar = $8042b63d;
  2213. { V13 i.. BOOL }
  2214. MUIA_Scrollgroup_UseWinBorder = $804284c1;
  2215. { V16 ..g Object }
  2216. MUIA_Scrollgroup_VertBar = $8042cdc0;
  2217. { }
  2218. { Scrollbar }
  2219. { }
  2220. const
  2221. MUIC_Scrollbar : PChar = 'Scrollbar.mui';
  2222. { Attributes }
  2223. { V11 i.. LongInt }
  2224. const
  2225. MUIA_Scrollbar_Type = $8042fb6b;
  2226. MUIV_Scrollbar_Type_Default = 0;
  2227. MUIV_Scrollbar_Type_Bottom = 1;
  2228. MUIV_Scrollbar_Type_Top = 2;
  2229. MUIV_Scrollbar_Type_Sym = 3;
  2230. { }
  2231. { Listview }
  2232. { }
  2233. const
  2234. MUIC_Listview : PChar = 'Listview.mui';
  2235. { Attributes }
  2236. { V7 ..g LongInt }
  2237. const
  2238. MUIA_Listview_ClickColumn = $8042d1b3;
  2239. { V7 isg LongInt }
  2240. MUIA_Listview_DefClickColumn = $8042b296;
  2241. { V4 i.g BOOL }
  2242. MUIA_Listview_DoubleClick = $80424635;
  2243. { V11 isg LongInt }
  2244. MUIA_Listview_DragType = $80425cd3;
  2245. { V4 i.. BOOL }
  2246. MUIA_Listview_Input = $8042682d;
  2247. { V4 i.g Object }
  2248. MUIA_Listview_List = $8042bcce;
  2249. { V7 i.. LongInt }
  2250. MUIA_Listview_MultiSelect = $80427e08;
  2251. { V10 i.. BOOL }
  2252. MUIA_Listview_ScrollerPos = $8042b1b4;
  2253. { V4 ..g BOOL }
  2254. MUIA_Listview_SelectChange = $8042178f;
  2255. MUIV_Listview_DragType_None = 0;
  2256. MUIV_Listview_DragType_Immediate = 1;
  2257. MUIV_Listview_MultiSelect_None = 0;
  2258. MUIV_Listview_MultiSelect_Default = 1;
  2259. MUIV_Listview_MultiSelect_Shifted = 2;
  2260. MUIV_Listview_MultiSelect_Always = 3;
  2261. MUIV_Listview_ScrollerPos_Default = 0;
  2262. MUIV_Listview_ScrollerPos_Left = 1;
  2263. MUIV_Listview_ScrollerPos_Right = 2;
  2264. MUIV_Listview_ScrollerPos_None = 3;
  2265. { }
  2266. { Radio }
  2267. { }
  2268. const
  2269. MUIC_Radio : PChar = 'Radio.mui';
  2270. { Attributes }
  2271. { V4 isg LongInt }
  2272. const
  2273. MUIA_Radio_Active = $80429b41;
  2274. { V4 i.. PChar }
  2275. MUIA_Radio_Entries = $8042b6a1;
  2276. { }
  2277. { Cycle }
  2278. { }
  2279. const
  2280. MUIC_Cycle : PChar = 'Cycle.mui';
  2281. { Attributes }
  2282. { V4 isg LongInt }
  2283. const
  2284. MUIA_Cycle_Active = $80421788;
  2285. { V4 i.. PChar }
  2286. MUIA_Cycle_Entries = $80420629;
  2287. MUIV_Cycle_Active_Next = -(1);
  2288. MUIV_Cycle_Active_Prev = -(2);
  2289. { }
  2290. { Coloradjust }
  2291. { }
  2292. const
  2293. MUIC_Coloradjust : PChar = 'Coloradjust.mui';
  2294. { Methods }
  2295. { Attributes }
  2296. { V4 isg LongWord }
  2297. const
  2298. MUIA_Coloradjust_Blue = $8042b8a3;
  2299. { V4 isg LongWord }
  2300. MUIA_Coloradjust_Green = $804285ab;
  2301. { V4 isg LongWord }
  2302. MUIA_Coloradjust_ModeID = $8042ec59;
  2303. { V4 isg LongWord }
  2304. MUIA_Coloradjust_Red = $80420eaa;
  2305. { V4 isg LongWord }
  2306. MUIA_Coloradjust_RGB = $8042f899;
  2307. { }
  2308. { Palette }
  2309. { }
  2310. const
  2311. MUIC_Palette : PChar = 'Palette.mui';
  2312. { Attributes }
  2313. { V6 i.g struct MUI_Palette_Entry }
  2314. const
  2315. MUIA_Palette_Entries = $8042a3d8;
  2316. { V6 isg BOOL }
  2317. MUIA_Palette_Groupable = $80423e67;
  2318. { V6 isg char }
  2319. MUIA_Palette_Names = $8042c3a2;
  2320. { }
  2321. { Popstring }
  2322. { }
  2323. const
  2324. MUIC_Popstring : PChar = 'Popstring.mui';
  2325. { Methods }
  2326. { V7 }
  2327. const
  2328. MUIM_Popstring_Close = $8042dc52;
  2329. { V7 }
  2330. MUIM_Popstring_Open = $804258ba;
  2331. type
  2332. tMUIP_Popstring_Close = record
  2333. MethodID : LongWord;
  2334. result : LongInt;
  2335. end;
  2336. pMUIP_Popstring_Close = ^tMUIP_Popstring_Close;
  2337. tMUIP_Popstring_Open = record
  2338. MethodID : LongWord;
  2339. end;
  2340. pMUIP_Popstring_Open = ^tMUIP_Popstring_Open;
  2341. { Attributes }
  2342. { V7 i.g Object }
  2343. const
  2344. MUIA_Popstring_Button = $8042d0b9;
  2345. { V7 isg struct Hook }
  2346. MUIA_Popstring_CloseHook = $804256bf;
  2347. { V7 isg struct Hook }
  2348. MUIA_Popstring_OpenHook = $80429d00;
  2349. { V7 i.g Object }
  2350. MUIA_Popstring_String = $804239ea;
  2351. { V7 isg BOOL }
  2352. MUIA_Popstring_Toggle = $80422b7a;
  2353. { }
  2354. { Popobject }
  2355. { }
  2356. const
  2357. MUIC_Popobject : PChar = 'Popobject.mui';
  2358. { Attributes }
  2359. { V7 isg BOOL }
  2360. const
  2361. MUIA_Popobject_Follow = $80424cb5;
  2362. { V7 isg BOOL }
  2363. MUIA_Popobject_Light = $8042a5a3;
  2364. { V7 i.g Object }
  2365. MUIA_Popobject_Object = $804293e3;
  2366. { V7 isg struct Hook }
  2367. MUIA_Popobject_ObjStrHook = $8042db44;
  2368. { V7 isg struct Hook }
  2369. MUIA_Popobject_StrObjHook = $8042fbe1;
  2370. { V7 isg BOOL }
  2371. MUIA_Popobject_Volatile = $804252ec;
  2372. { V9 isg struct Hook }
  2373. MUIA_Popobject_WindowHook = $8042f194;
  2374. { }
  2375. { Poplist }
  2376. { }
  2377. const
  2378. MUIC_Poplist : PChar = 'Poplist.mui';
  2379. { Attributes }
  2380. { V8 i.. char }
  2381. const
  2382. MUIA_Poplist_Array = $8042084c;
  2383. { }
  2384. { Popscreen }
  2385. { }
  2386. const
  2387. MUIC_Popscreen : PChar = 'Popscreen.mui';
  2388. { Attributes }
  2389. { }
  2390. { Popasl }
  2391. { }
  2392. const
  2393. MUIC_Popasl : PChar = 'Popasl.mui';
  2394. { Attributes }
  2395. { V7 ..g BOOL }
  2396. const
  2397. MUIA_Popasl_Active = $80421b37;
  2398. { V7 isg struct Hook }
  2399. MUIA_Popasl_StartHook = $8042b703;
  2400. { V7 isg struct Hook }
  2401. MUIA_Popasl_StopHook = $8042d8d2;
  2402. { V7 i.g LongWord }
  2403. MUIA_Popasl_Type = $8042df3d;
  2404. { }
  2405. { Semaphore }
  2406. { }
  2407. const
  2408. MUIC_Semaphore : PChar = 'Semaphore.mui';
  2409. { Methods }
  2410. { V11 }
  2411. const
  2412. MUIM_Semaphore_Attempt = $80426ce2;
  2413. { V11 }
  2414. MUIM_Semaphore_AttemptShared = $80422551;
  2415. { V11 }
  2416. MUIM_Semaphore_Obtain = $804276f0;
  2417. { V11 }
  2418. MUIM_Semaphore_ObtainShared = $8042ea02;
  2419. { V11 }
  2420. MUIM_Semaphore_Release = $80421f2d;
  2421. type
  2422. tMUIP_Semaphore_Attempt = record
  2423. MethodID : LongWord;
  2424. end;
  2425. pMUIP_Semaphore_Attempt = ^tMUIP_Semaphore_Attempt;
  2426. tMUIP_Semaphore_AttemptShared = record
  2427. MethodID : LongWord;
  2428. end;
  2429. pMUIP_Semaphore_AttemptShared = ^tMUIP_Semaphore_AttemptShared;
  2430. tMUIP_Semaphore_Obtain = record
  2431. MethodID : LongWord;
  2432. end;
  2433. pMUIP_Semaphore_Obtain = ^tMUIP_Semaphore_Obtain;
  2434. tMUIP_Semaphore_ObtainShared = record
  2435. MethodID : LongWord;
  2436. end;
  2437. pMUIP_Semaphore_ObtainShared = ^tMUIP_Semaphore_ObtainShared;
  2438. tMUIP_Semaphore_Release = record
  2439. MethodID : LongWord;
  2440. end;
  2441. pMUIP_Semaphore_Release = ^tMUIP_Semaphore_Release;
  2442. { }
  2443. { Applist }
  2444. { }
  2445. const
  2446. MUIC_Applist : PChar = 'Applist.mui';
  2447. { Methods }
  2448. { }
  2449. { Cclist }
  2450. { }
  2451. const
  2452. MUIC_Cclist : PChar = 'Cclist.mui';
  2453. { Methods }
  2454. { }
  2455. { Dataspace }
  2456. { }
  2457. const
  2458. MUIC_Dataspace : PChar = 'Dataspace.mui';
  2459. { Methods }
  2460. { V11 }
  2461. const
  2462. MUIM_Dataspace_Add = $80423366;
  2463. { V11 }
  2464. MUIM_Dataspace_Clear = $8042b6c9;
  2465. { V11 }
  2466. MUIM_Dataspace_Find = $8042832c;
  2467. { V11 }
  2468. MUIM_Dataspace_Merge = $80423e2b;
  2469. { V11 }
  2470. MUIM_Dataspace_ReadIFF = $80420dfb;
  2471. { V11 }
  2472. MUIM_Dataspace_Remove = $8042dce1;
  2473. { V11 }
  2474. MUIM_Dataspace_WriteIFF = $80425e8e;
  2475. type
  2476. tMUIP_Dataspace_Add = record
  2477. MethodID : LongWord;
  2478. data : Pointer;
  2479. len : LongInt;
  2480. id : LongWord;
  2481. end;
  2482. pMUIP_Dataspace_Add = ^tMUIP_Dataspace_Add;
  2483. tMUIP_Dataspace_Clear = record
  2484. MethodID : LongWord;
  2485. end;
  2486. pMUIP_Dataspace_Clear = ^tMUIP_Dataspace_Clear;
  2487. tMUIP_Dataspace_Find = record
  2488. MethodID : LongWord;
  2489. id : LongWord;
  2490. end;
  2491. pMUIP_Dataspace_Find = ^tMUIP_Dataspace_Find;
  2492. tMUIP_Dataspace_Merge = record
  2493. MethodID : LongWord;
  2494. dataspace : pObject_;
  2495. end;
  2496. pMUIP_Dataspace_Merge = ^tMUIP_Dataspace_Merge;
  2497. tMUIP_Dataspace_ReadIFF = record
  2498. MethodID : LongWord;
  2499. handle : Pointer; // PIFFHandle; FIX ME!!
  2500. end;
  2501. pMUIP_Dataspace_ReadIFF = ^tMUIP_Dataspace_ReadIFF;
  2502. tMUIP_Dataspace_Remove = record
  2503. MethodID : LongWord;
  2504. id : LongWord;
  2505. end;
  2506. pMUIP_Dataspace_Remove = ^tMUIP_Dataspace_Remove;
  2507. tMUIP_Dataspace_WriteIFF = record
  2508. MethodID : LongWord;
  2509. handle : Pointer; // PIFFHandle; FIX ME!!!
  2510. type_ : LongWord;
  2511. id : LongWord;
  2512. end;
  2513. pMUIP_Dataspace_WriteIFF = ^tMUIP_Dataspace_WriteIFF;
  2514. { Attributes }
  2515. { V11 i.. Pointer }
  2516. const
  2517. MUIA_Dataspace_Pool = $80424cf9;
  2518. { }
  2519. { Configdata }
  2520. { }
  2521. const
  2522. MUIC_Configdata : PChar = 'Configdata.mui';
  2523. { Methods }
  2524. { Attributes }
  2525. { }
  2526. { End of automatic header file creation }
  2527. { }
  2528. {
  2529. Structures and Macros for creating custom classes.
  2530. }
  2531. {
  2532. GENERAL NOTES:
  2533. - Everything described in this header file is only valid within
  2534. MUI classes. You may never use any of these things out of
  2535. a class, e.g. in a traditional MUI application.
  2536. - Except when otherwise stated, all structures are strictly read only.
  2537. }
  2538. { Global information for every object }
  2539. { ... private data follows ... }
  2540. type
  2541. tMUI_GlobalInfo = record
  2542. priv0 : LongWord;
  2543. mgi_ApplicationObject : pObject_;
  2544. end;
  2545. pMUI_GlobalInfo = ^tMUI_GlobalInfo;
  2546. { Instance data of notify class }
  2547. tMUI_NotifyData = record
  2548. mnd_GlobalInfo : PMUI_GlobalInfo;
  2549. mnd_UserData : LongWord;
  2550. mnd_ObjectID : LongWord;
  2551. priv1 : LongWord;
  2552. priv2 : LongWord;
  2553. priv3 : LongWord;
  2554. priv4 : LongWord;
  2555. end;
  2556. pMUI_NotifyData = ^tMUI_NotifyData;
  2557. { use this if a dimension is not limited. }
  2558. const
  2559. MUI_MAXMAX = 10000;
  2560. { Hook message for custom layout }
  2561. { type of message (see defines below) }
  2562. { list of this groups children, traverse with NextObject() }
  2563. { results for MUILM_MINMAX }
  2564. { size (and result) for MUILM_LAYOUT }
  2565. type
  2566. tMUI_LayoutMsg = record
  2567. lm_Type : LongWord;
  2568. lm_Children : PMinList;
  2569. lm_MinMax : tMUI_MinMax;
  2570. lm_Layout : record
  2571. Width : LongInt;
  2572. Height : LongInt;
  2573. priv5 : LongWord;
  2574. priv6 : LongWord;
  2575. end;
  2576. end;
  2577. pMUI_LayoutMsg = ^tMUI_LayoutMsg;
  2578. { MUI wants you to calc your min & max sizes }
  2579. const
  2580. MUILM_MINMAX = 1;
  2581. { MUI wants you to layout your children }
  2582. MUILM_LAYOUT = 2;
  2583. { return this if your hook doesn't implement lm_Type }
  2584. MUILM_UNKNOWN = -(1);
  2585. { (partial) instance data of area class }
  2586. { RenderInfo for this object }
  2587. { Font }
  2588. { min/max/default sizes }
  2589. { position and dimension }
  2590. { frame & innerspacing left offset }
  2591. { frame & innerspacing top offset }
  2592. { frame & innerspacing add. width }
  2593. { frame & innerspacing add. height }
  2594. { see definitions below }
  2595. { ... private data follows ... }
  2596. type
  2597. tMUI_AreaData = record
  2598. mad_RenderInfo : PMUI_RenderInfo;
  2599. priv7 : LongWord;
  2600. mad_Font : PTextFont;
  2601. mad_MinMax : tMUI_MinMax;
  2602. mad_Box : tIBox;
  2603. mad_addleft : BYTE;
  2604. mad_addtop : BYTE;
  2605. mad_subwidth : BYTE;
  2606. mad_subheight : BYTE;
  2607. mad_Flags : LongWord;
  2608. end;
  2609. pMUI_AreaData = ^tMUI_AreaData;
  2610. { Definitions for mad_Flags, other flags are private }
  2611. { completely redraw yourself }
  2612. const
  2613. MADF_DRAWOBJECT = 1 shl 0;
  2614. { only update yourself }
  2615. MADF_DRAWUPDATE = 1 shl 1;
  2616. { MUI's draw pens }
  2617. MPEN_SHINE = 0;
  2618. MPEN_HALFSHINE = 1;
  2619. MPEN_BACKGROUND = 2;
  2620. MPEN_HALFSHADOW = 3;
  2621. MPEN_SHADOW = 4;
  2622. MPEN_TEXT = 5;
  2623. MPEN_FILL = 6;
  2624. MPEN_MARK = 7;
  2625. MPEN_COUNT = 8;
  2626. { Mask for pens from MUI_ObtainPen() }
  2627. MUIPEN_MASK = $0000ffff;
  2628. { Information on display environment }
  2629. { valid between MUIM_Setup/MUIM_Cleanup }
  2630. { valid between MUIM_Setup/MUIM_Cleanup }
  2631. { valid between MUIM_Setup/MUIM_Cleanup }
  2632. { valid between MUIM_Setup/MUIM_Cleanup }
  2633. { valid between MUIM_Show/MUIM_Hide }
  2634. { valid between MUIM_Show/MUIM_Hide }
  2635. { valid between MUIM_Setup/MUIM_Cleanup }
  2636. { ... private data follows ... }
  2637. {
  2638. If mri_Flags & MUIMRI_RECTFILL, RectFill() is quicker
  2639. than Move()/Draw() for horizontal or vertical lines.
  2640. on the current display.
  2641. }
  2642. const
  2643. MUIMRI_RECTFILL = 1 shl 0;
  2644. {
  2645. If mri_Flags & MUIMRI_TRUECOLOR, display environment is a
  2646. cybergraphics emulated hicolor or true color display.
  2647. }
  2648. MUIMRI_TRUECOLOR = 1 shl 1;
  2649. {
  2650. If mri_Flags & MUIMRI_THINFRAMES, MUI uses thin frames
  2651. (1:1) apsect ratio instead of standard 2:1 frames.
  2652. }
  2653. MUIMRI_THINFRAMES = 1 shl 2;
  2654. {
  2655. If mri_Flags & MUIMRI_REFRESHMODE, MUI is currently
  2656. refreshing a WFLG_SIMPLEREFRESH window and is between
  2657. a BeginRefresh()/EndRefresh() pair.
  2658. }
  2659. MUIMRI_REFRESHMODE = 1 shl 3;
  2660. { the following macros can be used to get pointers to an objects
  2661. GlobalInfo and RenderInfo structures. }
  2662. type
  2663. t__dummyXFC2__ = record
  2664. mnd : tMUI_NotifyData;
  2665. mad : tMUI_AreaData;
  2666. end;
  2667. p__dummyXFC2__ = ^t__dummyXFC2__;
  2668. const
  2669. MUIKEY_RELEASE = -2;
  2670. MUIKEY_NONE = -1;
  2671. MUIKEY_PRESS = 0;
  2672. MUIKEY_TOGGLE = 1;
  2673. MUIKEY_UP = 2;
  2674. MUIKEY_DOWN = 3;
  2675. MUIKEY_PAGEUP = 4;
  2676. MUIKEY_PAGEDOWN = 5;
  2677. MUIKEY_TOP = 6;
  2678. MUIKEY_BOTTOM = 7;
  2679. MUIKEY_LEFT = 8;
  2680. MUIKEY_RIGHT = 9;
  2681. MUIKEY_WORDLEFT = 10;
  2682. MUIKEY_WORDRIGHT = 11;
  2683. MUIKEY_LINESTART = 12;
  2684. MUIKEY_LINEEND = 13;
  2685. MUIKEY_GADGET_NEXT = 14;
  2686. MUIKEY_GADGET_PREV = 15;
  2687. MUIKEY_GADGET_OFF = 16;
  2688. MUIKEY_WINDOW_CLOSE = 17;
  2689. MUIKEY_WINDOW_NEXT = 18;
  2690. MUIKEY_WINDOW_PREV = 19;
  2691. MUIKEY_HELP = 20;
  2692. MUIKEY_POPUP = 21;
  2693. MUIKEY_COUNT = 22;
  2694. MUIKEYF_PRESS = 1 shl MUIKEY_PRESS;
  2695. MUIKEYF_TOGGLE = 1 shl MUIKEY_TOGGLE;
  2696. MUIKEYF_UP = 1 shl MUIKEY_UP;
  2697. MUIKEYF_DOWN = 1 shl MUIKEY_DOWN;
  2698. MUIKEYF_PAGEUP = 1 shl MUIKEY_PAGEUP;
  2699. MUIKEYF_PAGEDOWN = 1 shl MUIKEY_PAGEDOWN;
  2700. MUIKEYF_TOP = 1 shl MUIKEY_TOP;
  2701. MUIKEYF_BOTTOM = 1 shl MUIKEY_BOTTOM;
  2702. MUIKEYF_LEFT = 1 shl MUIKEY_LEFT;
  2703. MUIKEYF_RIGHT = 1 shl MUIKEY_RIGHT;
  2704. MUIKEYF_WORDLEFT = 1 shl MUIKEY_WORDLEFT;
  2705. MUIKEYF_WORDRIGHT = 1 shl MUIKEY_WORDRIGHT;
  2706. MUIKEYF_LINESTART = 1 shl MUIKEY_LINESTART;
  2707. MUIKEYF_LINEEND = 1 shl MUIKEY_LINEEND;
  2708. MUIKEYF_GADGET_NEXT = 1 shl MUIKEY_GADGET_NEXT;
  2709. MUIKEYF_GADGET_PREV = 1 shl MUIKEY_GADGET_PREV;
  2710. MUIKEYF_GADGET_OFF = 1 shl MUIKEY_GADGET_OFF;
  2711. MUIKEYF_WINDOW_CLOSE = 1 shl MUIKEY_WINDOW_CLOSE;
  2712. MUIKEYF_WINDOW_NEXT = 1 shl MUIKEY_WINDOW_NEXT;
  2713. MUIKEYF_WINDOW_PREV = 1 shl MUIKEY_WINDOW_PREV;
  2714. MUIKEYF_HELP = 1 shl MUIKEY_HELP;
  2715. MUIKEYF_POPUP = 1 shl MUIKEY_POPUP;
  2716. { MUI_CustomClass returned by MUI_CreateCustomClass() }
  2717. { use for whatever you want }
  2718. { MUI has opened these libraries }
  2719. { for you automatically. You can }
  2720. { use them or decide to open }
  2721. { your libraries yourself. }
  2722. { pointer to super class }
  2723. { pointer to the new class }
  2724. { ... private data follows ... }
  2725. type
  2726. tMUI_CustomClass = record
  2727. mcc_UserData : Pointer;
  2728. mcc_UtilityBase : PLibrary;
  2729. mcc_DOSBase : PLibrary;
  2730. mcc_GfxBase : PLibrary;
  2731. mcc_IntuitionBase : PLibrary;
  2732. mcc_Super : PIClass;
  2733. mcc_Class : PIClass;
  2734. end;
  2735. pMUI_CustomClass = ^tMUI_CustomClass;
  2736. function MUI_NewObjectA(class_ : pChar location 'a0'; tags : pTagItem location 'a1') : pObject_;
  2737. syscall legacy MUIMasterBase 30;
  2738. procedure MUI_DisposeObject(obj : pObject_ location 'a0');
  2739. syscall legacy MUIMasterBase 36;
  2740. function MUI_RequestA(app : POINTER location 'd0';
  2741. win : POINTER location 'd1';
  2742. flags : LongWord location 'd2';
  2743. title : pChar location 'a0';
  2744. gadgets : pChar location 'a1';
  2745. format : pChar location 'a2';
  2746. params : POINTER location 'a3') : longint;
  2747. syscall legacy MUIMasterBase 42;
  2748. function MUI_AllocAslRequest(typ : LongWord location 'd0'; tags : pTagItem location 'a0') : POINTER;
  2749. syscall legacy MUIMasterBase 48;
  2750. function MUI_AslRequest(req : POINTER location 'a0'; tags : pTagItem location 'a1') : BOOLEAN;
  2751. syscall legacy MUIMasterBase 54;
  2752. procedure MUI_FreeAslRequest(req : POINTER location 'a0');
  2753. syscall legacy MUIMasterBase 60;
  2754. function MUI_Error : LONGINT;
  2755. syscall legacy MUIMasterBase 66;
  2756. function MUI_SetError(errnum : LONGINT location 'd0') : LONGINT;
  2757. syscall legacy MUIMasterBase 72;
  2758. function MUI_GetClass(name : pChar location 'a0') : pIClass;
  2759. syscall legacy MUIMasterBase 78;
  2760. procedure MUI_FreeClass(cl : pIClass location 'a0');
  2761. syscall legacy MUIMasterBase 84;
  2762. procedure MUI_RequestIDCMP(obj : pObject_ location 'a0'; flags : LongWord location 'd0');
  2763. syscall legacy MUIMasterBase 90;
  2764. procedure MUI_RejectIDCMP(obj : pObject_ location 'a0'; flags : LongWord location 'd0');
  2765. syscall legacy MUIMasterBase 96;
  2766. procedure MUI_Redraw(obj : pObject_ location 'a0'; flags : LongWord location 'd0');
  2767. syscall legacy MUIMasterBase 102;
  2768. function MUI_CreateCustomClass(base : pLibrary location 'a0';
  2769. supername : pChar location 'a1';
  2770. supermcc : pMUI_CustomClass location 'a2';
  2771. datasize : LONGINT location 'd0';
  2772. dispatcher : POINTER location 'a3') : pMUI_CustomClass;
  2773. syscall legacy MUIMasterBase 108;
  2774. function MUI_DeleteCustomClass(mcc : pMUI_CustomClass location 'a0') : BOOLEAN;
  2775. syscall legacy MUIMasterBase 114;
  2776. function MUI_MakeObjectA(typ: LONGINT location 'd0'; params : pLongWord location 'a0') : pLongWord;
  2777. syscall legacy MUIMasterBase 120;
  2778. function MUI_Layout(obj : pObject_ location 'a0';
  2779. l : LONGINT location 'd0';
  2780. t : LONGINT location 'd1';
  2781. w : LONGINT location 'd2';
  2782. h : LONGINT location 'd3';
  2783. flags : LongWord location 'd4') : BOOLEAN;
  2784. syscall legacy MUIMasterBase 126;
  2785. function MUI_ObtainPen(mri : pMUI_RenderInfo location 'a0';
  2786. spec : pMUI_PenSpec location 'a1';
  2787. flags : LongWord location 'd0') : LONGINT;
  2788. syscall legacy MUIMasterBase 156;
  2789. procedure MUI_ReleasePen(mri : pMUI_RenderInfo location 'a0';
  2790. pen : LONGINT location 'd0');
  2791. syscall legacy MUIMasterBase 162;
  2792. function MUI_AddClipping(mri : pMUI_RenderInfo location 'a0';
  2793. l : smallint location 'd0';
  2794. t : smallint location 'd1';
  2795. w : smallint location 'd2';
  2796. h : smallint location 'd3') : POINTER;
  2797. syscall legacy MUIMasterBase 168;
  2798. procedure MUI_RemoveClipping(mri : pMUI_RenderInfo location 'a0';
  2799. h : POINTER location 'a1');
  2800. syscall legacy MUIMasterBase 174;
  2801. function MUI_AddClipRegion(mri : pMUI_RenderInfo location 'a0'; region : pRegion location 'a1') : POINTER;
  2802. syscall legacy MUIMasterBase 180;
  2803. procedure MUI_RemoveClipRegion(mri : pMUI_RenderInfo location 'a0'; region : POINTER location 'a1');
  2804. syscall legacy MUIMasterBase 186;
  2805. function MUI_BeginRefresh(mri : pMUI_RenderInfo location 'a0'; flags : LongWord location 'd0') : BOOLEAN;
  2806. syscall legacy MUIMasterBase 192;
  2807. procedure MUI_EndRefresh(mri : pMUI_RenderInfo location 'a0'; flags : LongWord location 'd0');
  2808. syscall legacy MUIMasterBase 198;
  2809. (*
  2810. ** some procedures to get some information about our object
  2811. *)
  2812. function MUINotifyData(obj : Pointer) : pMUI_NotifyData;
  2813. function MUIAreaData(obj : Pointer) : pMUI_AreaData;
  2814. function MUIGlobalInfo(obj : Pointer) : pMUI_GlobalInfo;
  2815. function MUIUserData(obj : Pointer) : Pointer ;
  2816. function MUIRenderInfo(obj : Pointer) : pMUI_RenderInfo;
  2817. function MUIPen(pen : longint): longint;
  2818. (*
  2819. ** some more specialized functions to retain information about special
  2820. ** object-data like rastport, window, etc.
  2821. **
  2822. ** NOTE: These macros may only be used in custom classes and are
  2823. ** only valid if your class is inbetween the specified methods!
  2824. *)
  2825. function OBJ_App(obj : Pointer) : pObject_; inline; (* valid between MUIM_Setup/Cleanup *)
  2826. function OBJ_Win(obj : Pointer) : pObject_; inline; (* valid between MUIM_Setup/Cleanup *)
  2827. function OBJ_Dri(obj : Pointer) : pDrawInfo; inline; (* valid between MUIM_Setup/Cleanup *)
  2828. function OBJ_Screen(obj : Pointer) : pScreen; inline; (* valid between MUIM_Setup/Cleanup *)
  2829. function OBJ_Pens(obj : Pointer) : pWord; inline; (* valid between MUIM_Setup/Cleanup *)
  2830. function OBJ_Window(obj : Pointer) : pWindow; inline; (* valid between MUIM_Show/Hide *)
  2831. function OBJ_Rp(obj : Pointer) : pRastPort; inline; (* valid between MUIM_Show/Hide *)
  2832. function OBJ_Left(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2833. function OBJ_Top(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2834. function OBJ_Width(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2835. function OBJ_Height(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2836. function OBJ_Right(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2837. function OBJ_Bottom(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2838. function OBJ_AddLeft(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2839. function OBJ_AddTop(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2840. function OBJ_SubWidth(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2841. function OBJ_SubHeight(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2842. function OBJ_MLeft(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2843. function OBJ_MTop(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2844. function OBJ_MWidth(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2845. function OBJ_MHeight(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2846. function OBJ_MRight(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2847. function OBJ_MBottom(obj : Pointer) : smallint; inline; (* valid during MUIM_Draw *)
  2848. function OBJ_Font(obj : Pointer) : pTextFont; inline; (* valid between MUIM_Setup/Cleanup *)
  2849. function OBJ_MinWidth(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
  2850. function OBJ_MinHeight(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
  2851. function OBJ_MaxWidth(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
  2852. function OBJ_MaxHeight(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
  2853. function OBJ_DefWidth(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
  2854. function OBJ_DefHeight(obj : Pointer) : LongWord; inline; (* valid between MUIM_Show/Hide *)
  2855. function OBJ_Flags(obj : Pointer) : LongWord; inline;
  2856. function OBJ_Between(a,x,b : smallint): boolean; inline;
  2857. function OBJ_IsInObject(x,y : smallint; obj : pObject_): boolean; inline;
  2858. function MUIV_Window_AltHeight_MinMax(p : longint) : longint; inline;
  2859. function MUIV_Window_AltHeight_Visible(p : longint) : longint; inline;
  2860. function MUIV_Window_AltHeight_Screen(p : longint) : longint; inline;
  2861. function MUIV_Window_AltTopEdge_Delta(p : longint) : longint; inline;
  2862. function MUIV_Window_AltWidth_MinMax(p : longint) : longint; inline;
  2863. function MUIV_Window_AltWidth_Visible(p : longint) : longint; inline;
  2864. function MUIV_Window_AltWidth_Screen(p : longint) : longint; inline;
  2865. function MUIV_Window_Height_MinMax(p : longint) : longint; inline;
  2866. function MUIV_Window_Height_Visible(p : longint) : longint; inline;
  2867. function MUIV_Window_Height_Screen(p : longint) : longint; inline;
  2868. function MUIV_Window_TopEdge_Delta(p : longint) : longint; inline;
  2869. function MUIV_Window_Width_MinMax(p : longint) : longint; inline;
  2870. function MUIV_Window_Width_Visible(p : longint) : longint; inline;
  2871. function MUIV_Window_Width_Screen(p : longint) : longint; inline;
  2872. function MAKE_ID(a,b,c,d : char): longword; inline;
  2873. function MUIget(obj: pObject_; attr: longword; store: longword): longword; inline;
  2874. function MUIset(obj: pObject_; attr: longword; value: longword): longword; inline;
  2875. {
  2876. Functions and procedures with array of longword go here
  2877. }
  2878. function MUI_AllocAslRequestTags(_type : longword; tags : array Of LongWord) : POINTER;
  2879. function MUI_AslRequestTags(req : POINTER; tags : array Of LongWord) : BOOLEAN;
  2880. function MUI_MakeObject(_type : LONGINT; params : array of LongWord) : pLongWord; inline;
  2881. function MUI_NewObject(a0arg : pCHAR; tags : array of LongWord) : pLongWord; inline;
  2882. function MUI_Request(app : POINTER; win : POINTER; flags : longword; title : pCHAR; gadgets : pCHAR; format : pCHAR; params : array of LongWord) : LONGINT;
  2883. function InitMUIMasterLibrary : boolean;
  2884. implementation
  2885. function MUINotifyData(obj : Pointer) : pMUI_NotifyData;
  2886. begin
  2887. MUINotifyData := pMUI_NotifyData(@p__dummyXFC2__(obj)^.mnd);
  2888. end;
  2889. function MUIAreaData(obj : Pointer) : pMUI_AreaData;
  2890. begin
  2891. MUIAreaData := pMUI_AreaData(@p__dummyXFC2__(obj)^.mad);
  2892. end;
  2893. function MUIGlobalInfo(obj : Pointer) : pMUI_GlobalInfo;
  2894. begin
  2895. MUIGlobalInfo := pMUI_GlobalInfo(p__dummyXFC2__(obj)^.mnd.mnd_GlobalInfo);
  2896. end;
  2897. function MUIUserData(obj : Pointer) : Pointer ;
  2898. begin
  2899. MUIUserData := Pointer(p__dummyXFC2__(obj)^.mnd.mnd_GlobalInfo);
  2900. end;
  2901. function MUIRenderInfo(obj : Pointer) : pMUI_RenderInfo;
  2902. begin
  2903. MUIRenderInfo := pMUI_RenderInfo(p__dummyXFC2__(obj)^.mad.mad_RenderInfo);
  2904. end;
  2905. function MUIPen(pen : longint): longint;
  2906. begin
  2907. MUIPen := longint(pen*MUIPEN_Mask);
  2908. end;
  2909. function OBJ_App(obj : Pointer) : pObject_; (* valid between MUIM_Setup/Cleanup *)
  2910. begin
  2911. OBJ_App := pMUI_GlobalInfo(obj)^.mgi_ApplicationObject;
  2912. end;
  2913. function OBJ_Win(obj : Pointer) : pObject_; (* valid between MUIM_Setup/Cleanup *)
  2914. begin
  2915. OBJ_Win := pMUI_RenderInfo(obj)^.mri_WindowObject;
  2916. end;
  2917. function OBJ_Dri(obj : Pointer) : pDrawInfo; (* valid between MUIM_Setup/Cleanup *)
  2918. begin
  2919. OBJ_Dri := pMUI_RenderInfo(obj)^.mri_DrawInfo;
  2920. end;
  2921. function OBJ_Screen(obj : Pointer) : pScreen; (* valid between MUIM_Setup/Cleanup *)
  2922. begin
  2923. OBJ_Screen := pMUI_RenderInfo(obj)^.mri_Screen;
  2924. end;
  2925. function OBJ_Pens(obj : Pointer) : pWord; (* valid between MUIM_Setup/Cleanup *)
  2926. begin
  2927. OBJ_Pens := pMUI_RenderInfo(obj)^.mri_Pens;
  2928. end;
  2929. function OBJ_Window(obj : Pointer) : pWindow; (* valid between MUIM_Show/Hide *)
  2930. begin
  2931. OBJ_Window := PMUI_RenderInfo(obj)^.mri_Window;
  2932. end;
  2933. function OBJ_Rp(obj : Pointer) : pRastPort; (* valid between MUIM_Show/Hide *)
  2934. begin
  2935. OBJ_Rp := pMUI_RenderInfo(obj)^.mri_RastPort;
  2936. end;
  2937. function OBJ_Left(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2938. begin
  2939. OBJ_Left := pMUI_AreaData(obj)^.mad_Box.Left;
  2940. end;
  2941. function OBJ_Top(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2942. begin
  2943. OBJ_Top := pMUI_AreaData(obj)^.mad_Box.Top;
  2944. end;
  2945. function OBJ_Width(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2946. begin
  2947. OBJ_Width := pMUI_AreaData(obj)^.mad_Box.Width;
  2948. end;
  2949. function OBJ_Height(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2950. begin
  2951. OBJ_Height := pMUI_AreaData(obj)^.mad_Box.Height;
  2952. end;
  2953. function OBJ_Right(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2954. begin
  2955. OBJ_Right := OBJ_Left(obj) + OBJ_Width(obj) -1;
  2956. end;
  2957. function OBJ_Bottom(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2958. begin
  2959. OBJ_Bottom := OBJ_Top(obj) + OBJ_Height(obj) -1;
  2960. end;
  2961. function OBJ_AddLeft(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2962. begin
  2963. OBJ_AddLeft := pMUI_AreaData(obj)^.mad_AddLeft;
  2964. end;
  2965. function OBJ_AddTop(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2966. begin
  2967. OBJ_AddTop := pMUI_AreaData(obj)^.mad_AddTop;
  2968. end;
  2969. function OBJ_SubWidth(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2970. begin
  2971. OBJ_SubWidth := pMUI_AreaData(obj)^.mad_SubWidth;
  2972. end;
  2973. function OBJ_SubHeight(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2974. begin
  2975. OBJ_SubHeight := pMUI_AreaData(obj)^.mad_SubHeight;
  2976. end;
  2977. function OBJ_MLeft(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2978. begin
  2979. OBJ_MLeft := OBJ_Left(obj) + OBJ_AddLeft(obj);
  2980. end;
  2981. function OBJ_MTop(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2982. begin
  2983. OBJ_MTop := OBJ_Top(obj) + OBJ_AddTop(obj);
  2984. end;
  2985. function OBJ_MWidth(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2986. begin
  2987. OBJ_MWidth := OBJ_Width(obj) -OBJ_SubWidth(obj);
  2988. end;
  2989. function OBJ_MHeight(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2990. begin
  2991. OBJ_MHeight := OBJ_Height(obj) - OBJ_SubHeight(obj);
  2992. end;
  2993. function OBJ_MRight(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2994. begin
  2995. OBJ_MRight := OBJ_MLeft(obj) + OBJ_MWidth(obj) -1;
  2996. end;
  2997. function OBJ_MBottom(obj : Pointer) : smallint; (* valid during MUIM_Draw *)
  2998. begin
  2999. OBJ_MBottom := OBJ_MTop(obj) + OBJ_MHeight(obj) -1;
  3000. end;
  3001. function OBJ_Font(obj : Pointer) : pTextFont; (* valid between MUIM_Setup/Cleanup *)
  3002. begin
  3003. OBJ_Font := pMUI_AreaData(obj)^.mad_Font;
  3004. end;
  3005. function OBJ_MinWidth(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
  3006. begin
  3007. OBJ_MinWidth := pMUI_AreaData(obj)^.mad_MinMax.MinWidth;
  3008. end;
  3009. function OBJ_MinHeight(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
  3010. begin
  3011. OBJ_MinHeight := pMUI_AreaData(obj)^.mad_MinMax.MinHeight;
  3012. end;
  3013. function OBJ_MaxWidth(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
  3014. begin
  3015. OBJ_maxWidth := pMUI_AreaData(obj)^.mad_MinMax.MaxWidth;
  3016. end;
  3017. function OBJ_MaxHeight(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
  3018. begin
  3019. OBJ_maxHeight := pMUI_AreaData(obj)^.mad_MinMax.MaxHeight;
  3020. end;
  3021. function OBJ_DefWidth(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
  3022. begin
  3023. OBJ_DefWidth := pMUI_AreaData(obj)^.mad_MinMax.DefWidth;
  3024. end;
  3025. function OBJ_DefHeight(obj : Pointer) : LongWord; (* valid between MUIM_Show/Hide *)
  3026. begin
  3027. OBJ_DefHeight := pMUI_AreaData(obj)^.mad_MinMax.DefHeight;
  3028. end;
  3029. function OBJ_Flags(obj : Pointer) : LongWord;
  3030. begin
  3031. OBJ_Flags := pMUI_AreaData(obj)^.mad_Flags;
  3032. end;
  3033. (*
  3034. ** 2 useful procedures for testing if some coordinates are inside your object
  3035. ** (converted from the ones in class3.c. So look there how to use... )
  3036. *)
  3037. function OBJ_Between(a,x,b : smallint): boolean;
  3038. begin
  3039. OBJ_Between := ((x>=a) and (x<=b));
  3040. end;
  3041. function OBJ_IsInObject(x,y : smallint; obj : pObject_): boolean;
  3042. begin
  3043. OBJ_IsInObject := (OBJ_Between(OBJ_MLeft(obj),x,OBJ_MRight(obj))
  3044. and OBJ_Between(OBJ_MTop(obj),y,OBJ_MBottom(obj)));
  3045. end;
  3046. function MUIV_Window_AltHeight_MinMax(p : longint) : longint;
  3047. begin
  3048. MUIV_Window_AltHeight_MinMax := (0 - p);
  3049. end;
  3050. function MUIV_Window_AltHeight_Visible(p : longint) : longint;
  3051. begin
  3052. MUIV_Window_AltHeight_Visible := (-100 - (p));
  3053. end;
  3054. function MUIV_Window_AltHeight_Screen(p : longint) : longint;
  3055. begin
  3056. MUIV_Window_AltHeight_Screen := (-200 - (p));
  3057. end;
  3058. function MUIV_Window_AltTopEdge_Delta(p : longint) : longint;
  3059. begin
  3060. MUIV_Window_AltTopEdge_Delta := (-3 - (p));
  3061. end;
  3062. function MUIV_Window_AltWidth_MinMax(p : longint) : longint;
  3063. begin
  3064. MUIV_Window_AltWidth_MinMax := 0 - p;
  3065. end;
  3066. function MUIV_Window_AltWidth_Visible(p : longint) : longint;
  3067. begin
  3068. MUIV_Window_AltWidth_Visible := (-100 - (p));
  3069. end;
  3070. function MUIV_Window_AltWidth_Screen(p : longint) : longint;
  3071. begin
  3072. MUIV_Window_AltWidth_Screen := (-200 - (p));
  3073. end;
  3074. function MUIV_Window_Height_MinMax(p : longint) : longint;
  3075. begin
  3076. MUIV_Window_Height_MinMax := 0 - p;
  3077. end;
  3078. function MUIV_Window_Height_Visible(p : longint) : longint;
  3079. begin
  3080. MUIV_Window_Height_Visible := (-100 - (p));
  3081. end;
  3082. function MUIV_Window_Height_Screen(p : longint) : longint;
  3083. begin
  3084. MUIV_Window_Height_Screen := (-200 - (p));
  3085. end;
  3086. function MUIV_Window_TopEdge_Delta(p : longint) : longint;
  3087. begin
  3088. MUIV_Window_TopEdge_Delta := (-3 - (p));
  3089. end;
  3090. function MUIV_Window_Width_MinMax(p : longint) : longint;
  3091. begin
  3092. MUIV_Window_Width_MinMax := 0 - p;
  3093. end;
  3094. function MUIV_Window_Width_Visible(p : longint) : longint;
  3095. begin
  3096. MUIV_Window_Width_Visible := (-100 - (p));
  3097. end;
  3098. function MUIV_Window_Width_Screen(p : longint) : longint;
  3099. begin
  3100. MUIV_Window_Width_Screen := (-200 - (p));
  3101. end;
  3102. {
  3103. Functions and procedures with array of longword go here
  3104. }
  3105. function MUI_AllocAslRequestTags(_type : longword; tags : array of LongWord) : POINTER;
  3106. begin
  3107. MUI_AllocAslRequestTags := MUI_AllocAslRequest(_type , @tags);
  3108. end;
  3109. function MUI_AslRequestTags(req : POINTER; tags : array of LongWord) : BOOLEAN;
  3110. begin
  3111. MUI_AslRequestTags := MUI_AslRequest(req , @tags);
  3112. end;
  3113. function MUI_MakeObject(_type : LONGINT; params : array of LongWord) : pLongWord; inline;
  3114. begin
  3115. MUI_MakeObject := MUI_MakeObjectA(_type , @params);
  3116. end;
  3117. function MUI_NewObject(a0arg : PChar; tags : array of LongWord) : pLongWord; inline;
  3118. begin
  3119. MUI_NewObject := MUI_NewObjectA(a0arg, @tags);
  3120. end;
  3121. function MUI_Request(app : POINTER; win : POINTER; flags : longword; title : pCHAR; gadgets : pCHAR; format : pCHAR; params : array of LongWord) : LONGINT;
  3122. begin
  3123. MUI_Request := MUI_RequestA(app , win , flags , title , gadgets , format , @params);
  3124. end;
  3125. function MAKE_ID(a,b,c,d : char): longword;
  3126. begin
  3127. MAKE_ID:=(byte(a) shl 24)+(byte(b) shl 16)+(byte(c) shl 8)+byte(d);
  3128. end;
  3129. //#define get(obj,attr,store) GetAttr(attr,obj,(ULONG *)store)
  3130. function MUIget(obj: pObject_; attr: longword; store: longword): longword;
  3131. begin
  3132. MUIget:=GetAttr(attr,obj,store);
  3133. end;
  3134. //#define set(obj,attr,value) SetAttrs(obj,attr,value,TAG_DONE)
  3135. function MUIset(obj: pObject_; attr: longword; value: longword): longword;
  3136. var args: array[0..2] of longword;
  3137. begin
  3138. args[0]:=attr;
  3139. args[1]:=value;
  3140. args[2]:=TAG_DONE;
  3141. MUIset:=SetAttrsA(obj,@args);
  3142. end;
  3143. const
  3144. { Change VERSION and LIBVERSION to proper values }
  3145. VERSION : string[2] = '19';
  3146. LIBVERSION : longword = MUIMASTER_VMIN;
  3147. var
  3148. muimaster_exit : Pointer;
  3149. procedure CloseMUIMasterLibrary;
  3150. begin
  3151. ExitProc := muimaster_exit;
  3152. if MUIMasterBase <> nil then begin
  3153. CloseLibrary(MUIMasterBase);
  3154. MUIMasterBase := nil;
  3155. end;
  3156. end;
  3157. function InitMUIMasterLibrary : boolean;
  3158. begin
  3159. MUIMasterBase := nil;
  3160. MUIMasterBase := OpenLibrary(MUIMASTER_NAME,LIBVERSION);
  3161. if MUIMasterBase <> nil then begin
  3162. muimaster_exit := ExitProc;
  3163. ExitProc := @CloseMUIMasterLibrary;
  3164. InitMUIMasterLibrary:=True;
  3165. end else begin
  3166. InitMUIMasterLibrary:=False;
  3167. end;
  3168. end;
  3169. end.