Quickdraw.pas 184 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818
  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. GDHandle_GAP_Private_field_type_fix = GDHandle; { used as field type when a record declaration contains a GDHandle field identifier }
  1285. GDHandlePtr = ^GDHandle; { when a VAR xx: GDHandle parameter can be nil, it is changed to xx: GDHandlePtr }
  1286. GDevice = record
  1287. gdRefNum: SInt16; { driver's unit number }
  1288. gdID: SInt16; { client ID for search procs }
  1289. gdType: SInt16; { fixed/CLUT/direct }
  1290. gdITable: ITabHandle; { Handle to inverse lookup table }
  1291. gdResPref: SInt16; { preferred resolution of GDITable }
  1292. gdSearchProc: SProcHndl; { search proc list head }
  1293. gdCompProc: CProcHndl; { complement proc list }
  1294. gdFlags: SInt16; { grafDevice flags word }
  1295. gdPMap: PixMapHandle; { describing pixMap }
  1296. gdRefCon: SInt32; { reference value }
  1297. gdNextGD: GDHandle; { GDHandle Handle of next gDevice }
  1298. gdRect: Rect; { device's bounds in global coordinates }
  1299. gdMode: SInt32; { device's current mode }
  1300. gdCCBytes: SInt16; { depth of expanded cursor data }
  1301. gdCCDepth: SInt16; { depth of expanded cursor data }
  1302. gdCCXData: Handle; { Handle to cursor's expanded data }
  1303. gdCCXMask: Handle; { Handle to cursor's expanded mask }
  1304. gdReserved: SInt32; { future use. MUST BE 0 }
  1305. end;
  1306. GrafVars = record
  1307. rgbOpColor: RGBColor; { color for addPin subPin and average }
  1308. rgbHiliteColor: RGBColor; { color for hiliting }
  1309. pmFgColor: Handle; { palette Handle for foreground color }
  1310. pmFgIndex: SInt16; { index value for foreground }
  1311. pmBkColor: Handle; { palette Handle for background color }
  1312. pmBkIndex: SInt16; { index value for background }
  1313. pmFlags: SInt16; { flags for Palette Manager }
  1314. end;
  1315. GVarPtr = ^GrafVars;
  1316. GVarHandle = ^GVarPtr;
  1317. {$ifc NOT OPAQUE_TOOLBOX_STRUCTS}
  1318. CGrafPortPtr = ^CGrafPort;
  1319. CGrafPtr = ^CGrafPort;
  1320. {$elsec}
  1321. CGrafPtr = GrafPtr;
  1322. {$endc}
  1323. CGrafPtrPtr = ^CGrafPtr;
  1324. {$ifc TYPED_FUNCTION_POINTERS}
  1325. QDPrinterStatusProcPtr = function(opcode: PrinterStatusOpcode; currentPort: CGrafPtr; printerStatus: UnivPtr): OSStatus;
  1326. {$elsec}
  1327. QDPrinterStatusProcPtr = ProcPtr;
  1328. {$endc}
  1329. {$ifc OPAQUE_UPP_TYPES}
  1330. QDPrinterStatusUPP = ^SInt32; { an opaque UPP }
  1331. {$elsec}
  1332. QDPrinterStatusUPP = UniversalProcPtr;
  1333. {$endc}
  1334. CQDProcsPtr = ^CQDProcs;
  1335. CQDProcs = record
  1336. textProc: QDTextUPP;
  1337. lineProc: QDLineUPP;
  1338. rectProc: QDRectUPP;
  1339. rRectProc: QDRRectUPP;
  1340. ovalProc: QDOvalUPP;
  1341. arcProc: QDArcUPP;
  1342. polyProc: QDPolyUPP;
  1343. rgnProc: QDRgnUPP;
  1344. bitsProc: QDBitsUPP;
  1345. commentProc: QDCommentUPP;
  1346. txMeasProc: QDTxMeasUPP;
  1347. getPicProc: QDGetPicUPP;
  1348. putPicProc: QDPutPicUPP;
  1349. opcodeProc: QDOpcodeUPP;
  1350. newProc1: UniversalProcPtr; { this is the StdPix bottleneck -- see ImageCompression.h }
  1351. glyphsProc: QDStdGlyphsUPP; { was newProc2; now used in Unicode text drawing }
  1352. printerStatusProc: QDPrinterStatusUPP; { was newProc3; now used to communicate status between Printing code and System imaging code }
  1353. newProc4: UniversalProcPtr;
  1354. newProc5: UniversalProcPtr;
  1355. newProc6: UniversalProcPtr;
  1356. end;
  1357. {$ifc NOT OPAQUE_TOOLBOX_STRUCTS}
  1358. CGrafPort = record
  1359. device: SInt16; { not available in Carbon }
  1360. portPixMap: PixMapHandle; { in Carbon use GetPortPixMap }
  1361. portVersion: SInt16; { in Carbon use IsPortColor }
  1362. grafVars: Handle; { not available in Carbon }
  1363. chExtra: SInt16; { in Carbon use GetPortChExtra }
  1364. pnLocHFrac: SInt16; { in Carbon use Get/SetPortFracHPenLocation }
  1365. portRect: Rect; { in Carbon use Get/SetPortBounds }
  1366. visRgn: RgnHandle; { in Carbon use Get/SetPortVisibleRegion }
  1367. clipRgn: RgnHandle; { in Carbon use Get/SetPortClipRegion }
  1368. bkPixPat: PixPatHandle; { in Carbon use GetPortBackPixPat or BackPixPat }
  1369. rgbFgColor: RGBColor; { in Carbon use GetPortForeColor or RGBForeColor }
  1370. rgbBkColor: RGBColor; { in Carbon use GetPortBackColor or RGBBackColor }
  1371. pnLoc: Point; { in Carbon use GetPortPenLocation or MoveTo }
  1372. pnSize: Point; { in Carbon use Get/SetPortPenSize }
  1373. pnMode: SInt16; { in Carbon use Get/SetPortPenMode }
  1374. pnPixPat: PixPatHandle; { in Carbon use Get/SetPortPenPixPat }
  1375. fillPixPat: PixPatHandle; { in Carbon use GetPortFillPixPat }
  1376. pnVis: SInt16; { in Carbon use GetPortPenVisibility or Show/HidePen }
  1377. txFont: SInt16; { in Carbon use GetPortTextFont or TextFont }
  1378. txFace: StyleField; { in Carbon use GetPortTextFace or TextFace }
  1379. { StyleField occupies 16-bits, but only first 8-bits are used }
  1380. txMode: SInt16; { in Carbon use GetPortTextMode or TextMode }
  1381. txSize: SInt16; { in Carbon use GetPortTextSize or TextSize }
  1382. spExtra: Fixed; { in Carbon use GetPortSpExtra or SpaceExtra }
  1383. fgColor: SInt32; { not available in Carbon }
  1384. bkColor: SInt32; { not available in Carbon }
  1385. colrBit: SInt16; { not available in Carbon }
  1386. patStretch: SInt16; { not available in Carbon }
  1387. picSave: Handle; { in Carbon use IsPortPictureBeingDefined }
  1388. rgnSave: Handle; { in Carbon use IsPortRegionBeingDefined }
  1389. polySave: Handle; { in Carbon use IsPortPolyBeingDefined }
  1390. grafProcs: CQDProcsPtr; { in Carbon use Get/SetPortGrafProcs }
  1391. end;
  1392. {$endc}
  1393. {$ifc OPAQUE_TOOLBOX_STRUCTS}
  1394. CWindowPtr = WindowPtr;
  1395. {$elsec}
  1396. CWindowPtr = CGrafPtr;
  1397. {$endc} {OPAQUE_TOOLBOX_STRUCTS}
  1398. ReqListRecPtr = ^ReqListRec;
  1399. ReqListRec = record
  1400. reqLSize: SInt16; { request list size }
  1401. reqLData: array [0..0] of SInt16; { request list data }
  1402. end;
  1403. OpenCPicParamsPtr = ^OpenCPicParams;
  1404. OpenCPicParams = record
  1405. srcRect: Rect;
  1406. hRes: Fixed;
  1407. vRes: Fixed;
  1408. version: SInt16;
  1409. reserved1: SInt16;
  1410. reserved2: SInt32;
  1411. end;
  1412. const
  1413. kCursorImageMajorVersion = $0001;
  1414. kCursorImageMinorVersion = $0000;
  1415. type
  1416. CursorImageRecPtr = ^CursorImageRec;
  1417. CursorImageRec = record
  1418. majorVersion: UInt16;
  1419. minorVersion: UInt16;
  1420. cursorPixMap: PixMapHandle;
  1421. cursorBitMask: BitMapHandle;
  1422. end;
  1423. CursorImagePtr = ^CursorImageRec;
  1424. {$ifc TYPED_FUNCTION_POINTERS}
  1425. DeviceLoopDrawingProcPtr = procedure(depth: SInt16; deviceFlags: SInt16; targetDevice: GDHandle; userData: SInt32);
  1426. {$elsec}
  1427. DeviceLoopDrawingProcPtr = ProcPtr;
  1428. {$endc}
  1429. {$ifc OPAQUE_UPP_TYPES}
  1430. DeviceLoopDrawingUPP = ^SInt32; { an opaque UPP }
  1431. {$elsec}
  1432. DeviceLoopDrawingUPP = UniversalProcPtr;
  1433. {$endc}
  1434. const
  1435. uppQDPrinterStatusProcInfo = $00000FF1;
  1436. uppDeviceLoopDrawingProcInfo = $00003E80;
  1437. {$ifc CALL_NOT_IN_CARBON}
  1438. {
  1439. * NewQDPrinterStatusUPP()
  1440. *
  1441. * Availability:
  1442. * Non-Carbon CFM: available as macro/inline
  1443. * CarbonLib: not available
  1444. * Mac OS X: not available
  1445. }
  1446. function NewQDPrinterStatusUPP(userRoutine: QDPrinterStatusProcPtr): QDPrinterStatusUPP; external name '_NewQDPrinterStatusUPP'; { old name was NewQDPrinterStatusProc }
  1447. {$endc} {CALL_NOT_IN_CARBON}
  1448. {
  1449. * NewDeviceLoopDrawingUPP()
  1450. *
  1451. * Availability:
  1452. * Non-Carbon CFM: available as macro/inline
  1453. * CarbonLib: in CarbonLib 1.0 and later
  1454. * Mac OS X: in version 10.0 and later
  1455. }
  1456. function NewDeviceLoopDrawingUPP(userRoutine: DeviceLoopDrawingProcPtr): DeviceLoopDrawingUPP; external name '_NewDeviceLoopDrawingUPP'; { old name was NewDeviceLoopDrawingProc }
  1457. {$ifc CALL_NOT_IN_CARBON}
  1458. {
  1459. * DisposeQDPrinterStatusUPP()
  1460. *
  1461. * Availability:
  1462. * Non-Carbon CFM: available as macro/inline
  1463. * CarbonLib: not available
  1464. * Mac OS X: not available
  1465. }
  1466. procedure DisposeQDPrinterStatusUPP(userUPP: QDPrinterStatusUPP); external name '_DisposeQDPrinterStatusUPP';
  1467. {$endc} {CALL_NOT_IN_CARBON}
  1468. {
  1469. * DisposeDeviceLoopDrawingUPP()
  1470. *
  1471. * Availability:
  1472. * Non-Carbon CFM: available as macro/inline
  1473. * CarbonLib: in CarbonLib 1.0 and later
  1474. * Mac OS X: in version 10.0 and later
  1475. }
  1476. procedure DisposeDeviceLoopDrawingUPP(userUPP: DeviceLoopDrawingUPP); external name '_DisposeDeviceLoopDrawingUPP';
  1477. {$ifc CALL_NOT_IN_CARBON}
  1478. {
  1479. * InvokeQDPrinterStatusUPP()
  1480. *
  1481. * Availability:
  1482. * Non-Carbon CFM: available as macro/inline
  1483. * CarbonLib: not available
  1484. * Mac OS X: not available
  1485. }
  1486. function InvokeQDPrinterStatusUPP(opcode: PrinterStatusOpcode; currentPort: CGrafPtr; printerStatus: UnivPtr; userRoutine: QDPrinterStatusUPP): OSStatus; external name '_InvokeQDPrinterStatusUPP'; { old name was CallQDPrinterStatusProc }
  1487. {$endc} {CALL_NOT_IN_CARBON}
  1488. {
  1489. * InvokeDeviceLoopDrawingUPP()
  1490. *
  1491. * Availability:
  1492. * Non-Carbon CFM: available as macro/inline
  1493. * CarbonLib: in CarbonLib 1.0 and later
  1494. * Mac OS X: in version 10.0 and later
  1495. }
  1496. procedure InvokeDeviceLoopDrawingUPP(depth: SInt16; deviceFlags: SInt16; targetDevice: GDHandle; userData: SInt32; userRoutine: DeviceLoopDrawingUPP); external name '_InvokeDeviceLoopDrawingUPP'; { old name was CallDeviceLoopDrawingProc }
  1497. {$ifc NOT OPAQUE_TOOLBOX_STRUCTS OR NOT TARGET_API_MAC_CARBON}
  1498. type
  1499. QDGlobalsPtr = ^QDGlobals;
  1500. QDGlobals = record
  1501. privates: packed array [0..75] of char;
  1502. randSeed: SInt32; { in Carbon use GetQDGlobalsRandomSeed }
  1503. screenBits: BitMap; { in Carbon use GetQDGlobalsScreenBits }
  1504. arrow: Cursor; { in Carbon use GetQDGlobalsArrow }
  1505. dkGray: Pattern; { in Carbon use GetQDGlobalsDarkGray }
  1506. ltGray: Pattern; { in Carbon use GetQDGlobalsLightGray }
  1507. gray: Pattern; { in Carbon use GetQDGlobalsGray }
  1508. black: Pattern; { in Carbon use GetQDGlobalsBlack }
  1509. white: Pattern; { in Carbon use GetQDGlobalsWhite }
  1510. thePort: GrafPtr; { in Carbon use GetQDGlobalsThePort }
  1511. end;
  1512. QDGlobalsHdl = ^QDGlobalsPtr;
  1513. { To be in sync with the C interface to QuickDraw globals, pascal code must now }
  1514. { qualify the QuickDraw globals with Òqd.Ó (e.g. InitGraf(@qd.thePort); ) }
  1515. var qd: QDGlobals; external name '_qd'; (* attribute const *)
  1516. {$endc}
  1517. {$ifc CALL_NOT_IN_CARBON}
  1518. {
  1519. * InitGraf()
  1520. *
  1521. * Availability:
  1522. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1523. * CarbonLib: not available
  1524. * Mac OS X: not available
  1525. }
  1526. procedure InitGraf(globalPtr: UnivPtr); external name '_InitGraf';
  1527. {
  1528. * OpenPort()
  1529. *
  1530. * Availability:
  1531. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1532. * CarbonLib: not available
  1533. * Mac OS X: not available
  1534. }
  1535. procedure OpenPort(port: GrafPtr); external name '_OpenPort';
  1536. {
  1537. * InitPort()
  1538. *
  1539. * Availability:
  1540. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1541. * CarbonLib: not available
  1542. * Mac OS X: not available
  1543. }
  1544. procedure InitPort(port: GrafPtr); external name '_InitPort';
  1545. {
  1546. * ClosePort()
  1547. *
  1548. * Availability:
  1549. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1550. * CarbonLib: not available
  1551. * Mac OS X: not available
  1552. }
  1553. procedure ClosePort(port: GrafPtr); external name '_ClosePort';
  1554. {
  1555. These are Carbon only routines. They do nothing at all on
  1556. Mac OS 8, but work flawlessly on Mac OS X.
  1557. }
  1558. {$endc} {CALL_NOT_IN_CARBON}
  1559. {
  1560. * LockPortBits()
  1561. *
  1562. * Availability:
  1563. * Non-Carbon CFM: not available
  1564. * CarbonLib: in CarbonLib 1.0 and later
  1565. * Mac OS X: in version 10.0 and later
  1566. }
  1567. function LockPortBits(port: GrafPtr): OSErr; external name '_LockPortBits';
  1568. {
  1569. * UnlockPortBits()
  1570. *
  1571. * Availability:
  1572. * Non-Carbon CFM: not available
  1573. * CarbonLib: in CarbonLib 1.0 and later
  1574. * Mac OS X: in version 10.0 and later
  1575. }
  1576. function UnlockPortBits(port: GrafPtr): OSErr; external name '_UnlockPortBits';
  1577. { Break a region up into rectangles. }
  1578. const
  1579. kQDParseRegionFromTop = $01;
  1580. kQDParseRegionFromBottom = $02;
  1581. kQDParseRegionFromLeft = $04;
  1582. kQDParseRegionFromRight = $08;
  1583. kQDParseRegionFromTopLeft = $05;
  1584. kQDParseRegionFromBottomRight = $0A;
  1585. type
  1586. QDRegionParseDirection = SInt32;
  1587. const
  1588. kQDRegionToRectsMsgInit = 1;
  1589. kQDRegionToRectsMsgParse = 2;
  1590. kQDRegionToRectsMsgTerminate = 3;
  1591. type
  1592. {$ifc TYPED_FUNCTION_POINTERS}
  1593. RegionToRectsProcPtr = function(message: UInt16; rgn: RgnHandle; const (*var*) rect_: Rect; refCon: UnivPtr): OSStatus;
  1594. {$elsec}
  1595. RegionToRectsProcPtr = ProcPtr;
  1596. {$endc}
  1597. {$ifc OPAQUE_UPP_TYPES}
  1598. RegionToRectsUPP = ^SInt32; { an opaque UPP }
  1599. {$elsec}
  1600. RegionToRectsUPP = UniversalProcPtr;
  1601. {$endc}
  1602. const
  1603. uppRegionToRectsProcInfo = $00003FB1;
  1604. {
  1605. * NewRegionToRectsUPP()
  1606. *
  1607. * Availability:
  1608. * Non-Carbon CFM: available as macro/inline
  1609. * CarbonLib: in CarbonLib 1.0 and later
  1610. * Mac OS X: in version 10.0 and later
  1611. }
  1612. function NewRegionToRectsUPP(userRoutine: RegionToRectsProcPtr): RegionToRectsUPP; external name '_NewRegionToRectsUPP'; { old name was NewRegionToRectsProc }
  1613. {
  1614. * DisposeRegionToRectsUPP()
  1615. *
  1616. * Availability:
  1617. * Non-Carbon CFM: available as macro/inline
  1618. * CarbonLib: in CarbonLib 1.0 and later
  1619. * Mac OS X: in version 10.0 and later
  1620. }
  1621. procedure DisposeRegionToRectsUPP(userUPP: RegionToRectsUPP); external name '_DisposeRegionToRectsUPP';
  1622. {
  1623. * InvokeRegionToRectsUPP()
  1624. *
  1625. * Availability:
  1626. * Non-Carbon CFM: available as macro/inline
  1627. * CarbonLib: in CarbonLib 1.0 and later
  1628. * Mac OS X: in version 10.0 and later
  1629. }
  1630. function InvokeRegionToRectsUPP(message: UInt16; rgn: RgnHandle; const (*var*) rect_: Rect; refCon: UnivPtr; userRoutine: RegionToRectsUPP): OSStatus; external name '_InvokeRegionToRectsUPP'; { old name was CallRegionToRectsProc }
  1631. {
  1632. * QDRegionToRects()
  1633. *
  1634. * Availability:
  1635. * Non-Carbon CFM: not available
  1636. * CarbonLib: in CarbonLib 1.0 and later
  1637. * Mac OS X: in version 10.0 and later
  1638. }
  1639. function QDRegionToRects(rgn: RgnHandle; dir: QDRegionParseDirection; proc: RegionToRectsUPP; userData: UnivPtr): OSStatus; external name '_QDRegionToRects';
  1640. {$ifc NOT TARGET_OS_MAC}
  1641. {$ifc CALL_NOT_IN_CARBON}
  1642. {
  1643. * UpdatePort()
  1644. *
  1645. * Availability:
  1646. * Non-Carbon CFM: not available
  1647. * CarbonLib: not available
  1648. * Mac OS X: not available
  1649. }
  1650. function UpdatePort(port: GrafPtr): OSErr; external name '_UpdatePort';
  1651. {
  1652. * GetPortNativeWindow()
  1653. *
  1654. * Availability:
  1655. * Non-Carbon CFM: not available
  1656. * CarbonLib: not available
  1657. * Mac OS X: not available
  1658. }
  1659. function GetPortNativeWindow(macPort: GrafPtr): Ptr; external name '_GetPortNativeWindow';
  1660. {
  1661. * GetNativeWindowPort()
  1662. *
  1663. * Availability:
  1664. * Non-Carbon CFM: not available
  1665. * CarbonLib: not available
  1666. * Mac OS X: not available
  1667. }
  1668. function GetNativeWindowPort(nativeWindow: UnivPtr): GrafPtr; external name '_GetNativeWindowPort';
  1669. {
  1670. * MacRegionToNativeRegion()
  1671. *
  1672. * Availability:
  1673. * Non-Carbon CFM: not available
  1674. * CarbonLib: not available
  1675. * Mac OS X: not available
  1676. }
  1677. function MacRegionToNativeRegion(macRegion: RgnHandle): Ptr; external name '_MacRegionToNativeRegion';
  1678. {
  1679. * NativeRegionToMacRegion()
  1680. *
  1681. * Availability:
  1682. * Non-Carbon CFM: not available
  1683. * CarbonLib: not available
  1684. * Mac OS X: not available
  1685. }
  1686. function NativeRegionToMacRegion(nativeRegion: UnivPtr): RgnHandle; external name '_NativeRegionToMacRegion';
  1687. {$endc} {CALL_NOT_IN_CARBON}
  1688. {$endc}
  1689. {$ifc TARGET_OS_WIN32}
  1690. {$ifc CALL_NOT_IN_CARBON}
  1691. {
  1692. * GetPortHWND()
  1693. *
  1694. * Availability:
  1695. * Non-Carbon CFM: not available
  1696. * CarbonLib: not available
  1697. * Mac OS X: not available
  1698. }
  1699. function GetPortHWND(port: GrafPtr): Ptr; external name '_GetPortHWND';
  1700. {
  1701. * GetHWNDPort()
  1702. *
  1703. * Availability:
  1704. * Non-Carbon CFM: not available
  1705. * CarbonLib: not available
  1706. * Mac OS X: not available
  1707. }
  1708. function GetHWNDPort(theHWND: UnivPtr): GrafPtr; external name '_GetHWNDPort';
  1709. {
  1710. * GetPortHDC()
  1711. *
  1712. * Availability:
  1713. * Non-Carbon CFM: not available
  1714. * CarbonLib: not available
  1715. * Mac OS X: not available
  1716. }
  1717. function GetPortHDC(port: GrafPtr): Ptr; external name '_GetPortHDC';
  1718. {
  1719. * GetPortHBITMAP()
  1720. *
  1721. * Availability:
  1722. * Non-Carbon CFM: not available
  1723. * CarbonLib: not available
  1724. * Mac OS X: not available
  1725. }
  1726. function GetPortHBITMAP(port: GrafPtr): Ptr; external name '_GetPortHBITMAP';
  1727. {
  1728. * GetPortHPALETTE()
  1729. *
  1730. * Availability:
  1731. * Non-Carbon CFM: not available
  1732. * CarbonLib: not available
  1733. * Mac OS X: not available
  1734. }
  1735. function GetPortHPALETTE(port: GrafPtr): Ptr; external name '_GetPortHPALETTE';
  1736. {
  1737. * GetPortHFONT()
  1738. *
  1739. * Availability:
  1740. * Non-Carbon CFM: not available
  1741. * CarbonLib: not available
  1742. * Mac OS X: not available
  1743. }
  1744. function GetPortHFONT(port: GrafPtr): Ptr; external name '_GetPortHFONT';
  1745. {
  1746. * GetDIBFromPICT()
  1747. *
  1748. * Availability:
  1749. * Non-Carbon CFM: not available
  1750. * CarbonLib: not available
  1751. * Mac OS X: not available
  1752. }
  1753. function GetDIBFromPICT(hPict: PicHandle): Ptr; external name '_GetDIBFromPICT';
  1754. {
  1755. * GetPICTFromDIB()
  1756. *
  1757. * Availability:
  1758. * Non-Carbon CFM: not available
  1759. * CarbonLib: not available
  1760. * Mac OS X: not available
  1761. }
  1762. function GetPICTFromDIB(h: UnivPtr): PicHandle; external name '_GetPICTFromDIB';
  1763. {$endc} {CALL_NOT_IN_CARBON}
  1764. {$endc} {TARGET_OS_WIN32}
  1765. {
  1766. * [Mac]SetPort()
  1767. *
  1768. * Availability:
  1769. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1770. * CarbonLib: in CarbonLib 1.0 and later
  1771. * Mac OS X: in version 10.0 and later
  1772. }
  1773. procedure SetPort(port: GrafPtr); external name '_SetPort';
  1774. {
  1775. * GetPort()
  1776. *
  1777. * Availability:
  1778. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1779. * CarbonLib: in CarbonLib 1.0 and later
  1780. * Mac OS X: in version 10.0 and later
  1781. }
  1782. procedure GetPort(var port: GrafPtr); external name '_GetPort';
  1783. {
  1784. * QDSwapPort()
  1785. *
  1786. * Availability:
  1787. * Non-Carbon CFM: not available
  1788. * CarbonLib: in CarbonLib 1.5 and later
  1789. * Mac OS X: in version 10.1 and later
  1790. }
  1791. function QDSwapPort(inNewPort: CGrafPtr; outOldPort: CGrafPtrPtr): boolean; external name '_QDSwapPort';
  1792. {
  1793. * GrafDevice()
  1794. *
  1795. * Availability:
  1796. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1797. * CarbonLib: in CarbonLib 1.0 and later
  1798. * Mac OS X: in version 10.0 and later
  1799. }
  1800. procedure GrafDevice(device: SInt16); external name '_GrafDevice';
  1801. {
  1802. * SetPortBits()
  1803. *
  1804. * Availability:
  1805. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1806. * CarbonLib: in CarbonLib 1.0 and later
  1807. * Mac OS X: in version 10.0 and later
  1808. }
  1809. procedure SetPortBits(const (*var*) bm: BitMap); external name '_SetPortBits';
  1810. {
  1811. * PortSize()
  1812. *
  1813. * Availability:
  1814. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1815. * CarbonLib: in CarbonLib 1.0 and later
  1816. * Mac OS X: in version 10.0 and later
  1817. }
  1818. procedure PortSize(width: SInt16; height: SInt16); external name '_PortSize';
  1819. {
  1820. * MovePortTo()
  1821. *
  1822. * Availability:
  1823. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1824. * CarbonLib: in CarbonLib 1.0 and later
  1825. * Mac OS X: in version 10.0 and later
  1826. }
  1827. procedure MovePortTo(leftGlobal: SInt16; topGlobal: SInt16); external name '_MovePortTo';
  1828. {
  1829. * SetOrigin()
  1830. *
  1831. * Availability:
  1832. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1833. * CarbonLib: in CarbonLib 1.0 and later
  1834. * Mac OS X: in version 10.0 and later
  1835. }
  1836. procedure SetOrigin(h: SInt16; v: SInt16); external name '_SetOrigin';
  1837. {
  1838. * SetClip()
  1839. *
  1840. * Availability:
  1841. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1842. * CarbonLib: in CarbonLib 1.0 and later
  1843. * Mac OS X: in version 10.0 and later
  1844. }
  1845. procedure SetClip(rgn: RgnHandle); external name '_SetClip';
  1846. {
  1847. * GetClip()
  1848. *
  1849. * Availability:
  1850. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1851. * CarbonLib: in CarbonLib 1.0 and later
  1852. * Mac OS X: in version 10.0 and later
  1853. }
  1854. procedure GetClip(rgn: RgnHandle); external name '_GetClip';
  1855. {
  1856. * ClipRect()
  1857. *
  1858. * Availability:
  1859. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1860. * CarbonLib: in CarbonLib 1.0 and later
  1861. * Mac OS X: in version 10.0 and later
  1862. }
  1863. procedure ClipRect(const (*var*) r: Rect); external name '_ClipRect';
  1864. {
  1865. * BackPat()
  1866. *
  1867. * Availability:
  1868. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1869. * CarbonLib: in CarbonLib 1.0 and later
  1870. * Mac OS X: in version 10.0 and later
  1871. }
  1872. procedure BackPat(const (*var*) pat: Pattern); external name '_BackPat';
  1873. {
  1874. * InitCursor()
  1875. *
  1876. * Availability:
  1877. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1878. * CarbonLib: in CarbonLib 1.0 and later
  1879. * Mac OS X: in version 10.0 and later
  1880. }
  1881. procedure InitCursor; external name '_InitCursor';
  1882. {
  1883. * [Mac]SetCursor()
  1884. *
  1885. * Availability:
  1886. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1887. * CarbonLib: in CarbonLib 1.0 and later
  1888. * Mac OS X: in version 10.0 and later
  1889. }
  1890. procedure SetCursor(const (*var*) crsr: Cursor); external name '_SetCursor';
  1891. {
  1892. * HideCursor()
  1893. *
  1894. * Availability:
  1895. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1896. * CarbonLib: in CarbonLib 1.0 and later
  1897. * Mac OS X: in version 10.0 and later
  1898. }
  1899. procedure HideCursor; external name '_HideCursor';
  1900. {
  1901. * [Mac]ShowCursor()
  1902. *
  1903. * Availability:
  1904. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1905. * CarbonLib: in CarbonLib 1.0 and later
  1906. * Mac OS X: in version 10.0 and later
  1907. }
  1908. procedure ShowCursor; external name '_ShowCursor';
  1909. {
  1910. * ObscureCursor()
  1911. *
  1912. * Availability:
  1913. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1914. * CarbonLib: in CarbonLib 1.0 and later
  1915. * Mac OS X: in version 10.0 and later
  1916. }
  1917. procedure ObscureCursor; external name '_ObscureCursor';
  1918. {
  1919. * HidePen()
  1920. *
  1921. * Availability:
  1922. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1923. * CarbonLib: in CarbonLib 1.0 and later
  1924. * Mac OS X: in version 10.0 and later
  1925. }
  1926. procedure HidePen; external name '_HidePen';
  1927. {
  1928. * ShowPen()
  1929. *
  1930. * Availability:
  1931. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1932. * CarbonLib: in CarbonLib 1.0 and later
  1933. * Mac OS X: in version 10.0 and later
  1934. }
  1935. procedure ShowPen; external name '_ShowPen';
  1936. {
  1937. * GetPen()
  1938. *
  1939. * Availability:
  1940. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1941. * CarbonLib: in CarbonLib 1.0 and later
  1942. * Mac OS X: in version 10.0 and later
  1943. }
  1944. procedure GetPen(var pt: Point); external name '_GetPen';
  1945. {
  1946. * GetPenState()
  1947. *
  1948. * Availability:
  1949. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1950. * CarbonLib: in CarbonLib 1.0 and later
  1951. * Mac OS X: in version 10.0 and later
  1952. }
  1953. procedure GetPenState(var pnState: PenState); external name '_GetPenState';
  1954. {
  1955. * SetPenState()
  1956. *
  1957. * Availability:
  1958. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1959. * CarbonLib: in CarbonLib 1.0 and later
  1960. * Mac OS X: in version 10.0 and later
  1961. }
  1962. procedure SetPenState(const (*var*) pnState: PenState); external name '_SetPenState';
  1963. {
  1964. * PenSize()
  1965. *
  1966. * Availability:
  1967. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1968. * CarbonLib: in CarbonLib 1.0 and later
  1969. * Mac OS X: in version 10.0 and later
  1970. }
  1971. procedure PenSize(width: SInt16; height: SInt16); external name '_PenSize';
  1972. {
  1973. * PenMode()
  1974. *
  1975. * Availability:
  1976. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1977. * CarbonLib: in CarbonLib 1.0 and later
  1978. * Mac OS X: in version 10.0 and later
  1979. }
  1980. procedure PenMode(mode: SInt16); external name '_PenMode';
  1981. {
  1982. * PenPat()
  1983. *
  1984. * Availability:
  1985. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1986. * CarbonLib: in CarbonLib 1.0 and later
  1987. * Mac OS X: in version 10.0 and later
  1988. }
  1989. procedure PenPat(const (*var*) pat: Pattern); external name '_PenPat';
  1990. {
  1991. * PenNormal()
  1992. *
  1993. * Availability:
  1994. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1995. * CarbonLib: in CarbonLib 1.0 and later
  1996. * Mac OS X: in version 10.0 and later
  1997. }
  1998. procedure PenNormal; external name '_PenNormal';
  1999. {
  2000. * MoveTo()
  2001. *
  2002. * Availability:
  2003. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2004. * CarbonLib: in CarbonLib 1.0 and later
  2005. * Mac OS X: in version 10.0 and later
  2006. }
  2007. procedure MoveTo(h: SInt16; v: SInt16); external name '_MoveTo';
  2008. {
  2009. * Move()
  2010. *
  2011. * Availability:
  2012. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2013. * CarbonLib: in CarbonLib 1.0 and later
  2014. * Mac OS X: in version 10.0 and later
  2015. }
  2016. procedure Move(dh: SInt16; dv: SInt16); external name '_Move';
  2017. {
  2018. * [Mac]LineTo()
  2019. *
  2020. * Availability:
  2021. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2022. * CarbonLib: in CarbonLib 1.0 and later
  2023. * Mac OS X: in version 10.0 and later
  2024. }
  2025. procedure LineTo(h: SInt16; v: SInt16); external name '_LineTo';
  2026. {
  2027. * Line()
  2028. *
  2029. * Availability:
  2030. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2031. * CarbonLib: in CarbonLib 1.0 and later
  2032. * Mac OS X: in version 10.0 and later
  2033. }
  2034. procedure Line(dh: SInt16; dv: SInt16); external name '_Line';
  2035. {
  2036. * ForeColor()
  2037. *
  2038. * Availability:
  2039. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2040. * CarbonLib: in CarbonLib 1.0 and later
  2041. * Mac OS X: in version 10.0 and later
  2042. }
  2043. procedure ForeColor(color: SInt32); external name '_ForeColor';
  2044. {
  2045. * BackColor()
  2046. *
  2047. * Availability:
  2048. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2049. * CarbonLib: in CarbonLib 1.0 and later
  2050. * Mac OS X: in version 10.0 and later
  2051. }
  2052. procedure BackColor(color: SInt32); external name '_BackColor';
  2053. {
  2054. * ColorBit()
  2055. *
  2056. * Availability:
  2057. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2058. * CarbonLib: in CarbonLib 1.0 and later
  2059. * Mac OS X: in version 10.0 and later
  2060. }
  2061. procedure ColorBit(whichBit: SInt16); external name '_ColorBit';
  2062. {
  2063. * [Mac]SetRect()
  2064. *
  2065. * Availability:
  2066. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2067. * CarbonLib: in CarbonLib 1.0 and later
  2068. * Mac OS X: in version 10.0 and later
  2069. }
  2070. procedure SetRect(var r: Rect; left: SInt16; top: SInt16; right: SInt16; bottom: SInt16); external name '_SetRect';
  2071. {
  2072. * [Mac]OffsetRect()
  2073. *
  2074. * Availability:
  2075. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2076. * CarbonLib: in CarbonLib 1.0 and later
  2077. * Mac OS X: in version 10.0 and later
  2078. }
  2079. procedure OffsetRect(var r: Rect; dh: SInt16; dv: SInt16); external name '_OffsetRect';
  2080. {
  2081. * [Mac]InsetRect()
  2082. *
  2083. * Availability:
  2084. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2085. * CarbonLib: in CarbonLib 1.0 and later
  2086. * Mac OS X: in version 10.0 and later
  2087. }
  2088. procedure InsetRect(var r: Rect; dh: SInt16; dv: SInt16); external name '_InsetRect';
  2089. {
  2090. * SectRect()
  2091. *
  2092. * Availability:
  2093. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2094. * CarbonLib: in CarbonLib 1.0 and later
  2095. * Mac OS X: in version 10.0 and later
  2096. }
  2097. function SectRect(const (*var*) src1: Rect; const (*var*) src2: Rect; var dstRect: Rect): boolean; external name '_SectRect';
  2098. {
  2099. * [Mac]UnionRect()
  2100. *
  2101. * Availability:
  2102. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2103. * CarbonLib: in CarbonLib 1.0 and later
  2104. * Mac OS X: in version 10.0 and later
  2105. }
  2106. procedure UnionRect(const (*var*) src1: Rect; const (*var*) src2: Rect; var dstRect: Rect); external name '_UnionRect';
  2107. {
  2108. * [Mac]EqualRect()
  2109. *
  2110. * Availability:
  2111. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2112. * CarbonLib: in CarbonLib 1.0 and later
  2113. * Mac OS X: in version 10.0 and later
  2114. }
  2115. function EqualRect(const (*var*) rect1: Rect; const (*var*) rect2: Rect): boolean; external name '_EqualRect';
  2116. {
  2117. * EmptyRect()
  2118. *
  2119. * Availability:
  2120. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2121. * CarbonLib: in CarbonLib 1.0 and later
  2122. * Mac OS X: in version 10.0 and later
  2123. }
  2124. function EmptyRect(const (*var*) r: Rect): boolean; external name '_EmptyRect';
  2125. {
  2126. * [Mac]FrameRect()
  2127. *
  2128. * Availability:
  2129. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2130. * CarbonLib: in CarbonLib 1.0 and later
  2131. * Mac OS X: in version 10.0 and later
  2132. }
  2133. procedure FrameRect(const (*var*) r: Rect); external name '_FrameRect';
  2134. {
  2135. * PaintRect()
  2136. *
  2137. * Availability:
  2138. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2139. * CarbonLib: in CarbonLib 1.0 and later
  2140. * Mac OS X: in version 10.0 and later
  2141. }
  2142. procedure PaintRect(const (*var*) r: Rect); external name '_PaintRect';
  2143. {
  2144. * EraseRect()
  2145. *
  2146. * Availability:
  2147. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2148. * CarbonLib: in CarbonLib 1.0 and later
  2149. * Mac OS X: in version 10.0 and later
  2150. }
  2151. procedure EraseRect(const (*var*) r: Rect); external name '_EraseRect';
  2152. {
  2153. * [Mac]InvertRect()
  2154. *
  2155. * Availability:
  2156. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2157. * CarbonLib: in CarbonLib 1.0 and later
  2158. * Mac OS X: in version 10.0 and later
  2159. }
  2160. procedure InvertRect(const (*var*) r: Rect); external name '_InvertRect';
  2161. {
  2162. * [Mac]FillRect()
  2163. *
  2164. * Availability:
  2165. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2166. * CarbonLib: in CarbonLib 1.0 and later
  2167. * Mac OS X: in version 10.0 and later
  2168. }
  2169. procedure FillRect(const (*var*) r: Rect; const (*var*) pat: Pattern); external name '_FillRect';
  2170. {
  2171. * FrameOval()
  2172. *
  2173. * Availability:
  2174. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2175. * CarbonLib: in CarbonLib 1.0 and later
  2176. * Mac OS X: in version 10.0 and later
  2177. }
  2178. procedure FrameOval(const (*var*) r: Rect); external name '_FrameOval';
  2179. {
  2180. * PaintOval()
  2181. *
  2182. * Availability:
  2183. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2184. * CarbonLib: in CarbonLib 1.0 and later
  2185. * Mac OS X: in version 10.0 and later
  2186. }
  2187. procedure PaintOval(const (*var*) r: Rect); external name '_PaintOval';
  2188. {
  2189. * EraseOval()
  2190. *
  2191. * Availability:
  2192. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2193. * CarbonLib: in CarbonLib 1.0 and later
  2194. * Mac OS X: in version 10.0 and later
  2195. }
  2196. procedure EraseOval(const (*var*) r: Rect); external name '_EraseOval';
  2197. {
  2198. * InvertOval()
  2199. *
  2200. * Availability:
  2201. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2202. * CarbonLib: in CarbonLib 1.0 and later
  2203. * Mac OS X: in version 10.0 and later
  2204. }
  2205. procedure InvertOval(const (*var*) r: Rect); external name '_InvertOval';
  2206. {
  2207. * FillOval()
  2208. *
  2209. * Availability:
  2210. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2211. * CarbonLib: in CarbonLib 1.0 and later
  2212. * Mac OS X: in version 10.0 and later
  2213. }
  2214. procedure FillOval(const (*var*) r: Rect; const (*var*) pat: Pattern); external name '_FillOval';
  2215. {
  2216. * FrameRoundRect()
  2217. *
  2218. * Availability:
  2219. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2220. * CarbonLib: in CarbonLib 1.0 and later
  2221. * Mac OS X: in version 10.0 and later
  2222. }
  2223. procedure FrameRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16); external name '_FrameRoundRect';
  2224. {
  2225. * PaintRoundRect()
  2226. *
  2227. * Availability:
  2228. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2229. * CarbonLib: in CarbonLib 1.0 and later
  2230. * Mac OS X: in version 10.0 and later
  2231. }
  2232. procedure PaintRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16); external name '_PaintRoundRect';
  2233. {
  2234. * EraseRoundRect()
  2235. *
  2236. * Availability:
  2237. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2238. * CarbonLib: in CarbonLib 1.0 and later
  2239. * Mac OS X: in version 10.0 and later
  2240. }
  2241. procedure EraseRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16); external name '_EraseRoundRect';
  2242. {
  2243. * InvertRoundRect()
  2244. *
  2245. * Availability:
  2246. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2247. * CarbonLib: in CarbonLib 1.0 and later
  2248. * Mac OS X: in version 10.0 and later
  2249. }
  2250. procedure InvertRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16); external name '_InvertRoundRect';
  2251. {
  2252. * FillRoundRect()
  2253. *
  2254. * Availability:
  2255. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2256. * CarbonLib: in CarbonLib 1.0 and later
  2257. * Mac OS X: in version 10.0 and later
  2258. }
  2259. procedure FillRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16; const (*var*) pat: Pattern); external name '_FillRoundRect';
  2260. {
  2261. * FrameArc()
  2262. *
  2263. * Availability:
  2264. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2265. * CarbonLib: in CarbonLib 1.0 and later
  2266. * Mac OS X: in version 10.0 and later
  2267. }
  2268. procedure FrameArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16); external name '_FrameArc';
  2269. {
  2270. * PaintArc()
  2271. *
  2272. * Availability:
  2273. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2274. * CarbonLib: in CarbonLib 1.0 and later
  2275. * Mac OS X: in version 10.0 and later
  2276. }
  2277. procedure PaintArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16); external name '_PaintArc';
  2278. {
  2279. * EraseArc()
  2280. *
  2281. * Availability:
  2282. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2283. * CarbonLib: in CarbonLib 1.0 and later
  2284. * Mac OS X: in version 10.0 and later
  2285. }
  2286. procedure EraseArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16); external name '_EraseArc';
  2287. {
  2288. * InvertArc()
  2289. *
  2290. * Availability:
  2291. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2292. * CarbonLib: in CarbonLib 1.0 and later
  2293. * Mac OS X: in version 10.0 and later
  2294. }
  2295. procedure InvertArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16); external name '_InvertArc';
  2296. {
  2297. * FillArc()
  2298. *
  2299. * Availability:
  2300. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2301. * CarbonLib: in CarbonLib 1.0 and later
  2302. * Mac OS X: in version 10.0 and later
  2303. }
  2304. procedure FillArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16; const (*var*) pat: Pattern); external name '_FillArc';
  2305. {
  2306. * NewRgn()
  2307. *
  2308. * Availability:
  2309. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2310. * CarbonLib: in CarbonLib 1.0 and later
  2311. * Mac OS X: in version 10.0 and later
  2312. }
  2313. function NewRgn: RgnHandle; external name '_NewRgn';
  2314. {
  2315. * OpenRgn()
  2316. *
  2317. * Availability:
  2318. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2319. * CarbonLib: in CarbonLib 1.0 and later
  2320. * Mac OS X: in version 10.0 and later
  2321. }
  2322. procedure OpenRgn; external name '_OpenRgn';
  2323. {
  2324. * CloseRgn()
  2325. *
  2326. * Availability:
  2327. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2328. * CarbonLib: in CarbonLib 1.0 and later
  2329. * Mac OS X: in version 10.0 and later
  2330. }
  2331. procedure CloseRgn(dstRgn: RgnHandle); external name '_CloseRgn';
  2332. {
  2333. * BitMapToRegion()
  2334. *
  2335. * Availability:
  2336. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2337. * CarbonLib: in CarbonLib 1.0 and later
  2338. * Mac OS X: in version 10.0 and later
  2339. }
  2340. function BitMapToRegion(region: RgnHandle; const (*var*) bMap: BitMap): OSErr; external name '_BitMapToRegion';
  2341. {
  2342. * HandleToRgn()
  2343. *
  2344. * Availability:
  2345. * Non-Carbon CFM: not available
  2346. * CarbonLib: in CarbonLib 1.1 and later
  2347. * Mac OS X: in version 10.0 and later
  2348. }
  2349. procedure HandleToRgn(oldRegion: Handle; region: RgnHandle); external name '_HandleToRgn';
  2350. {
  2351. * RgnToHandle()
  2352. *
  2353. * Availability:
  2354. * Non-Carbon CFM: not available
  2355. * CarbonLib: in CarbonLib 1.3 and later
  2356. * Mac OS X: in version 10.1 and later
  2357. }
  2358. procedure RgnToHandle(region: RgnHandle; flattenedRgnDataHdl: Handle); external name '_RgnToHandle';
  2359. {
  2360. * DisposeRgn()
  2361. *
  2362. * Availability:
  2363. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2364. * CarbonLib: in CarbonLib 1.0 and later
  2365. * Mac OS X: in version 10.0 and later
  2366. }
  2367. procedure DisposeRgn(rgn: RgnHandle); external name '_DisposeRgn';
  2368. {
  2369. * [Mac]CopyRgn()
  2370. *
  2371. * Availability:
  2372. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2373. * CarbonLib: in CarbonLib 1.0 and later
  2374. * Mac OS X: in version 10.0 and later
  2375. }
  2376. procedure CopyRgn(srcRgn: RgnHandle; dstRgn: RgnHandle); external name '_CopyRgn';
  2377. {
  2378. * SetEmptyRgn()
  2379. *
  2380. * Availability:
  2381. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2382. * CarbonLib: in CarbonLib 1.0 and later
  2383. * Mac OS X: in version 10.0 and later
  2384. }
  2385. procedure SetEmptyRgn(rgn: RgnHandle); external name '_SetEmptyRgn';
  2386. {
  2387. * [Mac]SetRectRgn()
  2388. *
  2389. * Availability:
  2390. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2391. * CarbonLib: in CarbonLib 1.0 and later
  2392. * Mac OS X: in version 10.0 and later
  2393. }
  2394. procedure SetRectRgn(rgn: RgnHandle; left: SInt16; top: SInt16; right: SInt16; bottom: SInt16); external name '_SetRectRgn';
  2395. {
  2396. * RectRgn()
  2397. *
  2398. * Availability:
  2399. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2400. * CarbonLib: in CarbonLib 1.0 and later
  2401. * Mac OS X: in version 10.0 and later
  2402. }
  2403. procedure RectRgn(rgn: RgnHandle; const (*var*) r: Rect); external name '_RectRgn';
  2404. {
  2405. * [Mac]OffsetRgn()
  2406. *
  2407. * Availability:
  2408. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2409. * CarbonLib: in CarbonLib 1.0 and later
  2410. * Mac OS X: in version 10.0 and later
  2411. }
  2412. procedure OffsetRgn(rgn: RgnHandle; dh: SInt16; dv: SInt16); external name '_OffsetRgn';
  2413. {
  2414. * InsetRgn()
  2415. *
  2416. * Availability:
  2417. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2418. * CarbonLib: in CarbonLib 1.0 and later
  2419. * Mac OS X: in version 10.0 and later
  2420. }
  2421. procedure InsetRgn(rgn: RgnHandle; dh: SInt16; dv: SInt16); external name '_InsetRgn';
  2422. {
  2423. * SectRgn()
  2424. *
  2425. * Availability:
  2426. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2427. * CarbonLib: in CarbonLib 1.0 and later
  2428. * Mac OS X: in version 10.0 and later
  2429. }
  2430. procedure SectRgn(srcRgnA: RgnHandle; srcRgnB: RgnHandle; dstRgn: RgnHandle); external name '_SectRgn';
  2431. {
  2432. * [Mac]UnionRgn()
  2433. *
  2434. * Availability:
  2435. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2436. * CarbonLib: in CarbonLib 1.0 and later
  2437. * Mac OS X: in version 10.0 and later
  2438. }
  2439. procedure UnionRgn(srcRgnA: RgnHandle; srcRgnB: RgnHandle; dstRgn: RgnHandle); external name '_UnionRgn';
  2440. {
  2441. * DiffRgn()
  2442. *
  2443. * Availability:
  2444. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2445. * CarbonLib: in CarbonLib 1.0 and later
  2446. * Mac OS X: in version 10.0 and later
  2447. }
  2448. procedure DiffRgn(srcRgnA: RgnHandle; srcRgnB: RgnHandle; dstRgn: RgnHandle); external name '_DiffRgn';
  2449. {
  2450. * [Mac]XorRgn()
  2451. *
  2452. * Availability:
  2453. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2454. * CarbonLib: in CarbonLib 1.0 and later
  2455. * Mac OS X: in version 10.0 and later
  2456. }
  2457. procedure XorRgn(srcRgnA: RgnHandle; srcRgnB: RgnHandle; dstRgn: RgnHandle); external name '_XorRgn';
  2458. {
  2459. * RectInRgn()
  2460. *
  2461. * Availability:
  2462. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2463. * CarbonLib: in CarbonLib 1.0 and later
  2464. * Mac OS X: in version 10.0 and later
  2465. }
  2466. function RectInRgn(const (*var*) r: Rect; rgn: RgnHandle): boolean; external name '_RectInRgn';
  2467. {
  2468. * [Mac]EqualRgn()
  2469. *
  2470. * Availability:
  2471. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2472. * CarbonLib: in CarbonLib 1.0 and later
  2473. * Mac OS X: in version 10.0 and later
  2474. }
  2475. function EqualRgn(rgnA: RgnHandle; rgnB: RgnHandle): boolean; external name '_EqualRgn';
  2476. {
  2477. * EmptyRgn()
  2478. *
  2479. * Availability:
  2480. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2481. * CarbonLib: in CarbonLib 1.0 and later
  2482. * Mac OS X: in version 10.0 and later
  2483. }
  2484. function EmptyRgn(rgn: RgnHandle): boolean; external name '_EmptyRgn';
  2485. {
  2486. * [Mac]FrameRgn()
  2487. *
  2488. * Availability:
  2489. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2490. * CarbonLib: in CarbonLib 1.0 and later
  2491. * Mac OS X: in version 10.0 and later
  2492. }
  2493. procedure FrameRgn(rgn: RgnHandle); external name '_FrameRgn';
  2494. {
  2495. * [Mac]PaintRgn()
  2496. *
  2497. * Availability:
  2498. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2499. * CarbonLib: in CarbonLib 1.0 and later
  2500. * Mac OS X: in version 10.0 and later
  2501. }
  2502. procedure PaintRgn(rgn: RgnHandle); external name '_PaintRgn';
  2503. {
  2504. * EraseRgn()
  2505. *
  2506. * Availability:
  2507. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2508. * CarbonLib: in CarbonLib 1.0 and later
  2509. * Mac OS X: in version 10.0 and later
  2510. }
  2511. procedure EraseRgn(rgn: RgnHandle); external name '_EraseRgn';
  2512. {
  2513. * [Mac]InvertRgn()
  2514. *
  2515. * Availability:
  2516. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2517. * CarbonLib: in CarbonLib 1.0 and later
  2518. * Mac OS X: in version 10.0 and later
  2519. }
  2520. procedure InvertRgn(rgn: RgnHandle); external name '_InvertRgn';
  2521. {
  2522. * [Mac]FillRgn()
  2523. *
  2524. * Availability:
  2525. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2526. * CarbonLib: in CarbonLib 1.0 and later
  2527. * Mac OS X: in version 10.0 and later
  2528. }
  2529. procedure FillRgn(rgn: RgnHandle; const (*var*) pat: Pattern); external name '_FillRgn';
  2530. {
  2531. * ScrollRect()
  2532. *
  2533. * Availability:
  2534. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2535. * CarbonLib: in CarbonLib 1.0 and later
  2536. * Mac OS X: in version 10.0 and later
  2537. }
  2538. procedure ScrollRect(const (*var*) r: Rect; dh: SInt16; dv: SInt16; updateRgn: RgnHandle); external name '_ScrollRect';
  2539. {
  2540. * CopyBits()
  2541. *
  2542. * Availability:
  2543. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2544. * CarbonLib: in CarbonLib 1.0 and later
  2545. * Mac OS X: in version 10.0 and later
  2546. }
  2547. 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';
  2548. {
  2549. * SeedFill()
  2550. *
  2551. * Availability:
  2552. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2553. * CarbonLib: in CarbonLib 1.0 and later
  2554. * Mac OS X: in version 10.0 and later
  2555. }
  2556. procedure SeedFill(srcPtr: UnivPtr; dstPtr: UnivPtr; srcRow: SInt16; dstRow: SInt16; height: SInt16; words: SInt16; seedH: SInt16; seedV: SInt16); external name '_SeedFill';
  2557. {
  2558. * CalcMask()
  2559. *
  2560. * Availability:
  2561. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2562. * CarbonLib: in CarbonLib 1.0 and later
  2563. * Mac OS X: in version 10.0 and later
  2564. }
  2565. procedure CalcMask(srcPtr: UnivPtr; dstPtr: UnivPtr; srcRow: SInt16; dstRow: SInt16; height: SInt16; words: SInt16); external name '_CalcMask';
  2566. {
  2567. * CopyMask()
  2568. *
  2569. * Availability:
  2570. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2571. * CarbonLib: in CarbonLib 1.0 and later
  2572. * Mac OS X: in version 10.0 and later
  2573. }
  2574. 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';
  2575. {
  2576. * OpenPicture()
  2577. *
  2578. * Availability:
  2579. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2580. * CarbonLib: in CarbonLib 1.0 and later
  2581. * Mac OS X: in version 10.0 and later
  2582. }
  2583. function OpenPicture(const (*var*) picFrame: Rect): PicHandle; external name '_OpenPicture';
  2584. {
  2585. * PicComment()
  2586. *
  2587. * Availability:
  2588. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2589. * CarbonLib: in CarbonLib 1.0 and later
  2590. * Mac OS X: in version 10.0 and later
  2591. }
  2592. procedure PicComment(kind: SInt16; dataSize: SInt16; dataHandle: Handle); external name '_PicComment';
  2593. {
  2594. * ClosePicture()
  2595. *
  2596. * Availability:
  2597. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2598. * CarbonLib: in CarbonLib 1.0 and later
  2599. * Mac OS X: in version 10.0 and later
  2600. }
  2601. procedure ClosePicture; external name '_ClosePicture';
  2602. {
  2603. * DrawPicture()
  2604. *
  2605. * Availability:
  2606. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2607. * CarbonLib: in CarbonLib 1.0 and later
  2608. * Mac OS X: in version 10.0 and later
  2609. }
  2610. procedure DrawPicture(myPicture: PicHandle; const (*var*) dstRect: Rect); external name '_DrawPicture';
  2611. {
  2612. * KillPicture()
  2613. *
  2614. * Availability:
  2615. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2616. * CarbonLib: in CarbonLib 1.0 and later
  2617. * Mac OS X: in version 10.0 and later
  2618. }
  2619. procedure KillPicture(myPicture: PicHandle); external name '_KillPicture';
  2620. {
  2621. * OpenPoly()
  2622. *
  2623. * Availability:
  2624. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2625. * CarbonLib: in CarbonLib 1.0 and later
  2626. * Mac OS X: in version 10.0 and later
  2627. }
  2628. function OpenPoly: PolyHandle; external name '_OpenPoly';
  2629. {
  2630. * ClosePoly()
  2631. *
  2632. * Availability:
  2633. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2634. * CarbonLib: in CarbonLib 1.0 and later
  2635. * Mac OS X: in version 10.0 and later
  2636. }
  2637. procedure ClosePoly; external name '_ClosePoly';
  2638. {
  2639. * KillPoly()
  2640. *
  2641. * Availability:
  2642. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2643. * CarbonLib: in CarbonLib 1.0 and later
  2644. * Mac OS X: in version 10.0 and later
  2645. }
  2646. procedure KillPoly(poly: PolyHandle); external name '_KillPoly';
  2647. {
  2648. * OffsetPoly()
  2649. *
  2650. * Availability:
  2651. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2652. * CarbonLib: in CarbonLib 1.0 and later
  2653. * Mac OS X: in version 10.0 and later
  2654. }
  2655. procedure OffsetPoly(poly: PolyHandle; dh: SInt16; dv: SInt16); external name '_OffsetPoly';
  2656. {
  2657. * FramePoly()
  2658. *
  2659. * Availability:
  2660. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2661. * CarbonLib: in CarbonLib 1.0 and later
  2662. * Mac OS X: in version 10.0 and later
  2663. }
  2664. procedure FramePoly(poly: PolyHandle); external name '_FramePoly';
  2665. {
  2666. * PaintPoly()
  2667. *
  2668. * Availability:
  2669. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2670. * CarbonLib: in CarbonLib 1.0 and later
  2671. * Mac OS X: in version 10.0 and later
  2672. }
  2673. procedure PaintPoly(poly: PolyHandle); external name '_PaintPoly';
  2674. {
  2675. * ErasePoly()
  2676. *
  2677. * Availability:
  2678. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2679. * CarbonLib: in CarbonLib 1.0 and later
  2680. * Mac OS X: in version 10.0 and later
  2681. }
  2682. procedure ErasePoly(poly: PolyHandle); external name '_ErasePoly';
  2683. {
  2684. * InvertPoly()
  2685. *
  2686. * Availability:
  2687. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2688. * CarbonLib: in CarbonLib 1.0 and later
  2689. * Mac OS X: in version 10.0 and later
  2690. }
  2691. procedure InvertPoly(poly: PolyHandle); external name '_InvertPoly';
  2692. {
  2693. * FillPoly()
  2694. *
  2695. * Availability:
  2696. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2697. * CarbonLib: in CarbonLib 1.0 and later
  2698. * Mac OS X: in version 10.0 and later
  2699. }
  2700. procedure FillPoly(poly: PolyHandle; const (*var*) pat: Pattern); external name '_FillPoly';
  2701. {
  2702. * SetPt()
  2703. *
  2704. * Availability:
  2705. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2706. * CarbonLib: in CarbonLib 1.0 and later
  2707. * Mac OS X: in version 10.0 and later
  2708. }
  2709. procedure SetPt(var pt: Point; h: SInt16; v: SInt16); external name '_SetPt';
  2710. {
  2711. * LocalToGlobal()
  2712. *
  2713. * Availability:
  2714. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2715. * CarbonLib: in CarbonLib 1.0 and later
  2716. * Mac OS X: in version 10.0 and later
  2717. }
  2718. procedure LocalToGlobal(var pt: Point); external name '_LocalToGlobal';
  2719. {
  2720. * GlobalToLocal()
  2721. *
  2722. * Availability:
  2723. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2724. * CarbonLib: in CarbonLib 1.0 and later
  2725. * Mac OS X: in version 10.0 and later
  2726. }
  2727. procedure GlobalToLocal(var pt: Point); external name '_GlobalToLocal';
  2728. {
  2729. * Random()
  2730. *
  2731. * Availability:
  2732. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2733. * CarbonLib: in CarbonLib 1.0 and later
  2734. * Mac OS X: in version 10.0 and later
  2735. }
  2736. function Random: SInt16; external name '_Random';
  2737. {
  2738. * StuffHex()
  2739. *
  2740. * Availability:
  2741. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2742. * CarbonLib: in CarbonLib 1.0 and later
  2743. * Mac OS X: in version 10.0 and later
  2744. }
  2745. procedure StuffHex(thingPtr: UnivPtr; const (*var*) s: Str255); external name '_StuffHex';
  2746. {
  2747. * [Mac]GetPixel()
  2748. *
  2749. * Availability:
  2750. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2751. * CarbonLib: in CarbonLib 1.0 and later
  2752. * Mac OS X: in version 10.0 and later
  2753. }
  2754. function GetPixel(h: SInt16; v: SInt16): boolean; external name '_GetPixel';
  2755. {
  2756. * ScalePt()
  2757. *
  2758. * Availability:
  2759. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2760. * CarbonLib: in CarbonLib 1.0 and later
  2761. * Mac OS X: in version 10.0 and later
  2762. }
  2763. procedure ScalePt(var pt: Point; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect); external name '_ScalePt';
  2764. {
  2765. * MapPt()
  2766. *
  2767. * Availability:
  2768. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2769. * CarbonLib: in CarbonLib 1.0 and later
  2770. * Mac OS X: in version 10.0 and later
  2771. }
  2772. procedure MapPt(var pt: Point; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect); external name '_MapPt';
  2773. {
  2774. * MapRect()
  2775. *
  2776. * Availability:
  2777. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2778. * CarbonLib: in CarbonLib 1.0 and later
  2779. * Mac OS X: in version 10.0 and later
  2780. }
  2781. procedure MapRect(var r: Rect; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect); external name '_MapRect';
  2782. {
  2783. * MapRgn()
  2784. *
  2785. * Availability:
  2786. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2787. * CarbonLib: in CarbonLib 1.0 and later
  2788. * Mac OS X: in version 10.0 and later
  2789. }
  2790. procedure MapRgn(rgn: RgnHandle; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect); external name '_MapRgn';
  2791. {
  2792. * MapPoly()
  2793. *
  2794. * Availability:
  2795. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2796. * CarbonLib: in CarbonLib 1.0 and later
  2797. * Mac OS X: in version 10.0 and later
  2798. }
  2799. procedure MapPoly(poly: PolyHandle; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect); external name '_MapPoly';
  2800. {
  2801. * SetStdProcs()
  2802. *
  2803. * Availability:
  2804. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2805. * CarbonLib: in CarbonLib 1.0 and later
  2806. * Mac OS X: in version 10.0 and later
  2807. }
  2808. procedure SetStdProcs(var procs: QDProcs); external name '_SetStdProcs';
  2809. {
  2810. * StdRect()
  2811. *
  2812. * Availability:
  2813. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2814. * CarbonLib: in CarbonLib 1.0 and later
  2815. * Mac OS X: in version 10.0 and later
  2816. }
  2817. procedure StdRect(verb: GrafVerb; const (*var*) r: Rect); external name '_StdRect';
  2818. {
  2819. * StdRRect()
  2820. *
  2821. * Availability:
  2822. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2823. * CarbonLib: in CarbonLib 1.0 and later
  2824. * Mac OS X: in version 10.0 and later
  2825. }
  2826. procedure StdRRect(verb: GrafVerb; const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16); external name '_StdRRect';
  2827. {
  2828. * StdOval()
  2829. *
  2830. * Availability:
  2831. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2832. * CarbonLib: in CarbonLib 1.0 and later
  2833. * Mac OS X: in version 10.0 and later
  2834. }
  2835. procedure StdOval(verb: GrafVerb; const (*var*) r: Rect); external name '_StdOval';
  2836. {
  2837. * StdArc()
  2838. *
  2839. * Availability:
  2840. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2841. * CarbonLib: in CarbonLib 1.0 and later
  2842. * Mac OS X: in version 10.0 and later
  2843. }
  2844. procedure StdArc(verb: GrafVerb; const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16); external name '_StdArc';
  2845. {
  2846. * StdPoly()
  2847. *
  2848. * Availability:
  2849. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2850. * CarbonLib: in CarbonLib 1.0 and later
  2851. * Mac OS X: in version 10.0 and later
  2852. }
  2853. procedure StdPoly(verb: GrafVerb; poly: PolyHandle); external name '_StdPoly';
  2854. {
  2855. * StdRgn()
  2856. *
  2857. * Availability:
  2858. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2859. * CarbonLib: in CarbonLib 1.0 and later
  2860. * Mac OS X: in version 10.0 and later
  2861. }
  2862. procedure StdRgn(verb: GrafVerb; rgn: RgnHandle); external name '_StdRgn';
  2863. {
  2864. * StdBits()
  2865. *
  2866. * Availability:
  2867. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2868. * CarbonLib: in CarbonLib 1.0 and later
  2869. * Mac OS X: in version 10.0 and later
  2870. }
  2871. procedure StdBits(const (*var*) srcBits: BitMap; const (*var*) srcRect: Rect; const (*var*) dstRect: Rect; mode: SInt16; maskRgn: RgnHandle); external name '_StdBits';
  2872. {
  2873. * StdComment()
  2874. *
  2875. * Availability:
  2876. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2877. * CarbonLib: in CarbonLib 1.0 and later
  2878. * Mac OS X: in version 10.0 and later
  2879. }
  2880. procedure StdComment(kind: SInt16; dataSize: SInt16; dataHandle: Handle); external name '_StdComment';
  2881. {
  2882. * StdGetPic()
  2883. *
  2884. * Availability:
  2885. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2886. * CarbonLib: in CarbonLib 1.0 and later
  2887. * Mac OS X: in version 10.0 and later
  2888. }
  2889. procedure StdGetPic(dataPtr: UnivPtr; byteCount: SInt16); external name '_StdGetPic';
  2890. {
  2891. * StdPutPic()
  2892. *
  2893. * Availability:
  2894. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2895. * CarbonLib: in CarbonLib 1.0 and later
  2896. * Mac OS X: in version 10.0 and later
  2897. }
  2898. procedure StdPutPic(dataPtr: UnivPtr; byteCount: SInt16); external name '_StdPutPic';
  2899. {
  2900. * StdOpcode()
  2901. *
  2902. * Availability:
  2903. * Non-Carbon CFM: not available
  2904. * CarbonLib: in CarbonLib 1.0 and later
  2905. * Mac OS X: in version 10.0 and later
  2906. }
  2907. procedure StdOpcode(const (*var*) fromRect: Rect; const (*var*) toRect: Rect; opcode: UInt16; version: SInt16); external name '_StdOpcode';
  2908. {
  2909. * AddPt()
  2910. *
  2911. * Availability:
  2912. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2913. * CarbonLib: in CarbonLib 1.0 and later
  2914. * Mac OS X: in version 10.0 and later
  2915. }
  2916. procedure AddPt(src: Point; var dst: Point); external name '_AddPt';
  2917. {
  2918. * EqualPt()
  2919. *
  2920. * Availability:
  2921. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2922. * CarbonLib: in CarbonLib 1.0 and later
  2923. * Mac OS X: in version 10.0 and later
  2924. }
  2925. function EqualPt(pt1: Point; pt2: Point): boolean; external name '_EqualPt';
  2926. {
  2927. * [Mac]PtInRect()
  2928. *
  2929. * Availability:
  2930. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2931. * CarbonLib: in CarbonLib 1.0 and later
  2932. * Mac OS X: in version 10.0 and later
  2933. }
  2934. function PtInRect(pt: Point; const (*var*) r: Rect): boolean; external name '_PtInRect';
  2935. {
  2936. * Pt2Rect()
  2937. *
  2938. * Availability:
  2939. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2940. * CarbonLib: in CarbonLib 1.0 and later
  2941. * Mac OS X: in version 10.0 and later
  2942. }
  2943. procedure Pt2Rect(pt1: Point; pt2: Point; var dstRect: Rect); external name '_Pt2Rect';
  2944. {
  2945. * PtToAngle()
  2946. *
  2947. * Availability:
  2948. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2949. * CarbonLib: in CarbonLib 1.0 and later
  2950. * Mac OS X: in version 10.0 and later
  2951. }
  2952. procedure PtToAngle(const (*var*) r: Rect; pt: Point; var angle: SInt16); external name '_PtToAngle';
  2953. {
  2954. * SubPt()
  2955. *
  2956. * Availability:
  2957. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2958. * CarbonLib: in CarbonLib 1.0 and later
  2959. * Mac OS X: in version 10.0 and later
  2960. }
  2961. procedure SubPt(src: Point; var dst: Point); external name '_SubPt';
  2962. {
  2963. * PtInRgn()
  2964. *
  2965. * Availability:
  2966. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2967. * CarbonLib: in CarbonLib 1.0 and later
  2968. * Mac OS X: in version 10.0 and later
  2969. }
  2970. function PtInRgn(pt: Point; rgn: RgnHandle): boolean; external name '_PtInRgn';
  2971. {
  2972. * StdLine()
  2973. *
  2974. * Availability:
  2975. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2976. * CarbonLib: in CarbonLib 1.0 and later
  2977. * Mac OS X: in version 10.0 and later
  2978. }
  2979. procedure StdLine(newPt: Point); external name '_StdLine';
  2980. {$ifc CALL_NOT_IN_CARBON}
  2981. {
  2982. * OpenCPort()
  2983. *
  2984. * Availability:
  2985. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2986. * CarbonLib: not available
  2987. * Mac OS X: not available
  2988. }
  2989. procedure OpenCPort(port: CGrafPtr); external name '_OpenCPort';
  2990. {
  2991. * InitCPort()
  2992. *
  2993. * Availability:
  2994. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2995. * CarbonLib: not available
  2996. * Mac OS X: not available
  2997. }
  2998. procedure InitCPort(port: CGrafPtr); external name '_InitCPort';
  2999. {
  3000. * CloseCPort()
  3001. *
  3002. * Availability:
  3003. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3004. * CarbonLib: not available
  3005. * Mac OS X: not available
  3006. }
  3007. procedure CloseCPort(port: CGrafPtr); external name '_CloseCPort';
  3008. {$endc} {CALL_NOT_IN_CARBON}
  3009. {
  3010. * NewPixMap()
  3011. *
  3012. * Availability:
  3013. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3014. * CarbonLib: in CarbonLib 1.0 and later
  3015. * Mac OS X: in version 10.0 and later
  3016. }
  3017. function NewPixMap: PixMapHandle; external name '_NewPixMap';
  3018. {
  3019. * DisposePixMap()
  3020. *
  3021. * Availability:
  3022. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3023. * CarbonLib: in CarbonLib 1.0 and later
  3024. * Mac OS X: in version 10.0 and later
  3025. }
  3026. procedure DisposePixMap(pm: PixMapHandle); external name '_DisposePixMap';
  3027. {
  3028. * CopyPixMap()
  3029. *
  3030. * Availability:
  3031. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3032. * CarbonLib: in CarbonLib 1.0 and later
  3033. * Mac OS X: in version 10.0 and later
  3034. }
  3035. procedure CopyPixMap(srcPM: PixMapHandle; dstPM: PixMapHandle); external name '_CopyPixMap';
  3036. {
  3037. * NewPixPat()
  3038. *
  3039. * Availability:
  3040. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3041. * CarbonLib: in CarbonLib 1.0 and later
  3042. * Mac OS X: in version 10.0 and later
  3043. }
  3044. function NewPixPat: PixPatHandle; external name '_NewPixPat';
  3045. {
  3046. * DisposePixPat()
  3047. *
  3048. * Availability:
  3049. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3050. * CarbonLib: in CarbonLib 1.0 and later
  3051. * Mac OS X: in version 10.0 and later
  3052. }
  3053. procedure DisposePixPat(pp: PixPatHandle); external name '_DisposePixPat';
  3054. {
  3055. * CopyPixPat()
  3056. *
  3057. * Availability:
  3058. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3059. * CarbonLib: in CarbonLib 1.0 and later
  3060. * Mac OS X: in version 10.0 and later
  3061. }
  3062. procedure CopyPixPat(srcPP: PixPatHandle; dstPP: PixPatHandle); external name '_CopyPixPat';
  3063. {
  3064. * PenPixPat()
  3065. *
  3066. * Availability:
  3067. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3068. * CarbonLib: in CarbonLib 1.0 and later
  3069. * Mac OS X: in version 10.0 and later
  3070. }
  3071. procedure PenPixPat(pp: PixPatHandle); external name '_PenPixPat';
  3072. {
  3073. * BackPixPat()
  3074. *
  3075. * Availability:
  3076. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3077. * CarbonLib: in CarbonLib 1.0 and later
  3078. * Mac OS X: in version 10.0 and later
  3079. }
  3080. procedure BackPixPat(pp: PixPatHandle); external name '_BackPixPat';
  3081. {
  3082. * GetPixPat()
  3083. *
  3084. * Availability:
  3085. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3086. * CarbonLib: in CarbonLib 1.0 and later
  3087. * Mac OS X: in version 10.0 and later
  3088. }
  3089. function GetPixPat(patID: SInt16): PixPatHandle; external name '_GetPixPat';
  3090. {
  3091. * MakeRGBPat()
  3092. *
  3093. * Availability:
  3094. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3095. * CarbonLib: in CarbonLib 1.0 and later
  3096. * Mac OS X: in version 10.0 and later
  3097. }
  3098. procedure MakeRGBPat(pp: PixPatHandle; const (*var*) myColor: RGBColor); external name '_MakeRGBPat';
  3099. {
  3100. * FillCRect()
  3101. *
  3102. * Availability:
  3103. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3104. * CarbonLib: in CarbonLib 1.0 and later
  3105. * Mac OS X: in version 10.0 and later
  3106. }
  3107. procedure FillCRect(const (*var*) r: Rect; pp: PixPatHandle); external name '_FillCRect';
  3108. {
  3109. * FillCOval()
  3110. *
  3111. * Availability:
  3112. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3113. * CarbonLib: in CarbonLib 1.0 and later
  3114. * Mac OS X: in version 10.0 and later
  3115. }
  3116. procedure FillCOval(const (*var*) r: Rect; pp: PixPatHandle); external name '_FillCOval';
  3117. {
  3118. * FillCRoundRect()
  3119. *
  3120. * Availability:
  3121. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3122. * CarbonLib: in CarbonLib 1.0 and later
  3123. * Mac OS X: in version 10.0 and later
  3124. }
  3125. procedure FillCRoundRect(const (*var*) r: Rect; ovalWidth: SInt16; ovalHeight: SInt16; pp: PixPatHandle); external name '_FillCRoundRect';
  3126. {
  3127. * FillCArc()
  3128. *
  3129. * Availability:
  3130. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3131. * CarbonLib: in CarbonLib 1.0 and later
  3132. * Mac OS X: in version 10.0 and later
  3133. }
  3134. procedure FillCArc(const (*var*) r: Rect; startAngle: SInt16; arcAngle: SInt16; pp: PixPatHandle); external name '_FillCArc';
  3135. {
  3136. * FillCRgn()
  3137. *
  3138. * Availability:
  3139. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3140. * CarbonLib: in CarbonLib 1.0 and later
  3141. * Mac OS X: in version 10.0 and later
  3142. }
  3143. procedure FillCRgn(rgn: RgnHandle; pp: PixPatHandle); external name '_FillCRgn';
  3144. {
  3145. * FillCPoly()
  3146. *
  3147. * Availability:
  3148. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3149. * CarbonLib: in CarbonLib 1.0 and later
  3150. * Mac OS X: in version 10.0 and later
  3151. }
  3152. procedure FillCPoly(poly: PolyHandle; pp: PixPatHandle); external name '_FillCPoly';
  3153. {
  3154. * RGBForeColor()
  3155. *
  3156. * Availability:
  3157. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3158. * CarbonLib: in CarbonLib 1.0 and later
  3159. * Mac OS X: in version 10.0 and later
  3160. }
  3161. procedure RGBForeColor(const (*var*) color: RGBColor); external name '_RGBForeColor';
  3162. {
  3163. * RGBBackColor()
  3164. *
  3165. * Availability:
  3166. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3167. * CarbonLib: in CarbonLib 1.0 and later
  3168. * Mac OS X: in version 10.0 and later
  3169. }
  3170. procedure RGBBackColor(const (*var*) color: RGBColor); external name '_RGBBackColor';
  3171. {
  3172. * SetCPixel()
  3173. *
  3174. * Availability:
  3175. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3176. * CarbonLib: in CarbonLib 1.0 and later
  3177. * Mac OS X: in version 10.0 and later
  3178. }
  3179. procedure SetCPixel(h: SInt16; v: SInt16; const (*var*) cPix: RGBColor); external name '_SetCPixel';
  3180. {
  3181. * SetPortPix()
  3182. *
  3183. * Availability:
  3184. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3185. * CarbonLib: in CarbonLib 1.0 and later
  3186. * Mac OS X: in version 10.0 and later
  3187. }
  3188. procedure SetPortPix(pm: PixMapHandle); external name '_SetPortPix';
  3189. {
  3190. * GetCPixel()
  3191. *
  3192. * Availability:
  3193. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3194. * CarbonLib: in CarbonLib 1.0 and later
  3195. * Mac OS X: in version 10.0 and later
  3196. }
  3197. procedure GetCPixel(h: SInt16; v: SInt16; var cPix: RGBColor); external name '_GetCPixel';
  3198. {
  3199. * GetForeColor()
  3200. *
  3201. * Availability:
  3202. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3203. * CarbonLib: in CarbonLib 1.0 and later
  3204. * Mac OS X: in version 10.0 and later
  3205. }
  3206. procedure GetForeColor(var color: RGBColor); external name '_GetForeColor';
  3207. {
  3208. * GetBackColor()
  3209. *
  3210. * Availability:
  3211. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3212. * CarbonLib: in CarbonLib 1.0 and later
  3213. * Mac OS X: in version 10.0 and later
  3214. }
  3215. procedure GetBackColor(var color: RGBColor); external name '_GetBackColor';
  3216. {
  3217. * SeedCFill()
  3218. *
  3219. * Availability:
  3220. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3221. * CarbonLib: in CarbonLib 1.0 and later
  3222. * Mac OS X: in version 10.0 and later
  3223. }
  3224. 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';
  3225. {
  3226. * CalcCMask()
  3227. *
  3228. * Availability:
  3229. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3230. * CarbonLib: in CarbonLib 1.0 and later
  3231. * Mac OS X: in version 10.0 and later
  3232. }
  3233. 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';
  3234. {
  3235. * OpenCPicture()
  3236. *
  3237. * Availability:
  3238. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3239. * CarbonLib: in CarbonLib 1.0 and later
  3240. * Mac OS X: in version 10.0 and later
  3241. }
  3242. function OpenCPicture(const (*var*) newHeader: OpenCPicParams): PicHandle; external name '_OpenCPicture';
  3243. {
  3244. * OpColor()
  3245. *
  3246. * Availability:
  3247. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3248. * CarbonLib: in CarbonLib 1.0 and later
  3249. * Mac OS X: in version 10.0 and later
  3250. }
  3251. procedure OpColor(const (*var*) color: RGBColor); external name '_OpColor';
  3252. {
  3253. * HiliteColor()
  3254. *
  3255. * Availability:
  3256. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3257. * CarbonLib: in CarbonLib 1.0 and later
  3258. * Mac OS X: in version 10.0 and later
  3259. }
  3260. procedure HiliteColor(const (*var*) color: RGBColor); external name '_HiliteColor';
  3261. {
  3262. * DisposeCTable()
  3263. *
  3264. * Availability:
  3265. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3266. * CarbonLib: in CarbonLib 1.0 and later
  3267. * Mac OS X: in version 10.0 and later
  3268. }
  3269. procedure DisposeCTable(cTable: CTabHandle); external name '_DisposeCTable';
  3270. {
  3271. * GetCTable()
  3272. *
  3273. * Availability:
  3274. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3275. * CarbonLib: in CarbonLib 1.0 and later
  3276. * Mac OS X: in version 10.0 and later
  3277. }
  3278. function GetCTable(ctID: SInt16): CTabHandle; external name '_GetCTable';
  3279. {
  3280. * GetCCursor()
  3281. *
  3282. * Availability:
  3283. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3284. * CarbonLib: in CarbonLib 1.0 and later
  3285. * Mac OS X: in version 10.0 and later
  3286. }
  3287. function GetCCursor(crsrID: SInt16): CCrsrHandle; external name '_GetCCursor';
  3288. {
  3289. * SetCCursor()
  3290. *
  3291. * Availability:
  3292. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3293. * CarbonLib: in CarbonLib 1.0 and later
  3294. * Mac OS X: in version 10.0 and later
  3295. }
  3296. procedure SetCCursor(cCrsr: CCrsrHandle); external name '_SetCCursor';
  3297. {
  3298. * AllocCursor()
  3299. *
  3300. * Availability:
  3301. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3302. * CarbonLib: in CarbonLib 1.0 and later
  3303. * Mac OS X: in version 10.0 and later
  3304. }
  3305. procedure AllocCursor; external name '_AllocCursor';
  3306. {
  3307. * DisposeCCursor()
  3308. *
  3309. * Availability:
  3310. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3311. * CarbonLib: in CarbonLib 1.0 and later
  3312. * Mac OS X: in version 10.0 and later
  3313. }
  3314. procedure DisposeCCursor(cCrsr: CCrsrHandle); external name '_DisposeCCursor';
  3315. { GetCIcon(), PlotCIcon(), and DisposeCIcon() moved to Icons.h }
  3316. {
  3317. * SetStdCProcs()
  3318. *
  3319. * Availability:
  3320. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3321. * CarbonLib: in CarbonLib 1.0 and later
  3322. * Mac OS X: in version 10.0 and later
  3323. }
  3324. procedure SetStdCProcs(var procs: CQDProcs); external name '_SetStdCProcs';
  3325. {
  3326. * GetMaxDevice()
  3327. *
  3328. * Availability:
  3329. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3330. * CarbonLib: in CarbonLib 1.0 and later
  3331. * Mac OS X: in version 10.0 and later
  3332. }
  3333. function GetMaxDevice(const (*var*) globalRect: Rect): GDHandle; external name '_GetMaxDevice';
  3334. {
  3335. * GetCTSeed()
  3336. *
  3337. * Availability:
  3338. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3339. * CarbonLib: in CarbonLib 1.0 and later
  3340. * Mac OS X: in version 10.0 and later
  3341. }
  3342. function GetCTSeed: SInt32; external name '_GetCTSeed';
  3343. {
  3344. * GetDeviceList()
  3345. *
  3346. * Availability:
  3347. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3348. * CarbonLib: in CarbonLib 1.0 and later
  3349. * Mac OS X: in version 10.0 and later
  3350. }
  3351. function GetDeviceList: GDHandle; external name '_GetDeviceList';
  3352. {
  3353. * GetMainDevice()
  3354. *
  3355. * Availability:
  3356. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3357. * CarbonLib: in CarbonLib 1.0 and later
  3358. * Mac OS X: in version 10.0 and later
  3359. }
  3360. function GetMainDevice: GDHandle; external name '_GetMainDevice';
  3361. {
  3362. * GetNextDevice()
  3363. *
  3364. * Availability:
  3365. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3366. * CarbonLib: in CarbonLib 1.0 and later
  3367. * Mac OS X: in version 10.0 and later
  3368. }
  3369. function GetNextDevice(curDevice: GDHandle): GDHandle; external name '_GetNextDevice';
  3370. {
  3371. * TestDeviceAttribute()
  3372. *
  3373. * Availability:
  3374. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3375. * CarbonLib: in CarbonLib 1.0 and later
  3376. * Mac OS X: in version 10.0 and later
  3377. }
  3378. function TestDeviceAttribute(gdh: GDHandle; attribute: SInt16): boolean; external name '_TestDeviceAttribute';
  3379. {
  3380. * SetDeviceAttribute()
  3381. *
  3382. * Availability:
  3383. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3384. * CarbonLib: in CarbonLib 1.0 and later
  3385. * Mac OS X: in version 10.0 and later
  3386. }
  3387. procedure SetDeviceAttribute(gdh: GDHandle; attribute: SInt16; value: boolean); external name '_SetDeviceAttribute';
  3388. {
  3389. * InitGDevice()
  3390. *
  3391. * Availability:
  3392. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3393. * CarbonLib: in CarbonLib 1.0 and later
  3394. * Mac OS X: in version 10.0 and later
  3395. }
  3396. procedure InitGDevice(qdRefNum: SInt16; mode: SInt32; gdh: GDHandle); external name '_InitGDevice';
  3397. {
  3398. * NewGDevice()
  3399. *
  3400. * Availability:
  3401. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3402. * CarbonLib: in CarbonLib 1.0 and later
  3403. * Mac OS X: in version 10.0 and later
  3404. }
  3405. function NewGDevice(refNum: SInt16; mode: SInt32): GDHandle; external name '_NewGDevice';
  3406. {
  3407. * DisposeGDevice()
  3408. *
  3409. * Availability:
  3410. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3411. * CarbonLib: in CarbonLib 1.0 and later
  3412. * Mac OS X: in version 10.0 and later
  3413. }
  3414. procedure DisposeGDevice(gdh: GDHandle); external name '_DisposeGDevice';
  3415. {
  3416. * SetGDevice()
  3417. *
  3418. * Availability:
  3419. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3420. * CarbonLib: in CarbonLib 1.0 and later
  3421. * Mac OS X: in version 10.0 and later
  3422. }
  3423. procedure SetGDevice(gd: GDHandle); external name '_SetGDevice';
  3424. {
  3425. * GetGDevice()
  3426. *
  3427. * Availability:
  3428. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3429. * CarbonLib: in CarbonLib 1.0 and later
  3430. * Mac OS X: in version 10.0 and later
  3431. }
  3432. function GetGDevice: GDHandle; external name '_GetGDevice';
  3433. {
  3434. * Color2Index()
  3435. *
  3436. * Availability:
  3437. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3438. * CarbonLib: in CarbonLib 1.0 and later
  3439. * Mac OS X: in version 10.0 and later
  3440. }
  3441. function Color2Index(const (*var*) myColor: RGBColor): SInt32; external name '_Color2Index';
  3442. {
  3443. * Index2Color()
  3444. *
  3445. * Availability:
  3446. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3447. * CarbonLib: in CarbonLib 1.0 and later
  3448. * Mac OS X: in version 10.0 and later
  3449. }
  3450. procedure Index2Color(index: SInt32; var aColor: RGBColor); external name '_Index2Color';
  3451. {
  3452. * InvertColor()
  3453. *
  3454. * Availability:
  3455. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3456. * CarbonLib: in CarbonLib 1.0 and later
  3457. * Mac OS X: in version 10.0 and later
  3458. }
  3459. procedure InvertColor(var myColor: RGBColor); external name '_InvertColor';
  3460. {
  3461. * RealColor()
  3462. *
  3463. * Availability:
  3464. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3465. * CarbonLib: in CarbonLib 1.0 and later
  3466. * Mac OS X: in version 10.0 and later
  3467. }
  3468. function RealColor(const (*var*) color: RGBColor): boolean; external name '_RealColor';
  3469. {
  3470. * GetSubTable()
  3471. *
  3472. * Availability:
  3473. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3474. * CarbonLib: in CarbonLib 1.0 and later
  3475. * Mac OS X: in version 10.0 and later
  3476. }
  3477. procedure GetSubTable(myColors: CTabHandle; iTabRes: SInt16; targetTbl: CTabHandle); external name '_GetSubTable';
  3478. {
  3479. * MakeITable()
  3480. *
  3481. * Availability:
  3482. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3483. * CarbonLib: in CarbonLib 1.0 and later
  3484. * Mac OS X: in version 10.0 and later
  3485. }
  3486. procedure MakeITable(cTabH: CTabHandle; iTabH: ITabHandle; res: SInt16); external name '_MakeITable';
  3487. {
  3488. * AddSearch()
  3489. *
  3490. * Availability:
  3491. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3492. * CarbonLib: in CarbonLib 1.0 and later
  3493. * Mac OS X: in version 10.0 and later
  3494. }
  3495. procedure AddSearch(searchProc: ColorSearchUPP); external name '_AddSearch';
  3496. {
  3497. * AddComp()
  3498. *
  3499. * Availability:
  3500. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3501. * CarbonLib: in CarbonLib 1.0 and later
  3502. * Mac OS X: in version 10.0 and later
  3503. }
  3504. procedure AddComp(compProc: ColorComplementUPP); external name '_AddComp';
  3505. {
  3506. * DelSearch()
  3507. *
  3508. * Availability:
  3509. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3510. * CarbonLib: in CarbonLib 1.0 and later
  3511. * Mac OS X: in version 10.0 and later
  3512. }
  3513. procedure DelSearch(searchProc: ColorSearchUPP); external name '_DelSearch';
  3514. {
  3515. * DelComp()
  3516. *
  3517. * Availability:
  3518. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3519. * CarbonLib: in CarbonLib 1.0 and later
  3520. * Mac OS X: in version 10.0 and later
  3521. }
  3522. procedure DelComp(compProc: ColorComplementUPP); external name '_DelComp';
  3523. {
  3524. * SetClientID()
  3525. *
  3526. * Availability:
  3527. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3528. * CarbonLib: in CarbonLib 1.0 and later
  3529. * Mac OS X: in version 10.0 and later
  3530. }
  3531. procedure SetClientID(id: SInt16); external name '_SetClientID';
  3532. {
  3533. * ProtectEntry()
  3534. *
  3535. * Availability:
  3536. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3537. * CarbonLib: in CarbonLib 1.0 and later
  3538. * Mac OS X: in version 10.0 and later
  3539. }
  3540. procedure ProtectEntry(index: SInt16; protect: boolean); external name '_ProtectEntry';
  3541. {
  3542. * ReserveEntry()
  3543. *
  3544. * Availability:
  3545. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3546. * CarbonLib: in CarbonLib 1.0 and later
  3547. * Mac OS X: in version 10.0 and later
  3548. }
  3549. procedure ReserveEntry(index: SInt16; reserve: boolean); external name '_ReserveEntry';
  3550. {
  3551. * SetEntries()
  3552. *
  3553. * Availability:
  3554. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3555. * CarbonLib: in CarbonLib 1.0 and later
  3556. * Mac OS X: in version 10.0 and later
  3557. }
  3558. procedure SetEntries(start: SInt16; count: SInt16; var aTable: CSpecArray); external name '_SetEntries';
  3559. {
  3560. * SaveEntries()
  3561. *
  3562. * Availability:
  3563. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3564. * CarbonLib: in CarbonLib 1.0 and later
  3565. * Mac OS X: in version 10.0 and later
  3566. }
  3567. procedure SaveEntries(srcTable: CTabHandle; resultTable: CTabHandle; var selection: ReqListRec); external name '_SaveEntries';
  3568. {
  3569. * RestoreEntries()
  3570. *
  3571. * Availability:
  3572. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3573. * CarbonLib: in CarbonLib 1.0 and later
  3574. * Mac OS X: in version 10.0 and later
  3575. }
  3576. procedure RestoreEntries(srcTable: CTabHandle; dstTable: CTabHandle; var selection: ReqListRec); external name '_RestoreEntries';
  3577. {
  3578. * QDError()
  3579. *
  3580. * Availability:
  3581. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3582. * CarbonLib: in CarbonLib 1.0 and later
  3583. * Mac OS X: in version 10.0 and later
  3584. }
  3585. function QDError: SInt16; external name '_QDError';
  3586. {
  3587. * CopyDeepMask()
  3588. *
  3589. * Availability:
  3590. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3591. * CarbonLib: in CarbonLib 1.0 and later
  3592. * Mac OS X: in version 10.0 and later
  3593. }
  3594. 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';
  3595. {
  3596. * DeviceLoop()
  3597. *
  3598. * Availability:
  3599. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3600. * CarbonLib: in CarbonLib 1.0 and later
  3601. * Mac OS X: in version 10.0 and later
  3602. }
  3603. procedure DeviceLoop(drawingRgn: RgnHandle; drawingProc: DeviceLoopDrawingUPP; userData: SInt32; flags: DeviceLoopFlags); external name '_DeviceLoop';
  3604. {
  3605. * GetMaskTable()
  3606. *
  3607. * Availability:
  3608. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3609. * CarbonLib: in CarbonLib 1.0 and later
  3610. * Mac OS X: in version 10.0 and later
  3611. }
  3612. function GetMaskTable: Ptr; external name '_GetMaskTable';
  3613. {
  3614. * GetPattern()
  3615. *
  3616. * Availability:
  3617. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3618. * CarbonLib: in CarbonLib 1.0 and later
  3619. * Mac OS X: in version 10.0 and later
  3620. }
  3621. function GetPattern(patternID: SInt16): PatHandle; external name '_GetPattern';
  3622. {
  3623. * [Mac]GetCursor()
  3624. *
  3625. * Availability:
  3626. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3627. * CarbonLib: in CarbonLib 1.0 and later
  3628. * Mac OS X: in version 10.0 and later
  3629. }
  3630. function GetCursor(cursorID: SInt16): CursHandle; external name '_GetCursor';
  3631. {
  3632. * GetPicture()
  3633. *
  3634. * Availability:
  3635. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3636. * CarbonLib: in CarbonLib 1.0 and later
  3637. * Mac OS X: in version 10.0 and later
  3638. }
  3639. function GetPicture(pictureID: SInt16): PicHandle; external name '_GetPicture';
  3640. {
  3641. * DeltaPoint()
  3642. *
  3643. * Availability:
  3644. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3645. * CarbonLib: in CarbonLib 1.0 and later
  3646. * Mac OS X: in version 10.0 and later
  3647. }
  3648. function DeltaPoint(ptA: Point; ptB: Point): SInt32; external name '_DeltaPoint';
  3649. {
  3650. * ShieldCursor()
  3651. *
  3652. * Availability:
  3653. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3654. * CarbonLib: in CarbonLib 1.0 and later
  3655. * Mac OS X: in version 10.0 and later
  3656. }
  3657. procedure ShieldCursor(const (*var*) shieldRect: Rect; offsetPt: Point); external name '_ShieldCursor';
  3658. {
  3659. * ScreenRes()
  3660. *
  3661. * Availability:
  3662. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3663. * CarbonLib: in CarbonLib 1.0 and later
  3664. * Mac OS X: in version 10.0 and later
  3665. }
  3666. procedure ScreenRes(var scrnHRes: SInt16; var scrnVRes: SInt16); external name '_ScreenRes';
  3667. {
  3668. * GetIndPattern()
  3669. *
  3670. * Availability:
  3671. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3672. * CarbonLib: in CarbonLib 1.0 and later
  3673. * Mac OS X: in version 10.0 and later
  3674. }
  3675. procedure GetIndPattern(var thePat: Pattern; patternListID: SInt16; index: SInt16); external name '_GetIndPattern';
  3676. {$ifc OLDROUTINENAMES}
  3677. {$ifc CALL_NOT_IN_CARBON}
  3678. {
  3679. * DisposPixMap()
  3680. *
  3681. * Availability:
  3682. * Non-Carbon CFM: not available
  3683. * CarbonLib: not available
  3684. * Mac OS X: not available
  3685. }
  3686. procedure DisposPixMap(pm: PixMapHandle); external name '_DisposPixMap';
  3687. {
  3688. * DisposPixPat()
  3689. *
  3690. * Availability:
  3691. * Non-Carbon CFM: not available
  3692. * CarbonLib: not available
  3693. * Mac OS X: not available
  3694. }
  3695. procedure DisposPixPat(pp: PixPatHandle); external name '_DisposPixPat';
  3696. {
  3697. * DisposCTable()
  3698. *
  3699. * Availability:
  3700. * Non-Carbon CFM: not available
  3701. * CarbonLib: not available
  3702. * Mac OS X: not available
  3703. }
  3704. procedure DisposCTable(cTable: CTabHandle); external name '_DisposCTable';
  3705. {
  3706. * DisposCCursor()
  3707. *
  3708. * Availability:
  3709. * Non-Carbon CFM: not available
  3710. * CarbonLib: not available
  3711. * Mac OS X: not available
  3712. }
  3713. procedure DisposCCursor(cCrsr: CCrsrHandle); external name '_DisposCCursor';
  3714. {
  3715. * DisposGDevice()
  3716. *
  3717. * Availability:
  3718. * Non-Carbon CFM: not available
  3719. * CarbonLib: not available
  3720. * Mac OS X: not available
  3721. }
  3722. procedure DisposGDevice(gdh: GDHandle); external name '_DisposGDevice';
  3723. {$endc} {CALL_NOT_IN_CARBON}
  3724. {$endc} {OLDROUTINENAMES}
  3725. {
  3726. From ToolUtils.i
  3727. }
  3728. {
  3729. * PackBits()
  3730. *
  3731. * Availability:
  3732. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3733. * CarbonLib: in CarbonLib 1.0 and later
  3734. * Mac OS X: in version 10.0 and later
  3735. }
  3736. procedure PackBits(var srcPtr: Ptr; var dstPtr: Ptr; srcBytes: SInt16); external name '_PackBits';
  3737. {
  3738. * UnpackBits()
  3739. *
  3740. * Availability:
  3741. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3742. * CarbonLib: in CarbonLib 1.0 and later
  3743. * Mac OS X: in version 10.0 and later
  3744. }
  3745. procedure UnpackBits(var srcPtr: Ptr; var dstPtr: Ptr; dstBytes: SInt16); external name '_UnpackBits';
  3746. {
  3747. * SlopeFromAngle()
  3748. *
  3749. * Availability:
  3750. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3751. * CarbonLib: in CarbonLib 1.0 and later
  3752. * Mac OS X: in version 10.0 and later
  3753. }
  3754. function SlopeFromAngle(angle: SInt16): Fixed; external name '_SlopeFromAngle';
  3755. {
  3756. * AngleFromSlope()
  3757. *
  3758. * Availability:
  3759. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3760. * CarbonLib: in CarbonLib 1.0 and later
  3761. * Mac OS X: in version 10.0 and later
  3762. }
  3763. function AngleFromSlope(slope: Fixed): SInt16; external name '_AngleFromSlope';
  3764. { New transfer modes }
  3765. const
  3766. colorXorXFer = 52;
  3767. noiseXFer = 53;
  3768. customXFer = 54;
  3769. { Custom XFer flags }
  3770. kXFer1PixelAtATime = $00000001; { 1 pixel passed to custom XFer proc }
  3771. kXFerConvertPixelToRGB32 = $00000002; { All color depths converted to 32 bit RGB }
  3772. type
  3773. CustomXFerRecPtr = ^CustomXFerRec;
  3774. CustomXFerRec = record
  3775. version: UInt32;
  3776. srcPixels: Ptr;
  3777. destPixels: Ptr;
  3778. resultPixels: Ptr;
  3779. refCon: UInt32;
  3780. pixelSize: UInt32;
  3781. pixelCount: UInt32;
  3782. firstPixelHV: Point;
  3783. destBounds: Rect;
  3784. end;
  3785. {$ifc TYPED_FUNCTION_POINTERS}
  3786. CustomXFerProcPtr = procedure(info: CustomXFerRecPtr);
  3787. {$elsec}
  3788. CustomXFerProcPtr = ProcPtr;
  3789. {$endc}
  3790. {
  3791. * GetPortCustomXFerProc()
  3792. *
  3793. * Availability:
  3794. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3795. * CarbonLib: in CarbonLib 1.0 and later
  3796. * Mac OS X: in version 10.0 and later
  3797. }
  3798. function GetPortCustomXFerProc(port: CGrafPtr; var proc: CustomXFerProcPtr; var flags: UInt32; var refCon: UInt32): OSErr; external name '_GetPortCustomXFerProc';
  3799. {
  3800. * SetPortCustomXFerProc()
  3801. *
  3802. * Availability:
  3803. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3804. * CarbonLib: in CarbonLib 1.0 and later
  3805. * Mac OS X: in version 10.0 and later
  3806. }
  3807. function SetPortCustomXFerProc(port: CGrafPtr; proc: CustomXFerProcPtr; flags: UInt32; refCon: UInt32): OSErr; external name '_SetPortCustomXFerProc';
  3808. const
  3809. kCursorComponentsVersion = $00010001;
  3810. kCursorComponentType = $63757273 (* 'curs' *);
  3811. { Cursor Component capabilities flags }
  3812. cursorDoesAnimate = $00000001;
  3813. cursorDoesHardware = $00000002;
  3814. cursorDoesUnreadableScreenBits = $00000004;
  3815. { Cursor Component output mode flags }
  3816. kRenderCursorInHardware = $00000001;
  3817. kRenderCursorInSoftware = $00000002;
  3818. { Cursor Component Info }
  3819. type
  3820. CursorInfoPtr = ^CursorInfo;
  3821. CursorInfo = record
  3822. version: SInt32; { use kCursorComponentsVersion }
  3823. capabilities: SInt32;
  3824. animateDuration: SInt32; { approximate time between animate tickles }
  3825. bounds: Rect;
  3826. hotspot: Point;
  3827. reserved: SInt32; { must set to zero }
  3828. end;
  3829. { Cursor Component Selectors }
  3830. const
  3831. kCursorComponentInit = $0001;
  3832. kCursorComponentGetInfo = $0002;
  3833. kCursorComponentSetOutputMode = $0003;
  3834. kCursorComponentSetData = $0004;
  3835. kCursorComponentReconfigure = $0005;
  3836. kCursorComponentDraw = $0006;
  3837. kCursorComponentErase = $0007;
  3838. kCursorComponentMove = $0008;
  3839. kCursorComponentAnimate = $0009;
  3840. kCursorComponentLastReserved = $0050;
  3841. {
  3842. * OpenCursorComponent()
  3843. *
  3844. * Availability:
  3845. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3846. * CarbonLib: in CarbonLib 1.0 and later
  3847. * Mac OS X: in version 10.0 and later
  3848. }
  3849. function OpenCursorComponent(c: Component; var ci: ComponentInstance): OSErr; external name '_OpenCursorComponent';
  3850. {
  3851. * CloseCursorComponent()
  3852. *
  3853. * Availability:
  3854. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3855. * CarbonLib: in CarbonLib 1.0 and later
  3856. * Mac OS X: in version 10.0 and later
  3857. }
  3858. function CloseCursorComponent(ci: ComponentInstance): OSErr; external name '_CloseCursorComponent';
  3859. {
  3860. * SetCursorComponent()
  3861. *
  3862. * Availability:
  3863. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3864. * CarbonLib: in CarbonLib 1.0 and later
  3865. * Mac OS X: in version 10.0 and later
  3866. }
  3867. function SetCursorComponent(ci: ComponentInstance): OSErr; external name '_SetCursorComponent';
  3868. {
  3869. * CursorComponentChanged()
  3870. *
  3871. * Availability:
  3872. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3873. * CarbonLib: in CarbonLib 1.0 and later
  3874. * Mac OS X: in version 10.0 and later
  3875. }
  3876. function CursorComponentChanged(ci: ComponentInstance): OSErr; external name '_CursorComponentChanged';
  3877. {
  3878. * CursorComponentSetData()
  3879. *
  3880. * Availability:
  3881. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  3882. * CarbonLib: in CarbonLib 1.0 and later
  3883. * Mac OS X: in version 10.0 and later
  3884. }
  3885. function CursorComponentSetData(ci: ComponentInstance; data: SInt32): OSErr; external name '_CursorComponentSetData';
  3886. { Available in CarbonLib... }
  3887. {
  3888. * IsValidPort()
  3889. *
  3890. * Availability:
  3891. * Non-Carbon CFM: not available
  3892. * CarbonLib: in CarbonLib 1.1 and later
  3893. * Mac OS X: in version 10.0 and later
  3894. }
  3895. function IsValidPort(port: CGrafPtr): boolean; external name '_IsValidPort';
  3896. {$ifc ACCESSOR_CALLS_ARE_FUNCTIONS}
  3897. { GrafPort }
  3898. { Getters }
  3899. {
  3900. * GetPortPixMap()
  3901. *
  3902. * Availability:
  3903. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3904. * CarbonLib: in CarbonLib 1.0 and later
  3905. * Mac OS X: in version 10.0 and later
  3906. }
  3907. function GetPortPixMap(port: CGrafPtr): PixMapHandle; external name '_GetPortPixMap';
  3908. {
  3909. * GetPortBitMapForCopyBits()
  3910. *
  3911. * Discussion:
  3912. * GetPortBitMapForCopyBits is provided for the specific purpose of
  3913. * using the return value as a parameter to CopyBits. The return
  3914. * value can be used as the srcBits or dstBits parameter to CopyBits
  3915. * regardless of whether the port is color. If the port parameter is
  3916. * a color port, however, the returned BitMapPtr does not actually
  3917. * point to a BitMap; it points to the PixMapHandle and other fields
  3918. * in the CGrafPort structure. You should not dereference the
  3919. * BitMapPtr or otherwise depend on its contents unless you've
  3920. * confirmed that this port is a non-color port.
  3921. *
  3922. * Availability:
  3923. * Non-Carbon CFM: in CarbonAccessors.o 1.0.2 and later
  3924. * CarbonLib: in CarbonLib 1.0.2 and later
  3925. * Mac OS X: in version 10.0 and later
  3926. }
  3927. function GetPortBitMapForCopyBits(port: CGrafPtr): BitMapPtr; external name '_GetPortBitMapForCopyBits';
  3928. {
  3929. * GetPortBounds()
  3930. *
  3931. * Availability:
  3932. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3933. * CarbonLib: in CarbonLib 1.0 and later
  3934. * Mac OS X: in version 10.0 and later
  3935. }
  3936. function GetPortBounds(port: CGrafPtr; var rect_: Rect): RectPtr; external name '_GetPortBounds';
  3937. {
  3938. * GetPortForeColor()
  3939. *
  3940. * Availability:
  3941. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3942. * CarbonLib: in CarbonLib 1.0 and later
  3943. * Mac OS X: in version 10.0 and later
  3944. }
  3945. function GetPortForeColor(port: CGrafPtr; var foreColor: RGBColor): RGBColorPtr; external name '_GetPortForeColor';
  3946. {
  3947. * GetPortBackColor()
  3948. *
  3949. * Availability:
  3950. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3951. * CarbonLib: in CarbonLib 1.0 and later
  3952. * Mac OS X: in version 10.0 and later
  3953. }
  3954. function GetPortBackColor(port: CGrafPtr; var backColor: RGBColor): RGBColorPtr; external name '_GetPortBackColor';
  3955. {
  3956. * GetPortOpColor()
  3957. *
  3958. * Availability:
  3959. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3960. * CarbonLib: in CarbonLib 1.0 and later
  3961. * Mac OS X: in version 10.0 and later
  3962. }
  3963. function GetPortOpColor(port: CGrafPtr; var opColor: RGBColor): RGBColorPtr; external name '_GetPortOpColor';
  3964. {
  3965. * GetPortHiliteColor()
  3966. *
  3967. * Availability:
  3968. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3969. * CarbonLib: in CarbonLib 1.0 and later
  3970. * Mac OS X: in version 10.0 and later
  3971. }
  3972. function GetPortHiliteColor(port: CGrafPtr; var hiliteColor: RGBColor): RGBColorPtr; external name '_GetPortHiliteColor';
  3973. {
  3974. * GetPortGrafProcs()
  3975. *
  3976. * Availability:
  3977. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3978. * CarbonLib: in CarbonLib 1.0 and later
  3979. * Mac OS X: in version 10.0 and later
  3980. }
  3981. function GetPortGrafProcs(port: CGrafPtr): CQDProcsPtr; external name '_GetPortGrafProcs';
  3982. {
  3983. * GetPortTextFont()
  3984. *
  3985. * Availability:
  3986. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3987. * CarbonLib: in CarbonLib 1.0 and later
  3988. * Mac OS X: in version 10.0 and later
  3989. }
  3990. function GetPortTextFont(port: CGrafPtr): SInt16; external name '_GetPortTextFont';
  3991. {
  3992. * GetPortTextFace()
  3993. *
  3994. * Availability:
  3995. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  3996. * CarbonLib: in CarbonLib 1.0 and later
  3997. * Mac OS X: in version 10.0 and later
  3998. }
  3999. function GetPortTextFace(port: CGrafPtr): ByteParameter; external name '_GetPortTextFace';
  4000. {
  4001. * GetPortTextMode()
  4002. *
  4003. * Availability:
  4004. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4005. * CarbonLib: in CarbonLib 1.0 and later
  4006. * Mac OS X: in version 10.0 and later
  4007. }
  4008. function GetPortTextMode(port: CGrafPtr): SInt16; external name '_GetPortTextMode';
  4009. {
  4010. * GetPortTextSize()
  4011. *
  4012. * Availability:
  4013. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4014. * CarbonLib: in CarbonLib 1.0 and later
  4015. * Mac OS X: in version 10.0 and later
  4016. }
  4017. function GetPortTextSize(port: CGrafPtr): SInt16; external name '_GetPortTextSize';
  4018. {
  4019. * GetPortChExtra()
  4020. *
  4021. * Availability:
  4022. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4023. * CarbonLib: in CarbonLib 1.0 and later
  4024. * Mac OS X: in version 10.0 and later
  4025. }
  4026. function GetPortChExtra(port: CGrafPtr): SInt16; external name '_GetPortChExtra';
  4027. {
  4028. * GetPortFracHPenLocation()
  4029. *
  4030. * Availability:
  4031. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4032. * CarbonLib: in CarbonLib 1.0 and later
  4033. * Mac OS X: in version 10.0 and later
  4034. }
  4035. function GetPortFracHPenLocation(port: CGrafPtr): SInt16; external name '_GetPortFracHPenLocation';
  4036. {
  4037. * GetPortSpExtra()
  4038. *
  4039. * Availability:
  4040. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4041. * CarbonLib: in CarbonLib 1.0 and later
  4042. * Mac OS X: in version 10.0 and later
  4043. }
  4044. function GetPortSpExtra(port: CGrafPtr): Fixed; external name '_GetPortSpExtra';
  4045. {
  4046. * GetPortPenVisibility()
  4047. *
  4048. * Availability:
  4049. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4050. * CarbonLib: in CarbonLib 1.0 and later
  4051. * Mac OS X: in version 10.0 and later
  4052. }
  4053. function GetPortPenVisibility(port: CGrafPtr): SInt16; external name '_GetPortPenVisibility';
  4054. {
  4055. * GetPortVisibleRegion()
  4056. *
  4057. * Availability:
  4058. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4059. * CarbonLib: in CarbonLib 1.0 and later
  4060. * Mac OS X: in version 10.0 and later
  4061. }
  4062. function GetPortVisibleRegion(port: CGrafPtr; visRgn: RgnHandle): RgnHandle; external name '_GetPortVisibleRegion';
  4063. {
  4064. * GetPortClipRegion()
  4065. *
  4066. * Availability:
  4067. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4068. * CarbonLib: in CarbonLib 1.0 and later
  4069. * Mac OS X: in version 10.0 and later
  4070. }
  4071. function GetPortClipRegion(port: CGrafPtr; clipRgn: RgnHandle): RgnHandle; external name '_GetPortClipRegion';
  4072. {
  4073. * GetPortBackPixPat()
  4074. *
  4075. * Availability:
  4076. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4077. * CarbonLib: in CarbonLib 1.0 and later
  4078. * Mac OS X: in version 10.0 and later
  4079. }
  4080. function GetPortBackPixPat(port: CGrafPtr; backPattern: PixPatHandle): PixPatHandle; external name '_GetPortBackPixPat';
  4081. {
  4082. * GetPortPenPixPat()
  4083. *
  4084. * Availability:
  4085. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4086. * CarbonLib: in CarbonLib 1.0 and later
  4087. * Mac OS X: in version 10.0 and later
  4088. }
  4089. function GetPortPenPixPat(port: CGrafPtr; penPattern: PixPatHandle): PixPatHandle; external name '_GetPortPenPixPat';
  4090. {
  4091. * GetPortFillPixPat()
  4092. *
  4093. * Availability:
  4094. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4095. * CarbonLib: in CarbonLib 1.0 and later
  4096. * Mac OS X: in version 10.0 and later
  4097. }
  4098. function GetPortFillPixPat(port: CGrafPtr; fillPattern: PixPatHandle): PixPatHandle; external name '_GetPortFillPixPat';
  4099. {
  4100. * GetPortPenSize()
  4101. *
  4102. * Availability:
  4103. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4104. * CarbonLib: in CarbonLib 1.0 and later
  4105. * Mac OS X: in version 10.0 and later
  4106. }
  4107. function GetPortPenSize(port: CGrafPtr; var penSize: Point): PointPtr; external name '_GetPortPenSize';
  4108. {
  4109. * GetPortPenMode()
  4110. *
  4111. * Availability:
  4112. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4113. * CarbonLib: in CarbonLib 1.0 and later
  4114. * Mac OS X: in version 10.0 and later
  4115. }
  4116. function GetPortPenMode(port: CGrafPtr): SInt32; external name '_GetPortPenMode';
  4117. {
  4118. * GetPortPenLocation()
  4119. *
  4120. * Availability:
  4121. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4122. * CarbonLib: in CarbonLib 1.0 and later
  4123. * Mac OS X: in version 10.0 and later
  4124. }
  4125. function GetPortPenLocation(port: CGrafPtr; var penLocation: Point): PointPtr; external name '_GetPortPenLocation';
  4126. {
  4127. * IsPortRegionBeingDefined()
  4128. *
  4129. * Availability:
  4130. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4131. * CarbonLib: in CarbonLib 1.0 and later
  4132. * Mac OS X: in version 10.0 and later
  4133. }
  4134. function IsPortRegionBeingDefined(port: CGrafPtr): boolean; external name '_IsPortRegionBeingDefined';
  4135. {
  4136. * IsPortPictureBeingDefined()
  4137. *
  4138. * Availability:
  4139. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4140. * CarbonLib: in CarbonLib 1.0 and later
  4141. * Mac OS X: in version 10.0 and later
  4142. }
  4143. function IsPortPictureBeingDefined(port: CGrafPtr): boolean; external name '_IsPortPictureBeingDefined';
  4144. {
  4145. * IsPortPolyBeingDefined()
  4146. *
  4147. * Availability:
  4148. * Non-Carbon CFM: in CarbonAccessors.o 1.3 and later
  4149. * CarbonLib: in CarbonLib 1.3 and later
  4150. * Mac OS X: in version 10.0 and later
  4151. }
  4152. function IsPortPolyBeingDefined(port: CGrafPtr): boolean; external name '_IsPortPolyBeingDefined';
  4153. {
  4154. * IsPortOffscreen()
  4155. *
  4156. * Availability:
  4157. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4158. * CarbonLib: in CarbonLib 1.0 and later
  4159. * Mac OS X: in version 10.0 and later
  4160. }
  4161. function IsPortOffscreen(port: CGrafPtr): boolean; external name '_IsPortOffscreen';
  4162. {
  4163. * IsPortColor()
  4164. *
  4165. * Availability:
  4166. * Non-Carbon CFM: in CarbonAccessors.o 1.0.2 and later
  4167. * CarbonLib: in CarbonLib 1.0.2 and later
  4168. * Mac OS X: in version 10.0 and later
  4169. }
  4170. function IsPortColor(port: CGrafPtr): boolean; external name '_IsPortColor';
  4171. {
  4172. * IsPortVisibleRegionEmpty()
  4173. *
  4174. * Availability:
  4175. * Non-Carbon CFM: not available
  4176. * CarbonLib: in CarbonLib 1.3 and later
  4177. * Mac OS X: in version 10.1 and later
  4178. }
  4179. function IsPortVisibleRegionEmpty(port: CGrafPtr): boolean; external name '_IsPortVisibleRegionEmpty';
  4180. {
  4181. * IsPortClipRegionEmpty()
  4182. *
  4183. * Availability:
  4184. * Non-Carbon CFM: not available
  4185. * CarbonLib: in CarbonLib 1.3 and later
  4186. * Mac OS X: in version 10.1 and later
  4187. }
  4188. function IsPortClipRegionEmpty(port: CGrafPtr): boolean; external name '_IsPortClipRegionEmpty';
  4189. {
  4190. * SectRegionWithPortClipRegion()
  4191. *
  4192. * Availability:
  4193. * Non-Carbon CFM: not available
  4194. * CarbonLib: in CarbonLib 1.3 and later
  4195. * Mac OS X: in version 10.1 and later
  4196. }
  4197. procedure SectRegionWithPortClipRegion(port: CGrafPtr; ioRegion: RgnHandle); external name '_SectRegionWithPortClipRegion';
  4198. {
  4199. * SectRegionWithPortVisibleRegion()
  4200. *
  4201. * Availability:
  4202. * Non-Carbon CFM: not available
  4203. * CarbonLib: in CarbonLib 1.3 and later
  4204. * Mac OS X: in version 10.1 and later
  4205. }
  4206. procedure SectRegionWithPortVisibleRegion(port: CGrafPtr; ioRegion: RgnHandle); external name '_SectRegionWithPortVisibleRegion';
  4207. { Swappers }
  4208. {
  4209. * SwapPortPicSaveHandle()
  4210. *
  4211. * Summary:
  4212. * Sets the port's picSave Handle, and returns the previous picSave
  4213. *
  4214. * Discussion:
  4215. * Historically, the picSave field in a GrafPort is != NULL if a
  4216. * Picture is being defined; and it has been documented that picture
  4217. * definition can be temporarily suspended by saving the current
  4218. * picSave Handle and setting picSave to NULL. Restoring the saved
  4219. * picSave Handle resumes picture definition.
  4220. *
  4221. * Parameters:
  4222. *
  4223. * port:
  4224. * The port whose picSave field is being swapped.
  4225. *
  4226. * inPicSaveHdl:
  4227. * The picSave Handle to be set.
  4228. *
  4229. * Result:
  4230. * The previous picSave Handle in the port.
  4231. *
  4232. * Availability:
  4233. * Non-Carbon CFM: not available
  4234. * CarbonLib: in CarbonLib 1.5 and later
  4235. * Mac OS X: in version 10.1 and later
  4236. }
  4237. function SwapPortPicSaveHandle(port: CGrafPtr; inPicSaveHdl: Handle): Handle; external name '_SwapPortPicSaveHandle';
  4238. { Similarly: }
  4239. {
  4240. * SwapPortPolySaveHandle()
  4241. *
  4242. * Availability:
  4243. * Non-Carbon CFM: not available
  4244. * CarbonLib: in CarbonLib 1.6 and later
  4245. * Mac OS X: in version 10.2 and later
  4246. }
  4247. function SwapPortPolySaveHandle(port: CGrafPtr; inPolySaveHdl: Handle): Handle; external name '_SwapPortPolySaveHandle';
  4248. {
  4249. * SwapPortRegionSaveHandle()
  4250. *
  4251. * Availability:
  4252. * Non-Carbon CFM: not available
  4253. * CarbonLib: in CarbonLib 1.6 and later
  4254. * Mac OS X: in version 10.2 and later
  4255. }
  4256. function SwapPortRegionSaveHandle(port: CGrafPtr; inRegionSaveHdl: Handle): Handle; external name '_SwapPortRegionSaveHandle';
  4257. { Setters }
  4258. {
  4259. * SetPortBounds()
  4260. *
  4261. * Availability:
  4262. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4263. * CarbonLib: in CarbonLib 1.0 and later
  4264. * Mac OS X: in version 10.0 and later
  4265. }
  4266. procedure SetPortBounds(port: CGrafPtr; const (*var*) rect_: Rect); external name '_SetPortBounds';
  4267. {
  4268. * SetPortOpColor()
  4269. *
  4270. * Availability:
  4271. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4272. * CarbonLib: in CarbonLib 1.0 and later
  4273. * Mac OS X: in version 10.0 and later
  4274. }
  4275. procedure SetPortOpColor(port: CGrafPtr; const (*var*) opColor: RGBColor); external name '_SetPortOpColor';
  4276. {
  4277. * SetPortGrafProcs()
  4278. *
  4279. * Availability:
  4280. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4281. * CarbonLib: in CarbonLib 1.0 and later
  4282. * Mac OS X: in version 10.0 and later
  4283. }
  4284. procedure SetPortGrafProcs(port: CGrafPtr; procs: CQDProcsPtr); external name '_SetPortGrafProcs';
  4285. {
  4286. * SetPortTextFont()
  4287. *
  4288. * Availability:
  4289. * Non-Carbon CFM: not available
  4290. * CarbonLib: in CarbonLib 1.5 and later
  4291. * Mac OS X: in version 10.1 and later
  4292. }
  4293. procedure SetPortTextFont(port: CGrafPtr; txFont: SInt16); external name '_SetPortTextFont';
  4294. {
  4295. * SetPortTextSize()
  4296. *
  4297. * Availability:
  4298. * Non-Carbon CFM: not available
  4299. * CarbonLib: in CarbonLib 1.5 and later
  4300. * Mac OS X: in version 10.1 and later
  4301. }
  4302. procedure SetPortTextSize(port: CGrafPtr; txSize: SInt16); external name '_SetPortTextSize';
  4303. {
  4304. * SetPortTextFace()
  4305. *
  4306. * Availability:
  4307. * Non-Carbon CFM: not available
  4308. * CarbonLib: in CarbonLib 1.5 and later
  4309. * Mac OS X: in version 10.1 and later
  4310. }
  4311. procedure SetPortTextFace(port: CGrafPtr; face: StyleParameter); external name '_SetPortTextFace';
  4312. {
  4313. * SetPortTextMode()
  4314. *
  4315. * Availability:
  4316. * Non-Carbon CFM: not available
  4317. * CarbonLib: in CarbonLib 1.5 and later
  4318. * Mac OS X: in version 10.1 and later
  4319. }
  4320. procedure SetPortTextMode(port: CGrafPtr; mode: SInt16); external name '_SetPortTextMode';
  4321. {
  4322. * SetPortVisibleRegion()
  4323. *
  4324. * Availability:
  4325. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4326. * CarbonLib: in CarbonLib 1.0 and later
  4327. * Mac OS X: in version 10.0 and later
  4328. }
  4329. procedure SetPortVisibleRegion(port: CGrafPtr; visRgn: RgnHandle); external name '_SetPortVisibleRegion';
  4330. {
  4331. * SetPortClipRegion()
  4332. *
  4333. * Availability:
  4334. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4335. * CarbonLib: in CarbonLib 1.0 and later
  4336. * Mac OS X: in version 10.0 and later
  4337. }
  4338. procedure SetPortClipRegion(port: CGrafPtr; clipRgn: RgnHandle); external name '_SetPortClipRegion';
  4339. {
  4340. * SetPortPenPixPat()
  4341. *
  4342. * Availability:
  4343. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4344. * CarbonLib: in CarbonLib 1.0 and later
  4345. * Mac OS X: in version 10.0 and later
  4346. }
  4347. procedure SetPortPenPixPat(port: CGrafPtr; penPattern: PixPatHandle); external name '_SetPortPenPixPat';
  4348. {
  4349. * SetPortFillPixPat()
  4350. *
  4351. * Availability:
  4352. * Non-Carbon CFM: in CarbonAccessors.o 1.2 and later
  4353. * CarbonLib: in CarbonLib 1.2 and later
  4354. * Mac OS X: in version 10.0 and later
  4355. }
  4356. procedure SetPortFillPixPat(port: CGrafPtr; penPattern: PixPatHandle); external name '_SetPortFillPixPat';
  4357. {
  4358. * SetPortBackPixPat()
  4359. *
  4360. * Availability:
  4361. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4362. * CarbonLib: in CarbonLib 1.0 and later
  4363. * Mac OS X: in version 10.0 and later
  4364. }
  4365. procedure SetPortBackPixPat(port: CGrafPtr; backPattern: PixPatHandle); external name '_SetPortBackPixPat';
  4366. {
  4367. * SetPortPenSize()
  4368. *
  4369. * Availability:
  4370. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4371. * CarbonLib: in CarbonLib 1.0 and later
  4372. * Mac OS X: in version 10.0 and later
  4373. }
  4374. procedure SetPortPenSize(port: CGrafPtr; penSize: Point); external name '_SetPortPenSize';
  4375. {
  4376. * SetPortPenMode()
  4377. *
  4378. * Availability:
  4379. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4380. * CarbonLib: in CarbonLib 1.0 and later
  4381. * Mac OS X: in version 10.0 and later
  4382. }
  4383. procedure SetPortPenMode(port: CGrafPtr; penMode: SInt32); external name '_SetPortPenMode';
  4384. {
  4385. * SetPortFracHPenLocation()
  4386. *
  4387. * Availability:
  4388. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4389. * CarbonLib: in CarbonLib 1.0 and later
  4390. * Mac OS X: in version 10.0 and later
  4391. }
  4392. procedure SetPortFracHPenLocation(port: CGrafPtr; pnLocHFrac: SInt16); external name '_SetPortFracHPenLocation';
  4393. { PixMap }
  4394. {
  4395. * GetPixBounds()
  4396. *
  4397. * Availability:
  4398. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4399. * CarbonLib: in CarbonLib 1.0 and later
  4400. * Mac OS X: in version 10.0 and later
  4401. }
  4402. function GetPixBounds(pixMap: PixMapHandle; var bounds: Rect): RectPtr; external name '_GetPixBounds';
  4403. {
  4404. * GetPixDepth()
  4405. *
  4406. * Availability:
  4407. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4408. * CarbonLib: in CarbonLib 1.0 and later
  4409. * Mac OS X: in version 10.0 and later
  4410. }
  4411. function GetPixDepth(pixMap: PixMapHandle): SInt16; external name '_GetPixDepth';
  4412. { QDGlobals }
  4413. { Getters }
  4414. {
  4415. * GetQDGlobalsRandomSeed()
  4416. *
  4417. * Availability:
  4418. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4419. * CarbonLib: in CarbonLib 1.0 and later
  4420. * Mac OS X: in version 10.0 and later
  4421. }
  4422. function GetQDGlobalsRandomSeed: SInt32; external name '_GetQDGlobalsRandomSeed';
  4423. {
  4424. * GetQDGlobalsScreenBits()
  4425. *
  4426. * Availability:
  4427. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4428. * CarbonLib: in CarbonLib 1.0 and later
  4429. * Mac OS X: in version 10.0 and later
  4430. }
  4431. function GetQDGlobalsScreenBits(var screenBits: BitMap): BitMapPtr; external name '_GetQDGlobalsScreenBits';
  4432. {
  4433. * GetQDGlobalsArrow()
  4434. *
  4435. * Availability:
  4436. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4437. * CarbonLib: in CarbonLib 1.0 and later
  4438. * Mac OS X: in version 10.0 and later
  4439. }
  4440. function GetQDGlobalsArrow(var arrow: Cursor): CursorPtr; external name '_GetQDGlobalsArrow';
  4441. {
  4442. * GetQDGlobalsDarkGray()
  4443. *
  4444. * Availability:
  4445. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4446. * CarbonLib: in CarbonLib 1.0 and later
  4447. * Mac OS X: in version 10.0 and later
  4448. }
  4449. function GetQDGlobalsDarkGray(var dkGray: Pattern): PatternPtr; external name '_GetQDGlobalsDarkGray';
  4450. {
  4451. * GetQDGlobalsLightGray()
  4452. *
  4453. * Availability:
  4454. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4455. * CarbonLib: in CarbonLib 1.0 and later
  4456. * Mac OS X: in version 10.0 and later
  4457. }
  4458. function GetQDGlobalsLightGray(var ltGray: Pattern): PatternPtr; external name '_GetQDGlobalsLightGray';
  4459. {
  4460. * GetQDGlobalsGray()
  4461. *
  4462. * Availability:
  4463. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4464. * CarbonLib: in CarbonLib 1.0 and later
  4465. * Mac OS X: in version 10.0 and later
  4466. }
  4467. function GetQDGlobalsGray(var gray: Pattern): PatternPtr; external name '_GetQDGlobalsGray';
  4468. {
  4469. * GetQDGlobalsBlack()
  4470. *
  4471. * Availability:
  4472. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4473. * CarbonLib: in CarbonLib 1.0 and later
  4474. * Mac OS X: in version 10.0 and later
  4475. }
  4476. function GetQDGlobalsBlack(var black: Pattern): PatternPtr; external name '_GetQDGlobalsBlack';
  4477. {
  4478. * GetQDGlobalsWhite()
  4479. *
  4480. * Availability:
  4481. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4482. * CarbonLib: in CarbonLib 1.0 and later
  4483. * Mac OS X: in version 10.0 and later
  4484. }
  4485. function GetQDGlobalsWhite(var white: Pattern): PatternPtr; external name '_GetQDGlobalsWhite';
  4486. {
  4487. * GetQDGlobalsThePort()
  4488. *
  4489. * Availability:
  4490. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4491. * CarbonLib: in CarbonLib 1.0 and later
  4492. * Mac OS X: in version 10.0 and later
  4493. }
  4494. function GetQDGlobalsThePort: CGrafPtr; external name '_GetQDGlobalsThePort';
  4495. { Setters }
  4496. {
  4497. * SetQDGlobalsRandomSeed()
  4498. *
  4499. * Availability:
  4500. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4501. * CarbonLib: in CarbonLib 1.0 and later
  4502. * Mac OS X: in version 10.0 and later
  4503. }
  4504. procedure SetQDGlobalsRandomSeed(randomSeed: SInt32); external name '_SetQDGlobalsRandomSeed';
  4505. {
  4506. * SetQDGlobalsArrow()
  4507. *
  4508. * Availability:
  4509. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4510. * CarbonLib: in CarbonLib 1.0 and later
  4511. * Mac OS X: in version 10.0 and later
  4512. }
  4513. procedure SetQDGlobalsArrow(const (*var*) arrow: Cursor); external name '_SetQDGlobalsArrow';
  4514. { Regions }
  4515. {
  4516. * GetRegionBounds()
  4517. *
  4518. * Availability:
  4519. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4520. * CarbonLib: in CarbonLib 1.0 and later
  4521. * Mac OS X: in version 10.0 and later
  4522. }
  4523. function GetRegionBounds(region: RgnHandle; var bounds: Rect): RectPtr; external name '_GetRegionBounds';
  4524. {
  4525. * IsRegionRectangular()
  4526. *
  4527. * Availability:
  4528. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4529. * CarbonLib: in CarbonLib 1.0 and later
  4530. * Mac OS X: in version 10.0 and later
  4531. }
  4532. function IsRegionRectangular(region: RgnHandle): boolean; external name '_IsRegionRectangular';
  4533. { Utilities }
  4534. { To prevent upward dependencies, GetWindowFromPort() is defined in Window Manager interface: }
  4535. { pascal WindowRef GetWindowFromPort(CGrafPtr port); }
  4536. { NewPtr/OpenCPort doesn't work with opaque structures }
  4537. {
  4538. * CreateNewPort()
  4539. *
  4540. * Availability:
  4541. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4542. * CarbonLib: in CarbonLib 1.0 and later
  4543. * Mac OS X: in version 10.0 and later
  4544. }
  4545. function CreateNewPort: CGrafPtr; external name '_CreateNewPort';
  4546. {
  4547. * DisposePort()
  4548. *
  4549. * Availability:
  4550. * Non-Carbon CFM: in CarbonAccessors.o 1.0 and later
  4551. * CarbonLib: in CarbonLib 1.0 and later
  4552. * Mac OS X: in version 10.0 and later
  4553. }
  4554. procedure DisposePort(port: CGrafPtr); external name '_DisposePort';
  4555. {
  4556. * SetQDError()
  4557. *
  4558. * Availability:
  4559. * Non-Carbon CFM: in CarbonAccessors.o 1.0.2 and later
  4560. * CarbonLib: in CarbonLib 1.0.2 and later
  4561. * Mac OS X: in version 10.0 and later
  4562. }
  4563. procedure SetQDError(err: OSErr); external name '_SetQDError';
  4564. {$endc} {ACCESSOR_CALLS_ARE_FUNCTIONS}
  4565. { Helpful Carbon-only utilities (finally made public) }
  4566. {
  4567. * QDLocalToGlobalPoint()
  4568. *
  4569. * Availability:
  4570. * Non-Carbon CFM: not available
  4571. * CarbonLib: in CarbonLib 1.0 and later
  4572. * Mac OS X: in version 10.0 and later
  4573. }
  4574. function QDLocalToGlobalPoint(port: CGrafPtr; var point_: Point): PointPtr; external name '_QDLocalToGlobalPoint';
  4575. {
  4576. * QDGlobalToLocalPoint()
  4577. *
  4578. * Availability:
  4579. * Non-Carbon CFM: not available
  4580. * CarbonLib: in CarbonLib 1.0 and later
  4581. * Mac OS X: in version 10.0 and later
  4582. }
  4583. function QDGlobalToLocalPoint(port: CGrafPtr; var point_: Point): PointPtr; external name '_QDGlobalToLocalPoint';
  4584. {
  4585. * QDLocalToGlobalRect()
  4586. *
  4587. * Availability:
  4588. * Non-Carbon CFM: not available
  4589. * CarbonLib: in CarbonLib 1.0 and later
  4590. * Mac OS X: in version 10.0 and later
  4591. }
  4592. function QDLocalToGlobalRect(port: CGrafPtr; var bounds: Rect): RectPtr; external name '_QDLocalToGlobalRect';
  4593. {
  4594. * QDGlobalToLocalRect()
  4595. *
  4596. * Availability:
  4597. * Non-Carbon CFM: not available
  4598. * CarbonLib: in CarbonLib 1.0 and later
  4599. * Mac OS X: in version 10.0 and later
  4600. }
  4601. function QDGlobalToLocalRect(port: CGrafPtr; var bounds: Rect): RectPtr; external name '_QDGlobalToLocalRect';
  4602. {
  4603. * QDLocalToGlobalRegion()
  4604. *
  4605. * Availability:
  4606. * Non-Carbon CFM: not available
  4607. * CarbonLib: in CarbonLib 1.0 and later
  4608. * Mac OS X: in version 10.0 and later
  4609. }
  4610. function QDLocalToGlobalRegion(port: CGrafPtr; region: RgnHandle): RgnHandle; external name '_QDLocalToGlobalRegion';
  4611. {
  4612. * QDGlobalToLocalRegion()
  4613. *
  4614. * Availability:
  4615. * Non-Carbon CFM: not available
  4616. * CarbonLib: in CarbonLib 1.0 and later
  4617. * Mac OS X: in version 10.0 and later
  4618. }
  4619. function QDGlobalToLocalRegion(port: CGrafPtr; region: RgnHandle): RgnHandle; external name '_QDGlobalToLocalRegion';
  4620. {
  4621. Routines available on Mac OS X to flush buffered window ports...
  4622. These calls do nothing on Mac OS 8/9. QDIsPortBuffered will always return false there.
  4623. }
  4624. {
  4625. * QDIsPortBuffered()
  4626. *
  4627. * Availability:
  4628. * Non-Carbon CFM: not available
  4629. * CarbonLib: in CarbonLib 1.0.2 and later
  4630. * Mac OS X: in version 10.0 and later
  4631. }
  4632. function QDIsPortBuffered(port: CGrafPtr): boolean; external name '_QDIsPortBuffered';
  4633. {
  4634. * QDIsPortBufferDirty()
  4635. *
  4636. * Availability:
  4637. * Non-Carbon CFM: not available
  4638. * CarbonLib: in CarbonLib 1.0.2 and later
  4639. * Mac OS X: in version 10.0 and later
  4640. }
  4641. function QDIsPortBufferDirty(port: CGrafPtr): boolean; external name '_QDIsPortBufferDirty';
  4642. {
  4643. * QDFlushPortBuffer()
  4644. *
  4645. * Availability:
  4646. * Non-Carbon CFM: not available
  4647. * CarbonLib: in CarbonLib 1.0.2 and later
  4648. * Mac OS X: in version 10.0 and later
  4649. }
  4650. procedure QDFlushPortBuffer(port: CGrafPtr; region: RgnHandle); external name '_QDFlushPortBuffer';
  4651. {
  4652. * QDGetDirtyRegion()
  4653. *
  4654. * Availability:
  4655. * Non-Carbon CFM: not available
  4656. * CarbonLib: in CarbonLib 1.1 and later
  4657. * Mac OS X: in version 10.0 and later
  4658. }
  4659. function QDGetDirtyRegion(port: CGrafPtr; rgn: RgnHandle): OSStatus; external name '_QDGetDirtyRegion';
  4660. {
  4661. * QDSetDirtyRegion()
  4662. *
  4663. * Availability:
  4664. * Non-Carbon CFM: not available
  4665. * CarbonLib: in CarbonLib 1.1 and later
  4666. * Mac OS X: in version 10.0 and later
  4667. }
  4668. function QDSetDirtyRegion(port: CGrafPtr; rgn: RgnHandle): OSStatus; external name '_QDSetDirtyRegion';
  4669. {
  4670. * QDAddRectToDirtyRegion()
  4671. *
  4672. * Availability:
  4673. * Non-Carbon CFM: not available
  4674. * CarbonLib: in CarbonLib 1.5 and later
  4675. * Mac OS X: in version 10.0 and later
  4676. }
  4677. function QDAddRectToDirtyRegion(inPort: CGrafPtr; const (*var*) inBounds: Rect): OSStatus; external name '_QDAddRectToDirtyRegion';
  4678. {
  4679. * QDAddRegionToDirtyRegion()
  4680. *
  4681. * Availability:
  4682. * Non-Carbon CFM: not available
  4683. * CarbonLib: in CarbonLib 1.5 and later
  4684. * Mac OS X: in version 10.0 and later
  4685. }
  4686. function QDAddRegionToDirtyRegion(inPort: CGrafPtr; inRegion: RgnHandle): OSStatus; external name '_QDAddRegionToDirtyRegion';
  4687. {
  4688. * CreateCGContextForPort()
  4689. *
  4690. * Availability:
  4691. * Non-Carbon CFM: not available
  4692. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  4693. * Mac OS X: in version 10.0 and later
  4694. }
  4695. function CreateCGContextForPort(inPort: CGrafPtr; var outContext: CGContextRef): OSStatus; external name '_CreateCGContextForPort';
  4696. {
  4697. * ClipCGContextToRegion()
  4698. *
  4699. * Availability:
  4700. * Non-Carbon CFM: not available
  4701. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  4702. * Mac OS X: in version 10.0 and later
  4703. }
  4704. function ClipCGContextToRegion(gc: CGContextRef; const (*var*) portRect: Rect; region: RgnHandle): OSStatus; external name '_ClipCGContextToRegion';
  4705. {
  4706. * SyncCGContextOriginWithPort()
  4707. *
  4708. * Availability:
  4709. * Non-Carbon CFM: not available
  4710. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  4711. * Mac OS X: in version 10.0 and later
  4712. }
  4713. function SyncCGContextOriginWithPort(inContext: CGContextRef; port: CGrafPtr): OSStatus; external name '_SyncCGContextOriginWithPort';
  4714. {
  4715. * QDBeginCGContext()
  4716. *
  4717. * Summary:
  4718. * Allow CoreGraphics drawing in a CGrafPort
  4719. *
  4720. * Discussion:
  4721. * So far, CreateCGContextForPort() was used to create a CGContext
  4722. * for CG drawing from a CGrafPort. However, if the current port is
  4723. * a printing port, the CreateCGContextForPort fails; consequently,
  4724. * there was no way to mix Quickdraw and CoreGraphics drawing and
  4725. * still print it. If, instead, the CoreGraphics drawing is
  4726. * bracketed by QDBeginCGContext/QDEndCGContext calls, the drawing
  4727. * will also appear in print. There are some restrictions on the
  4728. * usage of QDBeginCGContext/QDEndCGContext:
  4729. * - Between QDBeginCGContext and QDEndCGContext, Quickdraw drawing
  4730. * is disabled; only CoreGraphics drawing is allowed
  4731. * - QDBeginCGContext/QDEndCGContext calls can not be nested
  4732. * - QDEndCGContext releases the CGContext returned from
  4733. * QDBeginCGContext and sets it to NULL.
  4734. *
  4735. * Parameters:
  4736. *
  4737. * inPort:
  4738. * The current port
  4739. *
  4740. * outContext:
  4741. * The CGContextRef to be used for CG drawing
  4742. *
  4743. * Availability:
  4744. * Non-Carbon CFM: not available
  4745. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.1 and later
  4746. * Mac OS X: in version 10.1 and later
  4747. }
  4748. function QDBeginCGContext(inPort: CGrafPtr; var outContext: CGContextRef): OSStatus; external name '_QDBeginCGContext';
  4749. {
  4750. * QDEndCGContext()
  4751. *
  4752. * Availability:
  4753. * Non-Carbon CFM: not available
  4754. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.1 and later
  4755. * Mac OS X: in version 10.1 and later
  4756. }
  4757. function QDEndCGContext(inPort: CGrafPtr; var inoutContext: CGContextRef): OSStatus; external name '_QDEndCGContext';
  4758. {
  4759. The following routines are implemented in CarbonLib, and on Mac OS X in QD proper.
  4760. They save the pixel data of a region in a packed format for quick save/restore
  4761. without using a lot of memory to do a large, hollow region, such as the region
  4762. used when drag hiliting (which is where this is used).
  4763. }
  4764. type
  4765. QDRegionBitsRef = ^SInt32; { an opaque 32-bit type }
  4766. QDRegionBitsRefPtr = ^QDRegionBitsRef; { when a var xx:QDRegionBitsRef parameter can be nil, it is changed to xx: QDRegionBitsRefPtr }
  4767. {
  4768. * QDSaveRegionBits()
  4769. *
  4770. * Availability:
  4771. * Non-Carbon CFM: not available
  4772. * CarbonLib: in CarbonLib 1.0 and later
  4773. * Mac OS X: in version 10.1 and later
  4774. }
  4775. function QDSaveRegionBits(region: RgnHandle): QDRegionBitsRef; external name '_QDSaveRegionBits';
  4776. {
  4777. * QDRestoreRegionBits()
  4778. *
  4779. * Availability:
  4780. * Non-Carbon CFM: not available
  4781. * CarbonLib: in CarbonLib 1.0 and later
  4782. * Mac OS X: in version 10.1 and later
  4783. }
  4784. function QDRestoreRegionBits(region: RgnHandle; regionBits: QDRegionBitsRef): OSStatus; external name '_QDRestoreRegionBits';
  4785. {
  4786. * QDDisposeRegionBits()
  4787. *
  4788. * Availability:
  4789. * Non-Carbon CFM: not available
  4790. * CarbonLib: in CarbonLib 1.0 and later
  4791. * Mac OS X: in version 10.1 and later
  4792. }
  4793. function QDDisposeRegionBits(regionBits: QDRegionBitsRef): OSStatus; external name '_QDDisposeRegionBits';
  4794. {
  4795. Developers need a way to go from a CGDirectDisplay environment to Quickdraw.
  4796. The following is equivalent to CreateNewPort(), but instead of taking the
  4797. portPixMap from the current GDevice, it uses the GDevice corresponding to
  4798. the CGSDisplayID passed in. If the CGSDisplayID is invalid, the mainDevice
  4799. is used instead.
  4800. }
  4801. {
  4802. * CreateNewPortForCGDisplayID()
  4803. *
  4804. * Availability:
  4805. * Non-Carbon CFM: not available
  4806. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  4807. * Mac OS X: in version 10.0 and later
  4808. }
  4809. function CreateNewPortForCGDisplayID(inCGDisplayID: UInt32): CGrafPtr; external name '_CreateNewPortForCGDisplayID';
  4810. {
  4811. In Mac OS X, developers should be able to turn the WaitCursor (spinning wheel)
  4812. on and off. QDDisplayWaitCursor() keeps track of nested calls.
  4813. Passing FALSE will resume automatic wait cursor operation.
  4814. Call this function only from an application in the foreground.
  4815. }
  4816. {
  4817. * QDDisplayWaitCursor()
  4818. *
  4819. * Availability:
  4820. * Non-Carbon CFM: not available
  4821. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.0 and later
  4822. * Mac OS X: in version 10.0 and later
  4823. }
  4824. procedure QDDisplayWaitCursor(forceWaitCursor: boolean); external name '_QDDisplayWaitCursor';
  4825. {
  4826. * QDSetPatternOrigin()
  4827. *
  4828. * Summary:
  4829. * Sets the pattern origin for the current port.
  4830. *
  4831. * Discussion:
  4832. * When a QuickDraw drawing operation uses a pattern (either a
  4833. * black&white pattern or a PixPat), the pattern's image is aligned
  4834. * with port origin, modified by the pattern origin of the port. For
  4835. * example, if the background pattern is a 10x10 image, and a
  4836. * rectangle with coordinates (3, 3, 10, 10) is filled with that
  4837. * pattern, then only the bottom right 7x7 portion of the pattern
  4838. * image will be drawn into the rectangle. When drawing a pattern,
  4839. * QuickDraw always starts with the port origin and then adjusts it
  4840. * by the pattern origin to determine the actual origin point of
  4841. * pattern drawing. QDSetPatternOrigin can be used to set the
  4842. * pattern origin relative to the port origin. It is often used in
  4843. * conjuction with SetOrigin to maintain the pattern alignment at
  4844. * (0,0) in a window's content area, regardless of the port origin;
  4845. * for example, after changing the port's origin to (10,10), an
  4846. * application might change the port's pattern origin to (-10, -10)
  4847. * so that patterns are still aligned with the window's content area.
  4848. *
  4849. * Parameters:
  4850. *
  4851. * origin:
  4852. * The new pattern origin of the port.
  4853. *
  4854. * Availability:
  4855. * Non-Carbon CFM: in NQD 8.5 and later
  4856. * CarbonLib: in CarbonLib 1.3 and later
  4857. * Mac OS X: in version 10.1 and later
  4858. }
  4859. procedure QDSetPatternOrigin(origin: Point); external name '_QDSetPatternOrigin';
  4860. {
  4861. * QDGetPatternOrigin()
  4862. *
  4863. * Summary:
  4864. * Returns the pattern origin of the current port.
  4865. *
  4866. * Parameters:
  4867. *
  4868. * origin:
  4869. * On exit, contains the current port's pattern origin.
  4870. *
  4871. * Availability:
  4872. * Non-Carbon CFM: in NQD 8.5 and later
  4873. * CarbonLib: in CarbonLib 1.3 and later
  4874. * Mac OS X: in version 10.1 and later
  4875. }
  4876. procedure QDGetPatternOrigin(var origin: Point); external name '_QDGetPatternOrigin';
  4877. {
  4878. * QDIsNamedPixMapCursorRegistered()
  4879. *
  4880. * Summary:
  4881. * Returns whether a named cursor has already been registered.
  4882. *
  4883. * Discussion:
  4884. * The CoreGraphics Scalable Cursor Registry provides support for
  4885. * cursors based on PixMaps for crsrData and crsrMask, with sizes up
  4886. * to 64x64 pixels. Such cursors need to be registered via
  4887. * QDRegisterNamedPixMapCursor, and can then be set by
  4888. * QDSetNamedPixMapCursor.
  4889. *
  4890. * Mac OS X threading:
  4891. * Not thread safe
  4892. *
  4893. * Parameters:
  4894. *
  4895. * name:
  4896. * (see below at QDRegisterNamedPixMapCursor)
  4897. *
  4898. * Availability:
  4899. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  4900. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  4901. * Non-Carbon CFM: not available
  4902. }
  4903. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  4904. function QDIsNamedPixMapCursorRegistered( name: ConstCStringPtr ): Boolean; external name '_QDIsNamedPixMapCursorRegistered';
  4905. {
  4906. * QDRegisterNamedPixMapCursor()
  4907. *
  4908. * Summary:
  4909. * Register a new cursor by name
  4910. *
  4911. * Discussion:
  4912. * In order to set a PixMapCursor, it needs to be registered first
  4913. * by name. This only succeeds if the system supports Hardware
  4914. * Cursors (depending on video circuits). There is also the obvious
  4915. * companion function QDUnregisterNamedPixMapCursor. NOTE: The
  4916. * original implementation of QDUnregisterNamedPixMapCursor was
  4917. * misspelled "QDUnregisterNamedPixMapCursur".
  4918. *
  4919. * Mac OS X threading:
  4920. * Not thread safe
  4921. *
  4922. * Parameters:
  4923. *
  4924. * crsrData:
  4925. * A PixMapHandle representing the cursor pixels. If the
  4926. * pixelDepth is 32, the crsrMask PixMapHandle can be NULL; in
  4927. * this case, the alpha channel in the ARGB PixMap is used as
  4928. * mask. If a crsrMask is provided, the alpha channel in crsrData
  4929. * is ignored. The pixelDepth can be any of 1, 2, 4, 8, 16 or 32.
  4930. *
  4931. * crsrMask:
  4932. * A PixMapHandle representing the mask. It is assumed to be in
  4933. * 8-bit deep grayScale format, although other depths are accepted
  4934. * and converted to 8-bit grayScale (using CopyBits). The
  4935. * (**crsrMask).bounds rectangle needs to match
  4936. * (**crsrData).bounds. If the crsrData are 32-bit deep, crsrMask
  4937. * can be NULL, and the alpha bytes in the crsrData ARGB pixels
  4938. * are used as mask.
  4939. *
  4940. * hotSpot:
  4941. * The usual cursor hotspot, in coordinates relativ to
  4942. * (**crsrData).bounds.topLeft.
  4943. *
  4944. * name:
  4945. * A naming convention involving the name of your application and
  4946. * descriptive cursor names or resource IDs is suggested. Cursor
  4947. * names are 0-terminated C-strings up to a length of 127. $result
  4948. * OSStatus: noErr = 0 for success, or (constants from
  4949. * MacErrors.h): kQDNoColorHWCursorSupport,
  4950. * kQDCursorAlreadyRegistered, paramErr, memFullErr, or a CGError
  4951. * as returned internally from CoreGraphics.
  4952. *
  4953. * Availability:
  4954. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  4955. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  4956. * Non-Carbon CFM: not available
  4957. }
  4958. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  4959. function QDRegisterNamedPixMapCursor( crsrData: PixMapHandle; crsrMask: PixMapHandle; hotSpot: Point; name: ConstCStringPtr ): OSStatus; external name '_QDRegisterNamedPixMapCursor';
  4960. {
  4961. * QDUnregisterNamedPixMapCursur()
  4962. *
  4963. * Mac OS X threading:
  4964. * Not thread safe
  4965. *
  4966. * Availability:
  4967. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  4968. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  4969. * Non-Carbon CFM: not available
  4970. }
  4971. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  4972. function QDUnregisterNamedPixMapCursur( name: ConstCStringPtr ): OSStatus; external name '_QDUnregisterNamedPixMapCursur';
  4973. {
  4974. * QDUnregisterNamedPixMapCursor()
  4975. *
  4976. * Mac OS X threading:
  4977. * Not thread safe
  4978. *
  4979. * Availability:
  4980. * Mac OS X: in version 10.3 and later in ApplicationServices.framework
  4981. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.3 and later
  4982. * Non-Carbon CFM: not available
  4983. }
  4984. // AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
  4985. function QDUnregisterNamedPixMapCursor( name: ConstCStringPtr ): OSStatus; external name '_QDUnregisterNamedPixMapCursor';
  4986. {
  4987. * QDSetNamedPixMapCursor()
  4988. *
  4989. * Mac OS X threading:
  4990. * Not thread safe
  4991. *
  4992. * Availability:
  4993. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  4994. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  4995. * Non-Carbon CFM: not available
  4996. }
  4997. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  4998. function QDSetNamedPixMapCursor( name: ConstCStringPtr ): OSStatus; external name '_QDSetNamedPixMapCursor';
  4999. type
  5000. QDXSystemCursorID = UInt32;
  5001. const
  5002. kQDXArrowCursor = 0;
  5003. kQDXIBeamCursor = 1;
  5004. kQDXIBeamXORCursor = 2;
  5005. kQDXAliasCursor = 3;
  5006. kQDXCopyCursor = 4;
  5007. kQDXMoveCursor = 5;
  5008. kQDXNumberOfSystemCursors = 6; { Must be last }
  5009. {
  5010. * QDGetCursorNameForSystemCursor()
  5011. *
  5012. * Summary:
  5013. * Return the name of one of the predefined Mac OS X system cursors
  5014. *
  5015. * Mac OS X threading:
  5016. * Not thread safe
  5017. *
  5018. * Parameters:
  5019. *
  5020. * cursorID:
  5021. * UInt32 in the range 0 ... kQDXNumberOfSystemCursors - 1 (see
  5022. * enum above)
  5023. *
  5024. * Result:
  5025. * const char* name, or NULL if 'cursorID' is out of range
  5026. *
  5027. * Availability:
  5028. * Mac OS X: in version 10.3 and later in ApplicationServices.framework
  5029. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.3 and later
  5030. * Non-Carbon CFM: not available
  5031. }
  5032. // AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
  5033. function QDGetCursorNameForSystemCursor( cursorID: QDXSystemCursorID ): ConstCStringPtr; external name '_QDGetCursorNameForSystemCursor';
  5034. {
  5035. * QDSetCursorScale()
  5036. *
  5037. * Summary:
  5038. * Set a scaling factor for the cursor.
  5039. *
  5040. * Mac OS X threading:
  5041. * Not thread safe
  5042. *
  5043. * Parameters:
  5044. *
  5045. * scale:
  5046. * Must be at least 0.5, and integer values (1.0, 2.0, 3.0, 4.0)
  5047. * are recommended. The scaling factor is system-wide (applies to
  5048. * all apps), and is intended for use in such things as assisting
  5049. * the visually impaired. The scaling factor is treated as a hint
  5050. * to the system, and the exact scale applied may be limited by
  5051. * device driver capabilities and performance considerations.
  5052. *
  5053. * Availability:
  5054. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  5055. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  5056. * Non-Carbon CFM: not available
  5057. }
  5058. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  5059. function QDSetCursorScale( scale: Float32 ): OSStatus; external name '_QDSetCursorScale';
  5060. {
  5061. * QDGetCursorScale()
  5062. *
  5063. * Mac OS X threading:
  5064. * Not thread safe
  5065. *
  5066. * Availability:
  5067. * Mac OS X: in version 10.3 and later in ApplicationServices.framework
  5068. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.3 and later
  5069. * Non-Carbon CFM: not available
  5070. }
  5071. // AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
  5072. function QDGetCursorScale( outScale: Float32Ptr ): OSStatus; external name '_QDGetCursorScale';
  5073. {
  5074. * QDGetCursorData()
  5075. *
  5076. * Summary:
  5077. * Allocate and return a PixMapHandle with the cursor data; also
  5078. * return the hotSpot. The caller is responsible for calling
  5079. * DisposePtr((**crsrData).baseAddr) and DisposePixMap(crsrData)
  5080. * when done with the crsrData returned.
  5081. *
  5082. * Mac OS X threading:
  5083. * Not thread safe
  5084. *
  5085. * Parameters:
  5086. *
  5087. * contextCursor:
  5088. * A Boolean; if true, return data for the current context cursor,
  5089. * if false, return data for the currently showing global cursor.
  5090. *
  5091. * crsrData:
  5092. * Allocates a PixMapHandle and pixelData in baseAddr,
  5093. * corresponding to the cursorData. The pixelData are in 32-bit
  5094. * ARGB format, with the mask contained in the alpha channel. This
  5095. * PixMapHandle can be passed as crsrData to
  5096. * QDRegisterNamedPixMapCursor, above (with crsrMask = NULL). If
  5097. * the return result indicates an error, NULL is returned.
  5098. *
  5099. * hotSpot:
  5100. * Contains the cursor hotSpot, if successful.
  5101. *
  5102. * Result:
  5103. * noErr if successful, or whatever error is returned from lower
  5104. * levels otherwise.
  5105. *
  5106. * Availability:
  5107. * Mac OS X: in version 10.3 and later in ApplicationServices.framework
  5108. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.3 and later
  5109. * Non-Carbon CFM: not available
  5110. }
  5111. // AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
  5112. function QDGetCursorData( contextCursor: Boolean; var crsrData: PixMapHandle; var hotSpot: Point ): OSStatus; external name '_QDGetCursorData';
  5113. const
  5114. kQDUseDefaultTextRendering = 0; { Sets whatever is specified in system defaults. }
  5115. { Currently sets kQDUseTrueTypeScalerGlyphs if nothing is specified.}
  5116. kQDUseTrueTypeScalerGlyphs = (1 shl 0); { bit 0}
  5117. kQDUseCGTextRendering = (1 shl 1); { bit 1}
  5118. kQDUseCGTextMetrics = (1 shl 2); { bit 2}
  5119. kQDSupportedFlags = kQDUseTrueTypeScalerGlyphs or kQDUseCGTextRendering or kQDUseCGTextMetrics;
  5120. kQDDontChangeFlags = $FFFFFFFF; { to request the current state, without changing anything }
  5121. {
  5122. * QDSwapTextFlags()
  5123. *
  5124. * Summary:
  5125. * Returns current flags and optionally sets new flags.
  5126. *
  5127. * Discussion:
  5128. * Currently, only the flag bits in the enum above are supported.
  5129. * The typical usage is UInt32 savedFlags =
  5130. * QDSwapTextFlags(newFlags); // ... draw text under the conditions
  5131. * of "newFlags" ... (void)QDSwapTextFlags(savedFlags); // restore
  5132. * previous setting
  5133. *
  5134. * Mac OS X threading:
  5135. * Not thread safe
  5136. *
  5137. * Parameters:
  5138. *
  5139. * newFlags:
  5140. * Use the enums above; example "kQDUseCGTextRendering |
  5141. * kQDUseCGTextMetrics".
  5142. *
  5143. * Availability:
  5144. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  5145. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  5146. * Non-Carbon CFM: not available
  5147. }
  5148. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  5149. function QDSwapTextFlags( newFlags: UInt32 ): UInt32; external name '_QDSwapTextFlags';
  5150. {
  5151. * QDSwapPortTextFlags()
  5152. *
  5153. * Summary:
  5154. * Same as QDSwapTextFlags, but per GrafPort.
  5155. *
  5156. * Mac OS X threading:
  5157. * Not thread safe
  5158. *
  5159. * Parameters:
  5160. *
  5161. * port:
  5162. * Settings per port override any global settings. If port ==
  5163. * NULL, the current port is used.
  5164. *
  5165. * newFlags:
  5166. * As in QDSwapTextFlags, above.
  5167. *
  5168. * Availability:
  5169. * Mac OS X: in version 10.2 and later in ApplicationServices.framework
  5170. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.2 and later
  5171. * Non-Carbon CFM: not available
  5172. }
  5173. // AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER
  5174. function QDSwapPortTextFlags( port: CGrafPtr; newFlags: UInt32 ): UInt32; external name '_QDSwapPortTextFlags';
  5175. {
  5176. * QDGetCGDirectDisplayID()
  5177. *
  5178. * Summary:
  5179. * Return the CGDirectDisplayID corresponding to a GDHandle
  5180. *
  5181. * Mac OS X threading:
  5182. * Not thread safe
  5183. *
  5184. * Parameters:
  5185. *
  5186. * inGDevice:
  5187. * The GDevice handle corresponding to the device for which the
  5188. * CGDirectDisplayID is requested
  5189. *
  5190. * Result:
  5191. * The CGDirectDisplayID, or 0 if the GDHandle does not represent a
  5192. * display.
  5193. *
  5194. * Availability:
  5195. * Mac OS X: in version 10.3 and later in ApplicationServices.framework
  5196. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.3 and later
  5197. * Non-Carbon CFM: not available
  5198. }
  5199. // AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER
  5200. function QDGetCGDirectDisplayID( inGDevice: GDHandle ): CGDirectDisplayID; external name '_QDGetCGDirectDisplayID';
  5201. {
  5202. LowMem accessor functions previously in LowMem.h
  5203. }
  5204. {
  5205. * LMGetScrVRes()
  5206. *
  5207. * Availability:
  5208. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5209. * CarbonLib: in CarbonLib 1.0 and later
  5210. * Mac OS X: in version 10.0 and later
  5211. }
  5212. function LMGetScrVRes: SInt16; external name '_LMGetScrVRes';
  5213. {
  5214. * LMSetScrVRes()
  5215. *
  5216. * Availability:
  5217. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5218. * CarbonLib: in CarbonLib 1.0 and later
  5219. * Mac OS X: in version 10.0 and later
  5220. }
  5221. procedure LMSetScrVRes(value: SInt16); external name '_LMSetScrVRes';
  5222. {
  5223. * LMGetScrHRes()
  5224. *
  5225. * Availability:
  5226. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5227. * CarbonLib: in CarbonLib 1.0 and later
  5228. * Mac OS X: in version 10.0 and later
  5229. }
  5230. function LMGetScrHRes: SInt16; external name '_LMGetScrHRes';
  5231. {
  5232. * LMSetScrHRes()
  5233. *
  5234. * Availability:
  5235. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5236. * CarbonLib: in CarbonLib 1.0 and later
  5237. * Mac OS X: in version 10.0 and later
  5238. }
  5239. procedure LMSetScrHRes(value: SInt16); external name '_LMSetScrHRes';
  5240. {
  5241. * LMGetMainDevice()
  5242. *
  5243. * Availability:
  5244. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5245. * CarbonLib: in CarbonLib 1.0 and later
  5246. * Mac OS X: in version 10.0 and later
  5247. }
  5248. function LMGetMainDevice: GDHandle; external name '_LMGetMainDevice';
  5249. {
  5250. * LMSetMainDevice()
  5251. *
  5252. * Availability:
  5253. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5254. * CarbonLib: in CarbonLib 1.0 and later
  5255. * Mac OS X: in version 10.0 and later
  5256. }
  5257. procedure LMSetMainDevice(value: GDHandle); external name '_LMSetMainDevice';
  5258. {
  5259. * LMGetDeviceList()
  5260. *
  5261. * Availability:
  5262. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5263. * CarbonLib: in CarbonLib 1.0 and later
  5264. * Mac OS X: in version 10.0 and later
  5265. }
  5266. function LMGetDeviceList: GDHandle; external name '_LMGetDeviceList';
  5267. {
  5268. * LMSetDeviceList()
  5269. *
  5270. * Availability:
  5271. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5272. * CarbonLib: in CarbonLib 1.0 and later
  5273. * Mac OS X: in version 10.0 and later
  5274. }
  5275. procedure LMSetDeviceList(value: GDHandle); external name '_LMSetDeviceList';
  5276. {
  5277. * LMGetQDColors()
  5278. *
  5279. * Availability:
  5280. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5281. * CarbonLib: in CarbonLib 1.0 and later
  5282. * Mac OS X: in version 10.0 and later
  5283. }
  5284. function LMGetQDColors: Handle; external name '_LMGetQDColors';
  5285. {
  5286. * LMSetQDColors()
  5287. *
  5288. * Availability:
  5289. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5290. * CarbonLib: in CarbonLib 1.0 and later
  5291. * Mac OS X: in version 10.0 and later
  5292. }
  5293. procedure LMSetQDColors(value: Handle); external name '_LMSetQDColors';
  5294. {
  5295. * LMGetWidthListHand()
  5296. *
  5297. * Availability:
  5298. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5299. * CarbonLib: in CarbonLib 1.0 and later
  5300. * Mac OS X: in version 10.0 and later
  5301. }
  5302. function LMGetWidthListHand: Handle; external name '_LMGetWidthListHand';
  5303. {
  5304. * LMSetWidthListHand()
  5305. *
  5306. * Availability:
  5307. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5308. * CarbonLib: in CarbonLib 1.0 and later
  5309. * Mac OS X: in version 10.0 and later
  5310. }
  5311. procedure LMSetWidthListHand(value: Handle); external name '_LMSetWidthListHand';
  5312. {
  5313. * LMGetHiliteMode()
  5314. *
  5315. * Availability:
  5316. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5317. * CarbonLib: in CarbonLib 1.0 and later
  5318. * Mac OS X: in version 10.0 and later
  5319. }
  5320. function LMGetHiliteMode: ByteParameter; external name '_LMGetHiliteMode';
  5321. {
  5322. * LMSetHiliteMode()
  5323. *
  5324. * Availability:
  5325. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5326. * CarbonLib: in CarbonLib 1.0 and later
  5327. * Mac OS X: in version 10.0 and later
  5328. }
  5329. procedure LMSetHiliteMode(value: ByteParameter); external name '_LMSetHiliteMode';
  5330. {
  5331. * LMGetWidthPtr()
  5332. *
  5333. * Availability:
  5334. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5335. * CarbonLib: in CarbonLib 1.0 and later
  5336. * Mac OS X: in version 10.0 and later
  5337. }
  5338. function LMGetWidthPtr: Ptr; external name '_LMGetWidthPtr';
  5339. {
  5340. * LMSetWidthPtr()
  5341. *
  5342. * Availability:
  5343. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5344. * CarbonLib: in CarbonLib 1.0 and later
  5345. * Mac OS X: in version 10.0 and later
  5346. }
  5347. procedure LMSetWidthPtr(value: Ptr); external name '_LMSetWidthPtr';
  5348. {
  5349. * LMGetWidthTabHandle()
  5350. *
  5351. * Availability:
  5352. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5353. * CarbonLib: in CarbonLib 1.0 and later
  5354. * Mac OS X: in version 10.0 and later
  5355. }
  5356. function LMGetWidthTabHandle: Handle; external name '_LMGetWidthTabHandle';
  5357. {
  5358. * LMSetWidthTabHandle()
  5359. *
  5360. * Availability:
  5361. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5362. * CarbonLib: in CarbonLib 1.0 and later
  5363. * Mac OS X: in version 10.0 and later
  5364. }
  5365. procedure LMSetWidthTabHandle(value: Handle); external name '_LMSetWidthTabHandle';
  5366. {
  5367. * LMGetLastSPExtra()
  5368. *
  5369. * Availability:
  5370. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5371. * CarbonLib: in CarbonLib 1.0 and later
  5372. * Mac OS X: in version 10.0 and later
  5373. }
  5374. function LMGetLastSPExtra: SInt32; external name '_LMGetLastSPExtra';
  5375. {
  5376. * LMSetLastSPExtra()
  5377. *
  5378. * Availability:
  5379. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5380. * CarbonLib: in CarbonLib 1.0 and later
  5381. * Mac OS X: in version 10.0 and later
  5382. }
  5383. procedure LMSetLastSPExtra(value: SInt32); external name '_LMSetLastSPExtra';
  5384. {
  5385. * LMGetLastFOND()
  5386. *
  5387. * Availability:
  5388. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5389. * CarbonLib: in CarbonLib 1.0 and later
  5390. * Mac OS X: in version 10.0 and later
  5391. }
  5392. function LMGetLastFOND: Handle; external name '_LMGetLastFOND';
  5393. {
  5394. * LMSetLastFOND()
  5395. *
  5396. * Availability:
  5397. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5398. * CarbonLib: in CarbonLib 1.0 and later
  5399. * Mac OS X: in version 10.0 and later
  5400. }
  5401. procedure LMSetLastFOND(value: Handle); external name '_LMSetLastFOND';
  5402. {
  5403. * LMGetFractEnable()
  5404. *
  5405. * Availability:
  5406. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5407. * CarbonLib: in CarbonLib 1.0 and later
  5408. * Mac OS X: in version 10.0 and later
  5409. }
  5410. function LMGetFractEnable: ByteParameter; external name '_LMGetFractEnable';
  5411. {
  5412. * LMSetFractEnable()
  5413. *
  5414. * Availability:
  5415. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5416. * CarbonLib: in CarbonLib 1.0 and later
  5417. * Mac OS X: in version 10.0 and later
  5418. }
  5419. procedure LMSetFractEnable(value: ByteParameter); external name '_LMSetFractEnable';
  5420. {
  5421. * LMGetTheGDevice()
  5422. *
  5423. * Availability:
  5424. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5425. * CarbonLib: in CarbonLib 1.0 and later
  5426. * Mac OS X: in version 10.0 and later
  5427. }
  5428. function LMGetTheGDevice: GDHandle; external name '_LMGetTheGDevice';
  5429. {
  5430. * LMSetTheGDevice()
  5431. *
  5432. * Availability:
  5433. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5434. * CarbonLib: in CarbonLib 1.0 and later
  5435. * Mac OS X: in version 10.0 and later
  5436. }
  5437. procedure LMSetTheGDevice(value: GDHandle); external name '_LMSetTheGDevice';
  5438. {$ifc TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  5439. {$ifc CALL_NOT_IN_CARBON}
  5440. {
  5441. * LMGetHiliteRGB()
  5442. *
  5443. * Availability:
  5444. * Non-Carbon CFM: not available
  5445. * CarbonLib: not available
  5446. * Mac OS X: not available
  5447. }
  5448. procedure LMGetHiliteRGB(var hiliteRGBValue: RGBColor); external name '_LMGetHiliteRGB';
  5449. {
  5450. * LMSetHiliteRGB()
  5451. *
  5452. * Availability:
  5453. * Non-Carbon CFM: not available
  5454. * CarbonLib: not available
  5455. * Mac OS X: not available
  5456. }
  5457. procedure LMSetHiliteRGB(const (*var*) hiliteRGBValue: RGBColor); external name '_LMSetHiliteRGB';
  5458. {$endc} {CALL_NOT_IN_CARBON}
  5459. {$elsec}
  5460. {
  5461. * LMGetHiliteRGB()
  5462. *
  5463. * Availability:
  5464. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5465. * CarbonLib: in CarbonLib 1.0 and later
  5466. * Mac OS X: in version 10.0 and later
  5467. }
  5468. procedure LMGetHiliteRGB(var hiliteRGBValue: RGBColor); external name '_LMGetHiliteRGB';
  5469. {
  5470. * LMSetHiliteRGB()
  5471. *
  5472. * Availability:
  5473. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  5474. * CarbonLib: in CarbonLib 1.0 and later
  5475. * Mac OS X: in version 10.0 and later
  5476. }
  5477. procedure LMSetHiliteRGB(const (*var*) hiliteRGBValue: RGBColor); external name '_LMSetHiliteRGB';
  5478. {$endc}
  5479. {
  5480. * LMGetCursorNew()
  5481. *
  5482. * Availability:
  5483. * Non-Carbon CFM: in InterfaceLib 8.5 and later
  5484. * CarbonLib: in CarbonLib 1.0 and later
  5485. * Mac OS X: in version 10.0 and later
  5486. }
  5487. function LMGetCursorNew: boolean; external name '_LMGetCursorNew';
  5488. {
  5489. * LMSetCursorNew()
  5490. *
  5491. * Availability:
  5492. * Non-Carbon CFM: in InterfaceLib 8.5 and later
  5493. * CarbonLib: in CarbonLib 1.0 and later
  5494. * Mac OS X: in version 10.0 and later
  5495. }
  5496. procedure LMSetCursorNew(value: boolean); external name '_LMSetCursorNew';
  5497. {$ALIGN MAC68K}
  5498. end.