Quickdraw.pas 184 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817
  1. {
  2. File: Quickdraw.p
  3. Contains: Interface to Quickdraw Graphics
  4. Version: Universal Interfaces 3.4.2
  5. Copyright: © 1985-2002 by Apple Computer, Inc., all rights reserved
  6. Bugs?: For bug reports, consult the following page on
  7. the World Wide Web:
  8. http://www.freepascal.org/bugs.html
  9. }
  10. {
  11. Modified for use with Free Pascal
  12. Version 200
  13. Please report any bugs to <[email protected]>
  14. }
  15. {$mode macpas}
  16. {$packenum 1}
  17. {$macro on}
  18. {$inline on}
  19. {$CALLING MWPASCAL}
  20. unit Quickdraw;
  21. interface
  22. {$setc UNIVERSAL_INTERFACES_VERSION := $0342}
  23. {$setc GAP_INTERFACES_VERSION := $0200}
  24. {$ifc not defined USE_CFSTR_CONSTANT_MACROS}
  25. {$setc USE_CFSTR_CONSTANT_MACROS := TRUE}
  26. {$endc}
  27. {$ifc defined CPUPOWERPC and defined CPUI386}
  28. {$error Conflicting initial definitions for CPUPOWERPC and CPUI386}
  29. {$endc}
  30. {$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN}
  31. {$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN}
  32. {$endc}
  33. {$ifc not defined __ppc__ and defined CPUPOWERPC}
  34. {$setc __ppc__ := 1}
  35. {$elsec}
  36. {$setc __ppc__ := 0}
  37. {$endc}
  38. {$ifc not defined __i386__ and defined CPUI386}
  39. {$setc __i386__ := 1}
  40. {$elsec}
  41. {$setc __i386__ := 0}
  42. {$endc}
  43. {$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__}
  44. {$error Conflicting definitions for __ppc__ and __i386__}
  45. {$endc}
  46. {$ifc defined __ppc__ and __ppc__}
  47. {$setc TARGET_CPU_PPC := TRUE}
  48. {$setc TARGET_CPU_X86 := FALSE}
  49. {$elifc defined __i386__ and __i386__}
  50. {$setc TARGET_CPU_PPC := FALSE}
  51. {$setc TARGET_CPU_X86 := TRUE}
  52. {$elsec}
  53. {$error Neither __ppc__ nor __i386__ is defined.}
  54. {$endc}
  55. {$setc TARGET_CPU_PPC_64 := FALSE}
  56. {$ifc defined FPC_BIG_ENDIAN}
  57. {$setc TARGET_RT_BIG_ENDIAN := TRUE}
  58. {$setc TARGET_RT_LITTLE_ENDIAN := FALSE}
  59. {$elifc defined FPC_LITTLE_ENDIAN}
  60. {$setc TARGET_RT_BIG_ENDIAN := FALSE}
  61. {$setc TARGET_RT_LITTLE_ENDIAN := TRUE}
  62. {$elsec}
  63. {$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.}
  64. {$endc}
  65. {$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE}
  66. {$setc CALL_NOT_IN_CARBON := FALSE}
  67. {$setc OLDROUTINENAMES := FALSE}
  68. {$setc OPAQUE_TOOLBOX_STRUCTS := TRUE}
  69. {$setc OPAQUE_UPP_TYPES := TRUE}
  70. {$setc OTCARBONAPPLICATION := TRUE}
  71. {$setc OTKERNEL := FALSE}
  72. {$setc PM_USE_SESSION_APIS := TRUE}
  73. {$setc TARGET_API_MAC_CARBON := TRUE}
  74. {$setc TARGET_API_MAC_OS8 := FALSE}
  75. {$setc TARGET_API_MAC_OSX := TRUE}
  76. {$setc TARGET_CARBON := TRUE}
  77. {$setc TARGET_CPU_68K := FALSE}
  78. {$setc TARGET_CPU_MIPS := FALSE}
  79. {$setc TARGET_CPU_SPARC := FALSE}
  80. {$setc TARGET_OS_MAC := TRUE}
  81. {$setc TARGET_OS_UNIX := FALSE}
  82. {$setc TARGET_OS_WIN32 := FALSE}
  83. {$setc TARGET_RT_MAC_68881 := FALSE}
  84. {$setc TARGET_RT_MAC_CFM := FALSE}
  85. {$setc TARGET_RT_MAC_MACHO := TRUE}
  86. {$setc TYPED_FUNCTION_POINTERS := TRUE}
  87. {$setc TYPE_BOOL := FALSE}
  88. {$setc TYPE_EXTENDED := FALSE}
  89. {$setc TYPE_LONGLONG := TRUE}
  90. uses MacTypes,CMTypes,CGDirectDisplay,Components,MixedMode,QuickdrawText,CGContext;
  91. {$ALIGN MAC68K}
  92. const
  93. invalColReq = -1; { invalid color table request }
  94. { transfer modes }
  95. srcCopy = 0; { the 16 transfer modes }
  96. srcOr = 1;
  97. srcXor = 2;
  98. srcBic = 3;
  99. notSrcCopy = 4;
  100. notSrcOr = 5;
  101. notSrcXor = 6;
  102. notSrcBic = 7;
  103. patCopy = 8;
  104. patOr = 9;
  105. patXor = 10;
  106. patBic = 11;
  107. notPatCopy = 12;
  108. notPatOr = 13;
  109. notPatXor = 14;
  110. notPatBic = 15; { Special Text Transfer Mode }
  111. grayishTextOr = 49;
  112. hilitetransfermode = 50;
  113. hilite = 50; { Arithmetic transfer modes }
  114. blend = 32;
  115. addPin = 33;
  116. addOver = 34;
  117. subPin = 35;
  118. addMax = 37;
  119. adMax = 37;
  120. subOver = 38;
  121. adMin = 39;
  122. ditherCopy = 64; { Transparent mode constant }
  123. transparent = 36;
  124. italicBit = 1;
  125. ulineBit = 2;
  126. outlineBit = 3;
  127. shadowBit = 4;
  128. condenseBit = 5;
  129. extendBit = 6;
  130. { QuickDraw color separation constants }
  131. normalBit = 0; { normal screen mapping }
  132. inverseBit = 1; { inverse screen mapping }
  133. redBit = 4; { RGB additive mapping }
  134. greenBit = 3;
  135. blueBit = 2;
  136. cyanBit = 8; { CMYBk subtractive mapping }
  137. magentaBit = 7;
  138. yellowBit = 6;
  139. blackBit = 5;
  140. blackColor = 33; { colors expressed in these mappings }
  141. whiteColor = 30;
  142. redColor = 205;
  143. greenColor = 341;
  144. blueColor = 409;
  145. cyanColor = 273;
  146. magentaColor = 137;
  147. yellowColor = 69;
  148. picLParen = 0; { standard picture comments }
  149. picRParen = 1;
  150. clutType = 0; { 0 if lookup table }
  151. fixedType = 1; { 1 if fixed table }
  152. directType = 2; { 2 if direct values }
  153. gdDevType = 0; { 0 = monochrome 1 = color }
  154. interlacedDevice = 2; { 1 if single pixel lines look bad }
  155. hwMirroredDevice = 4; { 1 if device is HW mirrored }
  156. roundedDevice = 5; { 1 if device has been ÒroundedÓ into the GrayRgn }
  157. hasAuxMenuBar = 6; { 1 if device has an aux menu bar on it }
  158. burstDevice = 7;
  159. ext32Device = 8;
  160. ramInit = 10; { 1 if initialized from 'scrn' resource }
  161. mainScreen = 11; { 1 if main screen }
  162. allInit = 12; { 1 if all devices initialized }
  163. screenDevice = 13; { 1 if screen device [not used] }
  164. noDriver = 14; { 1 if no driver for this GDevice }
  165. screenActive = 15; { 1 if in use }
  166. hiliteBit = 7; { flag bit in LMGet/SetHiliteMode }
  167. pHiliteBit = 0; { flag bit in LMGet/SetHiliteMode when used with BitClr }
  168. defQDColors = 127; { resource ID of clut for default QDColors }
  169. { pixel type }
  170. RGBDirect = 16; { 16 & 32 bits/pixel pixelType value }
  171. { pmVersion values }
  172. baseAddr32 = 4; { pixmap base address is 32-bit address }
  173. sysPatListID = 0;
  174. iBeamCursor = 1;
  175. crossCursor = 2;
  176. plusCursor = 3;
  177. watchCursor = 4;
  178. kQDGrafVerbFrame = 0;
  179. kQDGrafVerbPaint = 1;
  180. kQDGrafVerbErase = 2;
  181. kQDGrafVerbInvert = 3;
  182. kQDGrafVerbFill = 4;
  183. {$ifc OLDROUTINENAMES}
  184. frame = 0;
  185. paint = 1;
  186. erase = 2;
  187. invert = 3;
  188. fill = 4;
  189. {$endc} {OLDROUTINENAMES}
  190. type
  191. GrafVerb = SInt8;
  192. const
  193. chunky = 0;
  194. chunkyPlanar = 1;
  195. planar = 2;
  196. type
  197. PixelType = SInt8;
  198. Bits16 = array [0..15] of SInt16;
  199. { ************** IMPORTANT NOTE REGARDING Pattern **************************************
  200. Patterns were originally defined as:
  201. C: typedef unsigned char Pattern[8];
  202. Pascal: Pattern = packed array [0..7] of 0..255;
  203. The old array definition of Pattern would cause 68000 based CPU's to crash in certain circum-
  204. stances. The new struct definition is safe, but may require source code changes to compile.
  205. ******************************************************************************************** }
  206. PatternPtr = ^Pattern;
  207. Pattern = record
  208. pat: packed array [0..7] of UInt8;
  209. end;
  210. PatPtr = ^Pattern;
  211. PatHandle = ^PatPtr;
  212. QDByte = SignedByte;
  213. QDPtr = Ptr;
  214. QDHandle = Handle;
  215. QDErr = SInt16;
  216. const
  217. singleDevicesBit = 0;
  218. dontMatchSeedsBit = 1;
  219. allDevicesBit = 2;
  220. singleDevices = $01;
  221. dontMatchSeeds = $02;
  222. allDevices = $04;
  223. type
  224. DeviceLoopFlags = UInt32;
  225. {
  226. PrinterStatusOpcode. For communication with downloading and printing services.
  227. }
  228. PrinterStatusOpcode = SInt32;
  229. const
  230. kPrinterFontStatus = 0;
  231. kPrinterScalingStatus = 1;
  232. type
  233. PrinterFontStatusPtr = ^PrinterFontStatus;
  234. PrinterFontStatus = record
  235. oResult: SInt32;
  236. iFondID: SInt16;
  237. iStyle: SInt8;
  238. end;
  239. PrinterScalingStatusPtr = ^PrinterScalingStatus;
  240. PrinterScalingStatus = record
  241. oScalingFactors: Point;
  242. end;
  243. BitMapPtr = ^BitMap;
  244. BitMap = record
  245. baseAddr: Ptr;
  246. rowBytes: SInt16;
  247. bounds: Rect;
  248. end;
  249. BitMapHandle = ^BitMapPtr;
  250. CursorPtr = ^Cursor;
  251. Cursor = record
  252. data: Bits16;
  253. mask: Bits16;
  254. hotSpot: Point;
  255. end;
  256. CursPtr = ^Cursor;
  257. CursHandle = ^CursPtr;
  258. PenStatePtr = ^PenState;
  259. PenState = record
  260. pnLoc: Point;
  261. pnSize: Point;
  262. pnMode: SInt16;
  263. pnPat: Pattern;
  264. end;
  265. {$ifc NOT OPAQUE_TOOLBOX_STRUCTS}
  266. MacRegionPtr = ^MacRegion;
  267. MacRegion = record
  268. rgnSize: UInt16; { size in bytes; don't rely on it }
  269. rgnBBox: Rect; { enclosing rectangle; in Carbon use GetRegionBounds }
  270. end;
  271. {
  272. The type name "Region" has a name space collision on Win32.
  273. Use MacRegion to be cross-platfrom safe.
  274. }
  275. {$ifc TARGET_OS_MAC}
  276. Region = MacRegion;
  277. RegionPtr = ^Region;
  278. {$endc} {TARGET_OS_MAC}
  279. RgnPtr = ^MacRegion;
  280. RgnHandle = ^RgnPtr;
  281. {$elsec}
  282. RgnHandle = ^SInt32; { an opaque 32-bit type }
  283. RgnHandlePtr = ^RgnHandle; { when a var xx:RgnHandle parameter can be nil, it is changed to xx: RgnHandlePtr }
  284. {$endc}
  285. PicturePtr = ^Picture;
  286. Picture = record
  287. picSize: SInt16;
  288. picFrame: Rect;
  289. end;
  290. PicPtr = ^Picture;
  291. PicHandle = ^PicPtr;
  292. MacPolygonPtr = ^MacPolygon;
  293. MacPolygon = record
  294. polySize: SInt16;
  295. polyBBox: Rect;
  296. polyPoints: array [0..0] of Point;
  297. end;
  298. {
  299. The type name "Polygon" has a name space collision on Win32.
  300. Use MacPolygon to be cross-platfrom safe.
  301. }
  302. {$ifc TARGET_OS_MAC}
  303. Polygon = MacPolygon;
  304. PolygonPtr = ^Polygon;
  305. {$endc} {TARGET_OS_MAC}
  306. PolyPtr = ^MacPolygon;
  307. PolyHandle = ^PolyPtr;
  308. {$ifc TYPED_FUNCTION_POINTERS}
  309. QDTextProcPtr = procedure(byteCount: SInt16; textBuf: UnivPtr; numer: Point; denom: Point);
  310. {$elsec}
  311. QDTextProcPtr = ProcPtr;
  312. {$endc}
  313. {$ifc TYPED_FUNCTION_POINTERS}
  314. QDLineProcPtr = procedure(newPt: Point);
  315. {$elsec}
  316. QDLineProcPtr = ProcPtr;
  317. {$endc}
  318. {$ifc TYPED_FUNCTION_POINTERS}
  319. QDRectProcPtr = procedure(verb: GrafVerb; const (*var*) r: Rect);
  320. {$elsec}
  321. QDRectProcPtr = ProcPtr;
  322. {$endc}
  323. {$ifc TYPED_FUNCTION_POINTERS}
  324. QDRRectProcPtr = procedure(verb: GrafVerb; const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16);
  325. {$elsec}
  326. QDRRectProcPtr = ProcPtr;
  327. {$endc}
  328. {$ifc TYPED_FUNCTION_POINTERS}
  329. QDOvalProcPtr = procedure(verb: GrafVerb; const (*var*) r: Rect);
  330. {$elsec}
  331. QDOvalProcPtr = ProcPtr;
  332. {$endc}
  333. {$ifc TYPED_FUNCTION_POINTERS}
  334. QDArcProcPtr = procedure(verb: GrafVerb; const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16);
  335. {$elsec}
  336. QDArcProcPtr = ProcPtr;
  337. {$endc}
  338. {$ifc TYPED_FUNCTION_POINTERS}
  339. QDPolyProcPtr = procedure(verb: GrafVerb; poly: PolyHandle);
  340. {$elsec}
  341. QDPolyProcPtr = ProcPtr;
  342. {$endc}
  343. {$ifc TYPED_FUNCTION_POINTERS}
  344. QDRgnProcPtr = procedure(verb: GrafVerb; rgn: RgnHandle);
  345. {$elsec}
  346. QDRgnProcPtr = ProcPtr;
  347. {$endc}
  348. {$ifc TYPED_FUNCTION_POINTERS}
  349. QDBitsProcPtr = procedure(const (*var*) srcBits: BitMap; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect; mode: SInt16; maskRgn: RgnHandle);
  350. {$elsec}
  351. QDBitsProcPtr = ProcPtr;
  352. {$endc}
  353. {$ifc TYPED_FUNCTION_POINTERS}
  354. QDCommentProcPtr = procedure(kind: SInt16; dataSize: SInt16; dataHandle: Handle);
  355. {$elsec}
  356. QDCommentProcPtr = ProcPtr;
  357. {$endc}
  358. {$ifc TYPED_FUNCTION_POINTERS}
  359. QDTxMeasProcPtr = function(byteCount: SInt16; textAddr: UnivPtr; var numer: Point; var denom: Point; var info: FontInfo): SInt16;
  360. {$elsec}
  361. QDTxMeasProcPtr = ProcPtr;
  362. {$endc}
  363. {$ifc TYPED_FUNCTION_POINTERS}
  364. QDGetPicProcPtr = procedure(dataPtr: UnivPtr; byteCount: SInt16);
  365. {$elsec}
  366. QDGetPicProcPtr = ProcPtr;
  367. {$endc}
  368. {$ifc TYPED_FUNCTION_POINTERS}
  369. QDPutPicProcPtr = procedure(dataPtr: UnivPtr; byteCount: SInt16);
  370. {$elsec}
  371. QDPutPicProcPtr = ProcPtr;
  372. {$endc}
  373. {$ifc TYPED_FUNCTION_POINTERS}
  374. QDOpcodeProcPtr = procedure(const (*var*) fromRect: Rect; const (*var*) toRect: Rect; opcode: UInt16; version: SInt16);
  375. {$elsec}
  376. QDOpcodeProcPtr = ProcPtr;
  377. {$endc}
  378. {$ifc TYPED_FUNCTION_POINTERS}
  379. QDStdGlyphsProcPtr = function(dataStream: UnivPtr; size: ByteCount): OSStatus;
  380. {$elsec}
  381. QDStdGlyphsProcPtr = ProcPtr;
  382. {$endc}
  383. {$ifc TYPED_FUNCTION_POINTERS}
  384. QDJShieldCursorProcPtr = procedure(left: SInt16; top: SInt16; right: SInt16; bottom: SInt16);
  385. {$elsec}
  386. QDJShieldCursorProcPtr = ProcPtr;
  387. {$endc}
  388. {$ifc OPAQUE_UPP_TYPES}
  389. QDTextUPP = ^SInt32; { an opaque UPP }
  390. {$elsec}
  391. QDTextUPP = UniversalProcPtr;
  392. {$endc}
  393. {$ifc OPAQUE_UPP_TYPES}
  394. QDLineUPP = ^SInt32; { an opaque UPP }
  395. {$elsec}
  396. QDLineUPP = UniversalProcPtr;
  397. {$endc}
  398. {$ifc OPAQUE_UPP_TYPES}
  399. QDRectUPP = ^SInt32; { an opaque UPP }
  400. {$elsec}
  401. QDRectUPP = UniversalProcPtr;
  402. {$endc}
  403. {$ifc OPAQUE_UPP_TYPES}
  404. QDRRectUPP = ^SInt32; { an opaque UPP }
  405. {$elsec}
  406. QDRRectUPP = UniversalProcPtr;
  407. {$endc}
  408. {$ifc OPAQUE_UPP_TYPES}
  409. QDOvalUPP = ^SInt32; { an opaque UPP }
  410. {$elsec}
  411. QDOvalUPP = UniversalProcPtr;
  412. {$endc}
  413. {$ifc OPAQUE_UPP_TYPES}
  414. QDArcUPP = ^SInt32; { an opaque UPP }
  415. {$elsec}
  416. QDArcUPP = UniversalProcPtr;
  417. {$endc}
  418. {$ifc OPAQUE_UPP_TYPES}
  419. QDPolyUPP = ^SInt32; { an opaque UPP }
  420. {$elsec}
  421. QDPolyUPP = UniversalProcPtr;
  422. {$endc}
  423. {$ifc OPAQUE_UPP_TYPES}
  424. QDRgnUPP = ^SInt32; { an opaque UPP }
  425. {$elsec}
  426. QDRgnUPP = UniversalProcPtr;
  427. {$endc}
  428. {$ifc OPAQUE_UPP_TYPES}
  429. QDBitsUPP = ^SInt32; { an opaque UPP }
  430. {$elsec}
  431. QDBitsUPP = UniversalProcPtr;
  432. {$endc}
  433. {$ifc OPAQUE_UPP_TYPES}
  434. QDCommentUPP = ^SInt32; { an opaque UPP }
  435. {$elsec}
  436. QDCommentUPP = UniversalProcPtr;
  437. {$endc}
  438. {$ifc OPAQUE_UPP_TYPES}
  439. QDTxMeasUPP = ^SInt32; { an opaque UPP }
  440. {$elsec}
  441. QDTxMeasUPP = UniversalProcPtr;
  442. {$endc}
  443. {$ifc OPAQUE_UPP_TYPES}
  444. QDGetPicUPP = ^SInt32; { an opaque UPP }
  445. {$elsec}
  446. QDGetPicUPP = UniversalProcPtr;
  447. {$endc}
  448. {$ifc OPAQUE_UPP_TYPES}
  449. QDPutPicUPP = ^SInt32; { an opaque UPP }
  450. {$elsec}
  451. QDPutPicUPP = UniversalProcPtr;
  452. {$endc}
  453. {$ifc OPAQUE_UPP_TYPES}
  454. QDOpcodeUPP = ^SInt32; { an opaque UPP }
  455. {$elsec}
  456. QDOpcodeUPP = UniversalProcPtr;
  457. {$endc}
  458. {$ifc OPAQUE_UPP_TYPES}
  459. QDStdGlyphsUPP = ^SInt32; { an opaque UPP }
  460. {$elsec}
  461. QDStdGlyphsUPP = UniversalProcPtr;
  462. {$endc}
  463. {$ifc OPAQUE_UPP_TYPES}
  464. QDJShieldCursorUPP = ^SInt32; { an opaque UPP }
  465. {$elsec}
  466. QDJShieldCursorUPP = UniversalProcPtr;
  467. {$endc}
  468. QDProcsPtr = ^QDProcs;
  469. QDProcs = record
  470. textProc: QDTextUPP;
  471. lineProc: QDLineUPP;
  472. rectProc: QDRectUPP;
  473. rRectProc: QDRRectUPP;
  474. ovalProc: QDOvalUPP;
  475. arcProc: QDArcUPP;
  476. polyProc: QDPolyUPP;
  477. rgnProc: QDRgnUPP;
  478. bitsProc: QDBitsUPP;
  479. commentProc: QDCommentUPP;
  480. txMeasProc: QDTxMeasUPP;
  481. getPicProc: QDGetPicUPP;
  482. putPicProc: QDPutPicUPP;
  483. end;
  484. const
  485. uppQDTextProcInfo = $00003F80;
  486. uppQDLineProcInfo = $000000C0;
  487. uppQDRectProcInfo = $00000340;
  488. uppQDRRectProcInfo = $00002B40;
  489. uppQDOvalProcInfo = $00000340;
  490. uppQDArcProcInfo = $00002B40;
  491. uppQDPolyProcInfo = $00000340;
  492. uppQDRgnProcInfo = $00000340;
  493. uppQDBitsProcInfo = $0000EFC0;
  494. uppQDCommentProcInfo = $00000E80;
  495. uppQDTxMeasProcInfo = $0000FFA0;
  496. uppQDGetPicProcInfo = $000002C0;
  497. uppQDPutPicProcInfo = $000002C0;
  498. uppQDOpcodeProcInfo = $00002BC0;
  499. uppQDStdGlyphsProcInfo = $000003F1;
  500. uppQDJShieldCursorProcInfo = $00002A80;
  501. {
  502. * NewQDTextUPP()
  503. *
  504. * Availability:
  505. * Non-Carbon CFM: available as macro/inline
  506. * CarbonLib: in CarbonLib 1.0 and later
  507. * Mac OS X: in version 10.0 and later
  508. }
  509. function NewQDTextUPP(userRoutine: QDTextProcPtr): QDTextUPP; external name '_NewQDTextUPP'; { old name was NewQDTextProc }
  510. {
  511. * NewQDLineUPP()
  512. *
  513. * Availability:
  514. * Non-Carbon CFM: available as macro/inline
  515. * CarbonLib: in CarbonLib 1.0 and later
  516. * Mac OS X: in version 10.0 and later
  517. }
  518. function NewQDLineUPP(userRoutine: QDLineProcPtr): QDLineUPP; external name '_NewQDLineUPP'; { old name was NewQDLineProc }
  519. {
  520. * NewQDRectUPP()
  521. *
  522. * Availability:
  523. * Non-Carbon CFM: available as macro/inline
  524. * CarbonLib: in CarbonLib 1.0 and later
  525. * Mac OS X: in version 10.0 and later
  526. }
  527. function NewQDRectUPP(userRoutine: QDRectProcPtr): QDRectUPP; external name '_NewQDRectUPP'; { old name was NewQDRectProc }
  528. {
  529. * NewQDRRectUPP()
  530. *
  531. * Availability:
  532. * Non-Carbon CFM: available as macro/inline
  533. * CarbonLib: in CarbonLib 1.0 and later
  534. * Mac OS X: in version 10.0 and later
  535. }
  536. function NewQDRRectUPP(userRoutine: QDRRectProcPtr): QDRRectUPP; external name '_NewQDRRectUPP'; { old name was NewQDRRectProc }
  537. {
  538. * NewQDOvalUPP()
  539. *
  540. * Availability:
  541. * Non-Carbon CFM: available as macro/inline
  542. * CarbonLib: in CarbonLib 1.0 and later
  543. * Mac OS X: in version 10.0 and later
  544. }
  545. function NewQDOvalUPP(userRoutine: QDOvalProcPtr): QDOvalUPP; external name '_NewQDOvalUPP'; { old name was NewQDOvalProc }
  546. {
  547. * NewQDArcUPP()
  548. *
  549. * Availability:
  550. * Non-Carbon CFM: available as macro/inline
  551. * CarbonLib: in CarbonLib 1.0 and later
  552. * Mac OS X: in version 10.0 and later
  553. }
  554. function NewQDArcUPP(userRoutine: QDArcProcPtr): QDArcUPP; external name '_NewQDArcUPP'; { old name was NewQDArcProc }
  555. {
  556. * NewQDPolyUPP()
  557. *
  558. * Availability:
  559. * Non-Carbon CFM: available as macro/inline
  560. * CarbonLib: in CarbonLib 1.0 and later
  561. * Mac OS X: in version 10.0 and later
  562. }
  563. function NewQDPolyUPP(userRoutine: QDPolyProcPtr): QDPolyUPP; external name '_NewQDPolyUPP'; { old name was NewQDPolyProc }
  564. {
  565. * NewQDRgnUPP()
  566. *
  567. * Availability:
  568. * Non-Carbon CFM: available as macro/inline
  569. * CarbonLib: in CarbonLib 1.0 and later
  570. * Mac OS X: in version 10.0 and later
  571. }
  572. function NewQDRgnUPP(userRoutine: QDRgnProcPtr): QDRgnUPP; external name '_NewQDRgnUPP'; { old name was NewQDRgnProc }
  573. {
  574. * NewQDBitsUPP()
  575. *
  576. * Availability:
  577. * Non-Carbon CFM: available as macro/inline
  578. * CarbonLib: in CarbonLib 1.0 and later
  579. * Mac OS X: in version 10.0 and later
  580. }
  581. function NewQDBitsUPP(userRoutine: QDBitsProcPtr): QDBitsUPP; external name '_NewQDBitsUPP'; { old name was NewQDBitsProc }
  582. {
  583. * NewQDCommentUPP()
  584. *
  585. * Availability:
  586. * Non-Carbon CFM: available as macro/inline
  587. * CarbonLib: in CarbonLib 1.0 and later
  588. * Mac OS X: in version 10.0 and later
  589. }
  590. function NewQDCommentUPP(userRoutine: QDCommentProcPtr): QDCommentUPP; external name '_NewQDCommentUPP'; { old name was NewQDCommentProc }
  591. {
  592. * NewQDTxMeasUPP()
  593. *
  594. * Availability:
  595. * Non-Carbon CFM: available as macro/inline
  596. * CarbonLib: in CarbonLib 1.0 and later
  597. * Mac OS X: in version 10.0 and later
  598. }
  599. function NewQDTxMeasUPP(userRoutine: QDTxMeasProcPtr): QDTxMeasUPP; external name '_NewQDTxMeasUPP'; { old name was NewQDTxMeasProc }
  600. {
  601. * NewQDGetPicUPP()
  602. *
  603. * Availability:
  604. * Non-Carbon CFM: available as macro/inline
  605. * CarbonLib: in CarbonLib 1.0 and later
  606. * Mac OS X: in version 10.0 and later
  607. }
  608. function NewQDGetPicUPP(userRoutine: QDGetPicProcPtr): QDGetPicUPP; external name '_NewQDGetPicUPP'; { old name was NewQDGetPicProc }
  609. {
  610. * NewQDPutPicUPP()
  611. *
  612. * Availability:
  613. * Non-Carbon CFM: available as macro/inline
  614. * CarbonLib: in CarbonLib 1.0 and later
  615. * Mac OS X: in version 10.0 and later
  616. }
  617. function NewQDPutPicUPP(userRoutine: QDPutPicProcPtr): QDPutPicUPP; external name '_NewQDPutPicUPP'; { old name was NewQDPutPicProc }
  618. {
  619. * NewQDOpcodeUPP()
  620. *
  621. * Availability:
  622. * Non-Carbon CFM: available as macro/inline
  623. * CarbonLib: in CarbonLib 1.0 and later
  624. * Mac OS X: in version 10.0 and later
  625. }
  626. function NewQDOpcodeUPP(userRoutine: QDOpcodeProcPtr): QDOpcodeUPP; external name '_NewQDOpcodeUPP'; { old name was NewQDOpcodeProc }
  627. {
  628. * NewQDStdGlyphsUPP()
  629. *
  630. * Availability:
  631. * Non-Carbon CFM: available as macro/inline
  632. * CarbonLib: in CarbonLib 1.0 and later
  633. * Mac OS X: in version 10.0 and later
  634. }
  635. function NewQDStdGlyphsUPP(userRoutine: QDStdGlyphsProcPtr): QDStdGlyphsUPP; external name '_NewQDStdGlyphsUPP'; { old name was NewQDStdGlyphsProc }
  636. {
  637. * NewQDJShieldCursorUPP()
  638. *
  639. * Availability:
  640. * Non-Carbon CFM: available as macro/inline
  641. * CarbonLib: in CarbonLib 1.0 and later
  642. * Mac OS X: in version 10.0 and later
  643. }
  644. function NewQDJShieldCursorUPP(userRoutine: QDJShieldCursorProcPtr): QDJShieldCursorUPP; external name '_NewQDJShieldCursorUPP'; { old name was NewQDJShieldCursorProc }
  645. {
  646. * DisposeQDTextUPP()
  647. *
  648. * Availability:
  649. * Non-Carbon CFM: available as macro/inline
  650. * CarbonLib: in CarbonLib 1.0 and later
  651. * Mac OS X: in version 10.0 and later
  652. }
  653. procedure DisposeQDTextUPP(userUPP: QDTextUPP); external name '_DisposeQDTextUPP';
  654. {
  655. * DisposeQDLineUPP()
  656. *
  657. * Availability:
  658. * Non-Carbon CFM: available as macro/inline
  659. * CarbonLib: in CarbonLib 1.0 and later
  660. * Mac OS X: in version 10.0 and later
  661. }
  662. procedure DisposeQDLineUPP(userUPP: QDLineUPP); external name '_DisposeQDLineUPP';
  663. {
  664. * DisposeQDRectUPP()
  665. *
  666. * Availability:
  667. * Non-Carbon CFM: available as macro/inline
  668. * CarbonLib: in CarbonLib 1.0 and later
  669. * Mac OS X: in version 10.0 and later
  670. }
  671. procedure DisposeQDRectUPP(userUPP: QDRectUPP); external name '_DisposeQDRectUPP';
  672. {
  673. * DisposeQDRRectUPP()
  674. *
  675. * Availability:
  676. * Non-Carbon CFM: available as macro/inline
  677. * CarbonLib: in CarbonLib 1.0 and later
  678. * Mac OS X: in version 10.0 and later
  679. }
  680. procedure DisposeQDRRectUPP(userUPP: QDRRectUPP); external name '_DisposeQDRRectUPP';
  681. {
  682. * DisposeQDOvalUPP()
  683. *
  684. * Availability:
  685. * Non-Carbon CFM: available as macro/inline
  686. * CarbonLib: in CarbonLib 1.0 and later
  687. * Mac OS X: in version 10.0 and later
  688. }
  689. procedure DisposeQDOvalUPP(userUPP: QDOvalUPP); external name '_DisposeQDOvalUPP';
  690. {
  691. * DisposeQDArcUPP()
  692. *
  693. * Availability:
  694. * Non-Carbon CFM: available as macro/inline
  695. * CarbonLib: in CarbonLib 1.0 and later
  696. * Mac OS X: in version 10.0 and later
  697. }
  698. procedure DisposeQDArcUPP(userUPP: QDArcUPP); external name '_DisposeQDArcUPP';
  699. {
  700. * DisposeQDPolyUPP()
  701. *
  702. * Availability:
  703. * Non-Carbon CFM: available as macro/inline
  704. * CarbonLib: in CarbonLib 1.0 and later
  705. * Mac OS X: in version 10.0 and later
  706. }
  707. procedure DisposeQDPolyUPP(userUPP: QDPolyUPP); external name '_DisposeQDPolyUPP';
  708. {
  709. * DisposeQDRgnUPP()
  710. *
  711. * Availability:
  712. * Non-Carbon CFM: available as macro/inline
  713. * CarbonLib: in CarbonLib 1.0 and later
  714. * Mac OS X: in version 10.0 and later
  715. }
  716. procedure DisposeQDRgnUPP(userUPP: QDRgnUPP); external name '_DisposeQDRgnUPP';
  717. {
  718. * DisposeQDBitsUPP()
  719. *
  720. * Availability:
  721. * Non-Carbon CFM: available as macro/inline
  722. * CarbonLib: in CarbonLib 1.0 and later
  723. * Mac OS X: in version 10.0 and later
  724. }
  725. procedure DisposeQDBitsUPP(userUPP: QDBitsUPP); external name '_DisposeQDBitsUPP';
  726. {
  727. * DisposeQDCommentUPP()
  728. *
  729. * Availability:
  730. * Non-Carbon CFM: available as macro/inline
  731. * CarbonLib: in CarbonLib 1.0 and later
  732. * Mac OS X: in version 10.0 and later
  733. }
  734. procedure DisposeQDCommentUPP(userUPP: QDCommentUPP); external name '_DisposeQDCommentUPP';
  735. {
  736. * DisposeQDTxMeasUPP()
  737. *
  738. * Availability:
  739. * Non-Carbon CFM: available as macro/inline
  740. * CarbonLib: in CarbonLib 1.0 and later
  741. * Mac OS X: in version 10.0 and later
  742. }
  743. procedure DisposeQDTxMeasUPP(userUPP: QDTxMeasUPP); external name '_DisposeQDTxMeasUPP';
  744. {
  745. * DisposeQDGetPicUPP()
  746. *
  747. * Availability:
  748. * Non-Carbon CFM: available as macro/inline
  749. * CarbonLib: in CarbonLib 1.0 and later
  750. * Mac OS X: in version 10.0 and later
  751. }
  752. procedure DisposeQDGetPicUPP(userUPP: QDGetPicUPP); external name '_DisposeQDGetPicUPP';
  753. {
  754. * DisposeQDPutPicUPP()
  755. *
  756. * Availability:
  757. * Non-Carbon CFM: available as macro/inline
  758. * CarbonLib: in CarbonLib 1.0 and later
  759. * Mac OS X: in version 10.0 and later
  760. }
  761. procedure DisposeQDPutPicUPP(userUPP: QDPutPicUPP); external name '_DisposeQDPutPicUPP';
  762. {
  763. * DisposeQDOpcodeUPP()
  764. *
  765. * Availability:
  766. * Non-Carbon CFM: available as macro/inline
  767. * CarbonLib: in CarbonLib 1.0 and later
  768. * Mac OS X: in version 10.0 and later
  769. }
  770. procedure DisposeQDOpcodeUPP(userUPP: QDOpcodeUPP); external name '_DisposeQDOpcodeUPP';
  771. {
  772. * DisposeQDStdGlyphsUPP()
  773. *
  774. * Availability:
  775. * Non-Carbon CFM: available as macro/inline
  776. * CarbonLib: in CarbonLib 1.0 and later
  777. * Mac OS X: in version 10.0 and later
  778. }
  779. procedure DisposeQDStdGlyphsUPP(userUPP: QDStdGlyphsUPP); external name '_DisposeQDStdGlyphsUPP';
  780. {
  781. * DisposeQDJShieldCursorUPP()
  782. *
  783. * Availability:
  784. * Non-Carbon CFM: available as macro/inline
  785. * CarbonLib: in CarbonLib 1.0 and later
  786. * Mac OS X: in version 10.0 and later
  787. }
  788. procedure DisposeQDJShieldCursorUPP(userUPP: QDJShieldCursorUPP); external name '_DisposeQDJShieldCursorUPP';
  789. {
  790. * InvokeQDTextUPP()
  791. *
  792. * Availability:
  793. * Non-Carbon CFM: available as macro/inline
  794. * CarbonLib: in CarbonLib 1.0 and later
  795. * Mac OS X: in version 10.0 and later
  796. }
  797. procedure InvokeQDTextUPP(byteCount: SInt16; textBuf: UnivPtr; numer: Point; denom: Point; userRoutine: QDTextUPP); external name '_InvokeQDTextUPP'; { old name was CallQDTextProc }
  798. {
  799. * InvokeQDLineUPP()
  800. *
  801. * Availability:
  802. * Non-Carbon CFM: available as macro/inline
  803. * CarbonLib: in CarbonLib 1.0 and later
  804. * Mac OS X: in version 10.0 and later
  805. }
  806. procedure InvokeQDLineUPP(newPt: Point; userRoutine: QDLineUPP); external name '_InvokeQDLineUPP'; { old name was CallQDLineProc }
  807. {
  808. * InvokeQDRectUPP()
  809. *
  810. * Availability:
  811. * Non-Carbon CFM: available as macro/inline
  812. * CarbonLib: in CarbonLib 1.0 and later
  813. * Mac OS X: in version 10.0 and later
  814. }
  815. procedure InvokeQDRectUPP(verb: GrafVerb; const (*var*) r: Rect; userRoutine: QDRectUPP); external name '_InvokeQDRectUPP'; { old name was CallQDRectProc }
  816. {
  817. * InvokeQDRRectUPP()
  818. *
  819. * Availability:
  820. * Non-Carbon CFM: available as macro/inline
  821. * CarbonLib: in CarbonLib 1.0 and later
  822. * Mac OS X: in version 10.0 and later
  823. }
  824. procedure InvokeQDRRectUPP(verb: GrafVerb; const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16; userRoutine: QDRRectUPP); external name '_InvokeQDRRectUPP'; { old name was CallQDRRectProc }
  825. {
  826. * InvokeQDOvalUPP()
  827. *
  828. * Availability:
  829. * Non-Carbon CFM: available as macro/inline
  830. * CarbonLib: in CarbonLib 1.0 and later
  831. * Mac OS X: in version 10.0 and later
  832. }
  833. procedure InvokeQDOvalUPP(verb: GrafVerb; const (*var*) r: Rect; userRoutine: QDOvalUPP); external name '_InvokeQDOvalUPP'; { old name was CallQDOvalProc }
  834. {
  835. * InvokeQDArcUPP()
  836. *
  837. * Availability:
  838. * Non-Carbon CFM: available as macro/inline
  839. * CarbonLib: in CarbonLib 1.0 and later
  840. * Mac OS X: in version 10.0 and later
  841. }
  842. procedure InvokeQDArcUPP(verb: GrafVerb; const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16; userRoutine: QDArcUPP); external name '_InvokeQDArcUPP'; { old name was CallQDArcProc }
  843. {
  844. * InvokeQDPolyUPP()
  845. *
  846. * Availability:
  847. * Non-Carbon CFM: available as macro/inline
  848. * CarbonLib: in CarbonLib 1.0 and later
  849. * Mac OS X: in version 10.0 and later
  850. }
  851. procedure InvokeQDPolyUPP(verb: GrafVerb; poly: PolyHandle; userRoutine: QDPolyUPP); external name '_InvokeQDPolyUPP'; { old name was CallQDPolyProc }
  852. {
  853. * InvokeQDRgnUPP()
  854. *
  855. * Availability:
  856. * Non-Carbon CFM: available as macro/inline
  857. * CarbonLib: in CarbonLib 1.0 and later
  858. * Mac OS X: in version 10.0 and later
  859. }
  860. procedure InvokeQDRgnUPP(verb: GrafVerb; rgn: RgnHandle; userRoutine: QDRgnUPP); external name '_InvokeQDRgnUPP'; { old name was CallQDRgnProc }
  861. {
  862. * InvokeQDBitsUPP()
  863. *
  864. * Availability:
  865. * Non-Carbon CFM: available as macro/inline
  866. * CarbonLib: in CarbonLib 1.0 and later
  867. * Mac OS X: in version 10.0 and later
  868. }
  869. procedure InvokeQDBitsUPP(const (*var*) srcBits: BitMap; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect; mode: SInt16; maskRgn: RgnHandle; userRoutine: QDBitsUPP); external name '_InvokeQDBitsUPP'; { old name was CallQDBitsProc }
  870. {
  871. * InvokeQDCommentUPP()
  872. *
  873. * Availability:
  874. * Non-Carbon CFM: available as macro/inline
  875. * CarbonLib: in CarbonLib 1.0 and later
  876. * Mac OS X: in version 10.0 and later
  877. }
  878. procedure InvokeQDCommentUPP(kind: SInt16; dataSize: SInt16; dataHandle: Handle; userRoutine: QDCommentUPP); external name '_InvokeQDCommentUPP'; { old name was CallQDCommentProc }
  879. {
  880. * InvokeQDTxMeasUPP()
  881. *
  882. * Availability:
  883. * Non-Carbon CFM: available as macro/inline
  884. * CarbonLib: in CarbonLib 1.0 and later
  885. * Mac OS X: in version 10.0 and later
  886. }
  887. function InvokeQDTxMeasUPP(byteCount: SInt16; textAddr: UnivPtr; var numer: Point; var denom: Point; var info: FontInfo; userRoutine: QDTxMeasUPP): SInt16; external name '_InvokeQDTxMeasUPP'; { old name was CallQDTxMeasProc }
  888. {
  889. * InvokeQDGetPicUPP()
  890. *
  891. * Availability:
  892. * Non-Carbon CFM: available as macro/inline
  893. * CarbonLib: in CarbonLib 1.0 and later
  894. * Mac OS X: in version 10.0 and later
  895. }
  896. procedure InvokeQDGetPicUPP(dataPtr: UnivPtr; byteCount: SInt16; userRoutine: QDGetPicUPP); external name '_InvokeQDGetPicUPP'; { old name was CallQDGetPicProc }
  897. {
  898. * InvokeQDPutPicUPP()
  899. *
  900. * Availability:
  901. * Non-Carbon CFM: available as macro/inline
  902. * CarbonLib: in CarbonLib 1.0 and later
  903. * Mac OS X: in version 10.0 and later
  904. }
  905. procedure InvokeQDPutPicUPP(dataPtr: UnivPtr; byteCount: SInt16; userRoutine: QDPutPicUPP); external name '_InvokeQDPutPicUPP'; { old name was CallQDPutPicProc }
  906. {
  907. * InvokeQDOpcodeUPP()
  908. *
  909. * Availability:
  910. * Non-Carbon CFM: available as macro/inline
  911. * CarbonLib: in CarbonLib 1.0 and later
  912. * Mac OS X: in version 10.0 and later
  913. }
  914. procedure InvokeQDOpcodeUPP(const (*var*) fromRect: Rect; const (*var*) toRect: Rect; opcode: UInt16; version: SInt16; userRoutine: QDOpcodeUPP); external name '_InvokeQDOpcodeUPP'; { old name was CallQDOpcodeProc }
  915. {
  916. * InvokeQDStdGlyphsUPP()
  917. *
  918. * Availability:
  919. * Non-Carbon CFM: available as macro/inline
  920. * CarbonLib: in CarbonLib 1.0 and later
  921. * Mac OS X: in version 10.0 and later
  922. }
  923. function InvokeQDStdGlyphsUPP(dataStream: UnivPtr; size: ByteCount; userRoutine: QDStdGlyphsUPP): OSStatus; external name '_InvokeQDStdGlyphsUPP'; { old name was CallQDStdGlyphsProc }
  924. {
  925. * InvokeQDJShieldCursorUPP()
  926. *
  927. * Availability:
  928. * Non-Carbon CFM: available as macro/inline
  929. * CarbonLib: in CarbonLib 1.0 and later
  930. * Mac OS X: in version 10.0 and later
  931. }
  932. procedure InvokeQDJShieldCursorUPP(left: SInt16; top: SInt16; right: SInt16; bottom: SInt16; userRoutine: QDJShieldCursorUPP); external name '_InvokeQDJShieldCursorUPP'; { old name was CallQDJShieldCursorProc }
  933. {$ifc NOT OPAQUE_TOOLBOX_STRUCTS}
  934. type
  935. GrafPortPtr = ^GrafPort;
  936. GrafPort = record
  937. device: SInt16; { not available in Carbon }
  938. portBits: BitMap; { in Carbon use GetPortBitMapForCopyBits or IsPortColor }
  939. portRect: Rect; { in Carbon use Get/SetPortBounds }
  940. visRgn: RgnHandle; { in Carbon use Get/SetPortVisibleRegion }
  941. clipRgn: RgnHandle; { in Carbon use Get/SetPortClipRegion }
  942. bkPat: Pattern; { not available in Carbon all GrafPorts are CGrafPorts }
  943. fillPat: Pattern; { not available in Carbon all GrafPorts are CGrafPorts }
  944. pnLoc: Point; { in Carbon use GetPortPenLocation or MoveTo }
  945. pnSize: Point; { in Carbon use Get/SetPortPenSize }
  946. pnMode: SInt16; { in Carbon use Get/SetPortPenMode }
  947. pnPat: Pattern; { not available in Carbon all GrafPorts are CGrafPorts }
  948. pnVis: SInt16; { in Carbon use GetPortPenVisibility or Show/HidePen }
  949. txFont: SInt16; { in Carbon use GetPortTextFont or TextFont }
  950. txFace: StyleField; { in Carbon use GetPortTextFace or TextFace }
  951. { StyleField occupies 16-bits, but only first 8-bits are used }
  952. txMode: SInt16; { in Carbon use GetPortTextMode or TextMode }
  953. txSize: SInt16; { in Carbon use GetPortTextSize or TextSize }
  954. spExtra: Fixed; { in Carbon use GetPortSpExtra or SpaceExtra }
  955. fgColor: SInt32; { not available in Carbon }
  956. bkColor: SInt32; { not available in Carbon }
  957. colrBit: SInt16; { not available in Carbon }
  958. patStretch: SInt16; { not available in Carbon }
  959. picSave: Handle; { in Carbon use IsPortPictureBeingDefined }
  960. rgnSave: Handle; { not available in Carbon }
  961. polySave: Handle; { not available in Carbon }
  962. grafProcs: QDProcsPtr; { not available in Carbon all GrafPorts are CGrafPorts }
  963. end;
  964. GrafPtr = ^GrafPort;
  965. {
  966. * This set of definitions "belongs" in Windows.
  967. * But, there is a circularity in the headers where Windows includes Controls and
  968. * Controls includes Windows. To break the circle, the information
  969. * needed by Controls is moved from Windows to Quickdraw.
  970. }
  971. WindowPtr = GrafPtr;
  972. DialogPtr = WindowPtr;
  973. {$elsec}
  974. type
  975. WindowPtr = ^SInt32; { an opaque 32-bit type }
  976. WindowPtrPtr = ^WindowPtr; { when a var xx:WindowPtr parameter can be nil, it is changed to xx: WindowPtrPtr }
  977. DialogPtr = ^SInt32; { an opaque 32-bit type }
  978. DialogPtrPtr = ^DialogPtr; { when a var xx:DialogPtr parameter can be nil, it is changed to xx: DialogPtrPtr }
  979. GrafPtr = ^SInt32; { an opaque 32-bit type }
  980. GrafPtrPtr = ^GrafPtr; { when a var xx:GrafPtr parameter can be nil, it is changed to xx: GrafPtrPtr }
  981. {$endc}
  982. WindowRef = WindowPtr;
  983. WindowRefPtr = ^WindowRef; { when a var xx:WindowRef parameter can be nil, it is changed to xx: WindowRefPtr }
  984. { DragConstraint constants to pass to DragGray,DragTheRgn, or ConstrainedDragRgn }
  985. DragConstraint = UInt16;
  986. const
  987. kNoConstraint = 0;
  988. kVerticalConstraint = 1;
  989. kHorizontalConstraint = 2;
  990. type
  991. {$ifc TYPED_FUNCTION_POINTERS}
  992. DragGrayRgnProcPtr = procedure;
  993. {$elsec}
  994. DragGrayRgnProcPtr = ProcPtr;
  995. {$endc}
  996. {
  997. * Here ends the list of things that "belong" in Windows.
  998. }
  999. RGBColorPtr = ^RGBColor;
  1000. RGBColor = record
  1001. red: UInt16; { magnitude of red component }
  1002. green: UInt16; { magnitude of green component }
  1003. blue: UInt16; { magnitude of blue component }
  1004. end;
  1005. RGBColorHdl = ^RGBColorPtr;
  1006. {$ifc TYPED_FUNCTION_POINTERS}
  1007. ColorSearchProcPtr = function(var rgb: RGBColor; var position: SInt32): boolean;
  1008. {$elsec}
  1009. ColorSearchProcPtr = ProcPtr;
  1010. {$endc}
  1011. {$ifc TYPED_FUNCTION_POINTERS}
  1012. ColorComplementProcPtr = function(var rgb: RGBColor): boolean;
  1013. {$elsec}
  1014. ColorComplementProcPtr = ProcPtr;
  1015. {$endc}
  1016. {$ifc OPAQUE_UPP_TYPES}
  1017. DragGrayRgnUPP = ^SInt32; { an opaque UPP }
  1018. {$elsec}
  1019. DragGrayRgnUPP = UniversalProcPtr;
  1020. {$endc}
  1021. {$ifc OPAQUE_UPP_TYPES}
  1022. ColorSearchUPP = ^SInt32; { an opaque UPP }
  1023. {$elsec}
  1024. ColorSearchUPP = UniversalProcPtr;
  1025. {$endc}
  1026. {$ifc OPAQUE_UPP_TYPES}
  1027. ColorComplementUPP = ^SInt32; { an opaque UPP }
  1028. {$elsec}
  1029. ColorComplementUPP = UniversalProcPtr;
  1030. {$endc}
  1031. const
  1032. uppDragGrayRgnProcInfo = $00000000;
  1033. uppColorSearchProcInfo = $000003D0;
  1034. uppColorComplementProcInfo = $000000D0;
  1035. {
  1036. * NewDragGrayRgnUPP()
  1037. *
  1038. * Availability:
  1039. * Non-Carbon CFM: available as macro/inline
  1040. * CarbonLib: in CarbonLib 1.0 and later
  1041. * Mac OS X: in version 10.0 and later
  1042. }
  1043. function NewDragGrayRgnUPP(userRoutine: DragGrayRgnProcPtr): DragGrayRgnUPP; external name '_NewDragGrayRgnUPP'; { old name was NewDragGrayRgnProc }
  1044. {
  1045. * NewColorSearchUPP()
  1046. *
  1047. * Availability:
  1048. * Non-Carbon CFM: available as macro/inline
  1049. * CarbonLib: in CarbonLib 1.0 and later
  1050. * Mac OS X: in version 10.0 and later
  1051. }
  1052. function NewColorSearchUPP(userRoutine: ColorSearchProcPtr): ColorSearchUPP; external name '_NewColorSearchUPP'; { old name was NewColorSearchProc }
  1053. {
  1054. * NewColorComplementUPP()
  1055. *
  1056. * Availability:
  1057. * Non-Carbon CFM: available as macro/inline
  1058. * CarbonLib: in CarbonLib 1.0 and later
  1059. * Mac OS X: in version 10.0 and later
  1060. }
  1061. function NewColorComplementUPP(userRoutine: ColorComplementProcPtr): ColorComplementUPP; external name '_NewColorComplementUPP'; { old name was NewColorComplementProc }
  1062. {
  1063. * DisposeDragGrayRgnUPP()
  1064. *
  1065. * Availability:
  1066. * Non-Carbon CFM: available as macro/inline
  1067. * CarbonLib: in CarbonLib 1.0 and later
  1068. * Mac OS X: in version 10.0 and later
  1069. }
  1070. procedure DisposeDragGrayRgnUPP(userUPP: DragGrayRgnUPP); external name '_DisposeDragGrayRgnUPP';
  1071. {
  1072. * DisposeColorSearchUPP()
  1073. *
  1074. * Availability:
  1075. * Non-Carbon CFM: available as macro/inline
  1076. * CarbonLib: in CarbonLib 1.0 and later
  1077. * Mac OS X: in version 10.0 and later
  1078. }
  1079. procedure DisposeColorSearchUPP(userUPP: ColorSearchUPP); external name '_DisposeColorSearchUPP';
  1080. {
  1081. * DisposeColorComplementUPP()
  1082. *
  1083. * Availability:
  1084. * Non-Carbon CFM: available as macro/inline
  1085. * CarbonLib: in CarbonLib 1.0 and later
  1086. * Mac OS X: in version 10.0 and later
  1087. }
  1088. procedure DisposeColorComplementUPP(userUPP: ColorComplementUPP); external name '_DisposeColorComplementUPP';
  1089. {
  1090. * InvokeDragGrayRgnUPP()
  1091. *
  1092. * Availability:
  1093. * Non-Carbon CFM: available as macro/inline
  1094. * CarbonLib: in CarbonLib 1.0 and later
  1095. * Mac OS X: in version 10.0 and later
  1096. }
  1097. procedure InvokeDragGrayRgnUPP(userRoutine: DragGrayRgnUPP); external name '_InvokeDragGrayRgnUPP'; { old name was CallDragGrayRgnProc }
  1098. {
  1099. * InvokeColorSearchUPP()
  1100. *
  1101. * Availability:
  1102. * Non-Carbon CFM: available as macro/inline
  1103. * CarbonLib: in CarbonLib 1.0 and later
  1104. * Mac OS X: in version 10.0 and later
  1105. }
  1106. function InvokeColorSearchUPP(var rgb: RGBColor; var position: SInt32; userRoutine: ColorSearchUPP): boolean; external name '_InvokeColorSearchUPP'; { old name was CallColorSearchProc }
  1107. {
  1108. * InvokeColorComplementUPP()
  1109. *
  1110. * Availability:
  1111. * Non-Carbon CFM: available as macro/inline
  1112. * CarbonLib: in CarbonLib 1.0 and later
  1113. * Mac OS X: in version 10.0 and later
  1114. }
  1115. function InvokeColorComplementUPP(var rgb: RGBColor; userRoutine: ColorComplementUPP): boolean; external name '_InvokeColorComplementUPP'; { old name was CallColorComplementProc }
  1116. type
  1117. ColorSpecPtr = ^ColorSpec;
  1118. ColorSpec = record
  1119. value: SInt16; { index or other value }
  1120. rgb: RGBColor; { true color }
  1121. end;
  1122. CSpecArray = array [0..0] of ColorSpec;
  1123. ColorTablePtr = ^ColorTable;
  1124. ColorTable = record
  1125. ctSeed: SInt32; { unique identifier for table }
  1126. ctFlags: SInt16; { high bit: 0 = PixMap; 1 = device }
  1127. ctSize: SInt16; { number of entries in CTTable }
  1128. ctTable: CSpecArray; { array [0..0] of ColorSpec }
  1129. end;
  1130. CTabPtr = ^ColorTable;
  1131. CTabHandle = ^CTabPtr;
  1132. xColorSpecPtr = ^xColorSpec;
  1133. xColorSpec = record
  1134. value: SInt16; { index or other value }
  1135. rgb: RGBColor; { true color }
  1136. xalpha: SInt16;
  1137. end;
  1138. xCSpecArray = array [0..0] of xColorSpec;
  1139. MatchRecPtr = ^MatchRec;
  1140. MatchRec = record
  1141. red: UInt16;
  1142. green: UInt16;
  1143. blue: UInt16;
  1144. matchData: SInt32;
  1145. end;
  1146. {
  1147. QuickTime 3.0 makes PixMap data structure available on non-Mac OS's.
  1148. In order to implement PixMap in these alternate environments, the PixMap
  1149. had to be extended. The pmReserved field was changed to pmExt which is
  1150. a Handle to extra info. The planeBytes field was changed to pixelFormat.
  1151. In OS X, Quickdraw also uses the new PixMap data structure.
  1152. }
  1153. {$ifc undefined OLDPIXMAPSTRUCT}
  1154. {$ifc TARGET_OS_MAC AND TARGET_API_MAC_OS8}
  1155. {$setc OLDPIXMAPSTRUCT := 1}
  1156. {$elsec}
  1157. {$setc OLDPIXMAPSTRUCT := 0}
  1158. {$endc}
  1159. {$endc}
  1160. { pixel formats }
  1161. const
  1162. k1MonochromePixelFormat = $00000001; { 1 bit indexed }
  1163. k2IndexedPixelFormat = $00000002; { 2 bit indexed }
  1164. k4IndexedPixelFormat = $00000004; { 4 bit indexed }
  1165. k8IndexedPixelFormat = $00000008; { 8 bit indexed }
  1166. k16BE555PixelFormat = $00000010; { 16 bit BE rgb 555 (Mac) }
  1167. k24RGBPixelFormat = $00000018; { 24 bit rgb }
  1168. k32ARGBPixelFormat = $00000020; { 32 bit argb (Mac) }
  1169. k1IndexedGrayPixelFormat = $00000021; { 1 bit indexed gray }
  1170. k2IndexedGrayPixelFormat = $00000022; { 2 bit indexed gray }
  1171. k4IndexedGrayPixelFormat = $00000024; { 4 bit indexed gray }
  1172. k8IndexedGrayPixelFormat = $00000028; { 8 bit indexed gray }
  1173. { values for PixMap.pixelFormat }
  1174. k16LE555PixelFormat = $4C353535 (* 'L555' *); { 16 bit LE rgb 555 (PC) }
  1175. k16LE5551PixelFormat = $35353531 (* '5551' *); { 16 bit LE rgb 5551 }
  1176. k16BE565PixelFormat = $42353635 (* 'B565' *); { 16 bit BE rgb 565 }
  1177. k16LE565PixelFormat = $4C353635 (* 'L565' *); { 16 bit LE rgb 565 }
  1178. k24BGRPixelFormat = $32344247 (* '24BG' *); { 24 bit bgr }
  1179. k32BGRAPixelFormat = $42475241 (* 'BGRA' *); { 32 bit bgra (Matrox) }
  1180. k32ABGRPixelFormat = $41424752 (* 'ABGR' *); { 32 bit abgr }
  1181. k32RGBAPixelFormat = $52474241 (* 'RGBA' *); { 32 bit rgba }
  1182. kYUVSPixelFormat = $79757673 (* 'yuvs' *); { YUV 4:2:2 byte ordering 16-unsigned = 'YUY2' }
  1183. kYUVUPixelFormat = $79757675 (* 'yuvu' *); { YUV 4:2:2 byte ordering 16-signed }
  1184. kYVU9PixelFormat = $59565539 (* 'YVU9' *); { YVU9 Planar 9 }
  1185. kYUV411PixelFormat = $59343131 (* 'Y411' *); { YUV 4:1:1 Interleaved 16 }
  1186. kYVYU422PixelFormat = $59565955 (* 'YVYU' *); { YVYU 4:2:2 byte ordering 16 }
  1187. kUYVY422PixelFormat = $55595659 (* 'UYVY' *); { UYVY 4:2:2 byte ordering 16 }
  1188. kYUV211PixelFormat = $59323131 (* 'Y211' *); { YUV 2:1:1 Packed 8 }
  1189. k2vuyPixelFormat = $32767579 (* '2vuy' *); { UYVY 4:2:2 byte ordering 16 }
  1190. type
  1191. PixMapPtr = ^PixMap;
  1192. PixMap = record
  1193. baseAddr: Ptr; { pointer to pixels }
  1194. rowBytes: SInt16; { offset to next line }
  1195. bounds: Rect; { encloses bitmap }
  1196. pmVersion: SInt16; { pixMap version number }
  1197. packType: SInt16; { defines packing format }
  1198. packSize: SInt32; { length of pixel data }
  1199. hRes: Fixed; { horiz. resolution (ppi) }
  1200. vRes: Fixed; { vert. resolution (ppi) }
  1201. pixelType: SInt16; { defines pixel type }
  1202. pixelSize: SInt16; { # bits in pixel }
  1203. cmpCount: SInt16; { # components in pixel }
  1204. cmpSize: SInt16; { # bits per component }
  1205. planeBytes: SInt32; { offset to next plane }
  1206. pmTable: CTabHandle; { color map for this pixMap }
  1207. pmReserved: SInt32;
  1208. end;
  1209. PixMapHandle = ^PixMapPtr;
  1210. PixPatPtr = ^PixPat;
  1211. PixPat = record
  1212. patType: SInt16; { type of pattern }
  1213. patMap: PixMapHandle; { the pattern's pixMap }
  1214. patData: Handle; { pixmap's data }
  1215. patXData: Handle; { expanded Pattern data }
  1216. patXValid: SInt16; { flags whether expanded Pattern valid }
  1217. patXMap: Handle; { Handle to expanded Pattern data }
  1218. pat1Data: Pattern; { old-Style pattern/RGB color }
  1219. end;
  1220. PixPatHandle = ^PixPatPtr;
  1221. CCrsrPtr = ^CCrsr;
  1222. CCrsr = record
  1223. crsrType: SInt16; { type of cursor }
  1224. crsrMap: PixMapHandle; { the cursor's pixmap }
  1225. crsrData: Handle; { cursor's data }
  1226. crsrXData: Handle; { expanded cursor data }
  1227. crsrXValid: SInt16; { depth of expanded data (0 if none) }
  1228. crsrXHandle: Handle; { future use }
  1229. crsr1Data: Bits16; { one-bit cursor }
  1230. crsrMask: Bits16; { cursor's mask }
  1231. crsrHotSpot: Point; { cursor's hotspot }
  1232. crsrXTable: SInt32; { private }
  1233. crsrID: SInt32; { private }
  1234. end;
  1235. CCrsrHandle = ^CCrsrPtr;
  1236. GammaTblPtr = ^GammaTbl;
  1237. GammaTbl = record
  1238. gVersion: SInt16; { gamma version number }
  1239. gType: SInt16; { gamma data type }
  1240. gFormulaSize: SInt16; { Formula data size }
  1241. gChanCnt: SInt16; { number of channels of data }
  1242. gDataCnt: SInt16; { number of values/channel }
  1243. gDataWidth: SInt16; { bits/corrected value (data packed to next larger byte size) }
  1244. gFormulaData: array [0..0] of SInt16; { data for formulas followed by gamma values }
  1245. end;
  1246. GammaTblHandle = ^GammaTblPtr;
  1247. ITabPtr = ^ITab;
  1248. ITab = record
  1249. iTabSeed: SInt32; { copy of CTSeed from source CTable }
  1250. iTabRes: SInt16; { bits/channel resolution of iTable }
  1251. iTTable: SInt8; { byte colortable index values }
  1252. end;
  1253. ITabHandle = ^ITabPtr;
  1254. SProcRecPtr = ^SProcRec;
  1255. SProcRec = record
  1256. nxtSrch: Handle; { SProcHndl Handle to next SProcRec }
  1257. srchProc: ColorSearchUPP; { search procedure proc ptr }
  1258. end;
  1259. SProcPtr = ^SProcRec;
  1260. SProcHndl = ^SProcPtr;
  1261. CProcRecPtr = ^CProcRec;
  1262. CProcRec = record
  1263. nxtComp: Handle; { CProcHndl Handle to next CProcRec }
  1264. compProc: ColorComplementUPP; { complement procedure proc ptr }
  1265. end;
  1266. CProcPtr = ^CProcRec;
  1267. CProcHndl = ^CProcPtr;
  1268. {
  1269. QuickTime 3.0 makes GDevice data structure available on non-Mac OS's.
  1270. In order to implement GDevice in these alternate environments, the GDevice
  1271. had to be extended. The gdReserved field was changed to gdExt which is
  1272. a Handle to extra info.
  1273. }
  1274. {$ifc undefined OLDGDEVICESTRUCT}
  1275. {$ifc TARGET_OS_MAC AND TARGET_API_MAC_OS8}
  1276. {$setc OLDGDEVICESTRUCT := 1}
  1277. {$elsec}
  1278. {$setc OLDGDEVICESTRUCT := 0}
  1279. {$endc}
  1280. {$endc}
  1281. GDevicePtr = ^GDevice;
  1282. GDPtr = ^GDevice;
  1283. GDHandle = ^GDPtr;
  1284. GDHandlePtr = ^GDHandle; { when a VAR xx: GDHandle parameter can be nil, it is changed to xx: GDHandlePtr }
  1285. GDevice = record
  1286. gdRefNum: SInt16; { driver's unit number }
  1287. gdID: SInt16; { client ID for search procs }
  1288. gdType: SInt16; { fixed/CLUT/direct }
  1289. gdITable: ITabHandle; { Handle to inverse lookup table }
  1290. gdResPref: SInt16; { preferred resolution of GDITable }
  1291. gdSearchProc: SProcHndl; { search proc list head }
  1292. gdCompProc: CProcHndl; { complement proc list }
  1293. gdFlags: SInt16; { grafDevice flags word }
  1294. gdPMap: PixMapHandle; { describing pixMap }
  1295. gdRefCon: SInt32; { reference value }
  1296. gdNextGD: GDHandle; { GDHandle Handle of next gDevice }
  1297. gdRect: Rect; { device's bounds in global coordinates }
  1298. gdMode: SInt32; { device's current mode }
  1299. gdCCBytes: SInt16; { depth of expanded cursor data }
  1300. gdCCDepth: SInt16; { depth of expanded cursor data }
  1301. gdCCXData: Handle; { Handle to cursor's expanded data }
  1302. gdCCXMask: Handle; { Handle to cursor's expanded mask }
  1303. gdReserved: SInt32; { future use. MUST BE 0 }
  1304. end;
  1305. GrafVars = record
  1306. rgbOpColor: RGBColor; { color for addPin subPin and average }
  1307. rgbHiliteColor: RGBColor; { color for hiliting }
  1308. pmFgColor: Handle; { palette Handle for foreground color }
  1309. pmFgIndex: SInt16; { index value for foreground }
  1310. pmBkColor: Handle; { palette Handle for background color }
  1311. pmBkIndex: SInt16; { index value for background }
  1312. pmFlags: SInt16; { flags for Palette Manager }
  1313. end;
  1314. GVarPtr = ^GrafVars;
  1315. GVarHandle = ^GVarPtr;
  1316. {$ifc NOT OPAQUE_TOOLBOX_STRUCTS}
  1317. CGrafPortPtr = ^CGrafPort;
  1318. CGrafPtr = ^CGrafPort;
  1319. {$elsec}
  1320. CGrafPtr = GrafPtr;
  1321. {$endc}
  1322. CGrafPtrPtr = ^CGrafPtr;
  1323. {$ifc TYPED_FUNCTION_POINTERS}
  1324. QDPrinterStatusProcPtr = function(opcode: PrinterStatusOpcode; currentPort: CGrafPtr; printerStatus: UnivPtr): OSStatus;
  1325. {$elsec}
  1326. QDPrinterStatusProcPtr = ProcPtr;
  1327. {$endc}
  1328. {$ifc OPAQUE_UPP_TYPES}
  1329. QDPrinterStatusUPP = ^SInt32; { an opaque UPP }
  1330. {$elsec}
  1331. QDPrinterStatusUPP = UniversalProcPtr;
  1332. {$endc}
  1333. CQDProcsPtr = ^CQDProcs;
  1334. CQDProcs = record
  1335. textProc: QDTextUPP;
  1336. lineProc: QDLineUPP;
  1337. rectProc: QDRectUPP;
  1338. rRectProc: QDRRectUPP;
  1339. ovalProc: QDOvalUPP;
  1340. arcProc: QDArcUPP;
  1341. polyProc: QDPolyUPP;
  1342. rgnProc: QDRgnUPP;
  1343. bitsProc: QDBitsUPP;
  1344. commentProc: QDCommentUPP;
  1345. txMeasProc: QDTxMeasUPP;
  1346. getPicProc: QDGetPicUPP;
  1347. putPicProc: QDPutPicUPP;
  1348. opcodeProc: QDOpcodeUPP;
  1349. newProc1: UniversalProcPtr; { this is the StdPix bottleneck -- see ImageCompression.h }
  1350. glyphsProc: QDStdGlyphsUPP; { was newProc2; now used in Unicode text drawing }
  1351. printerStatusProc: QDPrinterStatusUPP; { was newProc3; now used to communicate status between Printing code and System imaging code }
  1352. newProc4: UniversalProcPtr;
  1353. newProc5: UniversalProcPtr;
  1354. newProc6: UniversalProcPtr;
  1355. end;
  1356. {$ifc NOT OPAQUE_TOOLBOX_STRUCTS}
  1357. CGrafPort = record
  1358. device: SInt16; { not available in Carbon }
  1359. portPixMap: PixMapHandle; { in Carbon use GetPortPixMap }
  1360. portVersion: SInt16; { in Carbon use IsPortColor }
  1361. grafVars: Handle; { not available in Carbon }
  1362. chExtra: SInt16; { in Carbon use GetPortChExtra }
  1363. pnLocHFrac: SInt16; { in Carbon use Get/SetPortFracHPenLocation }
  1364. portRect: Rect; { in Carbon use Get/SetPortBounds }
  1365. visRgn: RgnHandle; { in Carbon use Get/SetPortVisibleRegion }
  1366. clipRgn: RgnHandle; { in Carbon use Get/SetPortClipRegion }
  1367. bkPixPat: PixPatHandle; { in Carbon use GetPortBackPixPat or BackPixPat }
  1368. rgbFgColor: RGBColor; { in Carbon use GetPortForeColor or RGBForeColor }
  1369. rgbBkColor: RGBColor; { in Carbon use GetPortBackColor or RGBBackColor }
  1370. pnLoc: Point; { in Carbon use GetPortPenLocation or MoveTo }
  1371. pnSize: Point; { in Carbon use Get/SetPortPenSize }
  1372. pnMode: SInt16; { in Carbon use Get/SetPortPenMode }
  1373. pnPixPat: PixPatHandle; { in Carbon use Get/SetPortPenPixPat }
  1374. fillPixPat: PixPatHandle; { in Carbon use GetPortFillPixPat }
  1375. pnVis: SInt16; { in Carbon use GetPortPenVisibility or Show/HidePen }
  1376. txFont: SInt16; { in Carbon use GetPortTextFont or TextFont }
  1377. txFace: StyleField; { in Carbon use GetPortTextFace or TextFace }
  1378. { StyleField occupies 16-bits, but only first 8-bits are used }
  1379. txMode: SInt16; { in Carbon use GetPortTextMode or TextMode }
  1380. txSize: SInt16; { in Carbon use GetPortTextSize or TextSize }
  1381. spExtra: Fixed; { in Carbon use GetPortSpExtra or SpaceExtra }
  1382. fgColor: SInt32; { not available in Carbon }
  1383. bkColor: SInt32; { not available in Carbon }
  1384. colrBit: SInt16; { not available in Carbon }
  1385. patStretch: SInt16; { not available in Carbon }
  1386. picSave: Handle; { in Carbon use IsPortPictureBeingDefined }
  1387. rgnSave: Handle; { in Carbon use IsPortRegionBeingDefined }
  1388. polySave: Handle; { in Carbon use IsPortPolyBeingDefined }
  1389. grafProcs: CQDProcsPtr; { in Carbon use Get/SetPortGrafProcs }
  1390. end;
  1391. {$endc}
  1392. {$ifc OPAQUE_TOOLBOX_STRUCTS}
  1393. CWindowPtr = WindowPtr;
  1394. {$elsec}
  1395. CWindowPtr = CGrafPtr;
  1396. {$endc} {OPAQUE_TOOLBOX_STRUCTS}
  1397. ReqListRecPtr = ^ReqListRec;
  1398. ReqListRec = record
  1399. reqLSize: SInt16; { request list size }
  1400. reqLData: array [0..0] of SInt16; { request list data }
  1401. end;
  1402. OpenCPicParamsPtr = ^OpenCPicParams;
  1403. OpenCPicParams = record
  1404. srcRect: Rect;
  1405. hRes: Fixed;
  1406. vRes: Fixed;
  1407. version: SInt16;
  1408. reserved1: SInt16;
  1409. reserved2: SInt32;
  1410. end;
  1411. const
  1412. kCursorImageMajorVersion = $0001;
  1413. kCursorImageMinorVersion = $0000;
  1414. type
  1415. CursorImageRecPtr = ^CursorImageRec;
  1416. CursorImageRec = record
  1417. majorVersion: UInt16;
  1418. minorVersion: UInt16;
  1419. cursorPixMap: PixMapHandle;
  1420. cursorBitMask: BitMapHandle;
  1421. end;
  1422. CursorImagePtr = ^CursorImageRec;
  1423. {$ifc TYPED_FUNCTION_POINTERS}
  1424. DeviceLoopDrawingProcPtr = procedure(depth: SInt16; deviceFlags: SInt16; targetDevice: GDHandle; userData: SInt32);
  1425. {$elsec}
  1426. DeviceLoopDrawingProcPtr = ProcPtr;
  1427. {$endc}
  1428. {$ifc OPAQUE_UPP_TYPES}
  1429. DeviceLoopDrawingUPP = ^SInt32; { an opaque UPP }
  1430. {$elsec}
  1431. DeviceLoopDrawingUPP = UniversalProcPtr;
  1432. {$endc}
  1433. const
  1434. uppQDPrinterStatusProcInfo = $00000FF1;
  1435. uppDeviceLoopDrawingProcInfo = $00003E80;
  1436. {$ifc CALL_NOT_IN_CARBON}
  1437. {
  1438. * NewQDPrinterStatusUPP()
  1439. *
  1440. * Availability:
  1441. * Non-Carbon CFM: available as macro/inline
  1442. * CarbonLib: not available
  1443. * Mac OS X: not available
  1444. }
  1445. function NewQDPrinterStatusUPP(userRoutine: QDPrinterStatusProcPtr): QDPrinterStatusUPP; external name '_NewQDPrinterStatusUPP'; { old name was NewQDPrinterStatusProc }
  1446. {$endc} {CALL_NOT_IN_CARBON}
  1447. {
  1448. * NewDeviceLoopDrawingUPP()
  1449. *
  1450. * Availability:
  1451. * Non-Carbon CFM: available as macro/inline
  1452. * CarbonLib: in CarbonLib 1.0 and later
  1453. * Mac OS X: in version 10.0 and later
  1454. }
  1455. function NewDeviceLoopDrawingUPP(userRoutine: DeviceLoopDrawingProcPtr): DeviceLoopDrawingUPP; external name '_NewDeviceLoopDrawingUPP'; { old name was NewDeviceLoopDrawingProc }
  1456. {$ifc CALL_NOT_IN_CARBON}
  1457. {
  1458. * DisposeQDPrinterStatusUPP()
  1459. *
  1460. * Availability:
  1461. * Non-Carbon CFM: available as macro/inline
  1462. * CarbonLib: not available
  1463. * Mac OS X: not available
  1464. }
  1465. procedure DisposeQDPrinterStatusUPP(userUPP: QDPrinterStatusUPP); external name '_DisposeQDPrinterStatusUPP';
  1466. {$endc} {CALL_NOT_IN_CARBON}
  1467. {
  1468. * DisposeDeviceLoopDrawingUPP()
  1469. *
  1470. * Availability:
  1471. * Non-Carbon CFM: available as macro/inline
  1472. * CarbonLib: in CarbonLib 1.0 and later
  1473. * Mac OS X: in version 10.0 and later
  1474. }
  1475. procedure DisposeDeviceLoopDrawingUPP(userUPP: DeviceLoopDrawingUPP); external name '_DisposeDeviceLoopDrawingUPP';
  1476. {$ifc CALL_NOT_IN_CARBON}
  1477. {
  1478. * InvokeQDPrinterStatusUPP()
  1479. *
  1480. * Availability:
  1481. * Non-Carbon CFM: available as macro/inline
  1482. * CarbonLib: not available
  1483. * Mac OS X: not available
  1484. }
  1485. function InvokeQDPrinterStatusUPP(opcode: PrinterStatusOpcode; currentPort: CGrafPtr; printerStatus: UnivPtr; userRoutine: QDPrinterStatusUPP): OSStatus; external name '_InvokeQDPrinterStatusUPP'; { old name was CallQDPrinterStatusProc }
  1486. {$endc} {CALL_NOT_IN_CARBON}
  1487. {
  1488. * InvokeDeviceLoopDrawingUPP()
  1489. *
  1490. * Availability:
  1491. * Non-Carbon CFM: available as macro/inline
  1492. * CarbonLib: in CarbonLib 1.0 and later
  1493. * Mac OS X: in version 10.0 and later
  1494. }
  1495. procedure InvokeDeviceLoopDrawingUPP(depth: SInt16; deviceFlags: SInt16; targetDevice: GDHandle; userData: SInt32; userRoutine: DeviceLoopDrawingUPP); external name '_InvokeDeviceLoopDrawingUPP'; { old name was CallDeviceLoopDrawingProc }
  1496. {$ifc NOT OPAQUE_TOOLBOX_STRUCTS OR NOT TARGET_API_MAC_CARBON}
  1497. type
  1498. QDGlobalsPtr = ^QDGlobals;
  1499. QDGlobals = record
  1500. privates: packed array [0..75] of char;
  1501. randSeed: SInt32; { in Carbon use GetQDGlobalsRandomSeed }
  1502. screenBits: BitMap; { in Carbon use GetQDGlobalsScreenBits }
  1503. arrow: Cursor; { in Carbon use GetQDGlobalsArrow }
  1504. dkGray: Pattern; { in Carbon use GetQDGlobalsDarkGray }
  1505. ltGray: Pattern; { in Carbon use GetQDGlobalsLightGray }
  1506. gray: Pattern; { in Carbon use GetQDGlobalsGray }
  1507. black: Pattern; { in Carbon use GetQDGlobalsBlack }
  1508. white: Pattern; { in Carbon use GetQDGlobalsWhite }
  1509. thePort: GrafPtr; { in Carbon use GetQDGlobalsThePort }
  1510. end;
  1511. QDGlobalsHdl = ^QDGlobalsPtr;
  1512. { To be in sync with the C interface to QuickDraw globals, pascal code must now }
  1513. { qualify the QuickDraw globals with Òqd.Ó (e.g. InitGraf(@qd.thePort); ) }
  1514. var qd: QDGlobals; external name '_qd'; (* attribute const *)
  1515. {$endc}
  1516. {$ifc CALL_NOT_IN_CARBON}
  1517. {
  1518. * InitGraf()
  1519. *
  1520. * Availability:
  1521. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1522. * CarbonLib: not available
  1523. * Mac OS X: not available
  1524. }
  1525. procedure InitGraf(globalPtr: UnivPtr); external name '_InitGraf';
  1526. {
  1527. * OpenPort()
  1528. *
  1529. * Availability:
  1530. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1531. * CarbonLib: not available
  1532. * Mac OS X: not available
  1533. }
  1534. procedure OpenPort(port: GrafPtr); external name '_OpenPort';
  1535. {
  1536. * InitPort()
  1537. *
  1538. * Availability:
  1539. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1540. * CarbonLib: not available
  1541. * Mac OS X: not available
  1542. }
  1543. procedure InitPort(port: GrafPtr); external name '_InitPort';
  1544. {
  1545. * ClosePort()
  1546. *
  1547. * Availability:
  1548. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1549. * CarbonLib: not available
  1550. * Mac OS X: not available
  1551. }
  1552. procedure ClosePort(port: GrafPtr); external name '_ClosePort';
  1553. {
  1554. These are Carbon only routines. They do nothing at all on
  1555. Mac OS 8, but work flawlessly on Mac OS X.
  1556. }
  1557. {$endc} {CALL_NOT_IN_CARBON}
  1558. {
  1559. * LockPortBits()
  1560. *
  1561. * Availability:
  1562. * Non-Carbon CFM: not available
  1563. * CarbonLib: in CarbonLib 1.0 and later
  1564. * Mac OS X: in version 10.0 and later
  1565. }
  1566. function LockPortBits(port: GrafPtr): OSErr; external name '_LockPortBits';
  1567. {
  1568. * UnlockPortBits()
  1569. *
  1570. * Availability:
  1571. * Non-Carbon CFM: not available
  1572. * CarbonLib: in CarbonLib 1.0 and later
  1573. * Mac OS X: in version 10.0 and later
  1574. }
  1575. function UnlockPortBits(port: GrafPtr): OSErr; external name '_UnlockPortBits';
  1576. { Break a region up into rectangles. }
  1577. const
  1578. kQDParseRegionFromTop = $01;
  1579. kQDParseRegionFromBottom = $02;
  1580. kQDParseRegionFromLeft = $04;
  1581. kQDParseRegionFromRight = $08;
  1582. kQDParseRegionFromTopLeft = $05;
  1583. kQDParseRegionFromBottomRight = $0A;
  1584. type
  1585. QDRegionParseDirection = SInt32;
  1586. const
  1587. kQDRegionToRectsMsgInit = 1;
  1588. kQDRegionToRectsMsgParse = 2;
  1589. kQDRegionToRectsMsgTerminate = 3;
  1590. type
  1591. {$ifc TYPED_FUNCTION_POINTERS}
  1592. RegionToRectsProcPtr = function(message: UInt16; rgn: RgnHandle; const (*var*) rect_: Rect; refCon: UnivPtr): OSStatus;
  1593. {$elsec}
  1594. RegionToRectsProcPtr = ProcPtr;
  1595. {$endc}
  1596. {$ifc OPAQUE_UPP_TYPES}
  1597. RegionToRectsUPP = ^SInt32; { an opaque UPP }
  1598. {$elsec}
  1599. RegionToRectsUPP = UniversalProcPtr;
  1600. {$endc}
  1601. const
  1602. uppRegionToRectsProcInfo = $00003FB1;
  1603. {
  1604. * NewRegionToRectsUPP()
  1605. *
  1606. * Availability:
  1607. * Non-Carbon CFM: available as macro/inline
  1608. * CarbonLib: in CarbonLib 1.0 and later
  1609. * Mac OS X: in version 10.0 and later
  1610. }
  1611. function NewRegionToRectsUPP(userRoutine: RegionToRectsProcPtr): RegionToRectsUPP; external name '_NewRegionToRectsUPP'; { old name was NewRegionToRectsProc }
  1612. {
  1613. * DisposeRegionToRectsUPP()
  1614. *
  1615. * Availability:
  1616. * Non-Carbon CFM: available as macro/inline
  1617. * CarbonLib: in CarbonLib 1.0 and later
  1618. * Mac OS X: in version 10.0 and later
  1619. }
  1620. procedure DisposeRegionToRectsUPP(userUPP: RegionToRectsUPP); external name '_DisposeRegionToRectsUPP';
  1621. {
  1622. * InvokeRegionToRectsUPP()
  1623. *
  1624. * Availability:
  1625. * Non-Carbon CFM: available as macro/inline
  1626. * CarbonLib: in CarbonLib 1.0 and later
  1627. * Mac OS X: in version 10.0 and later
  1628. }
  1629. function InvokeRegionToRectsUPP(message: UInt16; rgn: RgnHandle; const (*var*) rect_: Rect; refCon: UnivPtr; userRoutine: RegionToRectsUPP): OSStatus; external name '_InvokeRegionToRectsUPP'; { old name was CallRegionToRectsProc }
  1630. {
  1631. * QDRegionToRects()
  1632. *
  1633. * Availability:
  1634. * Non-Carbon CFM: not available
  1635. * CarbonLib: in CarbonLib 1.0 and later
  1636. * Mac OS X: in version 10.0 and later
  1637. }
  1638. function QDRegionToRects(rgn: RgnHandle; dir: QDRegionParseDirection; proc: RegionToRectsUPP; userData: UnivPtr): OSStatus; external name '_QDRegionToRects';
  1639. {$ifc NOT TARGET_OS_MAC}
  1640. {$ifc CALL_NOT_IN_CARBON}
  1641. {
  1642. * UpdatePort()
  1643. *
  1644. * Availability:
  1645. * Non-Carbon CFM: not available
  1646. * CarbonLib: not available
  1647. * Mac OS X: not available
  1648. }
  1649. function UpdatePort(port: GrafPtr): OSErr; external name '_UpdatePort';
  1650. {
  1651. * GetPortNativeWindow()
  1652. *
  1653. * Availability:
  1654. * Non-Carbon CFM: not available
  1655. * CarbonLib: not available
  1656. * Mac OS X: not available
  1657. }
  1658. function GetPortNativeWindow(macPort: GrafPtr): Ptr; external name '_GetPortNativeWindow';
  1659. {
  1660. * GetNativeWindowPort()
  1661. *
  1662. * Availability:
  1663. * Non-Carbon CFM: not available
  1664. * CarbonLib: not available
  1665. * Mac OS X: not available
  1666. }
  1667. function GetNativeWindowPort(nativeWindow: UnivPtr): GrafPtr; external name '_GetNativeWindowPort';
  1668. {
  1669. * MacRegionToNativeRegion()
  1670. *
  1671. * Availability:
  1672. * Non-Carbon CFM: not available
  1673. * CarbonLib: not available
  1674. * Mac OS X: not available
  1675. }
  1676. function MacRegionToNativeRegion(macRegion: RgnHandle): Ptr; external name '_MacRegionToNativeRegion';
  1677. {
  1678. * NativeRegionToMacRegion()
  1679. *
  1680. * Availability:
  1681. * Non-Carbon CFM: not available
  1682. * CarbonLib: not available
  1683. * Mac OS X: not available
  1684. }
  1685. function NativeRegionToMacRegion(nativeRegion: UnivPtr): RgnHandle; external name '_NativeRegionToMacRegion';
  1686. {$endc} {CALL_NOT_IN_CARBON}
  1687. {$endc}
  1688. {$ifc TARGET_OS_WIN32}
  1689. {$ifc CALL_NOT_IN_CARBON}
  1690. {
  1691. * GetPortHWND()
  1692. *
  1693. * Availability:
  1694. * Non-Carbon CFM: not available
  1695. * CarbonLib: not available
  1696. * Mac OS X: not available
  1697. }
  1698. function GetPortHWND(port: GrafPtr): Ptr; external name '_GetPortHWND';
  1699. {
  1700. * GetHWNDPort()
  1701. *
  1702. * Availability:
  1703. * Non-Carbon CFM: not available
  1704. * CarbonLib: not available
  1705. * Mac OS X: not available
  1706. }
  1707. function GetHWNDPort(theHWND: UnivPtr): GrafPtr; external name '_GetHWNDPort';
  1708. {
  1709. * GetPortHDC()
  1710. *
  1711. * Availability:
  1712. * Non-Carbon CFM: not available
  1713. * CarbonLib: not available
  1714. * Mac OS X: not available
  1715. }
  1716. function GetPortHDC(port: GrafPtr): Ptr; external name '_GetPortHDC';
  1717. {
  1718. * GetPortHBITMAP()
  1719. *
  1720. * Availability:
  1721. * Non-Carbon CFM: not available
  1722. * CarbonLib: not available
  1723. * Mac OS X: not available
  1724. }
  1725. function GetPortHBITMAP(port: GrafPtr): Ptr; external name '_GetPortHBITMAP';
  1726. {
  1727. * GetPortHPALETTE()
  1728. *
  1729. * Availability:
  1730. * Non-Carbon CFM: not available
  1731. * CarbonLib: not available
  1732. * Mac OS X: not available
  1733. }
  1734. function GetPortHPALETTE(port: GrafPtr): Ptr; external name '_GetPortHPALETTE';
  1735. {
  1736. * GetPortHFONT()
  1737. *
  1738. * Availability:
  1739. * Non-Carbon CFM: not available
  1740. * CarbonLib: not available
  1741. * Mac OS X: not available
  1742. }
  1743. function GetPortHFONT(port: GrafPtr): Ptr; external name '_GetPortHFONT';
  1744. {
  1745. * GetDIBFromPICT()
  1746. *
  1747. * Availability:
  1748. * Non-Carbon CFM: not available
  1749. * CarbonLib: not available
  1750. * Mac OS X: not available
  1751. }
  1752. function GetDIBFromPICT(hPict: PicHandle): Ptr; external name '_GetDIBFromPICT';
  1753. {
  1754. * GetPICTFromDIB()
  1755. *
  1756. * Availability:
  1757. * Non-Carbon CFM: not available
  1758. * CarbonLib: not available
  1759. * Mac OS X: not available
  1760. }
  1761. function GetPICTFromDIB(h: UnivPtr): PicHandle; external name '_GetPICTFromDIB';
  1762. {$endc} {CALL_NOT_IN_CARBON}
  1763. {$endc} {TARGET_OS_WIN32}
  1764. {
  1765. * [Mac]SetPort()
  1766. *
  1767. * Availability:
  1768. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1769. * CarbonLib: in CarbonLib 1.0 and later
  1770. * Mac OS X: in version 10.0 and later
  1771. }
  1772. procedure SetPort(port: GrafPtr); external name '_SetPort';
  1773. {
  1774. * GetPort()
  1775. *
  1776. * Availability:
  1777. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1778. * CarbonLib: in CarbonLib 1.0 and later
  1779. * Mac OS X: in version 10.0 and later
  1780. }
  1781. procedure GetPort(var port: GrafPtr); external name '_GetPort';
  1782. {
  1783. * QDSwapPort()
  1784. *
  1785. * Availability:
  1786. * Non-Carbon CFM: not available
  1787. * CarbonLib: in CarbonLib 1.5 and later
  1788. * Mac OS X: in version 10.1 and later
  1789. }
  1790. function QDSwapPort(inNewPort: CGrafPtr; outOldPort: CGrafPtrPtr): boolean; external name '_QDSwapPort';
  1791. {
  1792. * GrafDevice()
  1793. *
  1794. * Availability:
  1795. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1796. * CarbonLib: in CarbonLib 1.0 and later
  1797. * Mac OS X: in version 10.0 and later
  1798. }
  1799. procedure GrafDevice(device: SInt16); external name '_GrafDevice';
  1800. {
  1801. * SetPortBits()
  1802. *
  1803. * Availability:
  1804. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1805. * CarbonLib: in CarbonLib 1.0 and later
  1806. * Mac OS X: in version 10.0 and later
  1807. }
  1808. procedure SetPortBits(const (*var*) bm: BitMap); external name '_SetPortBits';
  1809. {
  1810. * PortSize()
  1811. *
  1812. * Availability:
  1813. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1814. * CarbonLib: in CarbonLib 1.0 and later
  1815. * Mac OS X: in version 10.0 and later
  1816. }
  1817. procedure PortSize(width: SInt16; height: SInt16); external name '_PortSize';
  1818. {
  1819. * MovePortTo()
  1820. *
  1821. * Availability:
  1822. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1823. * CarbonLib: in CarbonLib 1.0 and later
  1824. * Mac OS X: in version 10.0 and later
  1825. }
  1826. procedure MovePortTo(leftGlobal: SInt16; topGlobal: SInt16); external name '_MovePortTo';
  1827. {
  1828. * SetOrigin()
  1829. *
  1830. * Availability:
  1831. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1832. * CarbonLib: in CarbonLib 1.0 and later
  1833. * Mac OS X: in version 10.0 and later
  1834. }
  1835. procedure SetOrigin(h: SInt16; v: SInt16); external name '_SetOrigin';
  1836. {
  1837. * SetClip()
  1838. *
  1839. * Availability:
  1840. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1841. * CarbonLib: in CarbonLib 1.0 and later
  1842. * Mac OS X: in version 10.0 and later
  1843. }
  1844. procedure SetClip(rgn: RgnHandle); external name '_SetClip';
  1845. {
  1846. * GetClip()
  1847. *
  1848. * Availability:
  1849. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1850. * CarbonLib: in CarbonLib 1.0 and later
  1851. * Mac OS X: in version 10.0 and later
  1852. }
  1853. procedure GetClip(rgn: RgnHandle); external name '_GetClip';
  1854. {
  1855. * ClipRect()
  1856. *
  1857. * Availability:
  1858. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1859. * CarbonLib: in CarbonLib 1.0 and later
  1860. * Mac OS X: in version 10.0 and later
  1861. }
  1862. procedure ClipRect(const (*var*) r: Rect); external name '_ClipRect';
  1863. {
  1864. * BackPat()
  1865. *
  1866. * Availability:
  1867. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1868. * CarbonLib: in CarbonLib 1.0 and later
  1869. * Mac OS X: in version 10.0 and later
  1870. }
  1871. procedure BackPat(const (*var*) pat: Pattern); external name '_BackPat';
  1872. {
  1873. * InitCursor()
  1874. *
  1875. * Availability:
  1876. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1877. * CarbonLib: in CarbonLib 1.0 and later
  1878. * Mac OS X: in version 10.0 and later
  1879. }
  1880. procedure InitCursor; external name '_InitCursor';
  1881. {
  1882. * [Mac]SetCursor()
  1883. *
  1884. * Availability:
  1885. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1886. * CarbonLib: in CarbonLib 1.0 and later
  1887. * Mac OS X: in version 10.0 and later
  1888. }
  1889. procedure SetCursor(const (*var*) crsr: Cursor); external name '_SetCursor';
  1890. {
  1891. * HideCursor()
  1892. *
  1893. * Availability:
  1894. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1895. * CarbonLib: in CarbonLib 1.0 and later
  1896. * Mac OS X: in version 10.0 and later
  1897. }
  1898. procedure HideCursor; external name '_HideCursor';
  1899. {
  1900. * [Mac]ShowCursor()
  1901. *
  1902. * Availability:
  1903. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1904. * CarbonLib: in CarbonLib 1.0 and later
  1905. * Mac OS X: in version 10.0 and later
  1906. }
  1907. procedure ShowCursor; external name '_ShowCursor';
  1908. {
  1909. * ObscureCursor()
  1910. *
  1911. * Availability:
  1912. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1913. * CarbonLib: in CarbonLib 1.0 and later
  1914. * Mac OS X: in version 10.0 and later
  1915. }
  1916. procedure ObscureCursor; external name '_ObscureCursor';
  1917. {
  1918. * HidePen()
  1919. *
  1920. * Availability:
  1921. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1922. * CarbonLib: in CarbonLib 1.0 and later
  1923. * Mac OS X: in version 10.0 and later
  1924. }
  1925. procedure HidePen; external name '_HidePen';
  1926. {
  1927. * ShowPen()
  1928. *
  1929. * Availability:
  1930. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1931. * CarbonLib: in CarbonLib 1.0 and later
  1932. * Mac OS X: in version 10.0 and later
  1933. }
  1934. procedure ShowPen; external name '_ShowPen';
  1935. {
  1936. * GetPen()
  1937. *
  1938. * Availability:
  1939. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1940. * CarbonLib: in CarbonLib 1.0 and later
  1941. * Mac OS X: in version 10.0 and later
  1942. }
  1943. procedure GetPen(var pt: Point); external name '_GetPen';
  1944. {
  1945. * GetPenState()
  1946. *
  1947. * Availability:
  1948. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1949. * CarbonLib: in CarbonLib 1.0 and later
  1950. * Mac OS X: in version 10.0 and later
  1951. }
  1952. procedure GetPenState(var pnState: PenState); external name '_GetPenState';
  1953. {
  1954. * SetPenState()
  1955. *
  1956. * Availability:
  1957. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1958. * CarbonLib: in CarbonLib 1.0 and later
  1959. * Mac OS X: in version 10.0 and later
  1960. }
  1961. procedure SetPenState(const (*var*) pnState: PenState); external name '_SetPenState';
  1962. {
  1963. * PenSize()
  1964. *
  1965. * Availability:
  1966. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1967. * CarbonLib: in CarbonLib 1.0 and later
  1968. * Mac OS X: in version 10.0 and later
  1969. }
  1970. procedure PenSize(width: SInt16; height: SInt16); external name '_PenSize';
  1971. {
  1972. * PenMode()
  1973. *
  1974. * Availability:
  1975. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1976. * CarbonLib: in CarbonLib 1.0 and later
  1977. * Mac OS X: in version 10.0 and later
  1978. }
  1979. procedure PenMode(mode: SInt16); external name '_PenMode';
  1980. {
  1981. * PenPat()
  1982. *
  1983. * Availability:
  1984. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1985. * CarbonLib: in CarbonLib 1.0 and later
  1986. * Mac OS X: in version 10.0 and later
  1987. }
  1988. procedure PenPat(const (*var*) pat: Pattern); external name '_PenPat';
  1989. {
  1990. * PenNormal()
  1991. *
  1992. * Availability:
  1993. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1994. * CarbonLib: in CarbonLib 1.0 and later
  1995. * Mac OS X: in version 10.0 and later
  1996. }
  1997. procedure PenNormal; external name '_PenNormal';
  1998. {
  1999. * MoveTo()
  2000. *
  2001. * Availability:
  2002. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2003. * CarbonLib: in CarbonLib 1.0 and later
  2004. * Mac OS X: in version 10.0 and later
  2005. }
  2006. procedure MoveTo(h: SInt16; v: SInt16); external name '_MoveTo';
  2007. {
  2008. * Move()
  2009. *
  2010. * Availability:
  2011. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2012. * CarbonLib: in CarbonLib 1.0 and later
  2013. * Mac OS X: in version 10.0 and later
  2014. }
  2015. procedure Move(dh: SInt16; dv: SInt16); external name '_Move';
  2016. {
  2017. * [Mac]LineTo()
  2018. *
  2019. * Availability:
  2020. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2021. * CarbonLib: in CarbonLib 1.0 and later
  2022. * Mac OS X: in version 10.0 and later
  2023. }
  2024. procedure LineTo(h: SInt16; v: SInt16); external name '_LineTo';
  2025. {
  2026. * Line()
  2027. *
  2028. * Availability:
  2029. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2030. * CarbonLib: in CarbonLib 1.0 and later
  2031. * Mac OS X: in version 10.0 and later
  2032. }
  2033. procedure Line(dh: SInt16; dv: SInt16); external name '_Line';
  2034. {
  2035. * ForeColor()
  2036. *
  2037. * Availability:
  2038. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2039. * CarbonLib: in CarbonLib 1.0 and later
  2040. * Mac OS X: in version 10.0 and later
  2041. }
  2042. procedure ForeColor(color: SInt32); external name '_ForeColor';
  2043. {
  2044. * BackColor()
  2045. *
  2046. * Availability:
  2047. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2048. * CarbonLib: in CarbonLib 1.0 and later
  2049. * Mac OS X: in version 10.0 and later
  2050. }
  2051. procedure BackColor(color: SInt32); external name '_BackColor';
  2052. {
  2053. * ColorBit()
  2054. *
  2055. * Availability:
  2056. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2057. * CarbonLib: in CarbonLib 1.0 and later
  2058. * Mac OS X: in version 10.0 and later
  2059. }
  2060. procedure ColorBit(whichBit: SInt16); external name '_ColorBit';
  2061. {
  2062. * [Mac]SetRect()
  2063. *
  2064. * Availability:
  2065. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2066. * CarbonLib: in CarbonLib 1.0 and later
  2067. * Mac OS X: in version 10.0 and later
  2068. }
  2069. procedure SetRect(var r: Rect; left: SInt16; top: SInt16; right: SInt16; bottom: SInt16); external name '_SetRect';
  2070. {
  2071. * [Mac]OffsetRect()
  2072. *
  2073. * Availability:
  2074. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2075. * CarbonLib: in CarbonLib 1.0 and later
  2076. * Mac OS X: in version 10.0 and later
  2077. }
  2078. procedure OffsetRect(var r: Rect; dh: SInt16; dv: SInt16); external name '_OffsetRect';
  2079. {
  2080. * [Mac]InsetRect()
  2081. *
  2082. * Availability:
  2083. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2084. * CarbonLib: in CarbonLib 1.0 and later
  2085. * Mac OS X: in version 10.0 and later
  2086. }
  2087. procedure InsetRect(var r: Rect; dh: SInt16; dv: SInt16); external name '_InsetRect';
  2088. {
  2089. * SectRect()
  2090. *
  2091. * Availability:
  2092. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2093. * CarbonLib: in CarbonLib 1.0 and later
  2094. * Mac OS X: in version 10.0 and later
  2095. }
  2096. function SectRect(const (*var*) src1: Rect; const (*var*) src2: Rect; var dstRect: Rect): boolean; external name '_SectRect';
  2097. {
  2098. * [Mac]UnionRect()
  2099. *
  2100. * Availability:
  2101. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2102. * CarbonLib: in CarbonLib 1.0 and later
  2103. * Mac OS X: in version 10.0 and later
  2104. }
  2105. procedure UnionRect(const (*var*) src1: Rect; const (*var*) src2: Rect; var dstRect: Rect); external name '_UnionRect';
  2106. {
  2107. * [Mac]EqualRect()
  2108. *
  2109. * Availability:
  2110. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2111. * CarbonLib: in CarbonLib 1.0 and later
  2112. * Mac OS X: in version 10.0 and later
  2113. }
  2114. function EqualRect(const (*var*) rect1: Rect; const (*var*) rect2: Rect): boolean; external name '_EqualRect';
  2115. {
  2116. * EmptyRect()
  2117. *
  2118. * Availability:
  2119. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2120. * CarbonLib: in CarbonLib 1.0 and later
  2121. * Mac OS X: in version 10.0 and later
  2122. }
  2123. function EmptyRect(const (*var*) r: Rect): boolean; external name '_EmptyRect';
  2124. {
  2125. * [Mac]FrameRect()
  2126. *
  2127. * Availability:
  2128. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2129. * CarbonLib: in CarbonLib 1.0 and later
  2130. * Mac OS X: in version 10.0 and later
  2131. }
  2132. procedure FrameRect(const (*var*) r: Rect); external name '_FrameRect';
  2133. {
  2134. * PaintRect()
  2135. *
  2136. * Availability:
  2137. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2138. * CarbonLib: in CarbonLib 1.0 and later
  2139. * Mac OS X: in version 10.0 and later
  2140. }
  2141. procedure PaintRect(const (*var*) r: Rect); external name '_PaintRect';
  2142. {
  2143. * EraseRect()
  2144. *
  2145. * Availability:
  2146. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2147. * CarbonLib: in CarbonLib 1.0 and later
  2148. * Mac OS X: in version 10.0 and later
  2149. }
  2150. procedure EraseRect(const (*var*) r: Rect); external name '_EraseRect';
  2151. {
  2152. * [Mac]InvertRect()
  2153. *
  2154. * Availability:
  2155. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2156. * CarbonLib: in CarbonLib 1.0 and later
  2157. * Mac OS X: in version 10.0 and later
  2158. }
  2159. procedure InvertRect(const (*var*) r: Rect); external name '_InvertRect';
  2160. {
  2161. * [Mac]FillRect()
  2162. *
  2163. * Availability:
  2164. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2165. * CarbonLib: in CarbonLib 1.0 and later
  2166. * Mac OS X: in version 10.0 and later
  2167. }
  2168. procedure FillRect(const (*var*) r: Rect; const (*var*) pat: Pattern); external name '_FillRect';
  2169. {
  2170. * FrameOval()
  2171. *
  2172. * Availability:
  2173. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2174. * CarbonLib: in CarbonLib 1.0 and later
  2175. * Mac OS X: in version 10.0 and later
  2176. }
  2177. procedure FrameOval(const (*var*) r: Rect); external name '_FrameOval';
  2178. {
  2179. * PaintOval()
  2180. *
  2181. * Availability:
  2182. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2183. * CarbonLib: in CarbonLib 1.0 and later
  2184. * Mac OS X: in version 10.0 and later
  2185. }
  2186. procedure PaintOval(const (*var*) r: Rect); external name '_PaintOval';
  2187. {
  2188. * EraseOval()
  2189. *
  2190. * Availability:
  2191. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2192. * CarbonLib: in CarbonLib 1.0 and later
  2193. * Mac OS X: in version 10.0 and later
  2194. }
  2195. procedure EraseOval(const (*var*) r: Rect); external name '_EraseOval';
  2196. {
  2197. * InvertOval()
  2198. *
  2199. * Availability:
  2200. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2201. * CarbonLib: in CarbonLib 1.0 and later
  2202. * Mac OS X: in version 10.0 and later
  2203. }
  2204. procedure InvertOval(const (*var*) r: Rect); external name '_InvertOval';
  2205. {
  2206. * FillOval()
  2207. *
  2208. * Availability:
  2209. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2210. * CarbonLib: in CarbonLib 1.0 and later
  2211. * Mac OS X: in version 10.0 and later
  2212. }
  2213. procedure FillOval(const (*var*) r: Rect; const (*var*) pat: Pattern); external name '_FillOval';
  2214. {
  2215. * FrameRoundRect()
  2216. *
  2217. * Availability:
  2218. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2219. * CarbonLib: in CarbonLib 1.0 and later
  2220. * Mac OS X: in version 10.0 and later
  2221. }
  2222. procedure FrameRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16); external name '_FrameRoundRect';
  2223. {
  2224. * PaintRoundRect()
  2225. *
  2226. * Availability:
  2227. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2228. * CarbonLib: in CarbonLib 1.0 and later
  2229. * Mac OS X: in version 10.0 and later
  2230. }
  2231. procedure PaintRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16); external name '_PaintRoundRect';
  2232. {
  2233. * EraseRoundRect()
  2234. *
  2235. * Availability:
  2236. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2237. * CarbonLib: in CarbonLib 1.0 and later
  2238. * Mac OS X: in version 10.0 and later
  2239. }
  2240. procedure EraseRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16); external name '_EraseRoundRect';
  2241. {
  2242. * InvertRoundRect()
  2243. *
  2244. * Availability:
  2245. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2246. * CarbonLib: in CarbonLib 1.0 and later
  2247. * Mac OS X: in version 10.0 and later
  2248. }
  2249. procedure InvertRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16); external name '_InvertRoundRect';
  2250. {
  2251. * FillRoundRect()
  2252. *
  2253. * Availability:
  2254. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2255. * CarbonLib: in CarbonLib 1.0 and later
  2256. * Mac OS X: in version 10.0 and later
  2257. }
  2258. procedure FillRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16; const (*var*) pat: Pattern); external name '_FillRoundRect';
  2259. {
  2260. * FrameArc()
  2261. *
  2262. * Availability:
  2263. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2264. * CarbonLib: in CarbonLib 1.0 and later
  2265. * Mac OS X: in version 10.0 and later
  2266. }
  2267. procedure FrameArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16); external name '_FrameArc';
  2268. {
  2269. * PaintArc()
  2270. *
  2271. * Availability:
  2272. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2273. * CarbonLib: in CarbonLib 1.0 and later
  2274. * Mac OS X: in version 10.0 and later
  2275. }
  2276. procedure PaintArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16); external name '_PaintArc';
  2277. {
  2278. * EraseArc()
  2279. *
  2280. * Availability:
  2281. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2282. * CarbonLib: in CarbonLib 1.0 and later
  2283. * Mac OS X: in version 10.0 and later
  2284. }
  2285. procedure EraseArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16); external name '_EraseArc';
  2286. {
  2287. * InvertArc()
  2288. *
  2289. * Availability:
  2290. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2291. * CarbonLib: in CarbonLib 1.0 and later
  2292. * Mac OS X: in version 10.0 and later
  2293. }
  2294. procedure InvertArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16); external name '_InvertArc';
  2295. {
  2296. * FillArc()
  2297. *
  2298. * Availability:
  2299. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2300. * CarbonLib: in CarbonLib 1.0 and later
  2301. * Mac OS X: in version 10.0 and later
  2302. }
  2303. procedure FillArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16; const (*var*) pat: Pattern); external name '_FillArc';
  2304. {
  2305. * NewRgn()
  2306. *
  2307. * Availability:
  2308. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2309. * CarbonLib: in CarbonLib 1.0 and later
  2310. * Mac OS X: in version 10.0 and later
  2311. }
  2312. function NewRgn: RgnHandle; external name '_NewRgn';
  2313. {
  2314. * OpenRgn()
  2315. *
  2316. * Availability:
  2317. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2318. * CarbonLib: in CarbonLib 1.0 and later
  2319. * Mac OS X: in version 10.0 and later
  2320. }
  2321. procedure OpenRgn; external name '_OpenRgn';
  2322. {
  2323. * CloseRgn()
  2324. *
  2325. * Availability:
  2326. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2327. * CarbonLib: in CarbonLib 1.0 and later
  2328. * Mac OS X: in version 10.0 and later
  2329. }
  2330. procedure CloseRgn(dstRgn: RgnHandle); external name '_CloseRgn';
  2331. {
  2332. * BitMapToRegion()
  2333. *
  2334. * Availability:
  2335. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2336. * CarbonLib: in CarbonLib 1.0 and later
  2337. * Mac OS X: in version 10.0 and later
  2338. }
  2339. function BitMapToRegion(region: RgnHandle; const (*var*) bMap: BitMap): OSErr; external name '_BitMapToRegion';
  2340. {
  2341. * HandleToRgn()
  2342. *
  2343. * Availability:
  2344. * Non-Carbon CFM: not available
  2345. * CarbonLib: in CarbonLib 1.1 and later
  2346. * Mac OS X: in version 10.0 and later
  2347. }
  2348. procedure HandleToRgn(oldRegion: Handle; region: RgnHandle); external name '_HandleToRgn';
  2349. {
  2350. * RgnToHandle()
  2351. *
  2352. * Availability:
  2353. * Non-Carbon CFM: not available
  2354. * CarbonLib: in CarbonLib 1.3 and later
  2355. * Mac OS X: in version 10.1 and later
  2356. }
  2357. procedure RgnToHandle(region: RgnHandle; flattenedRgnDataHdl: Handle); external name '_RgnToHandle';
  2358. {
  2359. * DisposeRgn()
  2360. *
  2361. * Availability:
  2362. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2363. * CarbonLib: in CarbonLib 1.0 and later
  2364. * Mac OS X: in version 10.0 and later
  2365. }
  2366. procedure DisposeRgn(rgn: RgnHandle); external name '_DisposeRgn';
  2367. {
  2368. * [Mac]CopyRgn()
  2369. *
  2370. * Availability:
  2371. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2372. * CarbonLib: in CarbonLib 1.0 and later
  2373. * Mac OS X: in version 10.0 and later
  2374. }
  2375. procedure CopyRgn(srcRgn: RgnHandle; dstRgn: RgnHandle); external name '_CopyRgn';
  2376. {
  2377. * SetEmptyRgn()
  2378. *
  2379. * Availability:
  2380. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2381. * CarbonLib: in CarbonLib 1.0 and later
  2382. * Mac OS X: in version 10.0 and later
  2383. }
  2384. procedure SetEmptyRgn(rgn: RgnHandle); external name '_SetEmptyRgn';
  2385. {
  2386. * [Mac]SetRectRgn()
  2387. *
  2388. * Availability:
  2389. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2390. * CarbonLib: in CarbonLib 1.0 and later
  2391. * Mac OS X: in version 10.0 and later
  2392. }
  2393. procedure SetRectRgn(rgn: RgnHandle; left: SInt16; top: SInt16; right: SInt16; bottom: SInt16); external name '_SetRectRgn';
  2394. {
  2395. * RectRgn()
  2396. *
  2397. * Availability:
  2398. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2399. * CarbonLib: in CarbonLib 1.0 and later
  2400. * Mac OS X: in version 10.0 and later
  2401. }
  2402. procedure RectRgn(rgn: RgnHandle; const (*var*) r: Rect); external name '_RectRgn';
  2403. {
  2404. * [Mac]OffsetRgn()
  2405. *
  2406. * Availability:
  2407. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2408. * CarbonLib: in CarbonLib 1.0 and later
  2409. * Mac OS X: in version 10.0 and later
  2410. }
  2411. procedure OffsetRgn(rgn: RgnHandle; dh: SInt16; dv: SInt16); external name '_OffsetRgn';
  2412. {
  2413. * InsetRgn()
  2414. *
  2415. * Availability:
  2416. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2417. * CarbonLib: in CarbonLib 1.0 and later
  2418. * Mac OS X: in version 10.0 and later
  2419. }
  2420. procedure InsetRgn(rgn: RgnHandle; dh: SInt16; dv: SInt16); external name '_InsetRgn';
  2421. {
  2422. * SectRgn()
  2423. *
  2424. * Availability:
  2425. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2426. * CarbonLib: in CarbonLib 1.0 and later
  2427. * Mac OS X: in version 10.0 and later
  2428. }
  2429. procedure SectRgn(srcRgnA: RgnHandle; srcRgnB: RgnHandle; dstRgn: RgnHandle); external name '_SectRgn';
  2430. {
  2431. * [Mac]UnionRgn()
  2432. *
  2433. * Availability:
  2434. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2435. * CarbonLib: in CarbonLib 1.0 and later
  2436. * Mac OS X: in version 10.0 and later
  2437. }
  2438. procedure UnionRgn(srcRgnA: RgnHandle; srcRgnB: RgnHandle; dstRgn: RgnHandle); external name '_UnionRgn';
  2439. {
  2440. * DiffRgn()
  2441. *
  2442. * Availability:
  2443. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2444. * CarbonLib: in CarbonLib 1.0 and later
  2445. * Mac OS X: in version 10.0 and later
  2446. }
  2447. procedure DiffRgn(srcRgnA: RgnHandle; srcRgnB: RgnHandle; dstRgn: RgnHandle); external name '_DiffRgn';
  2448. {
  2449. * [Mac]XorRgn()
  2450. *
  2451. * Availability:
  2452. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2453. * CarbonLib: in CarbonLib 1.0 and later
  2454. * Mac OS X: in version 10.0 and later
  2455. }
  2456. procedure XorRgn(srcRgnA: RgnHandle; srcRgnB: RgnHandle; dstRgn: RgnHandle); external name '_XorRgn';
  2457. {
  2458. * RectInRgn()
  2459. *
  2460. * Availability:
  2461. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2462. * CarbonLib: in CarbonLib 1.0 and later
  2463. * Mac OS X: in version 10.0 and later
  2464. }
  2465. function RectInRgn(const (*var*) r: Rect; rgn: RgnHandle): boolean; external name '_RectInRgn';
  2466. {
  2467. * [Mac]EqualRgn()
  2468. *
  2469. * Availability:
  2470. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2471. * CarbonLib: in CarbonLib 1.0 and later
  2472. * Mac OS X: in version 10.0 and later
  2473. }
  2474. function EqualRgn(rgnA: RgnHandle; rgnB: RgnHandle): boolean; external name '_EqualRgn';
  2475. {
  2476. * EmptyRgn()
  2477. *
  2478. * Availability:
  2479. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2480. * CarbonLib: in CarbonLib 1.0 and later
  2481. * Mac OS X: in version 10.0 and later
  2482. }
  2483. function EmptyRgn(rgn: RgnHandle): boolean; external name '_EmptyRgn';
  2484. {
  2485. * [Mac]FrameRgn()
  2486. *
  2487. * Availability:
  2488. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2489. * CarbonLib: in CarbonLib 1.0 and later
  2490. * Mac OS X: in version 10.0 and later
  2491. }
  2492. procedure FrameRgn(rgn: RgnHandle); external name '_FrameRgn';
  2493. {
  2494. * [Mac]PaintRgn()
  2495. *
  2496. * Availability:
  2497. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2498. * CarbonLib: in CarbonLib 1.0 and later
  2499. * Mac OS X: in version 10.0 and later
  2500. }
  2501. procedure PaintRgn(rgn: RgnHandle); external name '_PaintRgn';
  2502. {
  2503. * EraseRgn()
  2504. *
  2505. * Availability:
  2506. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2507. * CarbonLib: in CarbonLib 1.0 and later
  2508. * Mac OS X: in version 10.0 and later
  2509. }
  2510. procedure EraseRgn(rgn: RgnHandle); external name '_EraseRgn';
  2511. {
  2512. * [Mac]InvertRgn()
  2513. *
  2514. * Availability:
  2515. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2516. * CarbonLib: in CarbonLib 1.0 and later
  2517. * Mac OS X: in version 10.0 and later
  2518. }
  2519. procedure InvertRgn(rgn: RgnHandle); external name '_InvertRgn';
  2520. {
  2521. * [Mac]FillRgn()
  2522. *
  2523. * Availability:
  2524. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2525. * CarbonLib: in CarbonLib 1.0 and later
  2526. * Mac OS X: in version 10.0 and later
  2527. }
  2528. procedure FillRgn(rgn: RgnHandle; const (*var*) pat: Pattern); external name '_FillRgn';
  2529. {
  2530. * ScrollRect()
  2531. *
  2532. * Availability:
  2533. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2534. * CarbonLib: in CarbonLib 1.0 and later
  2535. * Mac OS X: in version 10.0 and later
  2536. }
  2537. procedure ScrollRect(const (*var*) r: Rect; dh: SInt16; dv: SInt16; updateRgn: RgnHandle); external name '_ScrollRect';
  2538. {
  2539. * CopyBits()
  2540. *
  2541. * Availability:
  2542. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2543. * CarbonLib: in CarbonLib 1.0 and later
  2544. * Mac OS X: in version 10.0 and later
  2545. }
  2546. procedure CopyBits(const (*var*) srcBits: BitMap; const (*var*) dstBits: BitMap; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect; mode: SInt16; maskRgn: RgnHandle); external name '_CopyBits';
  2547. {
  2548. * SeedFill()
  2549. *
  2550. * Availability:
  2551. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2552. * CarbonLib: in CarbonLib 1.0 and later
  2553. * Mac OS X: in version 10.0 and later
  2554. }
  2555. procedure SeedFill(srcPtr: UnivPtr; dstPtr: UnivPtr; srcRow: SInt16; dstRow: SInt16; height: SInt16; words: SInt16; seedH: SInt16; seedV: SInt16); external name '_SeedFill';
  2556. {
  2557. * CalcMask()
  2558. *
  2559. * Availability:
  2560. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2561. * CarbonLib: in CarbonLib 1.0 and later
  2562. * Mac OS X: in version 10.0 and later
  2563. }
  2564. procedure CalcMask(srcPtr: UnivPtr; dstPtr: UnivPtr; srcRow: SInt16; dstRow: SInt16; height: SInt16; words: SInt16); external name '_CalcMask';
  2565. {
  2566. * CopyMask()
  2567. *
  2568. * Availability:
  2569. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2570. * CarbonLib: in CarbonLib 1.0 and later
  2571. * Mac OS X: in version 10.0 and later
  2572. }
  2573. procedure CopyMask(const (*var*) srcBits: BitMap; const (*var*) maskBits: BitMap; const (*var*) dstBits: BitMap; const (*var*) srcRect: Rect; const (*var*) maskRect: Rect; const (*var*) dstRect: Rect); external name '_CopyMask';
  2574. {
  2575. * OpenPicture()
  2576. *
  2577. * Availability:
  2578. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2579. * CarbonLib: in CarbonLib 1.0 and later
  2580. * Mac OS X: in version 10.0 and later
  2581. }
  2582. function OpenPicture(const (*var*) picFrame: Rect): PicHandle; external name '_OpenPicture';
  2583. {
  2584. * PicComment()
  2585. *
  2586. * Availability:
  2587. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2588. * CarbonLib: in CarbonLib 1.0 and later
  2589. * Mac OS X: in version 10.0 and later
  2590. }
  2591. procedure PicComment(kind: SInt16; dataSize: SInt16; dataHandle: Handle); external name '_PicComment';
  2592. {
  2593. * ClosePicture()
  2594. *
  2595. * Availability:
  2596. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2597. * CarbonLib: in CarbonLib 1.0 and later
  2598. * Mac OS X: in version 10.0 and later
  2599. }
  2600. procedure ClosePicture; external name '_ClosePicture';
  2601. {
  2602. * DrawPicture()
  2603. *
  2604. * Availability:
  2605. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2606. * CarbonLib: in CarbonLib 1.0 and later
  2607. * Mac OS X: in version 10.0 and later
  2608. }
  2609. procedure DrawPicture(myPicture: PicHandle; const (*var*) dstRect: Rect); external name '_DrawPicture';
  2610. {
  2611. * KillPicture()
  2612. *
  2613. * Availability:
  2614. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2615. * CarbonLib: in CarbonLib 1.0 and later
  2616. * Mac OS X: in version 10.0 and later
  2617. }
  2618. procedure KillPicture(myPicture: PicHandle); external name '_KillPicture';
  2619. {
  2620. * OpenPoly()
  2621. *
  2622. * Availability:
  2623. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2624. * CarbonLib: in CarbonLib 1.0 and later
  2625. * Mac OS X: in version 10.0 and later
  2626. }
  2627. function OpenPoly: PolyHandle; external name '_OpenPoly';
  2628. {
  2629. * ClosePoly()
  2630. *
  2631. * Availability:
  2632. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2633. * CarbonLib: in CarbonLib 1.0 and later
  2634. * Mac OS X: in version 10.0 and later
  2635. }
  2636. procedure ClosePoly; external name '_ClosePoly';
  2637. {
  2638. * KillPoly()
  2639. *
  2640. * Availability:
  2641. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2642. * CarbonLib: in CarbonLib 1.0 and later
  2643. * Mac OS X: in version 10.0 and later
  2644. }
  2645. procedure KillPoly(poly: PolyHandle); external name '_KillPoly';
  2646. {
  2647. * OffsetPoly()
  2648. *
  2649. * Availability:
  2650. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2651. * CarbonLib: in CarbonLib 1.0 and later
  2652. * Mac OS X: in version 10.0 and later
  2653. }
  2654. procedure OffsetPoly(poly: PolyHandle; dh: SInt16; dv: SInt16); external name '_OffsetPoly';
  2655. {
  2656. * FramePoly()
  2657. *
  2658. * Availability:
  2659. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2660. * CarbonLib: in CarbonLib 1.0 and later
  2661. * Mac OS X: in version 10.0 and later
  2662. }
  2663. procedure FramePoly(poly: PolyHandle); external name '_FramePoly';
  2664. {
  2665. * PaintPoly()
  2666. *
  2667. * Availability:
  2668. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2669. * CarbonLib: in CarbonLib 1.0 and later
  2670. * Mac OS X: in version 10.0 and later
  2671. }
  2672. procedure PaintPoly(poly: PolyHandle); external name '_PaintPoly';
  2673. {
  2674. * ErasePoly()
  2675. *
  2676. * Availability:
  2677. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2678. * CarbonLib: in CarbonLib 1.0 and later
  2679. * Mac OS X: in version 10.0 and later
  2680. }
  2681. procedure ErasePoly(poly: PolyHandle); external name '_ErasePoly';
  2682. {
  2683. * InvertPoly()
  2684. *
  2685. * Availability:
  2686. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2687. * CarbonLib: in CarbonLib 1.0 and later
  2688. * Mac OS X: in version 10.0 and later
  2689. }
  2690. procedure InvertPoly(poly: PolyHandle); external name '_InvertPoly';
  2691. {
  2692. * FillPoly()
  2693. *
  2694. * Availability:
  2695. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2696. * CarbonLib: in CarbonLib 1.0 and later
  2697. * Mac OS X: in version 10.0 and later
  2698. }
  2699. procedure FillPoly(poly: PolyHandle; const (*var*) pat: Pattern); external name '_FillPoly';
  2700. {
  2701. * SetPt()
  2702. *
  2703. * Availability:
  2704. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2705. * CarbonLib: in CarbonLib 1.0 and later
  2706. * Mac OS X: in version 10.0 and later
  2707. }
  2708. procedure SetPt(var pt: Point; h: SInt16; v: SInt16); external name '_SetPt';
  2709. {
  2710. * LocalToGlobal()
  2711. *
  2712. * Availability:
  2713. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2714. * CarbonLib: in CarbonLib 1.0 and later
  2715. * Mac OS X: in version 10.0 and later
  2716. }
  2717. procedure LocalToGlobal(var pt: Point); external name '_LocalToGlobal';
  2718. {
  2719. * GlobalToLocal()
  2720. *
  2721. * Availability:
  2722. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2723. * CarbonLib: in CarbonLib 1.0 and later
  2724. * Mac OS X: in version 10.0 and later
  2725. }
  2726. procedure GlobalToLocal(var pt: Point); external name '_GlobalToLocal';
  2727. {
  2728. * Random()
  2729. *
  2730. * Availability:
  2731. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2732. * CarbonLib: in CarbonLib 1.0 and later
  2733. * Mac OS X: in version 10.0 and later
  2734. }
  2735. function Random: SInt16; external name '_Random';
  2736. {
  2737. * StuffHex()
  2738. *
  2739. * Availability:
  2740. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2741. * CarbonLib: in CarbonLib 1.0 and later
  2742. * Mac OS X: in version 10.0 and later
  2743. }
  2744. procedure StuffHex(thingPtr: UnivPtr; const (*var*) s: Str255); external name '_StuffHex';
  2745. {
  2746. * [Mac]GetPixel()
  2747. *
  2748. * Availability:
  2749. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2750. * CarbonLib: in CarbonLib 1.0 and later
  2751. * Mac OS X: in version 10.0 and later
  2752. }
  2753. function GetPixel(h: SInt16; v: SInt16): boolean; external name '_GetPixel';
  2754. {
  2755. * ScalePt()
  2756. *
  2757. * Availability:
  2758. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2759. * CarbonLib: in CarbonLib 1.0 and later
  2760. * Mac OS X: in version 10.0 and later
  2761. }
  2762. procedure ScalePt(var pt: Point; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect); external name '_ScalePt';
  2763. {
  2764. * MapPt()
  2765. *
  2766. * Availability:
  2767. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2768. * CarbonLib: in CarbonLib 1.0 and later
  2769. * Mac OS X: in version 10.0 and later
  2770. }
  2771. procedure MapPt(var pt: Point; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect); external name '_MapPt';
  2772. {
  2773. * MapRect()
  2774. *
  2775. * Availability:
  2776. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2777. * CarbonLib: in CarbonLib 1.0 and later
  2778. * Mac OS X: in version 10.0 and later
  2779. }
  2780. procedure MapRect(var r: Rect; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect); external name '_MapRect';
  2781. {
  2782. * MapRgn()
  2783. *
  2784. * Availability:
  2785. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2786. * CarbonLib: in CarbonLib 1.0 and later
  2787. * Mac OS X: in version 10.0 and later
  2788. }
  2789. procedure MapRgn(rgn: RgnHandle; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect); external name '_MapRgn';
  2790. {
  2791. * MapPoly()
  2792. *
  2793. * Availability:
  2794. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2795. * CarbonLib: in CarbonLib 1.0 and later
  2796. * Mac OS X: in version 10.0 and later
  2797. }
  2798. procedure MapPoly(poly: PolyHandle; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect); external name '_MapPoly';
  2799. {
  2800. * SetStdProcs()
  2801. *
  2802. * Availability:
  2803. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2804. * CarbonLib: in CarbonLib 1.0 and later
  2805. * Mac OS X: in version 10.0 and later
  2806. }
  2807. procedure SetStdProcs(var procs: QDProcs); external name '_SetStdProcs';
  2808. {
  2809. * StdRect()
  2810. *
  2811. * Availability:
  2812. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2813. * CarbonLib: in CarbonLib 1.0 and later
  2814. * Mac OS X: in version 10.0 and later
  2815. }
  2816. procedure StdRect(verb: GrafVerb; const (*var*) r: Rect); external name '_StdRect';
  2817. {
  2818. * StdRRect()
  2819. *
  2820. * Availability:
  2821. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2822. * CarbonLib: in CarbonLib 1.0 and later
  2823. * Mac OS X: in version 10.0 and later
  2824. }
  2825. procedure StdRRect(verb: GrafVerb; const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16); external name '_StdRRect';
  2826. {
  2827. * StdOval()
  2828. *
  2829. * Availability:
  2830. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2831. * CarbonLib: in CarbonLib 1.0 and later
  2832. * Mac OS X: in version 10.0 and later
  2833. }
  2834. procedure StdOval(verb: GrafVerb; const (*var*) r: Rect); external name '_StdOval';
  2835. {
  2836. * StdArc()
  2837. *
  2838. * Availability:
  2839. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2840. * CarbonLib: in CarbonLib 1.0 and later
  2841. * Mac OS X: in version 10.0 and later
  2842. }
  2843. procedure StdArc(verb: GrafVerb; const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16); external name '_StdArc';
  2844. {
  2845. * StdPoly()
  2846. *
  2847. * Availability:
  2848. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2849. * CarbonLib: in CarbonLib 1.0 and later
  2850. * Mac OS X: in version 10.0 and later
  2851. }
  2852. procedure StdPoly(verb: GrafVerb; poly: PolyHandle); external name '_StdPoly';
  2853. {
  2854. * StdRgn()
  2855. *
  2856. * Availability:
  2857. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2858. * CarbonLib: in CarbonLib 1.0 and later
  2859. * Mac OS X: in version 10.0 and later
  2860. }
  2861. procedure StdRgn(verb: GrafVerb; rgn: RgnHandle); external name '_StdRgn';
  2862. {
  2863. * StdBits()
  2864. *
  2865. * Availability:
  2866. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2867. * CarbonLib: in CarbonLib 1.0 and later
  2868. * Mac OS X: in version 10.0 and later
  2869. }
  2870. procedure StdBits(const (*var*) srcBits: BitMap; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect; mode: SInt16; maskRgn: RgnHandle); external name '_StdBits';
  2871. {
  2872. * StdComment()
  2873. *
  2874. * Availability:
  2875. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2876. * CarbonLib: in CarbonLib 1.0 and later
  2877. * Mac OS X: in version 10.0 and later
  2878. }
  2879. procedure StdComment(kind: SInt16; dataSize: SInt16; dataHandle: Handle); external name '_StdComment';
  2880. {
  2881. * StdGetPic()
  2882. *
  2883. * Availability:
  2884. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2885. * CarbonLib: in CarbonLib 1.0 and later
  2886. * Mac OS X: in version 10.0 and later
  2887. }
  2888. procedure StdGetPic(dataPtr: UnivPtr; byteCount: SInt16); external name '_StdGetPic';
  2889. {
  2890. * StdPutPic()
  2891. *
  2892. * Availability:
  2893. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2894. * CarbonLib: in CarbonLib 1.0 and later
  2895. * Mac OS X: in version 10.0 and later
  2896. }
  2897. procedure StdPutPic(dataPtr: UnivPtr; byteCount: SInt16); external name '_StdPutPic';
  2898. {
  2899. * StdOpcode()
  2900. *
  2901. * Availability:
  2902. * Non-Carbon CFM: not available
  2903. * CarbonLib: in CarbonLib 1.0 and later
  2904. * Mac OS X: in version 10.0 and later
  2905. }
  2906. procedure StdOpcode(const (*var*) fromRect: Rect; const (*var*) toRect: Rect; opcode: UInt16; version: SInt16); external name '_StdOpcode';
  2907. {
  2908. * AddPt()
  2909. *
  2910. * Availability:
  2911. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2912. * CarbonLib: in CarbonLib 1.0 and later
  2913. * Mac OS X: in version 10.0 and later
  2914. }
  2915. procedure AddPt(src: Point; var dst: Point); external name '_AddPt';
  2916. {
  2917. * EqualPt()
  2918. *
  2919. * Availability:
  2920. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2921. * CarbonLib: in CarbonLib 1.0 and later
  2922. * Mac OS X: in version 10.0 and later
  2923. }
  2924. function EqualPt(pt1: Point; pt2: Point): boolean; external name '_EqualPt';
  2925. {
  2926. * [Mac]PtInRect()
  2927. *
  2928. * Availability:
  2929. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2930. * CarbonLib: in CarbonLib 1.0 and later
  2931. * Mac OS X: in version 10.0 and later
  2932. }
  2933. function PtInRect(pt: Point; const (*var*) r: Rect): boolean; external name '_PtInRect';
  2934. {
  2935. * Pt2Rect()
  2936. *
  2937. * Availability:
  2938. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2939. * CarbonLib: in CarbonLib 1.0 and later
  2940. * Mac OS X: in version 10.0 and later
  2941. }
  2942. procedure Pt2Rect(pt1: Point; pt2: Point; var dstRect: Rect); external name '_Pt2Rect';
  2943. {
  2944. * PtToAngle()
  2945. *
  2946. * Availability:
  2947. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2948. * CarbonLib: in CarbonLib 1.0 and later
  2949. * Mac OS X: in version 10.0 and later
  2950. }
  2951. procedure PtToAngle(const (*var*) r: Rect; pt: Point; var angle: SInt16); external name '_PtToAngle';
  2952. {
  2953. * SubPt()
  2954. *
  2955. * Availability:
  2956. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2957. * CarbonLib: in CarbonLib 1.0 and later
  2958. * Mac OS X: in version 10.0 and later
  2959. }
  2960. procedure SubPt(src: Point; var dst: Point); external name '_SubPt';
  2961. {
  2962. * PtInRgn()
  2963. *
  2964. * Availability:
  2965. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2966. * CarbonLib: in CarbonLib 1.0 and later
  2967. * Mac OS X: in version 10.0 and later
  2968. }
  2969. function PtInRgn(pt: Point; rgn: RgnHandle): boolean; external name '_PtInRgn';
  2970. {
  2971. * StdLine()
  2972. *
  2973. * Availability:
  2974. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2975. * CarbonLib: in CarbonLib 1.0 and later
  2976. * Mac OS X: in version 10.0 and later
  2977. }
  2978. procedure StdLine(newPt: Point); external name '_StdLine';
  2979. {$ifc CALL_NOT_IN_CARBON}
  2980. {
  2981. * OpenCPort()
  2982. *
  2983. * Availability:
  2984. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2985. * CarbonLib: not available
  2986. * Mac OS X: not available
  2987. }
  2988. procedure OpenCPort(port: CGrafPtr); external name '_OpenCPort';
  2989. {
  2990. * InitCPort()
  2991. *
  2992. * Availability:
  2993. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2994. * CarbonLib: not available
  2995. * Mac OS X: not available
  2996. }
  2997. procedure InitCPort(port: CGrafPtr); external name '_InitCPort';
  2998. {
  2999. * CloseCPort()
  3000. *
  3001. * Availability:
  3002. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3003. * CarbonLib: not available
  3004. * Mac OS X: not available
  3005. }
  3006. procedure CloseCPort(port: CGrafPtr); external name '_CloseCPort';
  3007. {$endc} {CALL_NOT_IN_CARBON}
  3008. {
  3009. * NewPixMap()
  3010. *
  3011. * Availability:
  3012. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3013. * CarbonLib: in CarbonLib 1.0 and later
  3014. * Mac OS X: in version 10.0 and later
  3015. }
  3016. function NewPixMap: PixMapHandle; external name '_NewPixMap';
  3017. {
  3018. * DisposePixMap()
  3019. *
  3020. * Availability:
  3021. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3022. * CarbonLib: in CarbonLib 1.0 and later
  3023. * Mac OS X: in version 10.0 and later
  3024. }
  3025. procedure DisposePixMap(pm: PixMapHandle); external name '_DisposePixMap';
  3026. {
  3027. * CopyPixMap()
  3028. *
  3029. * Availability:
  3030. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3031. * CarbonLib: in CarbonLib 1.0 and later
  3032. * Mac OS X: in version 10.0 and later
  3033. }
  3034. procedure CopyPixMap(srcPM: PixMapHandle; dstPM: PixMapHandle); external name '_CopyPixMap';
  3035. {
  3036. * NewPixPat()
  3037. *
  3038. * Availability:
  3039. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3040. * CarbonLib: in CarbonLib 1.0 and later
  3041. * Mac OS X: in version 10.0 and later
  3042. }
  3043. function NewPixPat: PixPatHandle; external name '_NewPixPat';
  3044. {
  3045. * DisposePixPat()
  3046. *
  3047. * Availability:
  3048. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3049. * CarbonLib: in CarbonLib 1.0 and later
  3050. * Mac OS X: in version 10.0 and later
  3051. }
  3052. procedure DisposePixPat(pp: PixPatHandle); external name '_DisposePixPat';
  3053. {
  3054. * CopyPixPat()
  3055. *
  3056. * Availability:
  3057. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3058. * CarbonLib: in CarbonLib 1.0 and later
  3059. * Mac OS X: in version 10.0 and later
  3060. }
  3061. procedure CopyPixPat(srcPP: PixPatHandle; dstPP: PixPatHandle); external name '_CopyPixPat';
  3062. {
  3063. * PenPixPat()
  3064. *
  3065. * Availability:
  3066. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3067. * CarbonLib: in CarbonLib 1.0 and later
  3068. * Mac OS X: in version 10.0 and later
  3069. }
  3070. procedure PenPixPat(pp: PixPatHandle); external name '_PenPixPat';
  3071. {
  3072. * BackPixPat()
  3073. *
  3074. * Availability:
  3075. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3076. * CarbonLib: in CarbonLib 1.0 and later
  3077. * Mac OS X: in version 10.0 and later
  3078. }
  3079. procedure BackPixPat(pp: PixPatHandle); external name '_BackPixPat';
  3080. {
  3081. * GetPixPat()
  3082. *
  3083. * Availability:
  3084. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3085. * CarbonLib: in CarbonLib 1.0 and later
  3086. * Mac OS X: in version 10.0 and later
  3087. }
  3088. function GetPixPat(patID: SInt16): PixPatHandle; external name '_GetPixPat';
  3089. {
  3090. * MakeRGBPat()
  3091. *
  3092. * Availability:
  3093. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3094. * CarbonLib: in CarbonLib 1.0 and later
  3095. * Mac OS X: in version 10.0 and later
  3096. }
  3097. procedure MakeRGBPat(pp: PixPatHandle; const (*var*) myColor: RGBColor); external name '_MakeRGBPat';
  3098. {
  3099. * FillCRect()
  3100. *
  3101. * Availability:
  3102. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3103. * CarbonLib: in CarbonLib 1.0 and later
  3104. * Mac OS X: in version 10.0 and later
  3105. }
  3106. procedure FillCRect(const (*var*) r: Rect; pp: PixPatHandle); external name '_FillCRect';
  3107. {
  3108. * FillCOval()
  3109. *
  3110. * Availability:
  3111. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3112. * CarbonLib: in CarbonLib 1.0 and later
  3113. * Mac OS X: in version 10.0 and later
  3114. }
  3115. procedure FillCOval(const (*var*) r: Rect; pp: PixPatHandle); external name '_FillCOval';
  3116. {
  3117. * FillCRoundRect()
  3118. *
  3119. * Availability:
  3120. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3121. * CarbonLib: in CarbonLib 1.0 and later
  3122. * Mac OS X: in version 10.0 and later
  3123. }
  3124. procedure FillCRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16; pp: PixPatHandle); external name '_FillCRoundRect';
  3125. {
  3126. * FillCArc()
  3127. *
  3128. * Availability:
  3129. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3130. * CarbonLib: in CarbonLib 1.0 and later
  3131. * Mac OS X: in version 10.0 and later
  3132. }
  3133. procedure FillCArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16; pp: PixPatHandle); external name '_FillCArc';
  3134. {
  3135. * FillCRgn()
  3136. *
  3137. * Availability:
  3138. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3139. * CarbonLib: in CarbonLib 1.0 and later
  3140. * Mac OS X: in version 10.0 and later
  3141. }
  3142. procedure FillCRgn(rgn: RgnHandle; pp: PixPatHandle); external name '_FillCRgn';
  3143. {
  3144. * FillCPoly()
  3145. *
  3146. * Availability:
  3147. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3148. * CarbonLib: in CarbonLib 1.0 and later
  3149. * Mac OS X: in version 10.0 and later
  3150. }
  3151. procedure FillCPoly(poly: PolyHandle; pp: PixPatHandle); external name '_FillCPoly';
  3152. {
  3153. * RGBForeColor()
  3154. *
  3155. * Availability:
  3156. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3157. * CarbonLib: in CarbonLib 1.0 and later
  3158. * Mac OS X: in version 10.0 and later
  3159. }
  3160. procedure RGBForeColor(const (*var*) color: RGBColor); external name '_RGBForeColor';
  3161. {
  3162. * RGBBackColor()
  3163. *
  3164. * Availability:
  3165. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3166. * CarbonLib: in CarbonLib 1.0 and later
  3167. * Mac OS X: in version 10.0 and later
  3168. }
  3169. procedure RGBBackColor(const (*var*) color: RGBColor); external name '_RGBBackColor';
  3170. {
  3171. * SetCPixel()
  3172. *
  3173. * Availability:
  3174. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3175. * CarbonLib: in CarbonLib 1.0 and later
  3176. * Mac OS X: in version 10.0 and later
  3177. }
  3178. procedure SetCPixel(h: SInt16; v: SInt16; const (*var*) cPix: RGBColor); external name '_SetCPixel';
  3179. {
  3180. * SetPortPix()
  3181. *
  3182. * Availability:
  3183. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3184. * CarbonLib: in CarbonLib 1.0 and later
  3185. * Mac OS X: in version 10.0 and later
  3186. }
  3187. procedure SetPortPix(pm: PixMapHandle); external name '_SetPortPix';
  3188. {
  3189. * GetCPixel()
  3190. *
  3191. * Availability:
  3192. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3193. * CarbonLib: in CarbonLib 1.0 and later
  3194. * Mac OS X: in version 10.0 and later
  3195. }
  3196. procedure GetCPixel(h: SInt16; v: SInt16; var cPix: RGBColor); external name '_GetCPixel';
  3197. {
  3198. * GetForeColor()
  3199. *
  3200. * Availability:
  3201. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3202. * CarbonLib: in CarbonLib 1.0 and later
  3203. * Mac OS X: in version 10.0 and later
  3204. }
  3205. procedure GetForeColor(var color: RGBColor); external name '_GetForeColor';
  3206. {
  3207. * GetBackColor()
  3208. *
  3209. * Availability:
  3210. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3211. * CarbonLib: in CarbonLib 1.0 and later
  3212. * Mac OS X: in version 10.0 and later
  3213. }
  3214. procedure GetBackColor(var color: RGBColor); external name '_GetBackColor';
  3215. {
  3216. * SeedCFill()
  3217. *
  3218. * Availability:
  3219. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3220. * CarbonLib: in CarbonLib 1.0 and later
  3221. * Mac OS X: in version 10.0 and later
  3222. }
  3223. procedure SeedCFill(const (*var*) srcBits: BitMap; const (*var*) dstBits: BitMap; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect; seedH: SInt16; seedV: SInt16; matchProc: ColorSearchUPP; matchData: SInt32); external name '_SeedCFill';
  3224. {
  3225. * CalcCMask()
  3226. *
  3227. * Availability:
  3228. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3229. * CarbonLib: in CarbonLib 1.0 and later
  3230. * Mac OS X: in version 10.0 and later
  3231. }
  3232. procedure CalcCMask(const (*var*) srcBits: BitMap; const (*var*) dstBits: BitMap; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect; const (*var*) seedRGB: RGBColor; matchProc: ColorSearchUPP; matchData: SInt32); external name '_CalcCMask';
  3233. {
  3234. * OpenCPicture()
  3235. *
  3236. * Availability:
  3237. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3238. * CarbonLib: in CarbonLib 1.0 and later
  3239. * Mac OS X: in version 10.0 and later
  3240. }
  3241. function OpenCPicture(const (*var*) newHeader: OpenCPicParams): PicHandle; external name '_OpenCPicture';
  3242. {
  3243. * OpColor()
  3244. *
  3245. * Availability:
  3246. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3247. * CarbonLib: in CarbonLib 1.0 and later
  3248. * Mac OS X: in version 10.0 and later
  3249. }
  3250. procedure OpColor(const (*var*) color: RGBColor); external name '_OpColor';
  3251. {
  3252. * HiliteColor()
  3253. *
  3254. * Availability:
  3255. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3256. * CarbonLib: in CarbonLib 1.0 and later
  3257. * Mac OS X: in version 10.0 and later
  3258. }
  3259. procedure HiliteColor(const (*var*) color: RGBColor); external name '_HiliteColor';
  3260. {
  3261. * DisposeCTable()
  3262. *
  3263. * Availability:
  3264. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3265. * CarbonLib: in CarbonLib 1.0 and later
  3266. * Mac OS X: in version 10.0 and later
  3267. }
  3268. procedure DisposeCTable(cTable: CTabHandle); external name '_DisposeCTable';
  3269. {
  3270. * GetCTable()
  3271. *
  3272. * Availability:
  3273. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3274. * CarbonLib: in CarbonLib 1.0 and later
  3275. * Mac OS X: in version 10.0 and later
  3276. }
  3277. function GetCTable(ctID: SInt16): CTabHandle; external name '_GetCTable';
  3278. {
  3279. * GetCCursor()
  3280. *
  3281. * Availability:
  3282. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3283. * CarbonLib: in CarbonLib 1.0 and later
  3284. * Mac OS X: in version 10.0 and later
  3285. }
  3286. function GetCCursor(crsrID: SInt16): CCrsrHandle; external name '_GetCCursor';
  3287. {
  3288. * SetCCursor()
  3289. *
  3290. * Availability:
  3291. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3292. * CarbonLib: in CarbonLib 1.0 and later
  3293. * Mac OS X: in version 10.0 and later
  3294. }
  3295. procedure SetCCursor(cCrsr: CCrsrHandle); external name '_SetCCursor';
  3296. {
  3297. * AllocCursor()
  3298. *
  3299. * Availability:
  3300. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3301. * CarbonLib: in CarbonLib 1.0 and later
  3302. * Mac OS X: in version 10.0 and later
  3303. }
  3304. procedure AllocCursor; external name '_AllocCursor';
  3305. {
  3306. * DisposeCCursor()
  3307. *
  3308. * Availability:
  3309. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3310. * CarbonLib: in CarbonLib 1.0 and later
  3311. * Mac OS X: in version 10.0 and later
  3312. }
  3313. procedure DisposeCCursor(cCrsr: CCrsrHandle); external name '_DisposeCCursor';
  3314. { GetCIcon(), PlotCIcon(), and DisposeCIcon() moved to Icons.h }
  3315. {
  3316. * SetStdCProcs()
  3317. *
  3318. * Availability:
  3319. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3320. * CarbonLib: in CarbonLib 1.0 and later
  3321. * Mac OS X: in version 10.0 and later
  3322. }
  3323. procedure SetStdCProcs(var procs: CQDProcs); external name '_SetStdCProcs';
  3324. {
  3325. * GetMaxDevice()
  3326. *
  3327. * Availability:
  3328. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3329. * CarbonLib: in CarbonLib 1.0 and later
  3330. * Mac OS X: in version 10.0 and later
  3331. }
  3332. function GetMaxDevice(const (*var*) globalRect: Rect): GDHandle; external name '_GetMaxDevice';
  3333. {
  3334. * GetCTSeed()
  3335. *
  3336. * Availability:
  3337. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3338. * CarbonLib: in CarbonLib 1.0 and later
  3339. * Mac OS X: in version 10.0 and later
  3340. }
  3341. function GetCTSeed: SInt32; external name '_GetCTSeed';
  3342. {
  3343. * GetDeviceList()
  3344. *
  3345. * Availability:
  3346. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3347. * CarbonLib: in CarbonLib 1.0 and later
  3348. * Mac OS X: in version 10.0 and later
  3349. }
  3350. function GetDeviceList: GDHandle; external name '_GetDeviceList';
  3351. {
  3352. * GetMainDevice()
  3353. *
  3354. * Availability:
  3355. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3356. * CarbonLib: in CarbonLib 1.0 and later
  3357. * Mac OS X: in version 10.0 and later
  3358. }
  3359. function GetMainDevice: GDHandle; external name '_GetMainDevice';
  3360. {
  3361. * GetNextDevice()
  3362. *
  3363. * Availability:
  3364. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3365. * CarbonLib: in CarbonLib 1.0 and later
  3366. * Mac OS X: in version 10.0 and later
  3367. }
  3368. function GetNextDevice(curDevice: GDHandle): GDHandle; external name '_GetNextDevice';
  3369. {
  3370. * TestDeviceAttribute()
  3371. *
  3372. * Availability:
  3373. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3374. * CarbonLib: in CarbonLib 1.0 and later
  3375. * Mac OS X: in version 10.0 and later
  3376. }
  3377. function TestDeviceAttribute(gdh: GDHandle; attribute: SInt16): boolean; external name '_TestDeviceAttribute';
  3378. {
  3379. * SetDeviceAttribute()
  3380. *
  3381. * Availability:
  3382. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3383. * CarbonLib: in CarbonLib 1.0 and later
  3384. * Mac OS X: in version 10.0 and later
  3385. }
  3386. procedure SetDeviceAttribute(gdh: GDHandle; attribute: SInt16; value: boolean); external name '_SetDeviceAttribute';
  3387. {
  3388. * InitGDevice()
  3389. *
  3390. * Availability:
  3391. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3392. * CarbonLib: in CarbonLib 1.0 and later
  3393. * Mac OS X: in version 10.0 and later
  3394. }
  3395. procedure InitGDevice(qdRefNum: SInt16; mode: SInt32; gdh: GDHandle); external name '_InitGDevice';
  3396. {
  3397. * NewGDevice()
  3398. *
  3399. * Availability:
  3400. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3401. * CarbonLib: in CarbonLib 1.0 and later
  3402. * Mac OS X: in version 10.0 and later
  3403. }
  3404. function NewGDevice(refNum: SInt16; mode: SInt32): GDHandle; external name '_NewGDevice';
  3405. {
  3406. * DisposeGDevice()
  3407. *
  3408. * Availability:
  3409. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3410. * CarbonLib: in CarbonLib 1.0 and later
  3411. * Mac OS X: in version 10.0 and later
  3412. }
  3413. procedure DisposeGDevice(gdh: GDHandle); external name '_DisposeGDevice';
  3414. {
  3415. * SetGDevice()
  3416. *
  3417. * Availability:
  3418. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3419. * CarbonLib: in CarbonLib 1.0 and later
  3420. * Mac OS X: in version 10.0 and later
  3421. }
  3422. procedure SetGDevice(gd: GDHandle); external name '_SetGDevice';
  3423. {
  3424. * GetGDevice()
  3425. *
  3426. * Availability:
  3427. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3428. * CarbonLib: in CarbonLib 1.0 and later
  3429. * Mac OS X: in version 10.0 and later
  3430. }
  3431. function GetGDevice: GDHandle; external name '_GetGDevice';
  3432. {
  3433. * Color2Index()
  3434. *
  3435. * Availability:
  3436. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3437. * CarbonLib: in CarbonLib 1.0 and later
  3438. * Mac OS X: in version 10.0 and later
  3439. }
  3440. function Color2Index(const (*var*) myColor: RGBColor): SInt32; external name '_Color2Index';
  3441. {
  3442. * Index2Color()
  3443. *
  3444. * Availability:
  3445. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3446. * CarbonLib: in CarbonLib 1.0 and later
  3447. * Mac OS X: in version 10.0 and later
  3448. }
  3449. procedure Index2Color(index: SInt32; var aColor: RGBColor); external name '_Index2Color';
  3450. {
  3451. * InvertColor()
  3452. *
  3453. * Availability:
  3454. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3455. * CarbonLib: in CarbonLib 1.0 and later
  3456. * Mac OS X: in version 10.0 and later
  3457. }
  3458. procedure InvertColor(var myColor: RGBColor); external name '_InvertColor';
  3459. {
  3460. * RealColor()
  3461. *
  3462. * Availability:
  3463. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3464. * CarbonLib: in CarbonLib 1.0 and later
  3465. * Mac OS X: in version 10.0 and later
  3466. }
  3467. function RealColor(const (*var*) color: RGBColor): boolean; external name '_RealColor';
  3468. {
  3469. * GetSubTable()
  3470. *
  3471. * Availability:
  3472. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3473. * CarbonLib: in CarbonLib 1.0 and later
  3474. * Mac OS X: in version 10.0 and later
  3475. }
  3476. procedure GetSubTable(myColors: CTabHandle; iTabRes: SInt16; targetTbl: CTabHandle); external name '_GetSubTable';
  3477. {
  3478. * MakeITable()
  3479. *
  3480. * Availability:
  3481. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3482. * CarbonLib: in CarbonLib 1.0 and later
  3483. * Mac OS X: in version 10.0 and later
  3484. }
  3485. procedure MakeITable(cTabH: CTabHandle; iTabH: ITabHandle; res: SInt16); external name '_MakeITable';
  3486. {
  3487. * AddSearch()
  3488. *
  3489. * Availability:
  3490. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3491. * CarbonLib: in CarbonLib 1.0 and later
  3492. * Mac OS X: in version 10.0 and later
  3493. }
  3494. procedure AddSearch(searchProc: ColorSearchUPP); external name '_AddSearch';
  3495. {
  3496. * AddComp()
  3497. *
  3498. * Availability:
  3499. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3500. * CarbonLib: in CarbonLib 1.0 and later
  3501. * Mac OS X: in version 10.0 and later
  3502. }
  3503. procedure AddComp(compProc: ColorComplementUPP); external name '_AddComp';
  3504. {
  3505. * DelSearch()
  3506. *
  3507. * Availability:
  3508. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3509. * CarbonLib: in CarbonLib 1.0 and later
  3510. * Mac OS X: in version 10.0 and later
  3511. }
  3512. procedure DelSearch(searchProc: ColorSearchUPP); external name '_DelSearch';
  3513. {
  3514. * DelComp()
  3515. *
  3516. * Availability:
  3517. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3518. * CarbonLib: in CarbonLib 1.0 and later
  3519. * Mac OS X: in version 10.0 and later
  3520. }
  3521. procedure DelComp(compProc: ColorComplementUPP); external name '_DelComp';
  3522. {
  3523. * SetClientID()
  3524. *
  3525. * Availability:
  3526. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3527. * CarbonLib: in CarbonLib 1.0 and later
  3528. * Mac OS X: in version 10.0 and later
  3529. }
  3530. procedure SetClientID(id: SInt16); external name '_SetClientID';
  3531. {
  3532. * ProtectEntry()
  3533. *
  3534. * Availability:
  3535. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3536. * CarbonLib: in CarbonLib 1.0 and later
  3537. * Mac OS X: in version 10.0 and later
  3538. }
  3539. procedure ProtectEntry(index: SInt16; protect: boolean); external name '_ProtectEntry';
  3540. {
  3541. * ReserveEntry()
  3542. *
  3543. * Availability:
  3544. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3545. * CarbonLib: in CarbonLib 1.0 and later
  3546. * Mac OS X: in version 10.0 and later
  3547. }
  3548. procedure ReserveEntry(index: SInt16; reserve: boolean); external name '_ReserveEntry';
  3549. {
  3550. * SetEntries()
  3551. *
  3552. * Availability:
  3553. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3554. * CarbonLib: in CarbonLib 1.0 and later
  3555. * Mac OS X: in version 10.0 and later
  3556. }
  3557. procedure SetEntries(start: SInt16; count: SInt16; var aTable: CSpecArray); external name '_SetEntries';
  3558. {
  3559. * SaveEntries()
  3560. *
  3561. * Availability:
  3562. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3563. * CarbonLib: in CarbonLib 1.0 and later
  3564. * Mac OS X: in version 10.0 and later
  3565. }
  3566. procedure SaveEntries(srcTable: CTabHandle; resultTable: CTabHandle; var selection: ReqListRec); external name '_SaveEntries';
  3567. {
  3568. * RestoreEntries()
  3569. *
  3570. * Availability:
  3571. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3572. * CarbonLib: in CarbonLib 1.0 and later
  3573. * Mac OS X: in version 10.0 and later
  3574. }
  3575. procedure RestoreEntries(srcTable: CTabHandle; dstTable: CTabHandle; var selection: ReqListRec); external name '_RestoreEntries';
  3576. {
  3577. * QDError()
  3578. *
  3579. * Availability:
  3580. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3581. * CarbonLib: in CarbonLib 1.0 and later
  3582. * Mac OS X: in version 10.0 and later
  3583. }
  3584. function QDError: SInt16; external name '_QDError';
  3585. {
  3586. * CopyDeepMask()
  3587. *
  3588. * Availability:
  3589. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3590. * CarbonLib: in CarbonLib 1.0 and later
  3591. * Mac OS X: in version 10.0 and later
  3592. }
  3593. procedure CopyDeepMask(const (*var*) srcBits: BitMap; const (*var*) maskBits: BitMap; const (*var*) dstBits: BitMap; const (*var*) srcRect: Rect; const (*var*) maskRect: Rect; const (*var*) dstRect: Rect; mode: SInt16; maskRgn: RgnHandle); external name '_CopyDeepMask';
  3594. {
  3595. * DeviceLoop()
  3596. *
  3597. * Availability:
  3598. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3599. * CarbonLib: in CarbonLib 1.0 and later
  3600. * Mac OS X: in version 10.0 and later
  3601. }
  3602. procedure DeviceLoop(drawingRgn: RgnHandle; drawingProc: DeviceLoopDrawingUPP; userData: SInt32; flags: DeviceLoopFlags); external name '_DeviceLoop';
  3603. {
  3604. * GetMaskTable()
  3605. *
  3606. * Availability:
  3607. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3608. * CarbonLib: in CarbonLib 1.0 and later
  3609. * Mac OS X: in version 10.0 and later
  3610. }
  3611. function GetMaskTable: Ptr; external name '_GetMaskTable';
  3612. {
  3613. * GetPattern()
  3614. *
  3615. * Availability:
  3616. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3617. * CarbonLib: in CarbonLib 1.0 and later
  3618. * Mac OS X: in version 10.0 and later
  3619. }
  3620. function GetPattern(patternID: SInt16): PatHandle; external name '_GetPattern';
  3621. {
  3622. * [Mac]GetCursor()
  3623. *
  3624. * Availability:
  3625. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3626. * CarbonLib: in CarbonLib 1.0 and later
  3627. * Mac OS X: in version 10.0 and later
  3628. }
  3629. function GetCursor(cursorID: SInt16): CursHandle; external name '_GetCursor';
  3630. {
  3631. * GetPicture()
  3632. *
  3633. * Availability:
  3634. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3635. * CarbonLib: in CarbonLib 1.0 and later
  3636. * Mac OS X: in version 10.0 and later
  3637. }
  3638. function GetPicture(pictureID: SInt16): PicHandle; external name '_GetPicture';
  3639. {
  3640. * DeltaPoint()
  3641. *
  3642. * Availability:
  3643. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3644. * CarbonLib: in CarbonLib 1.0 and later
  3645. * Mac OS X: in version 10.0 and later
  3646. }
  3647. function DeltaPoint(ptA: Point; ptB: Point): SInt32; external name '_DeltaPoint';
  3648. {
  3649. * ShieldCursor()
  3650. *
  3651. * Availability:
  3652. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3653. * CarbonLib: in CarbonLib 1.0 and later
  3654. * Mac OS X: in version 10.0 and later
  3655. }
  3656. procedure ShieldCursor(const (*var*) shieldRect: Rect; offsetPt: Point); external name '_ShieldCursor';
  3657. {
  3658. * ScreenRes()
  3659. *
  3660. * Availability:
  3661. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3662. * CarbonLib: in CarbonLib 1.0 and later
  3663. * Mac OS X: in version 10.0 and later
  3664. }
  3665. procedure ScreenRes(var scrnHRes: SInt16; var scrnVRes: SInt16); external name '_ScreenRes';
  3666. {
  3667. * GetIndPattern()
  3668. *
  3669. * Availability:
  3670. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3671. * CarbonLib: in CarbonLib 1.0 and later
  3672. * Mac OS X: in version 10.0 and later
  3673. }
  3674. procedure GetIndPattern(var thePat: Pattern; patternListID: SInt16; index: SInt16); external name '_GetIndPattern';
  3675. {$ifc OLDROUTINENAMES}
  3676. {$ifc CALL_NOT_IN_CARBON}
  3677. {
  3678. * DisposPixMap()
  3679. *
  3680. * Availability:
  3681. * Non-Carbon CFM: not available
  3682. * CarbonLib: not available
  3683. * Mac OS X: not available
  3684. }
  3685. procedure DisposPixMap(pm: PixMapHandle); external name '_DisposPixMap';
  3686. {
  3687. * DisposPixPat()
  3688. *
  3689. * Availability:
  3690. * Non-Carbon CFM: not available
  3691. * CarbonLib: not available
  3692. * Mac OS X: not available
  3693. }
  3694. procedure DisposPixPat(pp: PixPatHandle); external name '_DisposPixPat';
  3695. {
  3696. * DisposCTable()
  3697. *
  3698. * Availability:
  3699. * Non-Carbon CFM: not available
  3700. * CarbonLib: not available
  3701. * Mac OS X: not available
  3702. }
  3703. procedure DisposCTable(cTable: CTabHandle); external name '_DisposCTable';
  3704. {
  3705. * DisposCCursor()
  3706. *
  3707. * Availability:
  3708. * Non-Carbon CFM: not available
  3709. * CarbonLib: not available
  3710. * Mac OS X: not available
  3711. }
  3712. procedure DisposCCursor(cCrsr: CCrsrHandle); external name '_DisposCCursor';
  3713. {
  3714. * DisposGDevice()
  3715. *
  3716. * Availability:
  3717. * Non-Carbon CFM: not available
  3718. * CarbonLib: not available
  3719. * Mac OS X: not available
  3720. }
  3721. procedure DisposGDevice(gdh: GDHandle); external name '_DisposGDevice';
  3722. {$endc} {CALL_NOT_IN_CARBON}
  3723. {$endc} {OLDROUTINENAMES}
  3724. {
  3725. From ToolUtils.i
  3726. }
  3727. {
  3728. * PackBits()
  3729. *
  3730. * Availability:
  3731. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3732. * CarbonLib: in CarbonLib 1.0 and later
  3733. * Mac OS X: in version 10.0 and later
  3734. }
  3735. procedure PackBits(var srcPtr: Ptr; var dstPtr: Ptr; srcBytes: SInt16); external name '_PackBits';
  3736. {
  3737. * UnpackBits()
  3738. *
  3739. * Availability:
  3740. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3741. * CarbonLib: in CarbonLib 1.0 and later
  3742. * Mac OS X: in version 10.0 and later
  3743. }
  3744. procedure UnpackBits(var srcPtr: Ptr; var dstPtr: Ptr; dstBytes: SInt16); external name '_UnpackBits';
  3745. {
  3746. * SlopeFromAngle()
  3747. *
  3748. * Availability:
  3749. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3750. * CarbonLib: in CarbonLib 1.0 and later
  3751. * Mac OS X: in version 10.0 and later
  3752. }
  3753. function SlopeFromAngle(angle: SInt16): Fixed; external name '_SlopeFromAngle';
  3754. {
  3755. * AngleFromSlope()
  3756. *
  3757. * Availability:
  3758. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3759. * CarbonLib: in CarbonLib 1.0 and later
  3760. * Mac OS X: in version 10.0 and later
  3761. }
  3762. function AngleFromSlope(slope: Fixed): SInt16; external name '_AngleFromSlope';
  3763. { New transfer modes }
  3764. const
  3765. colorXorXFer = 52;
  3766. noiseXFer = 53;
  3767. customXFer = 54;
  3768. { Custom XFer flags }
  3769. kXFer1PixelAtATime = $00000001; { 1 pixel passed to custom XFer proc }
  3770. kXFerConvertPixelToRGB32 = $00000002; { All color depths converted to 32 bit RGB }
  3771. type
  3772. CustomXFerRecPtr = ^CustomXFerRec;
  3773. CustomXFerRec = record
  3774. version: UInt32;
  3775. srcPixels: Ptr;
  3776. destPixels: Ptr;
  3777. resultPixels: Ptr;
  3778. refCon: UInt32;
  3779. pixelSize: UInt32;
  3780. pixelCount: UInt32;
  3781. firstPixelHV: Point;
  3782. destBounds: Rect;
  3783. end;
  3784. {$ifc TYPED_FUNCTION_POINTERS}
  3785. CustomXFerProcPtr = procedure(info: CustomXFerRecPtr);
  3786. {$elsec}
  3787. CustomXFerProcPtr = ProcPtr;
  3788. {$endc}
  3789. {
  3790. * GetPortCustomXFerProc()
  3791. *
  3792. * Availability:
  3793. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3794. * CarbonLib: in CarbonLib 1.0 and later
  3795. * Mac OS X: in version 10.0 and later
  3796. }
  3797. function GetPortCustomXFerProc(port: CGrafPtr; var proc: CustomXFerProcPtr; var flags: UInt32; var refCon: UInt32): OSErr; external name '_GetPortCustomXFerProc';
  3798. {
  3799. * SetPortCustomXFerProc()
  3800. *
  3801. * Availability:
  3802. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3803. * CarbonLib: in CarbonLib 1.0 and later
  3804. * Mac OS X: in version 10.0 and later
  3805. }
  3806. function SetPortCustomXFerProc(port: CGrafPtr; proc: CustomXFerProcPtr; flags: UInt32; refCon: UInt32): OSErr; external name '_SetPortCustomXFerProc';
  3807. const
  3808. kCursorComponentsVersion = $00010001;
  3809. kCursorComponentType = $63757273 (* 'curs' *);
  3810. { Cursor Component capabilities flags }
  3811. cursorDoesAnimate = $00000001;
  3812. cursorDoesHardware = $00000002;
  3813. cursorDoesUnreadableScreenBits = $00000004;
  3814. { Cursor Component output mode flags }
  3815. kRenderCursorInHardware = $00000001;
  3816. kRenderCursorInSoftware = $00000002;
  3817. { Cursor Component Info }
  3818. type
  3819. CursorInfoPtr = ^CursorInfo;
  3820. CursorInfo = record
  3821. version: SInt32; { use kCursorComponentsVersion }
  3822. capabilities: SInt32;
  3823. animateDuration: SInt32; { approximate time between animate tickles }
  3824. bounds: Rect;
  3825. hotspot: Point;
  3826. reserved: SInt32; { must set to zero }
  3827. end;
  3828. { Cursor Component Selectors }
  3829. const
  3830. kCursorComponentInit = $0001;
  3831. kCursorComponentGetInfo = $0002;
  3832. kCursorComponentSetOutputMode = $0003;
  3833. kCursorComponentSetData = $0004;
  3834. kCursorComponentReconfigure = $0005;
  3835. kCursorComponentDraw = $0006;
  3836. kCursorComponentErase = $0007;
  3837. kCursorComponentMove = $0008;
  3838. kCursorComponentAnimate = $0009;
  3839. kCursorComponentLastReserved = $0050;
  3840. {
  3841. * OpenCursorComponent()
  3842. *
  3843. * Availability:
  3844. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3845. * CarbonLib: in CarbonLib 1.0 and later
  3846. * Mac OS X: in version 10.0 and later
  3847. }
  3848. function OpenCursorComponent(c: Component; var ci: ComponentInstance): OSErr; external name '_OpenCursorComponent';
  3849. {
  3850. * CloseCursorComponent()
  3851. *
  3852. * Availability:
  3853. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3854. * CarbonLib: in CarbonLib 1.0 and later
  3855. * Mac OS X: in version 10.0 and later
  3856. }
  3857. function CloseCursorComponent(ci: ComponentInstance): OSErr; external name '_CloseCursorComponent';
  3858. {
  3859. * SetCursorComponent()
  3860. *
  3861. * Availability:
  3862. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3863. * CarbonLib: in CarbonLib 1.0 and later
  3864. * Mac OS X: in version 10.0 and later
  3865. }
  3866. function SetCursorComponent(ci: ComponentInstance): OSErr; external name '_SetCursorComponent';
  3867. {
  3868. * CursorComponentChanged()
  3869. *
  3870. * Availability:
  3871. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3872. * CarbonLib: in CarbonLib 1.0 and later
  3873. * Mac OS X: in version 10.0 and later
  3874. }
  3875. function CursorComponentChanged(ci: ComponentInstance): OSErr; external name '_CursorComponentChanged';
  3876. {
  3877. * CursorComponentSetData()
  3878. *
  3879. * Availability:
  3880. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3881. * CarbonLib: in CarbonLib 1.0 and later
  3882. * Mac OS X: in version 10.0 and later
  3883. }
  3884. function CursorComponentSetData(ci: ComponentInstance; data: SInt32): OSErr; external name '_CursorComponentSetData';
  3885. { Available in CarbonLib... }
  3886. {
  3887. * IsValidPort()
  3888. *
  3889. * Availability:
  3890. * Non-Carbon CFM: not available
  3891. * CarbonLib: in CarbonLib 1.1 and later
  3892. * Mac OS X: in version 10.0 and later
  3893. }
  3894. function IsValidPort(port: CGrafPtr): boolean; external name '_IsValidPort';
  3895. {$ifc ACCESSOR_CALLS_ARE_FUNCTIONS}
  3896. { GrafPort }
  3897. { Getters }
  3898. {
  3899. * GetPortPixMap()
  3900. *
  3901. * Availability:
  3902. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3903. * CarbonLib: in CarbonLib 1.0 and later
  3904. * Mac OS X: in version 10.0 and later
  3905. }
  3906. function GetPortPixMap(port: CGrafPtr): PixMapHandle; external name '_GetPortPixMap';
  3907. {
  3908. * GetPortBitMapForCopyBits()
  3909. *
  3910. * Discussion:
  3911. * GetPortBitMapForCopyBits is provided for the specific purpose of
  3912. * using the return value as a parameter to CopyBits. The return
  3913. * value can be used as the srcBits or dstBits parameter to CopyBits
  3914. * regardless of whether the port is color. If the port parameter is
  3915. * a color port, however, the returned BitMapPtr does not actually
  3916. * point to a BitMap; it points to the PixMapHandle and other fields
  3917. * in the CGrafPort structure. You should not dereference the
  3918. * BitMapPtr or otherwise depend on its contents unless you've
  3919. * confirmed that this port is a non-color port.
  3920. *
  3921. * Availability:
  3922. * Non-Carbon CFM: in CarbonAccessors.o 1.0.2 and later
  3923. * CarbonLib: in CarbonLib 1.0.2 and later
  3924. * Mac OS X: in version 10.0 and later
  3925. }
  3926. function GetPortBitMapForCopyBits(port: CGrafPtr): BitMapPtr; external name '_GetPortBitMapForCopyBits';
  3927. {
  3928. * GetPortBounds()
  3929. *
  3930. * Availability:
  3931. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3932. * CarbonLib: in CarbonLib 1.0 and later
  3933. * Mac OS X: in version 10.0 and later
  3934. }
  3935. function GetPortBounds(port: CGrafPtr; var rect_: Rect): RectPtr; external name '_GetPortBounds';
  3936. {
  3937. * GetPortForeColor()
  3938. *
  3939. * Availability:
  3940. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3941. * CarbonLib: in CarbonLib 1.0 and later
  3942. * Mac OS X: in version 10.0 and later
  3943. }
  3944. function GetPortForeColor(port: CGrafPtr; var foreColor: RGBColor): RGBColorPtr; external name '_GetPortForeColor';
  3945. {
  3946. * GetPortBackColor()
  3947. *
  3948. * Availability:
  3949. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3950. * CarbonLib: in CarbonLib 1.0 and later
  3951. * Mac OS X: in version 10.0 and later
  3952. }
  3953. function GetPortBackColor(port: CGrafPtr; var backColor: RGBColor): RGBColorPtr; external name '_GetPortBackColor';
  3954. {
  3955. * GetPortOpColor()
  3956. *
  3957. * Availability:
  3958. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3959. * CarbonLib: in CarbonLib 1.0 and later
  3960. * Mac OS X: in version 10.0 and later
  3961. }
  3962. function GetPortOpColor(port: CGrafPtr; var opColor: RGBColor): RGBColorPtr; external name '_GetPortOpColor';
  3963. {
  3964. * GetPortHiliteColor()
  3965. *
  3966. * Availability:
  3967. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3968. * CarbonLib: in CarbonLib 1.0 and later
  3969. * Mac OS X: in version 10.0 and later
  3970. }
  3971. function GetPortHiliteColor(port: CGrafPtr; var hiliteColor: RGBColor): RGBColorPtr; external name '_GetPortHiliteColor';
  3972. {
  3973. * GetPortGrafProcs()
  3974. *
  3975. * Availability:
  3976. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3977. * CarbonLib: in CarbonLib 1.0 and later
  3978. * Mac OS X: in version 10.0 and later
  3979. }
  3980. function GetPortGrafProcs(port: CGrafPtr): CQDProcsPtr; external name '_GetPortGrafProcs';
  3981. {
  3982. * GetPortTextFont()
  3983. *
  3984. * Availability:
  3985. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3986. * CarbonLib: in CarbonLib 1.0 and later
  3987. * Mac OS X: in version 10.0 and later
  3988. }
  3989. function GetPortTextFont(port: CGrafPtr): SInt16; external name '_GetPortTextFont';
  3990. {
  3991. * GetPortTextFace()
  3992. *
  3993. * Availability:
  3994. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3995. * CarbonLib: in CarbonLib 1.0 and later
  3996. * Mac OS X: in version 10.0 and later
  3997. }
  3998. function GetPortTextFace(port: CGrafPtr): ByteParameter; external name '_GetPortTextFace';
  3999. {
  4000. * GetPortTextMode()
  4001. *
  4002. * Availability:
  4003. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4004. * CarbonLib: in CarbonLib 1.0 and later
  4005. * Mac OS X: in version 10.0 and later
  4006. }
  4007. function GetPortTextMode(port: CGrafPtr): SInt16; external name '_GetPortTextMode';
  4008. {
  4009. * GetPortTextSize()
  4010. *
  4011. * Availability:
  4012. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4013. * CarbonLib: in CarbonLib 1.0 and later
  4014. * Mac OS X: in version 10.0 and later
  4015. }
  4016. function GetPortTextSize(port: CGrafPtr): SInt16; external name '_GetPortTextSize';
  4017. {
  4018. * GetPortChExtra()
  4019. *
  4020. * Availability:
  4021. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4022. * CarbonLib: in CarbonLib 1.0 and later
  4023. * Mac OS X: in version 10.0 and later
  4024. }
  4025. function GetPortChExtra(port: CGrafPtr): SInt16; external name '_GetPortChExtra';
  4026. {
  4027. * GetPortFracHPenLocation()
  4028. *
  4029. * Availability:
  4030. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4031. * CarbonLib: in CarbonLib 1.0 and later
  4032. * Mac OS X: in version 10.0 and later
  4033. }
  4034. function GetPortFracHPenLocation(port: CGrafPtr): SInt16; external name '_GetPortFracHPenLocation';
  4035. {
  4036. * GetPortSpExtra()
  4037. *
  4038. * Availability:
  4039. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4040. * CarbonLib: in CarbonLib 1.0 and later
  4041. * Mac OS X: in version 10.0 and later
  4042. }
  4043. function GetPortSpExtra(port: CGrafPtr): Fixed; external name '_GetPortSpExtra';
  4044. {
  4045. * GetPortPenVisibility()
  4046. *
  4047. * Availability:
  4048. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4049. * CarbonLib: in CarbonLib 1.0 and later
  4050. * Mac OS X: in version 10.0 and later
  4051. }
  4052. function GetPortPenVisibility(port: CGrafPtr): SInt16; external name '_GetPortPenVisibility';
  4053. {
  4054. * GetPortVisibleRegion()
  4055. *
  4056. * Availability:
  4057. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4058. * CarbonLib: in CarbonLib 1.0 and later
  4059. * Mac OS X: in version 10.0 and later
  4060. }
  4061. function GetPortVisibleRegion(port: CGrafPtr; visRgn: RgnHandle): RgnHandle; external name '_GetPortVisibleRegion';
  4062. {
  4063. * GetPortClipRegion()
  4064. *
  4065. * Availability:
  4066. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4067. * CarbonLib: in CarbonLib 1.0 and later
  4068. * Mac OS X: in version 10.0 and later
  4069. }
  4070. function GetPortClipRegion(port: CGrafPtr; clipRgn: RgnHandle): RgnHandle; external name '_GetPortClipRegion';
  4071. {
  4072. * GetPortBackPixPat()
  4073. *
  4074. * Availability:
  4075. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4076. * CarbonLib: in CarbonLib 1.0 and later
  4077. * Mac OS X: in version 10.0 and later
  4078. }
  4079. function GetPortBackPixPat(port: CGrafPtr; backPattern: PixPatHandle): PixPatHandle; external name '_GetPortBackPixPat';
  4080. {
  4081. * GetPortPenPixPat()
  4082. *
  4083. * Availability:
  4084. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4085. * CarbonLib: in CarbonLib 1.0 and later
  4086. * Mac OS X: in version 10.0 and later
  4087. }
  4088. function GetPortPenPixPat(port: CGrafPtr; penPattern: PixPatHandle): PixPatHandle; external name '_GetPortPenPixPat';
  4089. {
  4090. * GetPortFillPixPat()
  4091. *
  4092. * Availability:
  4093. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4094. * CarbonLib: in CarbonLib 1.0 and later
  4095. * Mac OS X: in version 10.0 and later
  4096. }
  4097. function GetPortFillPixPat(port: CGrafPtr; fillPattern: PixPatHandle): PixPatHandle; external name '_GetPortFillPixPat';
  4098. {
  4099. * GetPortPenSize()
  4100. *
  4101. * Availability:
  4102. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4103. * CarbonLib: in CarbonLib 1.0 and later
  4104. * Mac OS X: in version 10.0 and later
  4105. }
  4106. function GetPortPenSize(port: CGrafPtr; var penSize: Point): PointPtr; external name '_GetPortPenSize';
  4107. {
  4108. * GetPortPenMode()
  4109. *
  4110. * Availability:
  4111. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4112. * CarbonLib: in CarbonLib 1.0 and later
  4113. * Mac OS X: in version 10.0 and later
  4114. }
  4115. function GetPortPenMode(port: CGrafPtr): SInt32; external name '_GetPortPenMode';
  4116. {
  4117. * GetPortPenLocation()
  4118. *
  4119. * Availability:
  4120. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4121. * CarbonLib: in CarbonLib 1.0 and later
  4122. * Mac OS X: in version 10.0 and later
  4123. }
  4124. function GetPortPenLocation(port: CGrafPtr; var penLocation: Point): PointPtr; external name '_GetPortPenLocation';
  4125. {
  4126. * IsPortRegionBeingDefined()
  4127. *
  4128. * Availability:
  4129. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4130. * CarbonLib: in CarbonLib 1.0 and later
  4131. * Mac OS X: in version 10.0 and later
  4132. }
  4133. function IsPortRegionBeingDefined(port: CGrafPtr): boolean; external name '_IsPortRegionBeingDefined';
  4134. {
  4135. * IsPortPictureBeingDefined()
  4136. *
  4137. * Availability:
  4138. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4139. * CarbonLib: in CarbonLib 1.0 and later
  4140. * Mac OS X: in version 10.0 and later
  4141. }
  4142. function IsPortPictureBeingDefined(port: CGrafPtr): boolean; external name '_IsPortPictureBeingDefined';
  4143. {
  4144. * IsPortPolyBeingDefined()
  4145. *
  4146. * Availability:
  4147. * Non-Carbon CFM: in CarbonAccessors.o 1.3 and later
  4148. * CarbonLib: in CarbonLib 1.3 and later
  4149. * Mac OS X: in version 10.0 and later
  4150. }
  4151. function IsPortPolyBeingDefined(port: CGrafPtr): boolean; external name '_IsPortPolyBeingDefined';
  4152. {
  4153. * IsPortOffscreen()
  4154. *
  4155. * Availability:
  4156. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4157. * CarbonLib: in CarbonLib 1.0 and later
  4158. * Mac OS X: in version 10.0 and later
  4159. }
  4160. function IsPortOffscreen(port: CGrafPtr): boolean; external name '_IsPortOffscreen';
  4161. {
  4162. * IsPortColor()
  4163. *
  4164. * Availability:
  4165. * Non-Carbon CFM: in CarbonAccessors.o 1.0.2 and later
  4166. * CarbonLib: in CarbonLib 1.0.2 and later
  4167. * Mac OS X: in version 10.0 and later
  4168. }
  4169. function IsPortColor(port: CGrafPtr): boolean; external name '_IsPortColor';
  4170. {
  4171. * IsPortVisibleRegionEmpty()
  4172. *
  4173. * Availability:
  4174. * Non-Carbon CFM: not available
  4175. * CarbonLib: in CarbonLib 1.3 and later
  4176. * Mac OS X: in version 10.1 and later
  4177. }
  4178. function IsPortVisibleRegionEmpty(port: CGrafPtr): boolean; external name '_IsPortVisibleRegionEmpty';
  4179. {
  4180. * IsPortClipRegionEmpty()
  4181. *
  4182. * Availability:
  4183. * Non-Carbon CFM: not available
  4184. * CarbonLib: in CarbonLib 1.3 and later
  4185. * Mac OS X: in version 10.1 and later
  4186. }
  4187. function IsPortClipRegionEmpty(port: CGrafPtr): boolean; external name '_IsPortClipRegionEmpty';
  4188. {
  4189. * SectRegionWithPortClipRegion()
  4190. *
  4191. * Availability:
  4192. * Non-Carbon CFM: not available
  4193. * CarbonLib: in CarbonLib 1.3 and later
  4194. * Mac OS X: in version 10.1 and later
  4195. }
  4196. procedure SectRegionWithPortClipRegion(port: CGrafPtr; ioRegion: RgnHandle); external name '_SectRegionWithPortClipRegion';
  4197. {
  4198. * SectRegionWithPortVisibleRegion()
  4199. *
  4200. * Availability:
  4201. * Non-Carbon CFM: not available
  4202. * CarbonLib: in CarbonLib 1.3 and later
  4203. * Mac OS X: in version 10.1 and later
  4204. }
  4205. procedure SectRegionWithPortVisibleRegion(port: CGrafPtr; ioRegion: RgnHandle); external name '_SectRegionWithPortVisibleRegion';
  4206. { Swappers }
  4207. {
  4208. * SwapPortPicSaveHandle()
  4209. *
  4210. * Summary:
  4211. * Sets the port's picSave Handle, and returns the previous picSave
  4212. *
  4213. * Discussion:
  4214. * Historically, the picSave field in a GrafPort is != NULL if a
  4215. * Picture is being defined; and it has been documented that picture
  4216. * definition can be temporarily suspended by saving the current
  4217. * picSave Handle and setting picSave to NULL. Restoring the saved
  4218. * picSave Handle resumes picture definition.
  4219. *
  4220. * Parameters:
  4221. *
  4222. * port:
  4223. * The port whose picSave field is being swapped.
  4224. *
  4225. * inPicSaveHdl:
  4226. * The picSave Handle to be set.
  4227. *
  4228. * Result:
  4229. * The previous picSave Handle in the port.
  4230. *
  4231. * Availability:
  4232. * Non-Carbon CFM: not available
  4233. * CarbonLib: in CarbonLib 1.5 and later
  4234. * Mac OS X: in version 10.1 and later
  4235. }
  4236. function SwapPortPicSaveHandle(port: CGrafPtr; inPicSaveHdl: Handle): Handle; external name '_SwapPortPicSaveHandle';
  4237. { Similarly: }
  4238. {
  4239. * SwapPortPolySaveHandle()
  4240. *
  4241. * Availability:
  4242. * Non-Carbon CFM: not available
  4243. * CarbonLib: in CarbonLib 1.6 and later
  4244. * Mac OS X: in version 10.2 and later
  4245. }
  4246. function SwapPortPolySaveHandle(port: CGrafPtr; inPolySaveHdl: Handle): Handle; external name '_SwapPortPolySaveHandle';
  4247. {
  4248. * SwapPortRegionSaveHandle()
  4249. *
  4250. * Availability:
  4251. * Non-Carbon CFM: not available
  4252. * CarbonLib: in CarbonLib 1.6 and later
  4253. * Mac OS X: in version 10.2 and later
  4254. }
  4255. function SwapPortRegionSaveHandle(port: CGrafPtr; inRegionSaveHdl: Handle): Handle; external name '_SwapPortRegionSaveHandle';
  4256. { Setters }
  4257. {
  4258. * SetPortBounds()
  4259. *
  4260. * Availability:
  4261. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4262. * CarbonLib: in CarbonLib 1.0 and later
  4263. * Mac OS X: in version 10.0 and later
  4264. }
  4265. procedure SetPortBounds(port: CGrafPtr; const (*var*) rect_: Rect); external name '_SetPortBounds';
  4266. {
  4267. * SetPortOpColor()
  4268. *
  4269. * Availability:
  4270. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4271. * CarbonLib: in CarbonLib 1.0 and later
  4272. * Mac OS X: in version 10.0 and later
  4273. }
  4274. procedure SetPortOpColor(port: CGrafPtr; const (*var*) opColor: RGBColor); external name '_SetPortOpColor';
  4275. {
  4276. * SetPortGrafProcs()
  4277. *
  4278. * Availability:
  4279. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4280. * CarbonLib: in CarbonLib 1.0 and later
  4281. * Mac OS X: in version 10.0 and later
  4282. }
  4283. procedure SetPortGrafProcs(port: CGrafPtr; procs: CQDProcsPtr); external name '_SetPortGrafProcs';
  4284. {
  4285. * SetPortTextFont()
  4286. *
  4287. * Availability:
  4288. * Non-Carbon CFM: not available
  4289. * CarbonLib: in CarbonLib 1.5 and later
  4290. * Mac OS X: in version 10.1 and later
  4291. }
  4292. procedure SetPortTextFont(port: CGrafPtr; txFont: SInt16); external name '_SetPortTextFont';
  4293. {
  4294. * SetPortTextSize()
  4295. *
  4296. * Availability:
  4297. * Non-Carbon CFM: not available
  4298. * CarbonLib: in CarbonLib 1.5 and later
  4299. * Mac OS X: in version 10.1 and later
  4300. }
  4301. procedure SetPortTextSize(port: CGrafPtr; txSize: SInt16); external name '_SetPortTextSize';
  4302. {
  4303. * SetPortTextFace()
  4304. *
  4305. * Availability:
  4306. * Non-Carbon CFM: not available
  4307. * CarbonLib: in CarbonLib 1.5 and later
  4308. * Mac OS X: in version 10.1 and later
  4309. }
  4310. procedure SetPortTextFace(port: CGrafPtr; face: StyleParameter); external name '_SetPortTextFace';
  4311. {
  4312. * SetPortTextMode()
  4313. *
  4314. * Availability:
  4315. * Non-Carbon CFM: not available
  4316. * CarbonLib: in CarbonLib 1.5 and later
  4317. * Mac OS X: in version 10.1 and later
  4318. }
  4319. procedure SetPortTextMode(port: CGrafPtr; mode: SInt16); external name '_SetPortTextMode';
  4320. {
  4321. * SetPortVisibleRegion()
  4322. *
  4323. * Availability:
  4324. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4325. * CarbonLib: in CarbonLib 1.0 and later
  4326. * Mac OS X: in version 10.0 and later
  4327. }
  4328. procedure SetPortVisibleRegion(port: CGrafPtr; visRgn: RgnHandle); external name '_SetPortVisibleRegion';
  4329. {
  4330. * SetPortClipRegion()
  4331. *
  4332. * Availability:
  4333. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4334. * CarbonLib: in CarbonLib 1.0 and later
  4335. * Mac OS X: in version 10.0 and later
  4336. }
  4337. procedure SetPortClipRegion(port: CGrafPtr; clipRgn: RgnHandle); external name '_SetPortClipRegion';
  4338. {
  4339. * SetPortPenPixPat()
  4340. *
  4341. * Availability:
  4342. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4343. * CarbonLib: in CarbonLib 1.0 and later
  4344. * Mac OS X: in version 10.0 and later
  4345. }
  4346. procedure SetPortPenPixPat(port: CGrafPtr; penPattern: PixPatHandle); external name '_SetPortPenPixPat';
  4347. {
  4348. * SetPortFillPixPat()
  4349. *
  4350. * Availability:
  4351. * Non-Carbon CFM: in CarbonAccessors.o 1.2 and later
  4352. * CarbonLib: in CarbonLib 1.2 and later
  4353. * Mac OS X: in version 10.0 and later
  4354. }
  4355. procedure SetPortFillPixPat(port: CGrafPtr; penPattern: PixPatHandle); external name '_SetPortFillPixPat';
  4356. {
  4357. * SetPortBackPixPat()
  4358. *
  4359. * Availability:
  4360. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4361. * CarbonLib: in CarbonLib 1.0 and later
  4362. * Mac OS X: in version 10.0 and later
  4363. }
  4364. procedure SetPortBackPixPat(port: CGrafPtr; backPattern: PixPatHandle); external name '_SetPortBackPixPat';
  4365. {
  4366. * SetPortPenSize()
  4367. *
  4368. * Availability:
  4369. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4370. * CarbonLib: in CarbonLib 1.0 and later
  4371. * Mac OS X: in version 10.0 and later
  4372. }
  4373. procedure SetPortPenSize(port: CGrafPtr; penSize: Point); external name '_SetPortPenSize';
  4374. {
  4375. * SetPortPenMode()
  4376. *
  4377. * Availability:
  4378. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4379. * CarbonLib: in CarbonLib 1.0 and later
  4380. * Mac OS X: in version 10.0 and later
  4381. }
  4382. procedure SetPortPenMode(port: CGrafPtr; penMode: SInt32); external name '_SetPortPenMode';
  4383. {
  4384. * SetPortFracHPenLocation()
  4385. *
  4386. * Availability:
  4387. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4388. * CarbonLib: in CarbonLib 1.0 and later
  4389. * Mac OS X: in version 10.0 and later
  4390. }
  4391. procedure SetPortFracHPenLocation(port: CGrafPtr; pnLocHFrac: SInt16); external name '_SetPortFracHPenLocation';
  4392. { PixMap }
  4393. {
  4394. * GetPixBounds()
  4395. *
  4396. * Availability:
  4397. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4398. * CarbonLib: in CarbonLib 1.0 and later
  4399. * Mac OS X: in version 10.0 and later
  4400. }
  4401. function GetPixBounds(pixMap: PixMapHandle; var bounds: Rect): RectPtr; external name '_GetPixBounds';
  4402. {
  4403. * GetPixDepth()
  4404. *
  4405. * Availability:
  4406. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4407. * CarbonLib: in CarbonLib 1.0 and later
  4408. * Mac OS X: in version 10.0 and later
  4409. }
  4410. function GetPixDepth(pixMap: PixMapHandle): SInt16; external name '_GetPixDepth';
  4411. { QDGlobals }
  4412. { Getters }
  4413. {
  4414. * GetQDGlobalsRandomSeed()
  4415. *
  4416. * Availability:
  4417. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4418. * CarbonLib: in CarbonLib 1.0 and later
  4419. * Mac OS X: in version 10.0 and later
  4420. }
  4421. function GetQDGlobalsRandomSeed: SInt32; external name '_GetQDGlobalsRandomSeed';
  4422. {
  4423. * GetQDGlobalsScreenBits()
  4424. *
  4425. * Availability:
  4426. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4427. * CarbonLib: in CarbonLib 1.0 and later
  4428. * Mac OS X: in version 10.0 and later
  4429. }
  4430. function GetQDGlobalsScreenBits(var screenBits: BitMap): BitMapPtr; external name '_GetQDGlobalsScreenBits';
  4431. {
  4432. * GetQDGlobalsArrow()
  4433. *
  4434. * Availability:
  4435. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4436. * CarbonLib: in CarbonLib 1.0 and later
  4437. * Mac OS X: in version 10.0 and later
  4438. }
  4439. function GetQDGlobalsArrow(var arrow: Cursor): CursorPtr; external name '_GetQDGlobalsArrow';
  4440. {
  4441. * GetQDGlobalsDarkGray()
  4442. *
  4443. * Availability:
  4444. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4445. * CarbonLib: in CarbonLib 1.0 and later
  4446. * Mac OS X: in version 10.0 and later
  4447. }
  4448. function GetQDGlobalsDarkGray(var dkGray: Pattern): PatternPtr; external name '_GetQDGlobalsDarkGray';
  4449. {
  4450. * GetQDGlobalsLightGray()
  4451. *
  4452. * Availability:
  4453. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4454. * CarbonLib: in CarbonLib 1.0 and later
  4455. * Mac OS X: in version 10.0 and later
  4456. }
  4457. function GetQDGlobalsLightGray(var ltGray: Pattern): PatternPtr; external name '_GetQDGlobalsLightGray';
  4458. {
  4459. * GetQDGlobalsGray()
  4460. *
  4461. * Availability:
  4462. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4463. * CarbonLib: in CarbonLib 1.0 and later
  4464. * Mac OS X: in version 10.0 and later
  4465. }
  4466. function GetQDGlobalsGray(var gray: Pattern): PatternPtr; external name '_GetQDGlobalsGray';
  4467. {
  4468. * GetQDGlobalsBlack()
  4469. *
  4470. * Availability:
  4471. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4472. * CarbonLib: in CarbonLib 1.0 and later
  4473. * Mac OS X: in version 10.0 and later
  4474. }
  4475. function GetQDGlobalsBlack(var black: Pattern): PatternPtr; external name '_GetQDGlobalsBlack';
  4476. {
  4477. * GetQDGlobalsWhite()
  4478. *
  4479. * Availability:
  4480. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4481. * CarbonLib: in CarbonLib 1.0 and later
  4482. * Mac OS X: in version 10.0 and later
  4483. }
  4484. function GetQDGlobalsWhite(var white: Pattern): PatternPtr; external name '_GetQDGlobalsWhite';
  4485. {
  4486. * GetQDGlobalsThePort()
  4487. *
  4488. * Availability:
  4489. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4490. * CarbonLib: in CarbonLib 1.0 and later
  4491. * Mac OS X: in version 10.0 and later
  4492. }
  4493. function GetQDGlobalsThePort: CGrafPtr; external name '_GetQDGlobalsThePort';
  4494. { Setters }
  4495. {
  4496. * SetQDGlobalsRandomSeed()
  4497. *
  4498. * Availability:
  4499. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4500. * CarbonLib: in CarbonLib 1.0 and later
  4501. * Mac OS X: in version 10.0 and later
  4502. }
  4503. procedure SetQDGlobalsRandomSeed(randomSeed: SInt32); external name '_SetQDGlobalsRandomSeed';
  4504. {
  4505. * SetQDGlobalsArrow()
  4506. *
  4507. * Availability:
  4508. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4509. * CarbonLib: in CarbonLib 1.0 and later
  4510. * Mac OS X: in version 10.0 and later
  4511. }
  4512. procedure SetQDGlobalsArrow(const (*var*) arrow: Cursor); external name '_SetQDGlobalsArrow';
  4513. { Regions }
  4514. {
  4515. * GetRegionBounds()
  4516. *
  4517. * Availability:
  4518. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4519. * CarbonLib: in CarbonLib 1.0 and later
  4520. * Mac OS X: in version 10.0 and later
  4521. }
  4522. function GetRegionBounds(region: RgnHandle; var bounds: Rect): RectPtr; external name '_GetRegionBounds';
  4523. {
  4524. * IsRegionRectangular()
  4525. *
  4526. * Availability:
  4527. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4528. * CarbonLib: in CarbonLib 1.0 and later
  4529. * Mac OS X: in version 10.0 and later
  4530. }
  4531. function IsRegionRectangular(region: RgnHandle): boolean; external name '_IsRegionRectangular';
  4532. { Utilities }
  4533. { To prevent upward dependencies, GetWindowFromPort() is defined in Window Manager interface: }
  4534. { pascal WindowRef GetWindowFromPort(CGrafPtr port); }
  4535. { NewPtr/OpenCPort doesn't work with opaque structures }
  4536. {
  4537. * CreateNewPort()
  4538. *
  4539. * Availability:
  4540. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4541. * CarbonLib: in CarbonLib 1.0 and later
  4542. * Mac OS X: in version 10.0 and later
  4543. }
  4544. function CreateNewPort: CGrafPtr; external name '_CreateNewPort';
  4545. {
  4546. * DisposePort()
  4547. *
  4548. * Availability:
  4549. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4550. * CarbonLib: in CarbonLib 1.0 and later
  4551. * Mac OS X: in version 10.0 and later
  4552. }
  4553. procedure DisposePort(port: CGrafPtr); external name '_DisposePort';
  4554. {
  4555. * SetQDError()
  4556. *
  4557. * Availability:
  4558. * Non-Carbon CFM: in CarbonAccessors.o 1.0.2 and later
  4559. * CarbonLib: in CarbonLib 1.0.2 and later
  4560. * Mac OS X: in version 10.0 and later
  4561. }
  4562. procedure SetQDError(err: OSErr); external name '_SetQDError';
  4563. {$endc} {ACCESSOR_CALLS_ARE_FUNCTIONS}
  4564. { Helpful Carbon-only utilities (finally made public) }
  4565. {
  4566. * QDLocalToGlobalPoint()
  4567. *
  4568. * Availability:
  4569. * Non-Carbon CFM: not available
  4570. * CarbonLib: in CarbonLib 1.0 and later
  4571. * Mac OS X: in version 10.0 and later
  4572. }
  4573. function QDLocalToGlobalPoint(port: CGrafPtr; var point_: Point): PointPtr; external name '_QDLocalToGlobalPoint';
  4574. {
  4575. * QDGlobalToLocalPoint()
  4576. *
  4577. * Availability:
  4578. * Non-Carbon CFM: not available
  4579. * CarbonLib: in CarbonLib 1.0 and later
  4580. * Mac OS X: in version 10.0 and later
  4581. }
  4582. function QDGlobalToLocalPoint(port: CGrafPtr; var point_: Point): PointPtr; external name '_QDGlobalToLocalPoint';
  4583. {
  4584. * QDLocalToGlobalRect()
  4585. *
  4586. * Availability:
  4587. * Non-Carbon CFM: not available
  4588. * CarbonLib: in CarbonLib 1.0 and later
  4589. * Mac OS X: in version 10.0 and later
  4590. }
  4591. function QDLocalToGlobalRect(port: CGrafPtr; var bounds: Rect): RectPtr; external name '_QDLocalToGlobalRect';
  4592. {
  4593. * QDGlobalToLocalRect()
  4594. *
  4595. * Availability:
  4596. * Non-Carbon CFM: not available
  4597. * CarbonLib: in CarbonLib 1.0 and later
  4598. * Mac OS X: in version 10.0 and later
  4599. }
  4600. function QDGlobalToLocalRect(port: CGrafPtr; var bounds: Rect): RectPtr; external name '_QDGlobalToLocalRect';
  4601. {
  4602. * QDLocalToGlobalRegion()
  4603. *
  4604. * Availability:
  4605. * Non-Carbon CFM: not available
  4606. * CarbonLib: in CarbonLib 1.0 and later
  4607. * Mac OS X: in version 10.0 and later
  4608. }
  4609. function QDLocalToGlobalRegion(port: CGrafPtr; region: RgnHandle): RgnHandle; external name '_QDLocalToGlobalRegion';
  4610. {
  4611. * QDGlobalToLocalRegion()
  4612. *
  4613. * Availability:
  4614. * Non-Carbon CFM: not available
  4615. * CarbonLib: in CarbonLib 1.0 and later
  4616. * Mac OS X: in version 10.0 and later
  4617. }
  4618. function QDGlobalToLocalRegion(port: CGrafPtr; region: RgnHandle): RgnHandle; external name '_QDGlobalToLocalRegion';
  4619. {
  4620. Routines available on Mac OS X to flush buffered window ports...
  4621. These calls do nothing on Mac OS 8/9. QDIsPortBuffered will always return false there.
  4622. }
  4623. {
  4624. * QDIsPortBuffered()
  4625. *
  4626. * Availability:
  4627. * Non-Carbon CFM: not available
  4628. * CarbonLib: in CarbonLib 1.0.2 and later
  4629. * Mac OS X: in version 10.0 and later
  4630. }
  4631. function QDIsPortBuffered(port: CGrafPtr): boolean; external name '_QDIsPortBuffered';
  4632. {
  4633. * QDIsPortBufferDirty()
  4634. *
  4635. * Availability:
  4636. * Non-Carbon CFM: not available
  4637. * CarbonLib: in CarbonLib 1.0.2 and later
  4638. * Mac OS X: in version 10.0 and later
  4639. }
  4640. function QDIsPortBufferDirty(port: CGrafPtr): boolean; external name '_QDIsPortBufferDirty';
  4641. {
  4642. * QDFlushPortBuffer()
  4643. *
  4644. * Availability:
  4645. * Non-Carbon CFM: not available
  4646. * CarbonLib: in CarbonLib 1.0.2 and later
  4647. * Mac OS X: in version 10.0 and later
  4648. }
  4649. procedure QDFlushPortBuffer(port: CGrafPtr; region: RgnHandle); external name '_QDFlushPortBuffer';
  4650. {
  4651. * QDGetDirtyRegion()
  4652. *
  4653. * Availability:
  4654. * Non-Carbon CFM: not available
  4655. * CarbonLib: in CarbonLib 1.1 and later
  4656. * Mac OS X: in version 10.0 and later
  4657. }
  4658. function QDGetDirtyRegion(port: CGrafPtr; rgn: RgnHandle): OSStatus; external name '_QDGetDirtyRegion';
  4659. {
  4660. * QDSetDirtyRegion()
  4661. *
  4662. * Availability:
  4663. * Non-Carbon CFM: not available
  4664. * CarbonLib: in CarbonLib 1.1 and later
  4665. * Mac OS X: in version 10.0 and later
  4666. }
  4667. function QDSetDirtyRegion(port: CGrafPtr; rgn: RgnHandle): OSStatus; external name '_QDSetDirtyRegion';
  4668. {
  4669. * QDAddRectToDirtyRegion()
  4670. *
  4671. * Availability:
  4672. * Non-Carbon CFM: not available
  4673. * CarbonLib: in CarbonLib 1.5 and later
  4674. * Mac OS X: in version 10.0 and later
  4675. }
  4676. function QDAddRectToDirtyRegion(inPort: CGrafPtr; const (*var*) inBounds: Rect): OSStatus; external name '_QDAddRectToDirtyRegion';
  4677. {
  4678. * QDAddRegionToDirtyRegion()
  4679. *
  4680. * Availability:
  4681. * Non-Carbon CFM: not available
  4682. * CarbonLib: in CarbonLib 1.5 and later
  4683. * Mac OS X: in version 10.0 and later
  4684. }
  4685. function QDAddRegionToDirtyRegion(inPort: CGrafPtr; inRegion: RgnHandle): OSStatus; external name '_QDAddRegionToDirtyRegion';
  4686. {
  4687. * CreateCGContextForPort()
  4688. *
  4689. * Availability:
  4690. * Non-Carbon CFM: not available
  4691. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  4692. * Mac OS X: in version 10.0 and later
  4693. }
  4694. function CreateCGContextForPort(inPort: CGrafPtr; var outContext: CGContextRef): OSStatus; external name '_CreateCGContextForPort';
  4695. {
  4696. * ClipCGContextToRegion()
  4697. *
  4698. * Availability:
  4699. * Non-Carbon CFM: not available
  4700. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  4701. * Mac OS X: in version 10.0 and later
  4702. }
  4703. function ClipCGContextToRegion(gc: CGContextRef; const (*var*) portRect: Rect; region: RgnHandle): OSStatus; external name '_ClipCGContextToRegion';
  4704. {
  4705. * SyncCGContextOriginWithPort()
  4706. *
  4707. * Availability:
  4708. * Non-Carbon CFM: not available
  4709. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  4710. * Mac OS X: in version 10.0 and later
  4711. }
  4712. function SyncCGContextOriginWithPort(inContext: CGContextRef; port: CGrafPtr): OSStatus; external name '_SyncCGContextOriginWithPort';
  4713. {
  4714. * QDBeginCGContext()
  4715. *
  4716. * Summary:
  4717. * Allow CoreGraphics drawing in a CGrafPort
  4718. *
  4719. * Discussion:
  4720. * So far, CreateCGContextForPort() was used to create a CGContext
  4721. * for CG drawing from a CGrafPort. However, if the current port is
  4722. * a printing port, the CreateCGContextForPort fails; consequently,
  4723. * there was no way to mix Quickdraw and CoreGraphics drawing and
  4724. * still print it. If, instead, the CoreGraphics drawing is
  4725. * bracketed by QDBeginCGContext/QDEndCGContext calls, the drawing
  4726. * will also appear in print. There are some restrictions on the
  4727. * usage of QDBeginCGContext/QDEndCGContext:
  4728. * - Between QDBeginCGContext and QDEndCGContext, Quickdraw drawing
  4729. * is disabled; only CoreGraphics drawing is allowed
  4730. * - QDBeginCGContext/QDEndCGContext calls can not be nested
  4731. * - QDEndCGContext releases the CGContext returned from
  4732. * QDBeginCGContext and sets it to NULL.
  4733. *
  4734. * Parameters:
  4735. *
  4736. * inPort:
  4737. * The current port
  4738. *
  4739. * outContext:
  4740. * The CGContextRef to be used for CG drawing
  4741. *
  4742. * Availability:
  4743. * Non-Carbon CFM: not available
  4744. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.1 and later
  4745. * Mac OS X: in version 10.1 and later
  4746. }
  4747. function QDBeginCGContext(inPort: CGrafPtr; var outContext: CGContextRef): OSStatus; external name '_QDBeginCGContext';
  4748. {
  4749. * QDEndCGContext()
  4750. *
  4751. * Availability:
  4752. * Non-Carbon CFM: not available
  4753. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.1 and later
  4754. * Mac OS X: in version 10.1 and later
  4755. }
  4756. function QDEndCGContext(inPort: CGrafPtr; var inoutContext: CGContextRef): OSStatus; external name '_QDEndCGContext';
  4757. {
  4758. The following routines are implemented in CarbonLib, and on Mac OS X in QD proper.
  4759. They save the pixel data of a region in a packed format for quick save/restore
  4760. without using a lot of memory to do a large, hollow region, such as the region
  4761. used when drag hiliting (which is where this is used).
  4762. }
  4763. type
  4764. QDRegionBitsRef = ^SInt32; { an opaque 32-bit type }
  4765. QDRegionBitsRefPtr = ^QDRegionBitsRef; { when a var xx:QDRegionBitsRef parameter can be nil, it is changed to xx: QDRegionBitsRefPtr }
  4766. {
  4767. * QDSaveRegionBits()
  4768. *
  4769. * Availability:
  4770. * Non-Carbon CFM: not available
  4771. * CarbonLib: in CarbonLib 1.0 and later
  4772. * Mac OS X: in version 10.1 and later
  4773. }
  4774. function QDSaveRegionBits(region: RgnHandle): QDRegionBitsRef; external name '_QDSaveRegionBits';
  4775. {
  4776. * QDRestoreRegionBits()
  4777. *
  4778. * Availability:
  4779. * Non-Carbon CFM: not available
  4780. * CarbonLib: in CarbonLib 1.0 and later
  4781. * Mac OS X: in version 10.1 and later
  4782. }
  4783. function QDRestoreRegionBits(region: RgnHandle; regionBits: QDRegionBitsRef): OSStatus; external name '_QDRestoreRegionBits';
  4784. {
  4785. * QDDisposeRegionBits()
  4786. *
  4787. * Availability:
  4788. * Non-Carbon CFM: not available
  4789. * CarbonLib: in CarbonLib 1.0 and later
  4790. * Mac OS X: in version 10.1 and later
  4791. }
  4792. function QDDisposeRegionBits(regionBits: QDRegionBitsRef): OSStatus; external name '_QDDisposeRegionBits';
  4793. {
  4794. Developers need a way to go from a CGDirectDisplay environment to Quickdraw.
  4795. The following is equivalent to CreateNewPort(), but instead of taking the
  4796. portPixMap from the current GDevice, it uses the GDevice corresponding to
  4797. the CGSDisplayID passed in. If the CGSDisplayID is invalid, the mainDevice
  4798. is used instead.
  4799. }
  4800. {
  4801. * CreateNewPortForCGDisplayID()
  4802. *
  4803. * Availability:
  4804. * Non-Carbon CFM: not available
  4805. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  4806. * Mac OS X: in version 10.0 and later
  4807. }
  4808. function CreateNewPortForCGDisplayID(inCGDisplayID: UInt32): CGrafPtr; external name '_CreateNewPortForCGDisplayID';
  4809. {
  4810. In Mac OS X, developers should be able to turn the WaitCursor (spinning wheel)
  4811. on and off. QDDisplayWaitCursor() keeps track of nested calls.
  4812. Passing FALSE will resume automatic wait cursor operation.
  4813. Call this function only from an application in the foreground.
  4814. }
  4815. {
  4816. * QDDisplayWaitCursor()
  4817. *
  4818. * Availability:
  4819. * Non-Carbon CFM: not available
  4820. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  4821. * Mac OS X: in version 10.0 and later
  4822. }
  4823. procedure QDDisplayWaitCursor(forceWaitCursor: boolean); external name '_QDDisplayWaitCursor';
  4824. {
  4825. * QDSetPatternOrigin()
  4826. *
  4827. * Summary:
  4828. * Sets the pattern origin for the current port.
  4829. *
  4830. * Discussion:
  4831. * When a QuickDraw drawing operation uses a pattern (either a
  4832. * black&white pattern or a PixPat), the pattern's image is aligned
  4833. * with port origin, modified by the pattern origin of the port. For
  4834. * example, if the background pattern is a 10x10 image, and a
  4835. * rectangle with coordinates (3, 3, 10, 10) is filled with that
  4836. * pattern, then only the bottom right 7x7 portion of the pattern
  4837. * image will be drawn into the rectangle. When drawing a pattern,
  4838. * QuickDraw always starts with the port origin and then adjusts it
  4839. * by the pattern origin to determine the actual origin point of
  4840. * pattern drawing. QDSetPatternOrigin can be used to set the
  4841. * pattern origin relative to the port origin. It is often used in
  4842. * conjuction with SetOrigin to maintain the pattern alignment at
  4843. * (0,0) in a window's content area, regardless of the port origin;
  4844. * for example, after changing the port's origin to (10,10), an
  4845. * application might change the port's pattern origin to (-10, -10)
  4846. * so that patterns are still aligned with the window's content area.
  4847. *
  4848. * Parameters:
  4849. *
  4850. * origin:
  4851. * The new pattern origin of the port.
  4852. *
  4853. * Availability:
  4854. * Non-Carbon CFM: in NQD 8.5 and later
  4855. * CarbonLib: in CarbonLib 1.3 and later
  4856. * Mac OS X: in version 10.1 and later
  4857. }
  4858. procedure QDSetPatternOrigin(origin: Point); external name '_QDSetPatternOrigin';
  4859. {
  4860. * QDGetPatternOrigin()
  4861. *
  4862. * Summary:
  4863. * Returns the pattern origin of the current port.
  4864. *
  4865. * Parameters:
  4866. *
  4867. * origin:
  4868. * On exit, contains the current port's pattern origin.
  4869. *
  4870. * Availability:
  4871. * Non-Carbon CFM: in NQD 8.5 and later
  4872. * CarbonLib: in CarbonLib 1.3 and later
  4873. * Mac OS X: in version 10.1 and later
  4874. }
  4875. procedure QDGetPatternOrigin(var origin: Point); external name '_QDGetPatternOrigin';
  4876. {
  4877. * QDIsNamedPixMapCursorRegistered()
  4878. *
  4879. * Summary:
  4880. * Returns whether a named cursor has already been registered.
  4881. *
  4882. * Discussion:
  4883. * The CoreGraphics Scalable Cursor Registry provides support for
  4884. * cursors based on PixMaps for crsrData and crsrMask, with sizes up
  4885. * to 64x64 pixels. Such cursors need to be registered via
  4886. * QDRegisterNamedPixMapCursor, and can then be set by
  4887. * QDSetNamedPixMapCursor.
  4888. *
  4889. * Mac OS X threading:
  4890. * Not thread safe
  4891. *
  4892. * Parameters:
  4893. *
  4894. * name:
  4895. * (see below at QDRegisterNamedPixMapCursor)
  4896. *
  4897. * Availability:
  4898. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  4899. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  4900. * Non-Carbon CFM: not available
  4901. }
  4902. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  4903. function QDIsNamedPixMapCursorRegistered( name: ConstCStringPtr ): Boolean; external name '_QDIsNamedPixMapCursorRegistered';
  4904. {
  4905. * QDRegisterNamedPixMapCursor()
  4906. *
  4907. * Summary:
  4908. * Register a new cursor by name
  4909. *
  4910. * Discussion:
  4911. * In order to set a PixMapCursor, it needs to be registered first
  4912. * by name. This only succeeds if the system supports Hardware
  4913. * Cursors (depending on video circuits). There is also the obvious
  4914. * companion function QDUnregisterNamedPixMapCursor. NOTE: The
  4915. * original implementation of QDUnregisterNamedPixMapCursor was
  4916. * misspelled "QDUnregisterNamedPixMapCursur".
  4917. *
  4918. * Mac OS X threading:
  4919. * Not thread safe
  4920. *
  4921. * Parameters:
  4922. *
  4923. * crsrData:
  4924. * A PixMapHandle representing the cursor pixels. If the
  4925. * pixelDepth is 32, the crsrMask PixMapHandle can be NULL; in
  4926. * this case, the alpha channel in the ARGB PixMap is used as
  4927. * mask. If a crsrMask is provided, the alpha channel in crsrData
  4928. * is ignored. The pixelDepth can be any of 1, 2, 4, 8, 16 or 32.
  4929. *
  4930. * crsrMask:
  4931. * A PixMapHandle representing the mask. It is assumed to be in
  4932. * 8-bit deep grayScale format, although other depths are accepted
  4933. * and converted to 8-bit grayScale (using CopyBits). The
  4934. * (**crsrMask).bounds rectangle needs to match
  4935. * (**crsrData).bounds. If the crsrData are 32-bit deep, crsrMask
  4936. * can be NULL, and the alpha bytes in the crsrData ARGB pixels
  4937. * are used as mask.
  4938. *
  4939. * hotSpot:
  4940. * The usual cursor hotspot, in coordinates relativ to
  4941. * (**crsrData).bounds.topLeft.
  4942. *
  4943. * name:
  4944. * A naming convention involving the name of your application and
  4945. * descriptive cursor names or resource IDs is suggested. Cursor
  4946. * names are 0-terminated C-strings up to a length of 127. $result
  4947. * OSStatus: noErr = 0 for success, or (constants from
  4948. * MacErrors.h): kQDNoColorHWCursorSupport,
  4949. * kQDCursorAlreadyRegistered, paramErr, memFullErr, or a CGError
  4950. * as returned internally from CoreGraphics.
  4951. *
  4952. * Availability:
  4953. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  4954. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  4955. * Non-Carbon CFM: not available
  4956. }
  4957. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  4958. function QDRegisterNamedPixMapCursor( crsrData: PixMapHandle; crsrMask: PixMapHandle; hotSpot: Point; name: ConstCStringPtr ): OSStatus; external name '_QDRegisterNamedPixMapCursor';
  4959. {
  4960. * QDUnregisterNamedPixMapCursur()
  4961. *
  4962. * Mac OS X threading:
  4963. * Not thread safe
  4964. *
  4965. * Availability:
  4966. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  4967. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  4968. * Non-Carbon CFM: not available
  4969. }
  4970. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  4971. function QDUnregisterNamedPixMapCursur( name: ConstCStringPtr ): OSStatus; external name '_QDUnregisterNamedPixMapCursur';
  4972. {
  4973. * QDUnregisterNamedPixMapCursor()
  4974. *
  4975. * Mac OS X threading:
  4976. * Not thread safe
  4977. *
  4978. * Availability:
  4979. * Mac OS X: in version 10.3 and later in ApplicationServices.framework
  4980. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.3 and later
  4981. * Non-Carbon CFM: not available
  4982. }
  4983. // AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
  4984. function QDUnregisterNamedPixMapCursor( name: ConstCStringPtr ): OSStatus; external name '_QDUnregisterNamedPixMapCursor';
  4985. {
  4986. * QDSetNamedPixMapCursor()
  4987. *
  4988. * Mac OS X threading:
  4989. * Not thread safe
  4990. *
  4991. * Availability:
  4992. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  4993. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  4994. * Non-Carbon CFM: not available
  4995. }
  4996. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  4997. function QDSetNamedPixMapCursor( name: ConstCStringPtr ): OSStatus; external name '_QDSetNamedPixMapCursor';
  4998. type
  4999. QDXSystemCursorID = UInt32;
  5000. const
  5001. kQDXArrowCursor = 0;
  5002. kQDXIBeamCursor = 1;
  5003. kQDXIBeamXORCursor = 2;
  5004. kQDXAliasCursor = 3;
  5005. kQDXCopyCursor = 4;
  5006. kQDXMoveCursor = 5;
  5007. kQDXNumberOfSystemCursors = 6; { Must be last }
  5008. {
  5009. * QDGetCursorNameForSystemCursor()
  5010. *
  5011. * Summary:
  5012. * Return the name of one of the predefined Mac OS X system cursors
  5013. *
  5014. * Mac OS X threading:
  5015. * Not thread safe
  5016. *
  5017. * Parameters:
  5018. *
  5019. * cursorID:
  5020. * UInt32 in the range 0 ... kQDXNumberOfSystemCursors - 1 (see
  5021. * enum above)
  5022. *
  5023. * Result:
  5024. * const char* name, or NULL if 'cursorID' is out of range
  5025. *
  5026. * Availability:
  5027. * Mac OS X: in version 10.3 and later in ApplicationServices.framework
  5028. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.3 and later
  5029. * Non-Carbon CFM: not available
  5030. }
  5031. // AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
  5032. function QDGetCursorNameForSystemCursor( cursorID: QDXSystemCursorID ): ConstCStringPtr; external name '_QDGetCursorNameForSystemCursor';
  5033. {
  5034. * QDSetCursorScale()
  5035. *
  5036. * Summary:
  5037. * Set a scaling factor for the cursor.
  5038. *
  5039. * Mac OS X threading:
  5040. * Not thread safe
  5041. *
  5042. * Parameters:
  5043. *
  5044. * scale:
  5045. * Must be at least 0.5, and integer values (1.0, 2.0, 3.0, 4.0)
  5046. * are recommended. The scaling factor is system-wide (applies to
  5047. * all apps), and is intended for use in such things as assisting
  5048. * the visually impaired. The scaling factor is treated as a hint
  5049. * to the system, and the exact scale applied may be limited by
  5050. * device driver capabilities and performance considerations.
  5051. *
  5052. * Availability:
  5053. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  5054. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  5055. * Non-Carbon CFM: not available
  5056. }
  5057. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  5058. function QDSetCursorScale( scale: Float32 ): OSStatus; external name '_QDSetCursorScale';
  5059. {
  5060. * QDGetCursorScale()
  5061. *
  5062. * Mac OS X threading:
  5063. * Not thread safe
  5064. *
  5065. * Availability:
  5066. * Mac OS X: in version 10.3 and later in ApplicationServices.framework
  5067. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.3 and later
  5068. * Non-Carbon CFM: not available
  5069. }
  5070. // AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
  5071. function QDGetCursorScale( outScale: Float32Ptr ): OSStatus; external name '_QDGetCursorScale';
  5072. {
  5073. * QDGetCursorData()
  5074. *
  5075. * Summary:
  5076. * Allocate and return a PixMapHandle with the cursor data; also
  5077. * return the hotSpot. The caller is responsible for calling
  5078. * DisposePtr((**crsrData).baseAddr) and DisposePixMap(crsrData)
  5079. * when done with the crsrData returned.
  5080. *
  5081. * Mac OS X threading:
  5082. * Not thread safe
  5083. *
  5084. * Parameters:
  5085. *
  5086. * contextCursor:
  5087. * A Boolean; if true, return data for the current context cursor,
  5088. * if false, return data for the currently showing global cursor.
  5089. *
  5090. * crsrData:
  5091. * Allocates a PixMapHandle and pixelData in baseAddr,
  5092. * corresponding to the cursorData. The pixelData are in 32-bit
  5093. * ARGB format, with the mask contained in the alpha channel. This
  5094. * PixMapHandle can be passed as crsrData to
  5095. * QDRegisterNamedPixMapCursor, above (with crsrMask = NULL). If
  5096. * the return result indicates an error, NULL is returned.
  5097. *
  5098. * hotSpot:
  5099. * Contains the cursor hotSpot, if successful.
  5100. *
  5101. * Result:
  5102. * noErr if successful, or whatever error is returned from lower
  5103. * levels otherwise.
  5104. *
  5105. * Availability:
  5106. * Mac OS X: in version 10.3 and later in ApplicationServices.framework
  5107. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.3 and later
  5108. * Non-Carbon CFM: not available
  5109. }
  5110. // AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
  5111. function QDGetCursorData( contextCursor: Boolean; var crsrData: PixMapHandle; var hotSpot: Point ): OSStatus; external name '_QDGetCursorData';
  5112. const
  5113. kQDUseDefaultTextRendering = 0; { Sets whatever is specified in system defaults. }
  5114. { Currently sets kQDUseTrueTypeScalerGlyphs if nothing is specified.}
  5115. kQDUseTrueTypeScalerGlyphs = (1 shl 0); { bit 0}
  5116. kQDUseCGTextRendering = (1 shl 1); { bit 1}
  5117. kQDUseCGTextMetrics = (1 shl 2); { bit 2}
  5118. kQDSupportedFlags = kQDUseTrueTypeScalerGlyphs or kQDUseCGTextRendering or kQDUseCGTextMetrics;
  5119. kQDDontChangeFlags = $FFFFFFFF; { to request the current state, without changing anything }
  5120. {
  5121. * QDSwapTextFlags()
  5122. *
  5123. * Summary:
  5124. * Returns current flags and optionally sets new flags.
  5125. *
  5126. * Discussion:
  5127. * Currently, only the flag bits in the enum above are supported.
  5128. * The typical usage is UInt32 savedFlags =
  5129. * QDSwapTextFlags(newFlags); // ... draw text under the conditions
  5130. * of "newFlags" ... (void)QDSwapTextFlags(savedFlags); // restore
  5131. * previous setting
  5132. *
  5133. * Mac OS X threading:
  5134. * Not thread safe
  5135. *
  5136. * Parameters:
  5137. *
  5138. * newFlags:
  5139. * Use the enums above; example "kQDUseCGTextRendering |
  5140. * kQDUseCGTextMetrics".
  5141. *
  5142. * Availability:
  5143. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  5144. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  5145. * Non-Carbon CFM: not available
  5146. }
  5147. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  5148. function QDSwapTextFlags( newFlags: UInt32 ): UInt32; external name '_QDSwapTextFlags';
  5149. {
  5150. * QDSwapPortTextFlags()
  5151. *
  5152. * Summary:
  5153. * Same as QDSwapTextFlags, but per GrafPort.
  5154. *
  5155. * Mac OS X threading:
  5156. * Not thread safe
  5157. *
  5158. * Parameters:
  5159. *
  5160. * port:
  5161. * Settings per port override any global settings. If port ==
  5162. * NULL, the current port is used.
  5163. *
  5164. * newFlags:
  5165. * As in QDSwapTextFlags, above.
  5166. *
  5167. * Availability:
  5168. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  5169. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  5170. * Non-Carbon CFM: not available
  5171. }
  5172. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  5173. function QDSwapPortTextFlags( port: CGrafPtr; newFlags: UInt32 ): UInt32; external name '_QDSwapPortTextFlags';
  5174. {
  5175. * QDGetCGDirectDisplayID()
  5176. *
  5177. * Summary:
  5178. * Return the CGDirectDisplayID corresponding to a GDHandle
  5179. *
  5180. * Mac OS X threading:
  5181. * Not thread safe
  5182. *
  5183. * Parameters:
  5184. *
  5185. * inGDevice:
  5186. * The GDevice handle corresponding to the device for which the
  5187. * CGDirectDisplayID is requested
  5188. *
  5189. * Result:
  5190. * The CGDirectDisplayID, or 0 if the GDHandle does not represent a
  5191. * display.
  5192. *
  5193. * Availability:
  5194. * Mac OS X: in version 10.3 and later in ApplicationServices.framework
  5195. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.3 and later
  5196. * Non-Carbon CFM: not available
  5197. }
  5198. // AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
  5199. function QDGetCGDirectDisplayID( inGDevice: GDHandle ): CGDirectDisplayID; external name '_QDGetCGDirectDisplayID';
  5200. {
  5201. LowMem accessor functions previously in LowMem.h
  5202. }
  5203. {
  5204. * LMGetScrVRes()
  5205. *
  5206. * Availability:
  5207. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5208. * CarbonLib: in CarbonLib 1.0 and later
  5209. * Mac OS X: in version 10.0 and later
  5210. }
  5211. function LMGetScrVRes: SInt16; external name '_LMGetScrVRes';
  5212. {
  5213. * LMSetScrVRes()
  5214. *
  5215. * Availability:
  5216. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5217. * CarbonLib: in CarbonLib 1.0 and later
  5218. * Mac OS X: in version 10.0 and later
  5219. }
  5220. procedure LMSetScrVRes(value: SInt16); external name '_LMSetScrVRes';
  5221. {
  5222. * LMGetScrHRes()
  5223. *
  5224. * Availability:
  5225. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5226. * CarbonLib: in CarbonLib 1.0 and later
  5227. * Mac OS X: in version 10.0 and later
  5228. }
  5229. function LMGetScrHRes: SInt16; external name '_LMGetScrHRes';
  5230. {
  5231. * LMSetScrHRes()
  5232. *
  5233. * Availability:
  5234. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5235. * CarbonLib: in CarbonLib 1.0 and later
  5236. * Mac OS X: in version 10.0 and later
  5237. }
  5238. procedure LMSetScrHRes(value: SInt16); external name '_LMSetScrHRes';
  5239. {
  5240. * LMGetMainDevice()
  5241. *
  5242. * Availability:
  5243. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5244. * CarbonLib: in CarbonLib 1.0 and later
  5245. * Mac OS X: in version 10.0 and later
  5246. }
  5247. function LMGetMainDevice: GDHandle; external name '_LMGetMainDevice';
  5248. {
  5249. * LMSetMainDevice()
  5250. *
  5251. * Availability:
  5252. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5253. * CarbonLib: in CarbonLib 1.0 and later
  5254. * Mac OS X: in version 10.0 and later
  5255. }
  5256. procedure LMSetMainDevice(value: GDHandle); external name '_LMSetMainDevice';
  5257. {
  5258. * LMGetDeviceList()
  5259. *
  5260. * Availability:
  5261. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5262. * CarbonLib: in CarbonLib 1.0 and later
  5263. * Mac OS X: in version 10.0 and later
  5264. }
  5265. function LMGetDeviceList: GDHandle; external name '_LMGetDeviceList';
  5266. {
  5267. * LMSetDeviceList()
  5268. *
  5269. * Availability:
  5270. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5271. * CarbonLib: in CarbonLib 1.0 and later
  5272. * Mac OS X: in version 10.0 and later
  5273. }
  5274. procedure LMSetDeviceList(value: GDHandle); external name '_LMSetDeviceList';
  5275. {
  5276. * LMGetQDColors()
  5277. *
  5278. * Availability:
  5279. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5280. * CarbonLib: in CarbonLib 1.0 and later
  5281. * Mac OS X: in version 10.0 and later
  5282. }
  5283. function LMGetQDColors: Handle; external name '_LMGetQDColors';
  5284. {
  5285. * LMSetQDColors()
  5286. *
  5287. * Availability:
  5288. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5289. * CarbonLib: in CarbonLib 1.0 and later
  5290. * Mac OS X: in version 10.0 and later
  5291. }
  5292. procedure LMSetQDColors(value: Handle); external name '_LMSetQDColors';
  5293. {
  5294. * LMGetWidthListHand()
  5295. *
  5296. * Availability:
  5297. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5298. * CarbonLib: in CarbonLib 1.0 and later
  5299. * Mac OS X: in version 10.0 and later
  5300. }
  5301. function LMGetWidthListHand: Handle; external name '_LMGetWidthListHand';
  5302. {
  5303. * LMSetWidthListHand()
  5304. *
  5305. * Availability:
  5306. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5307. * CarbonLib: in CarbonLib 1.0 and later
  5308. * Mac OS X: in version 10.0 and later
  5309. }
  5310. procedure LMSetWidthListHand(value: Handle); external name '_LMSetWidthListHand';
  5311. {
  5312. * LMGetHiliteMode()
  5313. *
  5314. * Availability:
  5315. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5316. * CarbonLib: in CarbonLib 1.0 and later
  5317. * Mac OS X: in version 10.0 and later
  5318. }
  5319. function LMGetHiliteMode: ByteParameter; external name '_LMGetHiliteMode';
  5320. {
  5321. * LMSetHiliteMode()
  5322. *
  5323. * Availability:
  5324. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5325. * CarbonLib: in CarbonLib 1.0 and later
  5326. * Mac OS X: in version 10.0 and later
  5327. }
  5328. procedure LMSetHiliteMode(value: ByteParameter); external name '_LMSetHiliteMode';
  5329. {
  5330. * LMGetWidthPtr()
  5331. *
  5332. * Availability:
  5333. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5334. * CarbonLib: in CarbonLib 1.0 and later
  5335. * Mac OS X: in version 10.0 and later
  5336. }
  5337. function LMGetWidthPtr: Ptr; external name '_LMGetWidthPtr';
  5338. {
  5339. * LMSetWidthPtr()
  5340. *
  5341. * Availability:
  5342. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5343. * CarbonLib: in CarbonLib 1.0 and later
  5344. * Mac OS X: in version 10.0 and later
  5345. }
  5346. procedure LMSetWidthPtr(value: Ptr); external name '_LMSetWidthPtr';
  5347. {
  5348. * LMGetWidthTabHandle()
  5349. *
  5350. * Availability:
  5351. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5352. * CarbonLib: in CarbonLib 1.0 and later
  5353. * Mac OS X: in version 10.0 and later
  5354. }
  5355. function LMGetWidthTabHandle: Handle; external name '_LMGetWidthTabHandle';
  5356. {
  5357. * LMSetWidthTabHandle()
  5358. *
  5359. * Availability:
  5360. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5361. * CarbonLib: in CarbonLib 1.0 and later
  5362. * Mac OS X: in version 10.0 and later
  5363. }
  5364. procedure LMSetWidthTabHandle(value: Handle); external name '_LMSetWidthTabHandle';
  5365. {
  5366. * LMGetLastSPExtra()
  5367. *
  5368. * Availability:
  5369. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5370. * CarbonLib: in CarbonLib 1.0 and later
  5371. * Mac OS X: in version 10.0 and later
  5372. }
  5373. function LMGetLastSPExtra: SInt32; external name '_LMGetLastSPExtra';
  5374. {
  5375. * LMSetLastSPExtra()
  5376. *
  5377. * Availability:
  5378. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5379. * CarbonLib: in CarbonLib 1.0 and later
  5380. * Mac OS X: in version 10.0 and later
  5381. }
  5382. procedure LMSetLastSPExtra(value: SInt32); external name '_LMSetLastSPExtra';
  5383. {
  5384. * LMGetLastFOND()
  5385. *
  5386. * Availability:
  5387. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5388. * CarbonLib: in CarbonLib 1.0 and later
  5389. * Mac OS X: in version 10.0 and later
  5390. }
  5391. function LMGetLastFOND: Handle; external name '_LMGetLastFOND';
  5392. {
  5393. * LMSetLastFOND()
  5394. *
  5395. * Availability:
  5396. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5397. * CarbonLib: in CarbonLib 1.0 and later
  5398. * Mac OS X: in version 10.0 and later
  5399. }
  5400. procedure LMSetLastFOND(value: Handle); external name '_LMSetLastFOND';
  5401. {
  5402. * LMGetFractEnable()
  5403. *
  5404. * Availability:
  5405. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5406. * CarbonLib: in CarbonLib 1.0 and later
  5407. * Mac OS X: in version 10.0 and later
  5408. }
  5409. function LMGetFractEnable: ByteParameter; external name '_LMGetFractEnable';
  5410. {
  5411. * LMSetFractEnable()
  5412. *
  5413. * Availability:
  5414. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5415. * CarbonLib: in CarbonLib 1.0 and later
  5416. * Mac OS X: in version 10.0 and later
  5417. }
  5418. procedure LMSetFractEnable(value: ByteParameter); external name '_LMSetFractEnable';
  5419. {
  5420. * LMGetTheGDevice()
  5421. *
  5422. * Availability:
  5423. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5424. * CarbonLib: in CarbonLib 1.0 and later
  5425. * Mac OS X: in version 10.0 and later
  5426. }
  5427. function LMGetTheGDevice: GDHandle; external name '_LMGetTheGDevice';
  5428. {
  5429. * LMSetTheGDevice()
  5430. *
  5431. * Availability:
  5432. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5433. * CarbonLib: in CarbonLib 1.0 and later
  5434. * Mac OS X: in version 10.0 and later
  5435. }
  5436. procedure LMSetTheGDevice(value: GDHandle); external name '_LMSetTheGDevice';
  5437. {$ifc TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  5438. {$ifc CALL_NOT_IN_CARBON}
  5439. {
  5440. * LMGetHiliteRGB()
  5441. *
  5442. * Availability:
  5443. * Non-Carbon CFM: not available
  5444. * CarbonLib: not available
  5445. * Mac OS X: not available
  5446. }
  5447. procedure LMGetHiliteRGB(var hiliteRGBValue: RGBColor); external name '_LMGetHiliteRGB';
  5448. {
  5449. * LMSetHiliteRGB()
  5450. *
  5451. * Availability:
  5452. * Non-Carbon CFM: not available
  5453. * CarbonLib: not available
  5454. * Mac OS X: not available
  5455. }
  5456. procedure LMSetHiliteRGB(const (*var*) hiliteRGBValue: RGBColor); external name '_LMSetHiliteRGB';
  5457. {$endc} {CALL_NOT_IN_CARBON}
  5458. {$elsec}
  5459. {
  5460. * LMGetHiliteRGB()
  5461. *
  5462. * Availability:
  5463. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5464. * CarbonLib: in CarbonLib 1.0 and later
  5465. * Mac OS X: in version 10.0 and later
  5466. }
  5467. procedure LMGetHiliteRGB(var hiliteRGBValue: RGBColor); external name '_LMGetHiliteRGB';
  5468. {
  5469. * LMSetHiliteRGB()
  5470. *
  5471. * Availability:
  5472. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5473. * CarbonLib: in CarbonLib 1.0 and later
  5474. * Mac OS X: in version 10.0 and later
  5475. }
  5476. procedure LMSetHiliteRGB(const (*var*) hiliteRGBValue: RGBColor); external name '_LMSetHiliteRGB';
  5477. {$endc}
  5478. {
  5479. * LMGetCursorNew()
  5480. *
  5481. * Availability:
  5482. * Non-Carbon CFM: in InterfaceLib 8.5 and later
  5483. * CarbonLib: in CarbonLib 1.0 and later
  5484. * Mac OS X: in version 10.0 and later
  5485. }
  5486. function LMGetCursorNew: boolean; external name '_LMGetCursorNew';
  5487. {
  5488. * LMSetCursorNew()
  5489. *
  5490. * Availability:
  5491. * Non-Carbon CFM: in InterfaceLib 8.5 and later
  5492. * CarbonLib: in CarbonLib 1.0 and later
  5493. * Mac OS X: in version 10.0 and later
  5494. }
  5495. procedure LMSetCursorNew(value: boolean); external name '_LMSetCursorNew';
  5496. {$ALIGN MAC68K}
  5497. end.