iac.h

Go to the documentation of this file.
00001 
00002 /*  $Id: iac.h 355 2005-01-11 22:48:55Z andreradke $    */
00003 
00004 /* copyright 1991-96 UserLand Software, Inc. All Rights Reserved.*/
00005 
00006 
00007 #ifndef __IAC__
00008 #define __IAC__ /*so other modules can tell that we've been included*/
00009 
00010 
00011 #ifndef __APPLEEVENTS__
00012 
00013     #include <AppleEvents.h>
00014 
00015 #endif
00016 
00017 
00018 typedef struct tyIACglobals { /*this global record helps keep param lists short*/
00019     
00020     pascal short (*waitroutine) (EventRecord *);
00021     
00022     AppleEvent *event; /*the current event being processed*/
00023     
00024     AppleEvent *reply; /*the reply to the current event*/
00025     
00026     long refcon; /*the refcon info passed with the message*/
00027     
00028     OSType idprocess; /*creator id of the process we're running inside of*/
00029     
00030     OSErr errorcode; /*the specific error code returned from the Apple Event Manager*/
00031     
00032     Boolean nextparamoptional; /*if true, any IACgetxxxparam won't cause error if param isn't there*/
00033     
00034     Boolean dontdisposenextparam; /*dmb 4.1: if true, any IACpushxxxparam won't dispose param if it didn't allocate it*/
00035     } tyIACglobals;
00036     
00037 extern tyIACglobals IACglobals;
00038 
00039 
00040 typedef pascal Boolean (*tyFScallback) (FSSpec *);
00041 
00042 typedef pascal OSErr (*tyAEHandler) (const AppleEvent *, AppleEvent *, long);
00043 
00044 typedef pascal void (*tyAsynchCallback) (AppleEvent *);
00045 
00046 
00047 
00048 /*iac.c*/
00049     
00050     Boolean IACinit (void);
00051     
00052     Boolean IAChaveappleevents (void);
00053     
00054     Boolean IACinstallhandler (AEEventClass, AEEventID, ProcPtr);
00055     
00056     Boolean IACremovehandler (AEEventClass, AEEventID, ProcPtr);
00057     
00058     Boolean IAChandlerinstalled (OSType, OSType, Boolean);
00059     
00060     Boolean IACinstallcoercionhandler (DescType, DescType, ProcPtr);
00061     
00062     Boolean IACnewverb (OSType, OSType, OSType, AppleEvent *);
00063     
00064     Boolean IACsendverb (AppleEvent *, AppleEvent *);
00065     
00066     Boolean IACsendverbnoreply (AppleEvent *, AppleEvent *);
00067     
00068     Boolean IACdisposeverb (AppleEvent *);
00069     
00070     OSType IACgetverbclass (void);
00071     
00072     OSType IACgetverbtoken (void);
00073     
00074     void IACparamerror (OSErr, Str255, OSType);
00075     
00076     Boolean IACiserrorreply (Str255);
00077     
00078     Boolean IACreturnerror (short, Str255);
00079     
00080     void IACnothandlederror (void);
00081     
00082     OSErr IACdrivefilelist (tyFScallback);
00083     
00084     OSType IACgetsender (void);
00085 
00086     Boolean IACnextparamisoptional (void);
00087 
00088 /*iacsysevents.c*/
00089 
00090     Boolean IACinstallsystemhandler (AEEventClass, AEEventID, ProcPtr);
00091     
00092     Boolean IACremovesystemhandler (AEEventClass, AEEventID, ProcPtr);
00093     
00094     Boolean IACnewsystemverb (OSType, OSType, AppleEvent *);
00095     
00096     void IACremovesystemhandlers (void);
00097     
00098 /*iacasynch.c*/
00099     
00100     Boolean IACsendasynch (AppleEvent *, tyAsynchCallback);
00101 
00102 /*iacops.c*/
00103     
00104     pascal short IACwaitroutine (EventRecord *, long *, RgnHandle *);
00105     
00106     extern AEIdleUPP IACwaitroutineUPP;
00107     
00108 /*iacbinary.c*/
00109     
00110     Boolean IACpushbinaryparam (Handle, OSType, OSType);
00111     
00112     Boolean IACgetbinaryparam (OSType, Handle *, OSType *);
00113     
00114     Boolean IACreturnbinary (Handle, OSType);
00115     
00116     Boolean IACgetbinaryitem (AEDescList *, long, Handle *, OSType *);
00117 
00118     Boolean IACpushbinaryitem (AEDescList *, Handle, OSType, long);
00119 
00120 /*iacboolean.c*/
00121     
00122     Boolean IACpushbooleanparam (Boolean val, OSType keyword);
00123     
00124     Boolean IACgetbooleanparam (OSType, Boolean *);
00125     
00126     Boolean IACreturnboolean (Boolean);
00127     
00128     Boolean IACgetbooleanitem (AEDescList *, long, Boolean *);
00129 
00130     Boolean IACpushbooleanitem (AEDescList *, Boolean, long);
00131 
00132 /*iacdate.c*/
00133     
00134     Boolean IACpushdateparam (long, OSType);
00135     
00136     Boolean IACgetdateparam (OSType, long *);
00137     
00138     Boolean IACreturndate (long);
00139     
00140     Boolean IACgetdateitem (AEDescList *, long, long *);
00141 
00142     Boolean IACpushdateitem (AEDescList *, long, long);
00143     
00144 /*iacdouble.c*/
00145     
00146     Boolean IACpushdoubleparam (double, OSType);
00147     
00148     Boolean IACgetdoubleparam (OSType, double *);
00149     
00150     Boolean IACreturndouble (double);
00151 
00152     Boolean IACgetdoubleitem (AEDescList *, long, double *);
00153 
00154     Boolean IACpushdoubleitem (AEDescList *, double, long);
00155 
00156 /*iacfilespec.c*/
00157     
00158     Boolean IACpushfilespecparam (FSSpec *, OSType);
00159     
00160     Boolean IACgetfilespecparam (OSType, FSSpec *);
00161     
00162     Boolean IACreturnfilespec (FSSpec *);
00163 
00164     Boolean IACgetfilespecitem (AEDescList *, long, FSSpec *);
00165 
00166     Boolean IACpushfilespecitem (AEDescList *, FSSpec *, long);
00167 
00168 /*iaclist.c*/
00169 
00170     Boolean IACpushlistparam (AEDescList *, OSType);
00171 
00172     Boolean IACreturnlist (AEDescList *);
00173 
00174     Boolean IACgetlistparam (OSType, AEDescList *);
00175 
00176     Boolean IACgetlistitem (AEDescList *, long, AEDescList *);
00177 
00178     Boolean IACpushlistitem (AEDescList *, AEDescList *, long);
00179 
00180     Boolean IACnewlist (AEDescList *);
00181 
00182 /*iaclong.c*/
00183     
00184     Boolean IACpushlongparam (long, OSType);
00185     
00186     Boolean IACgetlongparam (OSType, long *);
00187     
00188     Boolean IACreturnlong (long);
00189     
00190     Boolean IACgetlongitem (AEDescList *, long, long *);
00191 
00192     Boolean IACpushlongitem (AEDescList *, long, long);
00193 
00194 /*iacpoint.c*/
00195     
00196     Boolean IACpushpointparam (Point, OSType);
00197     
00198     Boolean IACgetpointparam (OSType, Point *);
00199     
00200     Boolean IACreturnpoint (Point);
00201 
00202     Boolean IACgetpointitem (AEDescList *, long, Point *);
00203 
00204     Boolean IACpushpointitem (AEDescList *, Point, long);
00205 
00206 /*iacrecord.c*/
00207 
00208     Boolean IACpushrecordparam (AERecord *, OSType);
00209 
00210     Boolean IACreturnrecord (AERecord *);
00211 
00212     Boolean IACgetrecordparam (OSType, AERecord *);
00213 
00214     Boolean IACgetrecorditem (AEDescList *, long, AERecord *);
00215 
00216     Boolean IACpushrecorditem (AEDescList *, AERecord *, long);
00217 
00218     Boolean IACnewrecord (AERecord *);
00219 
00220     Boolean IACgetiteminfo (AERecord *, long, AEKeyword *, DescType *, Size *);
00221 
00222 /*iacrect.c*/
00223     
00224     Boolean IACpushrectparam (Rect *, OSType);
00225     
00226     Boolean IACgetrectparam (OSType, Rect *);
00227 
00228     Boolean IACreturnrect (Rect *);
00229     
00230     Boolean IACgetrectitem(AEDescList *, long, Rect *);
00231 
00232     Boolean IACpushrectitem (AEDescList *, Rect *, long);
00233     
00234 /*iacrgb.c*/
00235     
00236     Boolean IACpushRGBColorparam (RGBColor *, OSType);
00237     
00238     Boolean IACgetRGBColorparam (OSType, RGBColor *);
00239     
00240     Boolean IACreturnRGBColor (RGBColor *);
00241 
00242     Boolean IACgetRGBColoritem (AEDescList *, long, RGBColor *);
00243 
00244     Boolean IACpushRGBColoritem (AEDescList *, RGBColor *, long);
00245 
00246 /*iacshort.c*/
00247     
00248     Boolean IACpushshortparam (short, OSType);
00249     
00250     Boolean IACgetshortparam (OSType, short *);
00251     
00252     Boolean IACreturnshort (short);
00253     
00254     Boolean IACgetshortitem (AEDescList *, long, short *);
00255 
00256     Boolean IACpushshortitem (AEDescList *, short, long);
00257 
00258 /*iacstring.c*/
00259     
00260     Boolean IACpushstringparam (StringPtr, OSType);
00261     
00262     Boolean IACgetstringparam (OSType, StringPtr);
00263     
00264     Boolean IACreturnstring (StringPtr);
00265 
00266     Boolean IACgetstringitem (AEDescList *, long, StringPtr);
00267 
00268     Boolean IACpushstringitem (AEDescList *, StringPtr, long);
00269 
00270 /*iacstring4.c*/
00271     
00272     Boolean IACpushstring4param (OSType, OSType);
00273     
00274     Boolean IACgetstring4param (OSType, OSType *);
00275     
00276     Boolean IACreturnstring4 (OSType);
00277     
00278     Boolean IACgetstring4item (AEDescList *, long, OSType *);
00279 
00280     Boolean IACpushstring4item (AEDescList *, OSType, long);
00281 
00282 /*iactable.c*/
00283     
00284     Boolean IACpushtableparam (Handle, OSType);
00285     
00286     Boolean IACgettableparam (OSType, Handle *);
00287     
00288     Boolean IACreturntable (Handle);
00289     
00290     Boolean IACgettableitem (AEDescList *, long, Handle *);
00291 
00292     Boolean IACpushtableitem (AEDescList *, Handle, long);
00293 
00294 /*iactext.c*/
00295     
00296     Boolean IACpushtextparam (Handle, OSType);
00297     
00298     Boolean IACgettextparam (OSType, Handle *);
00299     
00300     Boolean IACreturntext (Handle);
00301     
00302     Boolean IACgettextitem (AEDescList *, long, Handle *);
00303 
00304     Boolean IACpushtextitem (AEDescList *, Handle, long);
00305 
00306     Boolean IACpushtextitemcopy (AEDescList *, Handle, long);
00307     
00308 /*iacnetwork.c*/
00309 
00310     Boolean IACnewnetworkverb (ConstStr255Param, OSType, OSType, AppleEvent *);
00311     
00312 #endif  // __IAC__
00313 
00314     
00315 
00316     
00317     

Generated on Wed May 31 18:19:47 2006 for frontierkernel 10.1.10a by  doxygen 1.4.6