/packages/univint/src/AEObjects.pas
Pascal | 704 lines | 130 code | 63 blank | 511 comment | 0 complexity | c44a9c3cafb93f93741187d21341f1ea MD5 | raw file
Possible License(s): LGPL-2.0, LGPL-2.1, LGPL-3.0
1{ 2 File: AE/AEObjects.h 3 4 Contains: Object Support Library Interfaces. 5 6 7 8 Copyright: � 1991-2008 by Apple Computer, Inc., all rights reserved 9 10 Bugs?: For bug reports, consult the following page on 11 the World Wide Web: 12 13 http://www.freepascal.org/bugs.html 14 15} 16{ Pascal Translation Updated: Jonas Maebe, <jonas@freepascal.org>, October 2009 } 17{ Pascal Translation Updated: Jonas Maebe, <jonas@freepascal.org>, September 2011 } 18{ 19 Modified for use with Free Pascal 20 Version 308 21 Please report any bugs to <gpc@microbizz.nl> 22} 23 24{$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE} 25{$mode macpas} 26{$packenum 1} 27{$macro on} 28{$inline on} 29{$calling mwpascal} 30 31unit AEObjects; 32interface 33{$setc UNIVERSAL_INTERFACES_VERSION := $0400} 34{$setc GAP_INTERFACES_VERSION := $0308} 35 36{$ifc not defined USE_CFSTR_CONSTANT_MACROS} 37 {$setc USE_CFSTR_CONSTANT_MACROS := TRUE} 38{$endc} 39 40{$ifc defined CPUPOWERPC and defined CPUI386} 41 {$error Conflicting initial definitions for CPUPOWERPC and CPUI386} 42{$endc} 43{$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN} 44 {$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN} 45{$endc} 46 47{$ifc not defined __ppc__ and defined CPUPOWERPC32} 48 {$setc __ppc__ := 1} 49{$elsec} 50 {$setc __ppc__ := 0} 51{$endc} 52{$ifc not defined __ppc64__ and defined CPUPOWERPC64} 53 {$setc __ppc64__ := 1} 54{$elsec} 55 {$setc __ppc64__ := 0} 56{$endc} 57{$ifc not defined __i386__ and defined CPUI386} 58 {$setc __i386__ := 1} 59{$elsec} 60 {$setc __i386__ := 0} 61{$endc} 62{$ifc not defined __x86_64__ and defined CPUX86_64} 63 {$setc __x86_64__ := 1} 64{$elsec} 65 {$setc __x86_64__ := 0} 66{$endc} 67{$ifc not defined __arm__ and defined CPUARM} 68 {$setc __arm__ := 1} 69{$elsec} 70 {$setc __arm__ := 0} 71{$endc} 72 73{$ifc defined cpu64} 74 {$setc __LP64__ := 1} 75{$elsec} 76 {$setc __LP64__ := 0} 77{$endc} 78 79 80{$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__} 81 {$error Conflicting definitions for __ppc__ and __i386__} 82{$endc} 83 84{$ifc defined __ppc__ and __ppc__} 85 {$setc TARGET_CPU_PPC := TRUE} 86 {$setc TARGET_CPU_PPC64 := FALSE} 87 {$setc TARGET_CPU_X86 := FALSE} 88 {$setc TARGET_CPU_X86_64 := FALSE} 89 {$setc TARGET_CPU_ARM := FALSE} 90 {$setc TARGET_OS_MAC := TRUE} 91 {$setc TARGET_OS_IPHONE := FALSE} 92 {$setc TARGET_IPHONE_SIMULATOR := FALSE} 93 {$setc TARGET_OS_EMBEDDED := FALSE} 94{$elifc defined __ppc64__ and __ppc64__} 95 {$setc TARGET_CPU_PPC := FALSE} 96 {$setc TARGET_CPU_PPC64 := TRUE} 97 {$setc TARGET_CPU_X86 := FALSE} 98 {$setc TARGET_CPU_X86_64 := FALSE} 99 {$setc TARGET_CPU_ARM := FALSE} 100 {$setc TARGET_OS_MAC := TRUE} 101 {$setc TARGET_OS_IPHONE := FALSE} 102 {$setc TARGET_IPHONE_SIMULATOR := FALSE} 103 {$setc TARGET_OS_EMBEDDED := FALSE} 104{$elifc defined __i386__ and __i386__} 105 {$setc TARGET_CPU_PPC := FALSE} 106 {$setc TARGET_CPU_PPC64 := FALSE} 107 {$setc TARGET_CPU_X86 := TRUE} 108 {$setc TARGET_CPU_X86_64 := FALSE} 109 {$setc TARGET_CPU_ARM := FALSE} 110{$ifc defined(iphonesim)} 111 {$setc TARGET_OS_MAC := FALSE} 112 {$setc TARGET_OS_IPHONE := TRUE} 113 {$setc TARGET_IPHONE_SIMULATOR := TRUE} 114{$elsec} 115 {$setc TARGET_OS_MAC := TRUE} 116 {$setc TARGET_OS_IPHONE := FALSE} 117 {$setc TARGET_IPHONE_SIMULATOR := FALSE} 118{$endc} 119 {$setc TARGET_OS_EMBEDDED := FALSE} 120{$elifc defined __x86_64__ and __x86_64__} 121 {$setc TARGET_CPU_PPC := FALSE} 122 {$setc TARGET_CPU_PPC64 := FALSE} 123 {$setc TARGET_CPU_X86 := FALSE} 124 {$setc TARGET_CPU_X86_64 := TRUE} 125 {$setc TARGET_CPU_ARM := FALSE} 126 {$setc TARGET_OS_MAC := TRUE} 127 {$setc TARGET_OS_IPHONE := FALSE} 128 {$setc TARGET_IPHONE_SIMULATOR := FALSE} 129 {$setc TARGET_OS_EMBEDDED := FALSE} 130{$elifc defined __arm__ and __arm__} 131 {$setc TARGET_CPU_PPC := FALSE} 132 {$setc TARGET_CPU_PPC64 := FALSE} 133 {$setc TARGET_CPU_X86 := FALSE} 134 {$setc TARGET_CPU_X86_64 := FALSE} 135 {$setc TARGET_CPU_ARM := TRUE} 136 { will require compiler define when/if other Apple devices with ARM cpus ship } 137 {$setc TARGET_OS_MAC := FALSE} 138 {$setc TARGET_OS_IPHONE := TRUE} 139 {$setc TARGET_IPHONE_SIMULATOR := FALSE} 140 {$setc TARGET_OS_EMBEDDED := TRUE} 141{$elsec} 142 {$error __ppc__ nor __ppc64__ nor __i386__ nor __x86_64__ nor __arm__ is defined.} 143{$endc} 144 145{$ifc defined __LP64__ and __LP64__ } 146 {$setc TARGET_CPU_64 := TRUE} 147{$elsec} 148 {$setc TARGET_CPU_64 := FALSE} 149{$endc} 150 151{$ifc defined FPC_BIG_ENDIAN} 152 {$setc TARGET_RT_BIG_ENDIAN := TRUE} 153 {$setc TARGET_RT_LITTLE_ENDIAN := FALSE} 154{$elifc defined FPC_LITTLE_ENDIAN} 155 {$setc TARGET_RT_BIG_ENDIAN := FALSE} 156 {$setc TARGET_RT_LITTLE_ENDIAN := TRUE} 157{$elsec} 158 {$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.} 159{$endc} 160{$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE} 161{$setc CALL_NOT_IN_CARBON := FALSE} 162{$setc OLDROUTINENAMES := FALSE} 163{$setc OPAQUE_TOOLBOX_STRUCTS := TRUE} 164{$setc OPAQUE_UPP_TYPES := TRUE} 165{$setc OTCARBONAPPLICATION := TRUE} 166{$setc OTKERNEL := FALSE} 167{$setc PM_USE_SESSION_APIS := TRUE} 168{$setc TARGET_API_MAC_CARBON := TRUE} 169{$setc TARGET_API_MAC_OS8 := FALSE} 170{$setc TARGET_API_MAC_OSX := TRUE} 171{$setc TARGET_CARBON := TRUE} 172{$setc TARGET_CPU_68K := FALSE} 173{$setc TARGET_CPU_MIPS := FALSE} 174{$setc TARGET_CPU_SPARC := FALSE} 175{$setc TARGET_OS_UNIX := FALSE} 176{$setc TARGET_OS_WIN32 := FALSE} 177{$setc TARGET_RT_MAC_68881 := FALSE} 178{$setc TARGET_RT_MAC_CFM := FALSE} 179{$setc TARGET_RT_MAC_MACHO := TRUE} 180{$setc TYPED_FUNCTION_POINTERS := TRUE} 181{$setc TYPE_BOOL := FALSE} 182{$setc TYPE_EXTENDED := FALSE} 183{$setc TYPE_LONGLONG := TRUE} 184uses MacTypes,AEDataModel,OSUtils,AppleEvents,MacErrors; 185{$endc} {not MACOSALLINCLUDE} 186 187 188{$ifc TARGET_OS_MAC} 189 190{$ALIGN MAC68K} 191 192const 193{*** LOGICAL OPERATOR CONSTANTS ***} 194 kAEAND = FourCharCode('AND '); { 0x414e4420 } 195 kAEOR = FourCharCode('OR '); { 0x4f522020 } 196 kAENOT = FourCharCode('NOT '); { 0x4e4f5420 } 197 {*** ABSOLUTE ORDINAL CONSTANTS ***} 198 kAEFirst = FourCharCode('firs'); { 0x66697273 } 199 kAELast = FourCharCode('last'); { 0x6c617374 } 200 kAEMiddle = FourCharCode('midd'); { 0x6d696464 } 201 kAEAny = FourCharCode('any '); { 0x616e7920 } 202 kAEAll = FourCharCode('all '); { 0x616c6c20 } 203 {*** RELATIVE ORDINAL CONSTANTS ***} 204 kAENext = FourCharCode('next'); { 0x6e657874 } 205 kAEPrevious = FourCharCode('prev'); { 0x70726576 } 206 {*** KEYWORD CONSTANT ***} 207 keyAECompOperator = FourCharCode('relo'); { 0x72656c6f } 208 keyAELogicalTerms = FourCharCode('term'); { 0x7465726d } 209 keyAELogicalOperator = FourCharCode('logc'); { 0x6c6f6763 } 210 keyAEObject1 = FourCharCode('obj1'); { 0x6f626a31 } 211 keyAEObject2 = FourCharCode('obj2'); { 0x6f626a32 } 212 { ... for Keywords for getting fields out of object specifier records. } 213 keyAEDesiredClass = FourCharCode('want'); { 0x77616e74 } 214 keyAEContainer = FourCharCode('from'); { 0x66726f6d } 215 keyAEKeyForm = FourCharCode('form'); { 0x666f726d } 216 keyAEKeyData = FourCharCode('seld'); { 0x73656c64 } 217 218const 219{ ... for Keywords for getting fields out of Range specifier records. } 220 keyAERangeStart = FourCharCode('star'); { 0x73746172 } 221 keyAERangeStop = FourCharCode('stop'); { 0x73746f70 } 222 { ... special handler selectors for OSL Callbacks. } 223 keyDisposeTokenProc = FourCharCode('xtok'); { 0x78746f6b } 224 keyAECompareProc = FourCharCode('cmpr'); { 0x636d7072 } 225 keyAECountProc = FourCharCode('cont'); { 0x636f6e74 } 226 keyAEMarkTokenProc = FourCharCode('mkid'); { 0x6d6b6964 } 227 keyAEMarkProc = FourCharCode('mark'); { 0x6d61726b } 228 keyAEAdjustMarksProc = FourCharCode('adjm'); { 0x61646a6d } 229 keyAEGetErrDescProc = FourCharCode('indc'); { 0x696e6463 } 230 231{*** VALUE and TYPE CONSTANTS ***} 232const 233{ ... possible values for the keyAEKeyForm field of an object specifier. } 234 formAbsolutePosition = FourCharCode('indx'); { 0x696e6478 } 235 formRelativePosition = FourCharCode('rele'); { 0x72656c65 } 236 formTest = FourCharCode('test'); { 0x74657374 } 237 formRange = FourCharCode('rang'); { 0x72616e67 } 238 formPropertyID = FourCharCode('prop'); { 0x70726f70 } 239 formName = FourCharCode('name'); { 0x6e616d65 } 240 formUniqueID = FourCharCode('ID '); { 0x49442020 } 241 { ... relevant types (some of these are often pared with forms above). } 242 typeObjectSpecifier = FourCharCode('obj '); { 0x6f626a20 } 243 typeObjectBeingExamined = FourCharCode('exmn'); { 0x65786d6e } 244 typeCurrentContainer = FourCharCode('ccnt'); { 0x63636e74 } 245 typeToken = FourCharCode('toke'); { 0x746f6b65 } 246 typeRelativeDescriptor = FourCharCode('rel '); { 0x72656c20 } 247 typeAbsoluteOrdinal = FourCharCode('abso'); { 0x6162736f } 248 typeIndexDescriptor = FourCharCode('inde'); { 0x696e6465 } 249 typeRangeDescriptor = FourCharCode('rang'); { 0x72616e67 } 250 typeLogicalDescriptor = FourCharCode('logi'); { 0x6c6f6769 } 251 typeCompDescriptor = FourCharCode('cmpd'); { 0x636d7064 } 252 typeOSLTokenList = FourCharCode('ostl'); { 0x6F73746C } 253 254{ Possible values for flags parameter to AEResolve. They're additive } 255const 256 kAEIDoMinimum = $0000; 257 kAEIDoWhose = $0001; 258 kAEIDoMarking = $0004; 259 kAEPassSubDescs = $0008; 260 kAEResolveNestedLists = $0010; 261 kAEHandleSimpleRanges = $0020; 262 kAEUseRelativeIterators = $0040; 263 264{*** SPECIAL CONSTANTS FOR CUSTOM WHOSE-CLAUSE RESOLUTION } 265const 266 typeWhoseDescriptor = FourCharCode('whos'); { 0x77686f73 } 267 formWhose = FourCharCode('whos'); { 0x77686f73 } 268 typeWhoseRange = FourCharCode('wrng'); { 0x77726e67 } 269 keyAEWhoseRangeStart = FourCharCode('wstr'); { 0x77737472 } 270 keyAEWhoseRangeStop = FourCharCode('wstp'); { 0x77737470 } 271 keyAEIndex = FourCharCode('kidx'); { 0x6b696478 } 272 keyAETest = FourCharCode('ktst'); { 0x6b747374 } 273 274{ 275 used for rewriting tokens in place of 'ccnt' descriptors 276 This record is only of interest to those who, when they... 277 ...get ranges as key data in their accessor procs, choose 278 ...to resolve them manually rather than call AEResolve again. 279} 280type 281 ccntTokenRecordPtr = ^ccntTokenRecord; 282 ccntTokenRecord = record 283 tokenClass: DescType; 284 token: AEDesc; 285 end; 286type 287 ccntTokenRecPtr = ccntTokenRecordPtr; 288 ccntTokenRecHandle = ^ccntTokenRecPtr; 289{$ifc OLDROUTINENAMES} 290type 291 DescPtr = AEDescPtr; 292 DescHandle = DescPtrPtr; 293{$endc} {OLDROUTINENAMES} 294 295{ typedefs providing type checking for procedure pointers } 296type 297 OSLAccessorProcPtr = function( desiredClass: DescType; const (*var*) container: AEDesc; containerClass: DescType; form: DescType; const (*var*) selectionData: AEDesc; var value: AEDesc; accessorRefcon: SRefCon ): OSErr; 298 OSLCompareProcPtr = function( oper: DescType; const (*var*) obj1: AEDesc; const (*var*) obj2: AEDesc; var result: Boolean ): OSErr; 299 OSLCountProcPtr = function( desiredType: DescType; containerClass: DescType; const (*var*) container: AEDesc; var result: SIGNEDLONG ): OSErr; 300 OSLDisposeTokenProcPtr = function( var unneededToken: AEDesc ): OSErr; 301 OSLGetMarkTokenProcPtr = function( const (*var*) dContainerToken: AEDesc; containerClass: DescType; var result: AEDesc ): OSErr; 302 OSLGetErrDescProcPtr = function( var appDescPtr: AEDescPtr ): OSErr; 303 OSLMarkProcPtr = function( const (*var*) dToken: AEDesc; const (*var*) markToken: AEDesc; index: SIGNEDLONG ): OSErr; 304 OSLAdjustMarksProcPtr = function( newStart: SIGNEDLONG; newStop: SIGNEDLONG; const (*var*) markToken: AEDesc ): OSErr; 305 OSLAccessorUPP = OSLAccessorProcPtr; 306 OSLCompareUPP = OSLCompareProcPtr; 307 OSLCountUPP = OSLCountProcPtr; 308 OSLDisposeTokenUPP = OSLDisposeTokenProcPtr; 309 OSLGetMarkTokenUPP = OSLGetMarkTokenProcPtr; 310 OSLGetErrDescUPP = OSLGetErrDescProcPtr; 311 OSLMarkUPP = OSLMarkProcPtr; 312 OSLAdjustMarksUPP = OSLAdjustMarksProcPtr; 313{ 314 * NewOSLAccessorUPP() 315 * 316 * Availability: 317 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 318 * CarbonLib: in CarbonLib 1.0 and later 319 * Non-Carbon CFM: available as macro/inline 320 } 321function NewOSLAccessorUPP( userRoutine: OSLAccessorProcPtr ): OSLAccessorUPP; external name '_NewOSLAccessorUPP'; 322(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 323 324{ 325 * NewOSLCompareUPP() 326 * 327 * Availability: 328 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 329 * CarbonLib: in CarbonLib 1.0 and later 330 * Non-Carbon CFM: available as macro/inline 331 } 332function NewOSLCompareUPP( userRoutine: OSLCompareProcPtr ): OSLCompareUPP; external name '_NewOSLCompareUPP'; 333(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 334 335{ 336 * NewOSLCountUPP() 337 * 338 * Availability: 339 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 340 * CarbonLib: in CarbonLib 1.0 and later 341 * Non-Carbon CFM: available as macro/inline 342 } 343function NewOSLCountUPP( userRoutine: OSLCountProcPtr ): OSLCountUPP; external name '_NewOSLCountUPP'; 344(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 345 346{ 347 * NewOSLDisposeTokenUPP() 348 * 349 * Availability: 350 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 351 * CarbonLib: in CarbonLib 1.0 and later 352 * Non-Carbon CFM: available as macro/inline 353 } 354function NewOSLDisposeTokenUPP( userRoutine: OSLDisposeTokenProcPtr ): OSLDisposeTokenUPP; external name '_NewOSLDisposeTokenUPP'; 355(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 356 357{ 358 * NewOSLGetMarkTokenUPP() 359 * 360 * Availability: 361 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 362 * CarbonLib: in CarbonLib 1.0 and later 363 * Non-Carbon CFM: available as macro/inline 364 } 365function NewOSLGetMarkTokenUPP( userRoutine: OSLGetMarkTokenProcPtr ): OSLGetMarkTokenUPP; external name '_NewOSLGetMarkTokenUPP'; 366(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 367 368{ 369 * NewOSLGetErrDescUPP() 370 * 371 * Availability: 372 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 373 * CarbonLib: in CarbonLib 1.0 and later 374 * Non-Carbon CFM: available as macro/inline 375 } 376function NewOSLGetErrDescUPP( userRoutine: OSLGetErrDescProcPtr ): OSLGetErrDescUPP; external name '_NewOSLGetErrDescUPP'; 377(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 378 379{ 380 * NewOSLMarkUPP() 381 * 382 * Availability: 383 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 384 * CarbonLib: in CarbonLib 1.0 and later 385 * Non-Carbon CFM: available as macro/inline 386 } 387function NewOSLMarkUPP( userRoutine: OSLMarkProcPtr ): OSLMarkUPP; external name '_NewOSLMarkUPP'; 388(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 389 390{ 391 * NewOSLAdjustMarksUPP() 392 * 393 * Availability: 394 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 395 * CarbonLib: in CarbonLib 1.0 and later 396 * Non-Carbon CFM: available as macro/inline 397 } 398function NewOSLAdjustMarksUPP( userRoutine: OSLAdjustMarksProcPtr ): OSLAdjustMarksUPP; external name '_NewOSLAdjustMarksUPP'; 399(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 400 401{ 402 * DisposeOSLAccessorUPP() 403 * 404 * Availability: 405 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 406 * CarbonLib: in CarbonLib 1.0 and later 407 * Non-Carbon CFM: available as macro/inline 408 } 409procedure DisposeOSLAccessorUPP( userUPP: OSLAccessorUPP ); external name '_DisposeOSLAccessorUPP'; 410(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 411 412{ 413 * DisposeOSLCompareUPP() 414 * 415 * Availability: 416 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 417 * CarbonLib: in CarbonLib 1.0 and later 418 * Non-Carbon CFM: available as macro/inline 419 } 420procedure DisposeOSLCompareUPP( userUPP: OSLCompareUPP ); external name '_DisposeOSLCompareUPP'; 421(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 422 423{ 424 * DisposeOSLCountUPP() 425 * 426 * Availability: 427 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 428 * CarbonLib: in CarbonLib 1.0 and later 429 * Non-Carbon CFM: available as macro/inline 430 } 431procedure DisposeOSLCountUPP( userUPP: OSLCountUPP ); external name '_DisposeOSLCountUPP'; 432(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 433 434{ 435 * DisposeOSLDisposeTokenUPP() 436 * 437 * Availability: 438 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 439 * CarbonLib: in CarbonLib 1.0 and later 440 * Non-Carbon CFM: available as macro/inline 441 } 442procedure DisposeOSLDisposeTokenUPP( userUPP: OSLDisposeTokenUPP ); external name '_DisposeOSLDisposeTokenUPP'; 443(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 444 445{ 446 * DisposeOSLGetMarkTokenUPP() 447 * 448 * Availability: 449 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 450 * CarbonLib: in CarbonLib 1.0 and later 451 * Non-Carbon CFM: available as macro/inline 452 } 453procedure DisposeOSLGetMarkTokenUPP( userUPP: OSLGetMarkTokenUPP ); external name '_DisposeOSLGetMarkTokenUPP'; 454(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 455 456{ 457 * DisposeOSLGetErrDescUPP() 458 * 459 * Availability: 460 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 461 * CarbonLib: in CarbonLib 1.0 and later 462 * Non-Carbon CFM: available as macro/inline 463 } 464procedure DisposeOSLGetErrDescUPP( userUPP: OSLGetErrDescUPP ); external name '_DisposeOSLGetErrDescUPP'; 465(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 466 467{ 468 * DisposeOSLMarkUPP() 469 * 470 * Availability: 471 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 472 * CarbonLib: in CarbonLib 1.0 and later 473 * Non-Carbon CFM: available as macro/inline 474 } 475procedure DisposeOSLMarkUPP( userUPP: OSLMarkUPP ); external name '_DisposeOSLMarkUPP'; 476(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 477 478{ 479 * DisposeOSLAdjustMarksUPP() 480 * 481 * Availability: 482 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 483 * CarbonLib: in CarbonLib 1.0 and later 484 * Non-Carbon CFM: available as macro/inline 485 } 486procedure DisposeOSLAdjustMarksUPP( userUPP: OSLAdjustMarksUPP ); external name '_DisposeOSLAdjustMarksUPP'; 487(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 488 489{ 490 * InvokeOSLAccessorUPP() 491 * 492 * Availability: 493 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 494 * CarbonLib: in CarbonLib 1.0 and later 495 * Non-Carbon CFM: available as macro/inline 496 } 497function InvokeOSLAccessorUPP( desiredClass: DescType; const (*var*) container: AEDesc; containerClass: DescType; form: DescType; const (*var*) selectionData: AEDesc; var value: AEDesc; accessorRefcon: SRefCon; userUPP: OSLAccessorUPP ): OSErr; external name '_InvokeOSLAccessorUPP'; 498(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 499 500{ 501 * InvokeOSLCompareUPP() 502 * 503 * Availability: 504 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 505 * CarbonLib: in CarbonLib 1.0 and later 506 * Non-Carbon CFM: available as macro/inline 507 } 508function InvokeOSLCompareUPP( oper: DescType; const (*var*) obj1: AEDesc; const (*var*) obj2: AEDesc; var result: Boolean; userUPP: OSLCompareUPP ): OSErr; external name '_InvokeOSLCompareUPP'; 509(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 510 511{ 512 * InvokeOSLCountUPP() 513 * 514 * Availability: 515 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 516 * CarbonLib: in CarbonLib 1.0 and later 517 * Non-Carbon CFM: available as macro/inline 518 } 519function InvokeOSLCountUPP( desiredType: DescType; containerClass: DescType; const (*var*) container: AEDesc; var result: SIGNEDLONG; userUPP: OSLCountUPP ): OSErr; external name '_InvokeOSLCountUPP'; 520(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 521 522{ 523 * InvokeOSLDisposeTokenUPP() 524 * 525 * Availability: 526 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 527 * CarbonLib: in CarbonLib 1.0 and later 528 * Non-Carbon CFM: available as macro/inline 529 } 530function InvokeOSLDisposeTokenUPP( var unneededToken: AEDesc; userUPP: OSLDisposeTokenUPP ): OSErr; external name '_InvokeOSLDisposeTokenUPP'; 531(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 532 533{ 534 * InvokeOSLGetMarkTokenUPP() 535 * 536 * Availability: 537 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 538 * CarbonLib: in CarbonLib 1.0 and later 539 * Non-Carbon CFM: available as macro/inline 540 } 541function InvokeOSLGetMarkTokenUPP( const (*var*) dContainerToken: AEDesc; containerClass: DescType; var result: AEDesc; userUPP: OSLGetMarkTokenUPP ): OSErr; external name '_InvokeOSLGetMarkTokenUPP'; 542(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 543 544{ 545 * InvokeOSLGetErrDescUPP() 546 * 547 * Availability: 548 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 549 * CarbonLib: in CarbonLib 1.0 and later 550 * Non-Carbon CFM: available as macro/inline 551 } 552function InvokeOSLGetErrDescUPP( var appDescPtr: AEDescPtr; userUPP: OSLGetErrDescUPP ): OSErr; external name '_InvokeOSLGetErrDescUPP'; 553(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 554 555{ 556 * InvokeOSLMarkUPP() 557 * 558 * Availability: 559 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 560 * CarbonLib: in CarbonLib 1.0 and later 561 * Non-Carbon CFM: available as macro/inline 562 } 563function InvokeOSLMarkUPP( const (*var*) dToken: AEDesc; const (*var*) markToken: AEDesc; index: SIGNEDLONG; userUPP: OSLMarkUPP ): OSErr; external name '_InvokeOSLMarkUPP'; 564(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 565 566{ 567 * InvokeOSLAdjustMarksUPP() 568 * 569 * Availability: 570 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 571 * CarbonLib: in CarbonLib 1.0 and later 572 * Non-Carbon CFM: available as macro/inline 573 } 574function InvokeOSLAdjustMarksUPP( newStart: SIGNEDLONG; newStop: SIGNEDLONG; const (*var*) markToken: AEDesc; userUPP: OSLAdjustMarksUPP ): OSErr; external name '_InvokeOSLAdjustMarksUPP'; 575(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 576 577{ 578 * AEObjectInit() 579 * 580 * Mac OS X threading: 581 * Thread safe since version 10.2 582 * 583 * Availability: 584 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 585 * CarbonLib: in CarbonLib 1.0 and later 586 * Non-Carbon CFM: in ObjectSupportLib 1.0 and later 587 } 588function AEObjectInit: OSErr; external name '_AEObjectInit'; 589(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 590 591 592{ Not done by inline, but by direct linking into code. It sets up the pack 593 such that further calls can be via inline } 594{ 595 * AESetObjectCallbacks() 596 * 597 * Mac OS X threading: 598 * Thread safe since version 10.2 599 * 600 * Availability: 601 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 602 * CarbonLib: in CarbonLib 1.0 and later 603 * Non-Carbon CFM: in ObjectSupportLib 1.0 and later 604 } 605function AESetObjectCallbacks( myCompareProc: OSLCompareUPP; myCountProc: OSLCountUPP; myDisposeTokenProc: OSLDisposeTokenUPP; myGetMarkTokenProc: OSLGetMarkTokenUPP; myMarkProc: OSLMarkUPP; myAdjustMarksProc: OSLAdjustMarksUPP; myGetErrDescProcPtr: OSLGetErrDescUPP ): OSErr; external name '_AESetObjectCallbacks'; 606(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 607 608 609{ 610 * AEResolve() 611 * 612 * Mac OS X threading: 613 * Thread safe since version 10.2 614 * 615 * Availability: 616 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 617 * CarbonLib: in CarbonLib 1.0 and later 618 * Non-Carbon CFM: in ObjectSupportLib 1.0 and later 619 } 620function AEResolve( const (*var*) objectSpecifier: AEDesc; callbackFlags: SInt16; var theToken: AEDesc ): OSErr; external name '_AEResolve'; 621(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 622 623 624{ 625 * AEInstallObjectAccessor() 626 * 627 * Mac OS X threading: 628 * Thread safe since version 10.2 629 * 630 * Availability: 631 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 632 * CarbonLib: in CarbonLib 1.0 and later 633 * Non-Carbon CFM: in ObjectSupportLib 1.0 and later 634 } 635function AEInstallObjectAccessor( desiredClass: DescType; containerType: DescType; theAccessor: OSLAccessorUPP; accessorRefcon: SRefCon; isSysHandler: Boolean ): OSErr; external name '_AEInstallObjectAccessor'; 636(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 637 638 639{ 640 * AERemoveObjectAccessor() 641 * 642 * Mac OS X threading: 643 * Thread safe since version 10.2 644 * 645 * Availability: 646 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 647 * CarbonLib: in CarbonLib 1.0 and later 648 * Non-Carbon CFM: in ObjectSupportLib 1.0 and later 649 } 650function AERemoveObjectAccessor( desiredClass: DescType; containerType: DescType; theAccessor: OSLAccessorUPP; isSysHandler: Boolean ): OSErr; external name '_AERemoveObjectAccessor'; 651(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 652 653 654{ 655 * AEGetObjectAccessor() 656 * 657 * Mac OS X threading: 658 * Thread safe since version 10.2 659 * 660 * Availability: 661 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 662 * CarbonLib: in CarbonLib 1.0 and later 663 * Non-Carbon CFM: in ObjectSupportLib 1.0 and later 664 } 665function AEGetObjectAccessor( desiredClass: DescType; containerType: DescType; var accessor: OSLAccessorUPP; var accessorRefcon: SRefCon; isSysHandler: Boolean ): OSErr; external name '_AEGetObjectAccessor'; 666(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 667 668 669{ 670 * AEDisposeToken() 671 * 672 * Mac OS X threading: 673 * Thread safe since version 10.2 674 * 675 * Availability: 676 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 677 * CarbonLib: in CarbonLib 1.0 and later 678 * Non-Carbon CFM: in ObjectSupportLib 1.0 and later 679 } 680function AEDisposeToken( var theToken: AEDesc ): OSErr; external name '_AEDisposeToken'; 681(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 682 683 684{ 685 * AECallObjectAccessor() 686 * 687 * Mac OS X threading: 688 * Thread safe since version 10.2 689 * 690 * Availability: 691 * Mac OS X: in version 10.0 and later in ApplicationServices.framework 692 * CarbonLib: in CarbonLib 1.0 and later 693 * Non-Carbon CFM: in ObjectSupportLib 1.0 and later 694 } 695function AECallObjectAccessor( desiredClass: DescType; const (*var*) containerToken: AEDesc; containerClass: DescType; keyForm: DescType; const (*var*) keyData: AEDesc; var token: AEDesc ): OSErr; external name '_AECallObjectAccessor'; 696(* __OSX_AVAILABLE_STARTING( __MAC_10_0, __IPHONE_NA ) *) 697 698 699{$endc} {TARGET_OS_MAC} 700 701{$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE} 702 703end. 704{$endc} {not MACOSALLINCLUDE}