00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00026 #ifndef __PIActions__ // Already defined?
00027 #define __PIActions__
00028
00029 #if PRAGMA_ONCE
00030 #pragma once
00031 #endif
00032
00033 #ifndef MSWindows
00034 #ifdef MSDOS
00035 #define MSWindows MSDOS
00036 #endif
00037 #ifdef WIN32
00038 #define MSWindows WIN32
00039 #endif
00040 #ifndef MSWindows
00041 #define MSWindows 0
00042 #endif
00043 #endif
00044
00045 #ifndef INSIDE_PHOTOSHOP
00046 #define INSIDE_PHOTOSHOP 0
00047 #endif
00048
00049 #ifndef qiOS
00050 #define qiOS 0
00051 #endif
00052
00053 #ifdef Rez
00054
00055 #if !MSWindows && !qiOS
00056 #include <CoreServices/CoreServices.r>
00057 #endif
00058
00059 #else // Rez
00060
00061 #if !MSWindows && !qiOS && !PS_OS_ANDROID
00062 #include <CoreServices/CoreServices.h>
00063 #endif
00064
00065 #if PS_OS_ANDROID
00066 #include <MacTypes.h>
00067 #endif // PS_OS_ANDROID
00068
00069 #include "PITypes.h"
00070 #include "SPTypes.h"
00071 #include "SPPlugs.h"
00072
00073 #endif // Rez
00074
00076 #define typeBookmark 'bkmk' /// eventual replacement for typeAlias
00077 #define typeXPlatFileSpec 'xpfs' /// eventual replacement for typeFSRef
00078
00079
00080
00081
00082
00088
00089
00090
00092 #define flagsSingleParameter \
00093 required, singleItem, notEnumerated, reserved, \
00094 reserved, reserved, reserved, reserved, \
00095 reserved, reserved, reserved, reserved, \
00096 prepositionParam, notFeminine, notMasculine, singular
00097
00099 #define flagsListParameter \
00100 required, listOfItems, notEnumerated, reserved, \
00101 reserved, reserved, reserved, reserved, \
00102 reserved, reserved, reserved, reserved, \
00103 prepositionParam, notFeminine, notMasculine, singular
00104
00106 #define flagsEnumeratedParameter \
00107 required, singleItem, enumerated, reserved, \
00108 reserved, reserved, reserved, reserved, \
00109 reserved, reserved, reserved, reserved, \
00110 prepositionParam, notFeminine, notMasculine, singular
00111
00114 #define flagsEnumeratedListParameter \
00115 required, listOfItems, enumerated, reserved, \
00116 reserved, reserved, reserved, reserved, \
00117 reserved, reserved, reserved, reserved, \
00118 prepositionParam, notFeminine, notMasculine, singular
00119
00121 #define flagsOptionalSingleParameter \
00122 optional, singleItem, notEnumerated, reserved, \
00123 reserved, reserved, reserved, reserved, \
00124 reserved, reserved, reserved, reserved, \
00125 prepositionParam, notFeminine, notMasculine, singular
00126
00128 #define flagsOptionalListParameter \
00129 optional, listOfItems, notEnumerated, reserved, \
00130 reserved, reserved, reserved, reserved, \
00131 reserved, reserved, reserved, reserved, \
00132 prepositionParam, notFeminine, notMasculine, singular
00133
00135 #define flagsOptionalEnumeratedParameter \
00136 optional, singleItem, enumerated, reserved, \
00137 reserved, reserved, reserved, reserved, \
00138 reserved, reserved, reserved, reserved, \
00139 prepositionParam, notFeminine, notMasculine, singular
00140
00143 #define flagsOptionalEnumeratedListParameter \
00144 optional, listOfItems, enumerated, reserved, \
00145 reserved, reserved, reserved, reserved, \
00146 reserved, reserved, reserved, reserved, \
00147 prepositionParam, notFeminine, notMasculine, singular
00148
00149
00152
00154 #define flagsSingleProperty \
00155 reserved, singleItem, notEnumerated, readWrite, \
00156 reserved, reserved, reserved, reserved, \
00157 reserved, reserved, reserved, reserved, \
00158 noApostrophe, notFeminine, notMasculine, singular
00159
00161 #define flagsListProperty \
00162 reserved, listOfItems, notEnumerated, readWrite, \
00163 reserved, reserved, reserved, reserved, \
00164 reserved, reserved, reserved, reserved, \
00165 noApostrophe, notFeminine, notMasculine, singular
00166
00168 #define flagsEnumeratedProperty \
00169 reserved, singleItem, enumerated, readWrite, \
00170 reserved, reserved, reserved, reserved, \
00171 reserved, reserved, reserved, reserved, \
00172 noApostrophe, notFeminine, notMasculine, singular
00173
00176 #define flagsEnumeratedListProperty \
00177 reserved, listOfItems, enumerated, readWrite, \
00178 reserved, reserved, reserved, reserved, \
00179 reserved, reserved, reserved, reserved, \
00180 noApostrophe, notFeminine, notMasculine, singular
00181
00182
00183
00185
00188 #define flagsOptionalEnumeratedChangesDirect \
00189 directParamOptional, singleItem, enumerated, changesState, \
00190 reserved, reserved, reserved, reserved, \
00191 reserved, reserved, reserved, reserved, \
00192 reserved, reserved, reserved, reserved
00193
00196 #define flagsEnumeratedChangesDirect \
00197 directParamRequired, singleItem, enumerated, changesState, \
00198 reserved, reserved, reserved, reserved, \
00199 reserved, reserved, reserved, reserved, \
00200 reserved, reserved, reserved, reserved
00201
00204 #define flagsEnumeratedDirect \
00205 directParamRequired, singleItem, enumerated, doesntChangeState, \
00206 reserved, reserved, reserved, reserved, \
00207 reserved, reserved, reserved, reserved, \
00208 reserved, reserved, reserved, reserved
00209
00212 #define flagsChangesDirect \
00213 directParamRequired, singleItem, notEnumerated, changesState, \
00214 reserved, reserved, reserved, reserved, \
00215 reserved, reserved, reserved, reserved, \
00216 reserved, reserved, reserved, reserved
00217
00220 #define flagsListChangesDirect \
00221 directParamRequired, listOfItems, notEnumerated, changesState, \
00222 reserved, reserved, reserved, reserved, \
00223 reserved, reserved, reserved, reserved, \
00224 reserved, reserved, reserved, reserved
00225
00226
00227
00228
00229
00231
00236 #define NO_REPLY \
00237 noReply, \
00238 "", \
00239 replyRequired, singleItem, notEnumerated, notTightBindingFunction, \
00240 reserved, reserved, reserved, reserved, \
00241 reserved, reserved, reserved, reserved, \
00242 verbEvent, reserved, reserved, reserved
00243
00247 #define IMAGE_DIRECT_PARAMETER \
00248 typeImageReference, \
00249 "", \
00250 flagsOptionalEnumeratedChangesDirect
00251
00253
00255
00256
00257
00258
00259
00260
00261
00262 #if MSWindows // These items come from AppleScript
00263
00264 #define CFDataRef void*
00265
00266 #ifndef AE_DESC_ENUMS
00267 #define AE_DESC_ENUMS
00268
00269
00270 #define typeBoolean 'bool'
00271 #define typeChar 'TEXT'
00272 #define typeText 'TEXT'
00273
00274
00275
00276 #define typeSInt16 'shor'
00277 #define typeSInt32 'long'
00278 #define typeUInt32 'magn'
00279 #define typeSInt64 'comp'
00280 #define typeIEEE32BitFloatingPoint 'sing'
00281 #define typeIEEE64BitFloatingPoint 'doub'
00282 #define type128BitFloatingPoint 'ldbl'
00283 #define typeDecimalStruct 'decm'
00284
00285
00286 #define typeSMInt typeSInt16
00287 #define typeShortInteger typeSInt16
00288 #ifndef typeInteger
00289 #define typeInteger typeSInt32
00290 #else
00291 #if (typeInteger != 'long')
00292 this_is_integer_trouble
00293 #endif
00294 #endif
00295 #define typeLongInteger typeSInt32
00296 #define typeMagnitude typeUInt32
00297 #define typeComp typeSInt64
00298 #define typeSMFloat typeIEEE32BitFloatingPoint
00299 #define typeShortFloat typeIEEE32BitFloatingPoint
00300 #ifndef typeFloat
00301 #define typeFloat typeIEEE64BitFloatingPoint
00302 #else
00303 #if (typeFloat != 'doub')
00304 this_is_float_trouble
00305 #endif
00306 #endif
00307 #define typeLongFloat typeIEEE64BitFloatingPoint
00308 #define typeExtended 'exte'
00309
00310
00311 #define typeAEList 'list'
00312 #define typeAERecord 'reco'
00313 #define typeAppleEvent 'aevt'
00314 #define typeEventRecord 'evrc'
00315 #define typeTrue 'true'
00316 #define typeFalse 'fals'
00317 #define typeAlias 'alis' /// \deprecated Please use typeBookmark instead
00318 #define typeEnumerated 'enum'
00319 #define typeType 'type'
00320 #define typeAppParameters 'appa'
00321 #define typeProperty 'prop'
00322 #define typeFSS 'fss '
00323 #define typeFSRef 'fsrf' /// \deprecated Please use typeXPlatFileSpec
00324 #define typeKeyword 'keyw'
00325 #define typeSectionH 'sect'
00326 #define typeWildCard '****'
00327 #define typeApplSignature 'sign'
00328 #define typeQDRectangle 'qdrt'
00329 #define typeFixed 'fixd'
00330 #define typeProcessSerialNumber 'psn '
00331 #define typeApplicationURL 'aprl'
00332 #define typeNull 'null'
00333
00334 #endif // AE_DESC_ENUMS
00335
00337 #define roman 0
00338 #define english 0
00339 #define japanese 11
00341 #ifndef noReply
00342 #define noReply 'null'
00343 #endif
00344
00345 #ifndef __APPLEEVENTS__
00346
00347 #define typeObjectSpecifier 'obj '
00350 #endif
00351
00352 #if !INSIDE_PHOTOSHOP
00353
00354
00355
00356
00357 #define formName 'name'
00358
00359 #ifndef __AEOBJECTS__
00360 #define formAbsolutePosition 'indx'
00361 #define formPropertyID 'prop'
00362 #define formRelativePosition 'rele'
00363 #endif
00364
00365 #endif // !INSIDE_PHOTOSHOP
00366
00367 #endif
00368
00369 #if INSIDE_PHOTOSHOP || !defined(keySelection)
00370 #define keySelection 'fsel'
00371 #endif
00372
00373 #define typePath 'Pth '
00375 #if MSWindows
00376 #define typePlatformFilePath typePath
00377 #else
00378 #define typePlatformFilePath typeAlias
00379 #endif
00380
00381
00382
00383
00384 #ifndef Rez
00385
00386
00387
00392
00393
00394
00409 #define PIHasTerminologyProperty 0x6873746DL
00410
00411
00412
00413
00414
00415
00416
00417
00422 #define PITerminologyProperty 0x74726D6EL
00423
00424
00425
00429
00431
00434
00436 typedef int32 PIDialogRecordOptions;
00437
00441 enum
00442 {
00443 plugInDialogOptional,
00444 plugInDialogRequired,
00445 plugInDialogNone
00446 };
00447
00449 typedef int32 PIDialogPlayOptions;
00450
00454 enum
00455 {
00456 plugInDialogDontDisplay,
00457 plugInDialogDisplay,
00458 plugInDialogSilent
00461 };
00463
00464
00465
00466
00471
00472
00473
00477 #define actionSimpleParameter 0x00000000L
00478 #define actionEnumeratedParameter 0x00002000L
00479 #define actionListParameter 0x00004000L
00480 #define actionOptionalParameter 0x00008000L
00481
00482 #define actionObjectParameter 0x80000000L
00483 #define actionScopedParameter 0x40000000L
00484 #define actionStringIDParameter 0x20000000L
00485
00489
00490
00491
00492 typedef Handle PIDescriptorHandle;
00494 typedef struct PIOpaqueWriteDescriptor* PIWriteDescriptor;
00495 typedef struct PIOpaqueReadDescriptor* PIReadDescriptor;
00497 typedef uint32 DescriptorEventID;
00498 typedef uint32 DescriptorClassID;
00500 typedef uint32 DescriptorKeyID;
00501 typedef uint32 DescriptorTypeID;
00502 typedef uint32 DescriptorUnitID;
00503 typedef uint32 DescriptorEnumID;
00505 typedef uint32 DescriptorEnumTypeID;
00508 typedef uint32 DescriptorFormID;
00510 typedef DescriptorKeyID DescriptorKeyIDArray[];
00515 #if PRAGMA_STRUCT_ALIGN
00516 #pragma options align=mac68k
00517 #endif
00518
00519 #if MSWindows
00520 #pragma pack(push,1)
00521 #endif
00522
00541 typedef struct PITerminology
00542 {
00543 int32 version;
00544 OSType classID;
00545 OSType eventID;
00546 int16 terminologyID;
00548 char scopeString[1];
00555 } PITerminology;
00556
00557 #if PRAGMA_STRUCT_ALIGN
00558 #pragma options align=reset
00559 #endif
00560
00561 #if MSWindows
00562 #pragma pack(pop)
00563 #endif
00564
00565 #define PITerminologyMinSize 15
00566
00567 #if PRAGMA_STRUCT_ALIGN
00568 #pragma options align=mac68k
00569 #endif
00570
00575 typedef struct PIDescriptorSimpleReference
00576 {
00577 DescriptorTypeID desiredClass;
00578 DescriptorKeyID keyForm;
00580 struct _keyData
00581 {
00582 Str255 name;
00583 int32 index;
00584 DescriptorTypeID type;
00585 DescriptorEnumID value;
00586 } keyData;
00587 } PIDescriptorSimpleReference;
00588
00589 #if PRAGMA_STRUCT_ALIGN
00590 #pragma options align=reset
00591 #endif
00592
00593
00594
00595 #ifdef __cplusplus
00596 extern "C"
00597 {
00598 #endif
00599
00645
00647
00648
00656 typedef MACPASCAL PIWriteDescriptor (*OpenWriteDescriptorProc)(void);
00657
00666 typedef MACPASCAL OSErr (*CloseWriteDescriptorProc)(PIWriteDescriptor, PIDescriptorHandle*);
00667
00675 typedef MACPASCAL OSErr (*PutIntegerProc)(PIWriteDescriptor, DescriptorKeyID, int32);
00676
00684 typedef MACPASCAL OSErr (*PutFloatProc)(PIWriteDescriptor, DescriptorKeyID, const real64*);
00685
00694 typedef MACPASCAL OSErr (*PutUnitFloatProc)(PIWriteDescriptor, DescriptorKeyID, DescriptorUnitID, const real64*);
00695
00703 typedef MACPASCAL OSErr (*PutBooleanProc)(PIWriteDescriptor, DescriptorKeyID, Boolean);
00704
00712 typedef MACPASCAL OSErr (*PutTextProc)(PIWriteDescriptor, DescriptorKeyID, Handle);
00713
00721 typedef MACPASCAL OSErr (*PutAliasProc)(PIWriteDescriptor, DescriptorKeyID, Handle);
00722
00732 typedef MACPASCAL OSErr (*PutEnumeratedProc)(PIWriteDescriptor, DescriptorKeyID key, DescriptorTypeID type, DescriptorEnumID value);
00733
00741 typedef MACPASCAL OSErr (*PutClassProc)(PIWriteDescriptor, DescriptorKeyID, DescriptorTypeID);
00742
00751 typedef MACPASCAL OSErr (*PutSimpleReferenceProc)(PIWriteDescriptor, DescriptorKeyID, const PIDescriptorSimpleReference*);
00752
00761 typedef MACPASCAL OSErr (*PutObjectProc)(PIWriteDescriptor, DescriptorKeyID, DescriptorTypeID, PIDescriptorHandle);
00762
00770 typedef MACPASCAL OSErr (*PutCountProc)(PIWriteDescriptor, DescriptorKeyID, uint32 count);
00771
00779 typedef MACPASCAL OSErr (*PutStringProc)(PIWriteDescriptor, DescriptorKeyID, ConstStr255Param);
00780
00781
00782 typedef MACPASCAL OSErr (*PutScopedClassProc)(PIWriteDescriptor, DescriptorKeyID, DescriptorTypeID);
00783 typedef MACPASCAL OSErr (*PutScopedObjectProc)(PIWriteDescriptor, DescriptorKeyID, DescriptorTypeID, PIDescriptorHandle);
00784
00785
00787
00788
00799 typedef MACPASCAL PIReadDescriptor (*OpenReadDescriptorProc)(PIDescriptorHandle, DescriptorKeyIDArray);
00800
00809 typedef MACPASCAL OSErr (*CloseReadDescriptorProc)(PIReadDescriptor);
00810
00826 typedef MACPASCAL Boolean (*GetKeyProc)(PIReadDescriptor, DescriptorKeyID* key, DescriptorTypeID* type, int32* flags);
00827
00836 typedef MACPASCAL OSErr (*GetIntegerProc)(PIReadDescriptor, int32*);
00837
00846 typedef MACPASCAL OSErr (*GetFloatProc)(PIReadDescriptor, real64*);
00847
00857 typedef MACPASCAL OSErr (*GetUnitFloatProc)(PIReadDescriptor, DescriptorUnitID*, real64*);
00858
00867 typedef MACPASCAL OSErr (*GetBooleanProc)(PIReadDescriptor, Boolean*);
00868
00877 typedef MACPASCAL OSErr (*GetTextProc)(PIReadDescriptor, Handle*);
00878
00887 typedef MACPASCAL OSErr (*GetAliasProc)(PIReadDescriptor, Handle*);
00888
00897 typedef MACPASCAL OSErr (*GetEnumeratedProc)(PIReadDescriptor, DescriptorEnumID*);
00898
00907 typedef MACPASCAL OSErr (*GetClassProc)(PIReadDescriptor, DescriptorTypeID*);
00908
00917 typedef MACPASCAL OSErr (*GetSimpleReferenceProc)(PIReadDescriptor, PIDescriptorSimpleReference*);
00918
00929 typedef MACPASCAL OSErr (*GetObjectProc)(PIReadDescriptor, DescriptorTypeID*, PIDescriptorHandle*);
00930
00937 typedef MACPASCAL OSErr (*GetCountProc)(PIReadDescriptor, uint32*);
00938
00947 typedef MACPASCAL OSErr (*GetStringProc)(PIReadDescriptor, Str255*);
00948
00964 typedef MACPASCAL OSErr (*GetPinnedIntegerProc)(PIReadDescriptor, int32 min, int32 max, int32*);
00965
00981 typedef MACPASCAL OSErr (*GetPinnedFloatProc)(PIReadDescriptor, const real64* min, const real64* max, real64*);
00982
00999 typedef MACPASCAL OSErr (*GetPinnedUnitFloatProc)(PIReadDescriptor, const real64* min, const real64* max, DescriptorUnitID*, real64*);
01001
01002
01003 #ifdef __cplusplus
01004 }
01005 #endif
01006
01007
01008
01009
01010
01011
01012 #define kCurrentWriteDescriptorProcsVersion 0
01013
01014 #if PRAGMA_STRUCT_ALIGN
01015 #pragma options align=mac68k
01016 #endif
01017
01023 typedef struct WriteDescriptorProcs
01024 {
01025 int16 writeDescriptorProcsVersion;
01026 int16 numWriteDescriptorProcs;
01028 OpenWriteDescriptorProc openWriteDescriptorProc;
01029 CloseWriteDescriptorProc closeWriteDescriptorProc;
01031 PutIntegerProc putIntegerProc;
01032 PutFloatProc putFloatProc;
01033 PutUnitFloatProc putUnitFloatProc;
01034 PutBooleanProc putBooleanProc;
01035 PutTextProc putTextProc;
01036 PutAliasProc putAliasProc;
01038 PutEnumeratedProc putEnumeratedProc;
01039 PutClassProc putClassProc;
01040 PutSimpleReferenceProc putSimpleReferenceProc;
01041 PutObjectProc putObjectProc;
01043 PutCountProc putCountProc;
01045 PutStringProc putStringProc;
01048 PutScopedClassProc putScopedClassProc;
01050 PutScopedObjectProc putScopedObjectProc;
01052 } WriteDescriptorProcs;
01053
01054 #if PRAGMA_STRUCT_ALIGN
01055 #pragma options align=reset
01056 #endif
01057
01058
01059 #define kCurrentWriteDescriptorProcsCount \
01060 ((sizeof(WriteDescriptorProcs) - offsetof(WriteDescriptorProcs, openWriteDescriptorProc)) / sizeof(void*))
01061
01062
01063
01064
01065
01066
01067 #define kCurrentReadDescriptorProcsVersion 0
01068
01069 #if PRAGMA_STRUCT_ALIGN
01070 #pragma options align=mac68k
01071 #endif
01072
01078 typedef struct ReadDescriptorProcs
01079 {
01080 int16 readDescriptorProcsVersion;
01081 int16 numReadDescriptorProcs;
01083 OpenReadDescriptorProc openReadDescriptorProc;
01084 CloseReadDescriptorProc closeReadDescriptorProc;
01085 GetKeyProc getKeyProc;
01087 GetIntegerProc getIntegerProc;
01088 GetFloatProc getFloatProc;
01089 GetUnitFloatProc getUnitFloatProc;
01090 GetBooleanProc getBooleanProc;
01091 GetTextProc getTextProc;
01092 GetAliasProc getAliasProc;
01094 GetEnumeratedProc getEnumeratedProc;
01095 GetClassProc getClassProc;
01096 GetSimpleReferenceProc getSimpleReferenceProc;
01097 GetObjectProc getObjectProc;
01099 GetCountProc getCountProc;
01101 GetStringProc getStringProc;
01102 GetPinnedIntegerProc getPinnedIntegerProc;
01103 GetPinnedFloatProc getPinnedFloatProc;
01104 GetPinnedUnitFloatProc getPinnedUnitFloatProc;
01106 } ReadDescriptorProcs;
01107
01108 #if PRAGMA_STRUCT_ALIGN
01109 #pragma options align=reset
01110 #endif
01111
01112
01113 #define kCurrentReadDescriptorProcsCount \
01114 ((sizeof(ReadDescriptorProcs) - offsetof(ReadDescriptorProcs, openReadDescriptorProc)) / sizeof(void*))
01115
01116
01117
01118
01119
01120
01121 #define kCurrentDescriptorParametersVersion 0
01122
01123 #if PRAGMA_STRUCT_ALIGN
01124 #pragma options align=mac68k
01125 #endif
01126
01131 typedef struct PIDescriptorParameters
01132 {
01133 int16 descriptorParametersVersion;
01134 int16 playInfo;
01136 int16 recordInfo;
01139 PIDescriptorHandle descriptor;
01141 WriteDescriptorProcs* writeDescriptorProcs;
01142 ReadDescriptorProcs* readDescriptorProcs;
01143 } PIDescriptorParameters;
01144
01145 #if PRAGMA_STRUCT_ALIGN
01146 #pragma options align=reset
01147 #endif
01148
01150
01151
01152
01153
01154
01181 #if !MSWindows
01182
01183
01185 #define kPSWindowNotifySuite "482963f4-3ea1-11d1-8da3-00c04fd5f7ee"
01186
01187 #define kPSWindowNotifySuiteVersion 1
01188
01189 #ifdef __cplusplus
01190 extern "C"
01191 {
01192 #endif
01193
01200 struct EventRecord;
01201
01202 typedef void (*PIWindowNotifier)(const struct EventRecord* event, void* data);
01203
01204 #ifdef __cplusplus
01205 }
01206 #endif
01207
01211 typedef struct PSWindowNotifyProcs
01212 {
01220 SPAPI OSErr (*AddNotify)(void* window, PIWindowNotifier notifier, void* data);
01221
01227 SPAPI OSErr (*RemoveNotify)(void* window);
01228
01229 } PSWindowNotifyProcs;
01230
01231 #endif
01232
01235
01236
01240 typedef struct _ADsc* PIActionDescriptor;
01241
01245 typedef struct _ALst* PIActionList;
01246
01250 typedef struct _ARef* PIActionReference;
01251
01252
01253 #ifndef ASZString_defined
01254 #define ASZString_defined
01255 struct ASZByteRun;
01256 typedef struct ASZByteRun *ASZString;
01257 #endif
01258
01259
01260
01261
01262
01291
01292 #define kPSActionControlSuite "bc1e4d70-f953-11d0-8d9f-00c04fd5f7ee"
01293
01295 #define kPSActionControlSuiteVersion 6 // Current version
01296 #define kPSActionControlSuiteVersion5 5 // CC 2015 release, Version 16.0
01297 #define kPSActionControlSuiteVersion4 4 // CC 2015 release, Version 16.0
01298 #define kPSActionControlSuiteVersion3 3 // CS5 release, Version 12.0
01299 #define kPSActionControlSuiteVersion2 2 // Original suite
01300
01301 #ifdef __cplusplus
01302 extern "C"
01303 {
01304 #endif
01305
01314 typedef void (*PIEventNotifier)(DescriptorEventID eventID, PIActionDescriptor descriptor, PIDialogRecordOptions options, void* data);
01315
01326 typedef void (*PICommandNotifier)(uint32 commandID, OSErr result, DescriptorEventID eventID, PIActionDescriptor descriptor, PIDialogRecordOptions options, void* data);
01327
01334 typedef SPErr (*PISuspendProc)(void *data);
01335
01336 #ifdef __cplusplus
01337 }
01338 #endif
01339
01343 typedef struct PSActionControlProcs
01344 {
01345
01355 SPAPI OSErr (*Play)(PIActionDescriptor* result, DescriptorEventID event, PIActionDescriptor descriptor, PIDialogPlayOptions options);
01356
01368 SPAPI OSErr (*Get)(PIActionDescriptor* result, PIActionReference reference);
01369
01376 SPAPI OSErr (*StringIDToTypeID)(const char* stringID, DescriptorTypeID* typeID);
01377
01385 SPAPI OSErr (*TypeIDToStringID)(DescriptorTypeID typeID, char* stringID, uint32 stringLength);
01386
01400 SPAPI OSErr (*AddNotify)(SPPluginRef ref, DescriptorEventID event, PIEventNotifier notifier, void* data);
01401
01409 SPAPI OSErr (*RemoveNotify)(SPPluginRef ref, DescriptorEventID event);
01410
01424 SPAPI OSErr (*SuspendHistory)(PIActionReference reference, PISuspendProc proc, void* procData, ASZString operationName);
01425
01435 SPAPI OSErr (*MakeStringAlias)(const char* newStringID, const char* existingStringID);
01436
01454 SPAPI OSErr (*AddNotifyLevel1)(SPPluginRef ref, DescriptorEventID event, PIEventNotifier notifier, void* data);
01455
01472 SPAPI OSErr (*PostCommand)(SPPluginRef ref, DescriptorEventID event, PIActionDescriptor descriptor, PIDialogPlayOptions options, PICommandNotifier notifier, void* data, uint32* commandID);
01473
01486 SPAPI OSErr (*CancelCommand)(SPPluginRef ref, uint32 commandID);
01487
01494 SPAPI OSErr (*ConvertAliasHandleToBookmark)(Handle aliasHandle, CFDataRef* bookmark);
01495
01502 SPAPI OSErr (*ConvertBookmarkToAliasHandle)(CFDataRef bookmark, Handle* aliasHandle);
01503
01520 SPAPI OSErr (*AddUniversalNotifier)(SPPluginRef ref, DescriptorEventID event, PIEventNotifier notifier, void* data, uint32 options);
01521
01529 SPAPI OSErr (*RemoveUniversalNotifier)(SPPluginRef ref, DescriptorEventID event);
01530
01531 } PSActionControlProcs;
01532
01533
01537 typedef struct PSActionControlProcs4
01538 {
01539 SPAPI OSErr (*Play)(PIActionDescriptor* result, DescriptorEventID event, PIActionDescriptor descriptor, PIDialogPlayOptions options);
01540 SPAPI OSErr (*Get)(PIActionDescriptor* result, PIActionReference reference);
01541 SPAPI OSErr (*StringIDToTypeID)(const char* stringID, DescriptorTypeID* typeID);
01542 SPAPI OSErr (*TypeIDToStringID)(DescriptorTypeID typeID, char* stringID, uint32 stringLength);
01543 SPAPI OSErr (*AddNotify)(SPPluginRef ref, DescriptorEventID event, PIEventNotifier notifier, void* data);
01544 SPAPI OSErr (*RemoveNotify)(SPPluginRef ref, DescriptorEventID event);
01545 SPAPI OSErr (*SuspendHistory)(PIActionReference reference, PISuspendProc proc, void* procData, ASZString operationName);
01546 SPAPI OSErr (*MakeStringAlias)(const char* newStringID, const char* existingStringID);
01547 SPAPI OSErr (*AddNotifyLevel1)(SPPluginRef ref, DescriptorEventID event, PIEventNotifier notifier, void* data);
01548 } PSActionControlProcs4;
01549
01550
01554 typedef struct PSActionControlProcsOld
01555 {
01556 SPAPI OSErr (*Play)(PIActionDescriptor* result, DescriptorEventID event, PIActionDescriptor descriptor, PIDialogPlayOptions options);
01557 SPAPI OSErr (*Get)(PIActionDescriptor* result, PIActionReference reference);
01558 SPAPI OSErr (*StringIDToTypeID)(const char* stringID, DescriptorTypeID* typeID);
01559 SPAPI OSErr (*TypeIDToStringID)(DescriptorTypeID typeID, char* stringID, uint32 stringLength);
01560 SPAPI OSErr (*AddNotify)(SPPluginRef ref, DescriptorEventID event, PIEventNotifier notifier, void* data);
01561 SPAPI OSErr (*RemoveNotify)(SPPluginRef ref, DescriptorEventID event);
01562 SPAPI OSErr (*SuspendHistory)(PIActionReference reference, PISuspendProc proc, void* procData, ASZString operationName);
01563 SPAPI OSErr (*MakeStringAlias)(const char* newStringID, const char* existingStringID);
01564 } PSActionControlProcsOld;
01565
01566
01567
01568
01569
01570
01598
01599 #define kPSBasicActionControlSuite "3eb7c480-8797-11d1-8da7-00c04fd5f7ee"
01600
01601 #define kPSBasicActionControlSuiteVersion 3
01602
01603 #define kPSBasicActionControlSuiteVersion2 2
01604
01605 #define kPSBasicActionControlSuitePrevVersion 1
01606
01610 typedef struct PSBasicActionControlProcs
01611 {
01612
01622 SPAPI OSErr (*Get)(PIActionDescriptor* result, PIActionReference reference);
01623
01630 SPAPI OSErr (*StringIDToTypeID)(const char* stringID, DescriptorTypeID* typeID);
01631
01639 SPAPI OSErr (*TypeIDToStringID)(DescriptorTypeID typeID, char* stringID, uint32 stringLength);
01640
01650 SPAPI OSErr (*MakeStringAlias)(const char* newStringID, const char* existingStringID);
01651
01658 SPAPI OSErr (*ConvertAliasHandleToBookmark)(Handle aliasHandle, CFDataRef* bookmark);
01659
01666 SPAPI OSErr (*ConvertBookmarkToAliasHandle)(CFDataRef bookmark, Handle* aliasHandle);
01667
01668 } PSBasicActionControlProcs;
01669
01673 typedef struct PSBasicActionControlProcsOld
01674 {
01675 SPAPI OSErr (*Get)(PIActionDescriptor* result, PIActionReference reference);
01676 SPAPI OSErr (*StringIDToTypeID)(const char* stringID, DescriptorTypeID* typeID);
01677 SPAPI OSErr (*TypeIDToStringID)(DescriptorTypeID typeID, char* stringID, uint32 stringLength);
01678 SPAPI OSErr (*MakeStringAlias)(const char* newStringID, const char* existingStringID);
01679 } PSBasicActionControlProcsOld;
01680
01684
01685
01686
01687
01688
01717
01718 #define kPSDescriptorRegistrySuite "61e608b0-40fd-11d1-8da3-00c04fd5f7ee"
01719
01720 #define kPSDescriptorRegistrySuiteVersion 1
01721
01725 typedef struct PSDescriptorRegistryProcs
01726 {
01727
01736 SPAPI OSErr (*Register)(const char* key, PIActionDescriptor descriptor, Boolean isPersistent);
01737
01743 SPAPI OSErr (*Erase)(const char* key);
01744
01752 SPAPI OSErr (*Get)(const char* key, PIActionDescriptor* descriptor);
01753
01754 } PSDescriptorRegistryProcs;
01755
01756
01757
01758
01759
01760
01761
01790
01791 #define kPSActionDescriptorSuite "df135115-c769-11d0-8079-00c04fd7ec47"
01792
01793 #define kPSActionDescriptorSuiteVersion 5
01794
01795
01797 #define kPSActionDescriptorSuiteVersion3 3
01798
01799 #define kPSActionDescriptorSuiteVersion2 2
01800
01804 typedef struct PSActionDescriptorProcs
01805 {
01811 SPAPI OSErr (*Make)(PIActionDescriptor* descriptor);
01812
01818 SPAPI OSErr (*Free)(PIActionDescriptor descriptor);
01819
01828 SPAPI OSErr (*GetType)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorTypeID* type);
01829
01839 SPAPI OSErr (*GetKey)(PIActionDescriptor descriptor, uint32 index, DescriptorKeyID* key);
01840
01849 SPAPI OSErr (*HasKey)(PIActionDescriptor descriptor, DescriptorKeyID key, Boolean* hasKey);
01850
01857 SPAPI OSErr (*GetCount)(PIActionDescriptor descriptor, uint32* count);
01858
01866 SPAPI OSErr (*IsEqual)(PIActionDescriptor descriptor, PIActionDescriptor other, Boolean* isEqual);
01867
01874 SPAPI OSErr (*Erase)(PIActionDescriptor descriptor, DescriptorKeyID );
01875
01881 SPAPI OSErr (*Clear)(PIActionDescriptor descriptor);
01882
01890 SPAPI OSErr (*PutInteger)(PIActionDescriptor descriptor, DescriptorKeyID key, int32 value);
01891
01899 SPAPI OSErr (*PutFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, real64 value);
01900
01909 SPAPI OSErr (*PutUnitFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorUnitID unit, real64 value);
01910
01918 SPAPI OSErr (*PutString)(PIActionDescriptor descriptor, DescriptorKeyID key, const char* cstrValue);
01919
01927 SPAPI OSErr (*PutBoolean)(PIActionDescriptor descriptor, DescriptorKeyID key, Boolean value);
01928
01936 SPAPI OSErr (*PutList)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionList value);
01937
01949 SPAPI OSErr (*PutObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID type, PIActionDescriptor value);
01950
01959 SPAPI OSErr (*PutGlobalObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID type, PIActionDescriptor value);
01960
01969 SPAPI OSErr (*PutEnumerated)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorEnumTypeID type, DescriptorEnumID value);
01970
01978 SPAPI OSErr (*PutReference)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionReference value);
01979
01987 SPAPI OSErr (*PutClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID value);
01988
01996 SPAPI OSErr (*PutGlobalClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID value);
01997
02005 SPAPI OSErr (*PutAlias)(PIActionDescriptor descriptor, DescriptorKeyID key, Handle value);
02006
02014 SPAPI OSErr (*GetInteger)(PIActionDescriptor descriptor, DescriptorKeyID key, int32* value);
02015
02023 SPAPI OSErr (*GetFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, real64* value);
02024
02033 SPAPI OSErr (*GetUnitFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorUnitID* unit, real64* value);
02034
02042 SPAPI OSErr (*GetStringLength)(PIActionDescriptor descriptor, DescriptorKeyID key, uint32* stringLength);
02043
02052 SPAPI OSErr (*GetString)(PIActionDescriptor descriptor, DescriptorKeyID key, char* cstrValue, uint32 maxLength);
02053
02061 SPAPI OSErr (*GetBoolean)(PIActionDescriptor descriptor, DescriptorKeyID key, Boolean* value);
02062
02070 SPAPI OSErr (*GetList)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionList* value);
02071
02083 SPAPI OSErr (*GetObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* type, PIActionDescriptor* value);
02084
02093 SPAPI OSErr (*GetGlobalObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* type, PIActionDescriptor* value);
02094
02103 SPAPI OSErr (*GetEnumerated)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorEnumTypeID* type, DescriptorEnumID* value);
02104
02112 SPAPI OSErr (*GetReference)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionReference* value);
02113
02121 SPAPI OSErr (*GetClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* value);
02122
02130 SPAPI OSErr (*GetGlobalClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* value);
02131
02140 SPAPI OSErr (*GetAlias)(PIActionDescriptor descriptor, DescriptorKeyID key, Handle* value);
02141
02149 SPAPI OSErr (*HasKeys)(PIActionDescriptor descriptor, DescriptorKeyIDArray requiredKeys, Boolean* hasKeys);
02150
02159 SPAPI OSErr (*PutIntegers)(PIActionDescriptor descriptor, DescriptorKeyID key, uint32 count, int32* );
02160
02169 SPAPI OSErr (*GetIntegers)(PIActionDescriptor descriptor, DescriptorKeyID key, uint32 count, int32* value);
02170
02181 SPAPI OSErr (*AsHandle)(PIActionDescriptor descriptor, PIDescriptorHandle* value);
02182
02193 SPAPI OSErr (*HandleToDescriptor)(PIDescriptorHandle value, PIActionDescriptor* descriptor);
02194
02202 SPAPI OSErr (*PutZString)(PIActionDescriptor descriptor, DescriptorKeyID key, ASZString zstring);
02203
02211 SPAPI OSErr (*GetZString)(PIActionDescriptor descriptor, DescriptorKeyID key, ASZString* zstring);
02212
02221 SPAPI OSErr (*PutData)(PIActionDescriptor descriptor, DescriptorKeyID key, int32 length, void* value);
02222
02230 SPAPI OSErr (*GetDataLength)(PIActionDescriptor descriptor, DescriptorKeyID key, int32* value);
02231
02239 SPAPI OSErr (*GetData)(PIActionDescriptor descriptor, DescriptorKeyID key, void* value);
02240
02248 SPAPI OSErr (*PutInteger64)(PIActionDescriptor descriptor, DescriptorKeyID key, int64 value);
02249
02257 SPAPI OSErr (*GetInteger64)(PIActionDescriptor descriptor, DescriptorKeyID key, int64* value);
02258
02265 SPAPI OSErr (*MakeWithClass)(DescriptorClassID value, PIActionDescriptor* descriptor);
02266
02273 SPAPI OSErr (*GetDescriptorClass)(PIActionDescriptor descriptor, DescriptorClassID* value);
02274
02287 SPAPI OSErr (*Copy)(PIActionDescriptor descriptor, PIActionDescriptor* copy);
02288
02297 SPAPI OSErr (*PutBookmark)(PIActionDescriptor descriptor, DescriptorKeyID key, CFDataRef value);
02298
02308 SPAPI OSErr (*GetBookmark)(PIActionDescriptor descriptor, DescriptorKeyID key, CFDataRef* value);
02309
02310 } PSActionDescriptorProcs;
02311
02312
02316 typedef struct PSActionDescriptorProcs3
02317 {
02318 SPAPI OSErr (*Make)(PIActionDescriptor* descriptor);
02319 SPAPI OSErr (*Free)(PIActionDescriptor descriptor);
02320 SPAPI OSErr (*GetType)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorTypeID* type);
02321 SPAPI OSErr (*GetKey)(PIActionDescriptor descriptor, uint32 index, DescriptorKeyID* key);
02322 SPAPI OSErr (*HasKey)(PIActionDescriptor descriptor, DescriptorKeyID key, Boolean* hasKey);
02323 SPAPI OSErr (*GetCount)(PIActionDescriptor descriptor, uint32* count);
02324 SPAPI OSErr (*IsEqual)(PIActionDescriptor descriptor, PIActionDescriptor other, Boolean* isEqual);
02325 SPAPI OSErr (*Erase)(PIActionDescriptor descriptor, DescriptorKeyID );
02326 SPAPI OSErr (*Clear)(PIActionDescriptor descriptor);
02327 SPAPI OSErr (*PutInteger)(PIActionDescriptor descriptor, DescriptorKeyID key, int32 value);
02328 SPAPI OSErr (*PutFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, real64 value);
02329 SPAPI OSErr (*PutUnitFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorUnitID unit, real64 value);
02330 SPAPI OSErr (*PutString)(PIActionDescriptor descriptor, DescriptorKeyID key, const char* cstrValue);
02331 SPAPI OSErr (*PutBoolean)(PIActionDescriptor descriptor, DescriptorKeyID key, Boolean value);
02332 SPAPI OSErr (*PutList)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionList value);
02333 SPAPI OSErr (*PutObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID type, PIActionDescriptor value);
02334 SPAPI OSErr (*PutGlobalObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID type, PIActionDescriptor value);
02335 SPAPI OSErr (*PutEnumerated)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorEnumTypeID type, DescriptorEnumID value);
02336 SPAPI OSErr (*PutReference)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionReference value);
02337 SPAPI OSErr (*PutClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID value);
02338 SPAPI OSErr (*PutGlobalClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID value);
02339 SPAPI OSErr (*PutAlias)(PIActionDescriptor descriptor, DescriptorKeyID key, Handle value);
02340 SPAPI OSErr (*GetInteger)(PIActionDescriptor descriptor, DescriptorKeyID key, int32* value);
02341 SPAPI OSErr (*GetFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, real64* value);
02342 SPAPI OSErr (*GetUnitFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorUnitID* unit, real64* value);
02343 SPAPI OSErr (*GetStringLength)(PIActionDescriptor descriptor, DescriptorKeyID key, uint32* stringLength);
02344 SPAPI OSErr (*GetString)(PIActionDescriptor descriptor, DescriptorKeyID key, char* cstrValue, uint32 maxLength);
02345 SPAPI OSErr (*GetBoolean)(PIActionDescriptor descriptor, DescriptorKeyID key, Boolean* value);
02346 SPAPI OSErr (*GetList)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionList* value);
02347 SPAPI OSErr (*GetObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* type, PIActionDescriptor* value);
02348 SPAPI OSErr (*GetGlobalObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* type, PIActionDescriptor* value);
02349 SPAPI OSErr (*GetEnumerated)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorEnumTypeID* type, DescriptorEnumID* value);
02350 SPAPI OSErr (*GetReference)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionReference* value);
02351 SPAPI OSErr (*GetClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* value);
02352 SPAPI OSErr (*GetGlobalClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* value);
02353 SPAPI OSErr (*GetAlias)(PIActionDescriptor descriptor, DescriptorKeyID key, Handle* value);
02354 SPAPI OSErr (*HasKeys)(PIActionDescriptor descriptor, DescriptorKeyIDArray requiredKeys, Boolean* hasKeys);
02355 SPAPI OSErr (*PutIntegers)(PIActionDescriptor descriptor, DescriptorKeyID key, uint32 count, int32* );
02356 SPAPI OSErr (*GetIntegers)(PIActionDescriptor descriptor, DescriptorKeyID key, uint32 count, int32* value);
02357 SPAPI OSErr (*AsHandle)(PIActionDescriptor descriptor, PIDescriptorHandle* value);
02358 SPAPI OSErr (*HandleToDescriptor)(PIDescriptorHandle value, PIActionDescriptor* descriptor);
02359 SPAPI OSErr (*PutZString)(PIActionDescriptor descriptor, DescriptorKeyID key, ASZString zstring);
02360 SPAPI OSErr (*GetZString)(PIActionDescriptor descriptor, DescriptorKeyID key, ASZString* zstring);
02361 SPAPI OSErr (*PutData)(PIActionDescriptor descriptor, DescriptorKeyID key, int32 length, void* value);
02362 SPAPI OSErr (*GetDataLength)(PIActionDescriptor descriptor, DescriptorKeyID key, int32* value);
02363 SPAPI OSErr (*GetData)(PIActionDescriptor descriptor, DescriptorKeyID key, void* value);
02364 SPAPI OSErr (*PutInteger64)(PIActionDescriptor descriptor, DescriptorKeyID key, int64 value);
02365 SPAPI OSErr (*GetInteger64)(PIActionDescriptor descriptor, DescriptorKeyID key, int64* value);
02366 } PSActionDescriptorProcs3;
02367
02368
02372 typedef struct PSActionDescriptorProcs2
02373 {
02374 SPAPI OSErr (*Make)(PIActionDescriptor* descriptor);
02375 SPAPI OSErr (*Free)(PIActionDescriptor descriptor);
02376 SPAPI OSErr (*GetType)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorTypeID* type);
02377 SPAPI OSErr (*GetKey)(PIActionDescriptor descriptor, uint32 index, DescriptorKeyID* key);
02378 SPAPI OSErr (*HasKey)(PIActionDescriptor descriptor, DescriptorKeyID key, Boolean* hasKey);
02379 SPAPI OSErr (*GetCount)(PIActionDescriptor descriptor, uint32* count);
02380 SPAPI OSErr (*IsEqual)(PIActionDescriptor descriptor, PIActionDescriptor other, Boolean* isEqual);
02381 SPAPI OSErr (*Erase)(PIActionDescriptor descriptor, DescriptorKeyID );
02382 SPAPI OSErr (*Clear)(PIActionDescriptor descriptor);
02383 SPAPI OSErr (*PutInteger)(PIActionDescriptor descriptor, DescriptorKeyID key, int32 value);
02384 SPAPI OSErr (*PutFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, real64 value);
02385 SPAPI OSErr (*PutUnitFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorUnitID unit, real64 value);
02386 SPAPI OSErr (*PutString)(PIActionDescriptor descriptor, DescriptorKeyID key, const char* cstrValue);
02387 SPAPI OSErr (*PutBoolean)(PIActionDescriptor descriptor, DescriptorKeyID key, Boolean value);
02388 SPAPI OSErr (*PutList)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionList value);
02389 SPAPI OSErr (*PutObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID type, PIActionDescriptor value);
02390 SPAPI OSErr (*PutGlobalObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID type, PIActionDescriptor value);
02391 SPAPI OSErr (*PutEnumerated)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorEnumTypeID type, DescriptorEnumID value);
02392 SPAPI OSErr (*PutReference)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionReference value);
02393 SPAPI OSErr (*PutClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID value);
02394 SPAPI OSErr (*PutGlobalClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID value);
02395 SPAPI OSErr (*PutAlias)(PIActionDescriptor descriptor, DescriptorKeyID key, Handle value);
02396 SPAPI OSErr (*GetInteger)(PIActionDescriptor descriptor, DescriptorKeyID key, int32* value);
02397 SPAPI OSErr (*GetFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, real64* value);
02398 SPAPI OSErr (*GetUnitFloat)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorUnitID* unit, real64* value);
02399 SPAPI OSErr (*GetStringLength)(PIActionDescriptor descriptor, DescriptorKeyID key, uint32* stringLength);
02400 SPAPI OSErr (*GetString)(PIActionDescriptor descriptor, DescriptorKeyID key, char* cstrValue, uint32 maxLength);
02401 SPAPI OSErr (*GetBoolean)(PIActionDescriptor descriptor, DescriptorKeyID key, Boolean* value);
02402 SPAPI OSErr (*GetList)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionList* value);
02403 SPAPI OSErr (*GetObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* type, PIActionDescriptor* value);
02404 SPAPI OSErr (*GetGlobalObject)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* type, PIActionDescriptor* value);
02405 SPAPI OSErr (*GetEnumerated)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorEnumTypeID* type, DescriptorEnumID* value);
02406 SPAPI OSErr (*GetReference)(PIActionDescriptor descriptor, DescriptorKeyID key, PIActionReference* value);
02407 SPAPI OSErr (*GetClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* value);
02408 SPAPI OSErr (*GetGlobalClass)(PIActionDescriptor descriptor, DescriptorKeyID key, DescriptorClassID* value);
02409 SPAPI OSErr (*GetAlias)(PIActionDescriptor descriptor, DescriptorKeyID key, Handle* value);
02410 SPAPI OSErr (*HasKeys)(PIActionDescriptor descriptor, DescriptorKeyIDArray requiredKeys, Boolean* hasKeys);
02411 SPAPI OSErr (*PutIntegers)(PIActionDescriptor descriptor, DescriptorKeyID key, uint32 count, int32* );
02412 SPAPI OSErr (*GetIntegers)(PIActionDescriptor descriptor, DescriptorKeyID key, uint32 count, int32* value);
02413 SPAPI OSErr (*AsHandle)(PIActionDescriptor descriptor, PIDescriptorHandle* value);
02414 SPAPI OSErr (*HandleToDescriptor)(PIDescriptorHandle value, PIActionDescriptor* descriptor);
02415 SPAPI OSErr (*PutZString)(PIActionDescriptor descriptor, DescriptorKeyID key, ASZString zstring);
02416 SPAPI OSErr (*GetZString)(PIActionDescriptor descriptor, DescriptorKeyID key, ASZString* zstring);
02417 SPAPI OSErr (*PutData)(PIActionDescriptor descriptor, DescriptorKeyID key, int32 length, void* value);
02418 SPAPI OSErr (*GetDataLength)(PIActionDescriptor descriptor, DescriptorKeyID key, int32* value);
02419 SPAPI OSErr (*GetData)(PIActionDescriptor descriptor, DescriptorKeyID key, void* value);
02420 } PSActionDescriptorProcs2;
02421
02422
02423
02424
02425
02454
02455 #define kPSActionListSuite "df135116-c769-11d0-8079-00c04fd7ec47"
02456
02457 #define kPSActionListSuiteVersion 3
02458
02459 #define kPSActionListSuiteVersion2 2
02460
02461 #define kPSActionListSuiteVersion1 1
02462
02466 typedef struct PSActionListProcs
02467 {
02468
02474 SPAPI OSErr (*Make)(PIActionList* actionList);
02475
02481 SPAPI OSErr (*Free)(PIActionList actionList);
02482
02494 SPAPI OSErr (*GetType)(PIActionList list, uint32 index, DescriptorTypeID* value);
02495
02502 SPAPI OSErr (*GetCount)(PIActionList list, uint32* value);
02503
02510 SPAPI OSErr (*PutInteger)(PIActionList list, int32 value);
02511
02518 SPAPI OSErr (*PutFloat)(PIActionList list, real64 value);
02519
02527 SPAPI OSErr (*PutUnitFloat)(PIActionList list, DescriptorUnitID unit, real64 value);
02528
02535 SPAPI OSErr (*PutString)(PIActionList list, const char* cstr);
02536
02543 SPAPI OSErr (*PutBoolean)(PIActionList list, Boolean value);
02544
02551 SPAPI OSErr (*PutList)(PIActionList list, PIActionList value);
02552
02563 SPAPI OSErr (*PutObject)(PIActionList list, DescriptorClassID type, PIActionDescriptor value);
02564
02575 SPAPI OSErr (*PutGlobalObject)(PIActionList list, DescriptorClassID type, PIActionDescriptor value);
02576
02584 SPAPI OSErr (*PutEnumerated)(PIActionList list, DescriptorEnumTypeID type, DescriptorEnumID value);
02585
02592 SPAPI OSErr (*PutReference)(PIActionList list, PIActionReference value);
02593
02600 SPAPI OSErr (*PutClass)(PIActionList list, DescriptorClassID value);
02601
02608 SPAPI OSErr (*PutGlobalClass)(PIActionList list, DescriptorClassID value);
02609
02616 SPAPI OSErr (*PutAlias)(PIActionList list, Handle value);
02617
02628 SPAPI OSErr (*GetInteger)(PIActionList list, uint32 index, int32* value);
02629
02640 SPAPI OSErr (*GetFloat)(PIActionList list, uint32 index, real64* value);
02641
02653 SPAPI OSErr (*GetUnitFloat)(PIActionList list, uint32 index, DescriptorUnitID* unit, real64* value);
02654
02662 SPAPI OSErr (*GetStringLength)(PIActionList list, uint32 index, uint32* stringLength);
02663
02672 SPAPI OSErr (*GetString)(PIActionList list, uint32 index, char* cstr, uint32 maxLength);
02673
02681 SPAPI OSErr (*GetBoolean)(PIActionList list, uint32 index, Boolean* value);
02682
02690 SPAPI OSErr (*GetList)(PIActionList list, uint32 index, PIActionList* actionList);
02691
02703 SPAPI OSErr (*GetObject)(PIActionList list, uint32 index, DescriptorClassID* type, PIActionDescriptor* value);
02704
02716 SPAPI OSErr (*GetGlobalObject)(PIActionList list, uint32 index, DescriptorClassID* type, PIActionDescriptor* value);
02717
02726 SPAPI OSErr (*GetEnumerated)(PIActionList list, uint32 index, DescriptorEnumTypeID* type, DescriptorEnumID* value);
02727
02735 SPAPI OSErr (*GetReference)(PIActionList list, uint32 index, PIActionReference* value);
02736
02744 SPAPI OSErr (*GetClass)(PIActionList list, uint32 index, DescriptorClassID* value);
02745
02753 SPAPI OSErr (*GetGlobalClass)(PIActionList list, uint32 index, DescriptorClassID* value);
02754
02763 SPAPI OSErr (*GetAlias)(PIActionList list, uint32 index, Handle* aliasHandle);
02764
02772 SPAPI OSErr (*PutIntegers)(PIActionList list, uint32 count, int32* );
02773
02781 SPAPI OSErr (*GetIntegers)(PIActionList list, uint32 count, int32* value);
02782
02790 SPAPI OSErr (*PutData)(PIActionList list, int32 length, void* data);
02791
02799 SPAPI OSErr (*GetDataLength)(PIActionList list, uint32 index, int32* length);
02800
02808 SPAPI OSErr (*GetData)(PIActionList list, uint32 index, void* value);
02809
02816 SPAPI OSErr (*PutZString)(PIActionList list, ASZString zstring);
02817
02825 SPAPI OSErr (*GetZString)(PIActionList list, uint32 index, ASZString* zstring);
02826
02833 SPAPI OSErr (*PutInteger64)(PIActionList list, int64 value);
02834
02846 SPAPI OSErr (*GetInteger64)(PIActionList list, uint32 index, int64 *value);
02847
02855 SPAPI OSErr (*PutBookmark)(PIActionList list, CFDataRef value);
02856
02866 SPAPI OSErr (*GetBookmark)(PIActionList list, uint32 index, CFDataRef* bookmark);
02867
02868 } PSActionListProcs;
02869
02870
02874 typedef struct PSActionListProcs2
02875 {
02876 SPAPI OSErr (*Make)(PIActionList* actionList);
02877 SPAPI OSErr (*Free)(PIActionList actionList);
02878 SPAPI OSErr (*GetType)(PIActionList list, uint32 index, DescriptorTypeID* value);
02879 SPAPI OSErr (*GetCount)(PIActionList list, uint32* value);
02880 SPAPI OSErr (*PutInteger)(PIActionList list, int32 value);
02881 SPAPI OSErr (*PutFloat)(PIActionList list, real64 value);
02882 SPAPI OSErr (*PutUnitFloat)(PIActionList list, DescriptorUnitID unit, real64 value);
02883 SPAPI OSErr (*PutString)(PIActionList list, const char* cstr);
02884 SPAPI OSErr (*PutBoolean)(PIActionList list, Boolean value);
02885 SPAPI OSErr (*PutList)(PIActionList list, PIActionList value);
02886 SPAPI OSErr (*PutObject)(PIActionList list, DescriptorClassID type, PIActionDescriptor value);
02887 SPAPI OSErr (*PutGlobalObject)(PIActionList list, DescriptorClassID type, PIActionDescriptor value);
02888 SPAPI OSErr (*PutEnumerated)(PIActionList list, DescriptorEnumTypeID type, DescriptorEnumID value);
02889 SPAPI OSErr (*PutReference)(PIActionList list, PIActionReference value);
02890 SPAPI OSErr (*PutClass)(PIActionList list, DescriptorClassID value);
02891 SPAPI OSErr (*PutGlobalClass)(PIActionList list, DescriptorClassID value);
02892 SPAPI OSErr (*PutAlias)(PIActionList list, Handle value);
02893 SPAPI OSErr (*GetInteger)(PIActionList list, uint32 index, int32* value);
02894 SPAPI OSErr (*GetFloat)(PIActionList list, uint32 index, real64* value);
02895 SPAPI OSErr (*GetUnitFloat)(PIActionList list, uint32 index, DescriptorUnitID* unit, real64* value);
02896 SPAPI OSErr (*GetStringLength)(PIActionList list, uint32 index, uint32* stringLength);
02897 SPAPI OSErr (*GetString)(PIActionList list, uint32 index, char* cstr, uint32 maxLength);
02898 SPAPI OSErr (*GetBoolean)(PIActionList list, uint32 index, Boolean* value);
02899 SPAPI OSErr (*GetList)(PIActionList list, uint32 index, PIActionList* actionList);
02900 SPAPI OSErr (*GetObject)(PIActionList list, uint32 index, DescriptorClassID* type, PIActionDescriptor* value);
02901 SPAPI OSErr (*GetGlobalObject)(PIActionList list, uint32 index, DescriptorClassID* type, PIActionDescriptor* value);
02902 SPAPI OSErr (*GetEnumerated)(PIActionList list, uint32 index, DescriptorEnumTypeID* type, DescriptorEnumID* value);
02903 SPAPI OSErr (*GetReference)(PIActionList list, uint32 index, PIActionReference* value);
02904 SPAPI OSErr (*GetClass)(PIActionList list, uint32 index, DescriptorClassID* value);
02905 SPAPI OSErr (*GetGlobalClass)(PIActionList list, uint32 index, DescriptorClassID* value);
02906 SPAPI OSErr (*GetAlias)(PIActionList list, uint32 index, Handle* aliasHandle);
02907 SPAPI OSErr (*PutIntegers)(PIActionList list, uint32 count, int32* );
02908 SPAPI OSErr (*GetIntegers)(PIActionList list, uint32 count, int32* value);
02909 SPAPI OSErr (*PutData)(PIActionList list, int32 length, void* data);
02910 SPAPI OSErr (*GetDataLength)(PIActionList list, uint32 index, int32* length);
02911 SPAPI OSErr (*GetData)(PIActionList list, uint32 index, void* value);
02912 SPAPI OSErr (*PutZString)(PIActionList list, ASZString zstring);
02913 SPAPI OSErr (*GetZString)(PIActionList list, uint32 index, ASZString* zstring);
02914 SPAPI OSErr (*PutInteger64)(PIActionList list, int64 value);
02915 SPAPI OSErr (*GetInteger64)(PIActionList list, uint32 index, int64 *value);
02916 } PSActionListProcs2;
02917
02918
02922 typedef struct PSActionListProcs1
02923 {
02924 SPAPI OSErr (*Make)(PIActionList* actionList);
02925 SPAPI OSErr (*Free)(PIActionList actionList);
02926 SPAPI OSErr (*GetType)(PIActionList list, uint32 index, DescriptorTypeID* value);
02927 SPAPI OSErr (*GetCount)(PIActionList list, uint32* value);
02928 SPAPI OSErr (*PutInteger)(PIActionList list, int32 value);
02929 SPAPI OSErr (*PutFloat)(PIActionList list, real64 value);
02930 SPAPI OSErr (*PutUnitFloat)(PIActionList list, DescriptorUnitID unit, real64 value);
02931 SPAPI OSErr (*PutString)(PIActionList list, const char* cstr);
02932 SPAPI OSErr (*PutBoolean)(PIActionList list, Boolean value);
02933 SPAPI OSErr (*PutList)(PIActionList list, PIActionList value);
02934 SPAPI OSErr (*PutObject)(PIActionList list, DescriptorClassID type, PIActionDescriptor value);
02935 SPAPI OSErr (*PutGlobalObject)(PIActionList list, DescriptorClassID type, PIActionDescriptor value);
02936 SPAPI OSErr (*PutEnumerated)(PIActionList list, DescriptorEnumTypeID type, DescriptorEnumID value);
02937 SPAPI OSErr (*PutReference)(PIActionList list, PIActionReference value);
02938 SPAPI OSErr (*PutClass)(PIActionList list, DescriptorClassID value);
02939 SPAPI OSErr (*PutGlobalClass)(PIActionList list, DescriptorClassID value);
02940 SPAPI OSErr (*PutAlias)(PIActionList list, Handle value);
02941 SPAPI OSErr (*GetInteger)(PIActionList list, uint32 index, int32* value);
02942 SPAPI OSErr (*GetFloat)(PIActionList list, uint32 index, real64* value);
02943 SPAPI OSErr (*GetUnitFloat)(PIActionList list, uint32 index, DescriptorUnitID* unit, real64* value);
02944 SPAPI OSErr (*GetStringLength)(PIActionList list, uint32 index, uint32* stringLength);
02945 SPAPI OSErr (*GetString)(PIActionList list, uint32 index, char* cstr, uint32 maxLength);
02946 SPAPI OSErr (*GetBoolean)(PIActionList list, uint32 index, Boolean* value);
02947 SPAPI OSErr (*GetList)(PIActionList list, uint32 index, PIActionList* actionList);
02948 SPAPI OSErr (*GetObject)(PIActionList list, uint32 index, DescriptorClassID* type, PIActionDescriptor* value);
02949 SPAPI OSErr (*GetGlobalObject)(PIActionList list, uint32 index, DescriptorClassID* type, PIActionDescriptor* value);
02950 SPAPI OSErr (*GetEnumerated)(PIActionList list, uint32 index, DescriptorEnumTypeID* type, DescriptorEnumID* value);
02951 SPAPI OSErr (*GetReference)(PIActionList list, uint32 index, PIActionReference* value);
02952 SPAPI OSErr (*GetClass)(PIActionList list, uint32 index, DescriptorClassID* value);
02953 SPAPI OSErr (*GetGlobalClass)(PIActionList list, uint32 index, DescriptorClassID* value);
02954 SPAPI OSErr (*GetAlias)(PIActionList list, uint32 index, Handle* aliasHandle);
02955 SPAPI OSErr (*PutIntegers)(PIActionList list, uint32 count, int32* );
02956 SPAPI OSErr (*GetIntegers)(PIActionList list, uint32 count, int32* value);
02957 SPAPI OSErr (*PutData)(PIActionList list, int32 length, void* data);
02958 SPAPI OSErr (*GetDataLength)(PIActionList list, uint32 index, int32* length);
02959 SPAPI OSErr (*GetData)(PIActionList list, uint32 index, void* value);
02960 SPAPI OSErr (*PutZString)(PIActionList list, ASZString zstring);
02961 SPAPI OSErr (*GetZString)(PIActionList list, uint32 index, ASZString* zstring);
02962 } PSActionListProcs1;
02963
02964
02965
02966
02967
02968
02969
03000
03001 #define kPSActionReferenceSuite "df135117-c769-11d0-8079-00c04fd7ec47"
03002
03003 #define kPSActionReferenceSuiteVersion 3
03004 #define kPSActionReferenceSuitePrevVersion 2
03005
03009 typedef struct PSActionReferenceProcs
03010 {
03011
03017 SPAPI OSErr (*Make)(PIActionReference* reference);
03018
03024 SPAPI OSErr (*Free)(PIActionReference ref);
03025
03035 SPAPI OSErr (*GetForm)(PIActionReference ref, DescriptorFormID* value);
03036
03043 SPAPI OSErr (*GetDesiredClass)(PIActionReference ref, DescriptorClassID* value);
03044
03052 SPAPI OSErr (*PutName)(PIActionReference ref, DescriptorClassID desiredClass, const char* cstrValue);
03053
03061 SPAPI OSErr (*PutIndex)(PIActionReference ref, DescriptorClassID desiredClass, uint32 value);
03062
03070 SPAPI OSErr (*PutIdentifier)(PIActionReference ref, DescriptorClassID desiredClass, uint32 value);
03071
03079 SPAPI OSErr (*PutOffset)(PIActionReference ref, DescriptorClassID desiredClass, int32 value);
03080
03090 SPAPI OSErr (*PutEnumerated)(PIActionReference ref, DescriptorClassID desiredClass, DescriptorEnumTypeID type, DescriptorEnumID value);
03091
03099 SPAPI OSErr (*PutProperty)(PIActionReference ref, DescriptorClassID desiredClass, DescriptorKeyID value);
03100
03107 SPAPI OSErr (*PutClass)(PIActionReference ref, DescriptorClassID desiredClass);
03108
03115 SPAPI OSErr (*GetNameLength)(PIActionReference ref, uint32* stringLength);
03116
03124 SPAPI OSErr (*GetName)(PIActionReference ref, char* name, uint32 maxLength);
03125
03132 SPAPI OSErr (*GetIndex)(PIActionReference ref, uint32* value);
03133
03140 SPAPI OSErr (*GetIdentifier)(PIActionReference ref, uint32* value);
03141
03148 SPAPI OSErr (*GetOffset)(PIActionReference ref, int32* value);
03149
03157 SPAPI OSErr (*GetEnumerated)(PIActionReference ref, DescriptorEnumTypeID* type, DescriptorEnumID* enumValue);
03158
03165 SPAPI OSErr (*GetProperty)(PIActionReference ref, DescriptorKeyID* value);
03166
03175 SPAPI OSErr (*GetContainer)(PIActionReference ref, PIActionReference* value);
03176
03184 SPAPI OSErr (*PutNameZString)(PIActionReference ref, DescriptorClassID desiredClass, ASZString zstring);
03185
03193 SPAPI OSErr (*GetNameZString)(PIActionReference ref, ASZString* zstring);
03194
03195 } PSActionReferenceProcs;
03203 typedef struct PSActionReferenceProcsOld
03204 {
03205 SPAPI OSErr (*Make)(PIActionReference* reference);
03206 SPAPI OSErr (*Free)(PIActionReference ref);
03207 SPAPI OSErr (*GetForm)(PIActionReference ref, DescriptorFormID* value);
03208 SPAPI OSErr (*GetDesiredClass)(PIActionReference ref, DescriptorClassID* value);
03209 SPAPI OSErr (*PutName)(PIActionReference ref, DescriptorClassID desiredClass, const char* cstrValue);
03210 SPAPI OSErr (*PutIndex)(PIActionReference ref, DescriptorClassID desiredClass, uint32 value);
03211 SPAPI OSErr (*PutIdentifier)(PIActionReference ref, DescriptorClassID desiredClass, uint32 value);
03212 SPAPI OSErr (*PutOffset)(PIActionReference ref, DescriptorClassID desiredClass, int32 value);
03213 SPAPI OSErr (*PutEnumerated)(PIActionReference ref, DescriptorClassID desiredClass, DescriptorEnumTypeID type, DescriptorEnumID value);
03214 SPAPI OSErr (*PutProperty)(PIActionReference ref, DescriptorClassID desiredClass, DescriptorKeyID value);
03215 SPAPI OSErr (*PutClass)(PIActionReference ref, DescriptorClassID desiredClass);
03216 SPAPI OSErr (*GetNameLength)(PIActionReference ref, uint32* stringLength);
03217 SPAPI OSErr (*GetName)(PIActionReference ref, char* name, uint32 maxLength);
03218 SPAPI OSErr (*GetIndex)(PIActionReference ref, uint32* value);
03219 SPAPI OSErr (*GetIdentifier)(PIActionReference ref, uint32* value);
03220 SPAPI OSErr (*GetOffset)(PIActionReference ref, int32* value);
03221 SPAPI OSErr (*GetEnumerated)(PIActionReference ref, DescriptorEnumTypeID* type, DescriptorEnumID* enumValue);
03222 SPAPI OSErr (*GetProperty)(PIActionReference ref, DescriptorKeyID* value);
03223 SPAPI OSErr (*GetContainer)(PIActionReference ref, PIActionReference* value);
03224 } PSActionReferenceProcsOld;
03229
03230
03231
03232 #if PRAGMA_STRUCT_ALIGN
03233 #pragma options align=mac68k
03234 #endif
03235
03236 #if MSWindows
03237 #pragma pack(push,1)
03238 #endif
03239
03247 typedef struct PIActionParameters
03248 {
03249
03250 PIDialogPlayOptions playInfo;
03252 PIDialogRecordOptions recordInfo;
03254 PIActionDescriptor descriptor;
03257 } PIActionParameters;
03258
03259
03260 #if PRAGMA_STRUCT_ALIGN
03261 #pragma options align=reset
03262 #endif
03263
03264 #if MSWindows
03265 #pragma pack(pop)
03266 #endif
03267
03268
03269
03270 #endif // Rez
03271
03272
03273
03274 #endif // __PIActions_h__