17 #ifndef __TYPESELECT__
18 #define __TYPESELECT__
37 #if PRAGMA_STRUCT_ALIGN
38 #pragma options align = mac68k
39 #elif PRAGMA_STRUCT_PACKPUSH
41 #elif PRAGMA_STRUCT_PACK
45 typedef SInt16 TSCode;
48 tsPreviousSelectMode = -1,
49 tsNormalSelectMode = 0,
55 unsigned long tsrLastKeyTime;
60 typedef CALLBACK_API(
Boolean, IndexToStringProcPtr)(
short item,
61 ScriptCode *itemsScript,
103 TSCode selectMode, IndexToStringUPP getStringProc,
128 #if !OPAQUE_UPP_TYPES
131 uppIndexToStringProcInfo = 0x00003F90
137 uppIndexToStringProcInfo,
138 GetCurrentArchitecture());
141 #define NewIndexToStringUPP(userRoutine) \
143 NewRoutineDescriptor((ProcPtr)(userRoutine), uppIndexToStringProcInfo, \
144 GetCurrentArchitecture())
158 #if !OPAQUE_UPP_TYPES
165 #define DisposeIndexToStringUPP(userUPP) DisposeRoutineDescriptor(userUPP)
179 StringPtr *itemsStringPtr,
void *yourDataPtr,
180 IndexToStringUPP userUPP);
181 #if !OPAQUE_UPP_TYPES
186 IndexToStringUPP userUPP)
188 return (
Boolean)CALL_FOUR_PARAMETER_UPP(userUPP, uppIndexToStringProcInfo,
189 item, itemsScript, itemsStringPtr,
193 #define InvokeIndexToStringUPP(item, itemsScript, itemsStringPtr, yourDataPtr, \
196 CALL_FOUR_PARAMETER_UPP((userUPP), uppIndexToStringProcInfo, (item), \
197 (itemsScript), (itemsStringPtr), (yourDataPtr))
201 #if CALL_NOT_IN_CARBON || OLDROUTINENAMES
203 #define NewIndexToStringProc(userRoutine) NewIndexToStringUPP(userRoutine)
204 #define CallIndexToStringProc(userRoutine, item, itemsScript, itemsStringPtr, \
206 InvokeIndexToStringUPP(item, itemsScript, itemsStringPtr, yourDataPtr, \
210 #if PRAGMA_STRUCT_ALIGN
211 #pragma options align = reset
212 #elif PRAGMA_STRUCT_PACKPUSH
214 #elif PRAGMA_STRUCT_PACK
218 #ifdef PRAGMA_IMPORT_OFF
Event Manager Interfaces.
unsigned char * StringPtr
Definition: MacTypes.h:477
unsigned char Boolean
Definition: MacTypes.h:318
void DisposeRoutineDescriptor(UniversalProcPtr theUPP)
#define STACK_UPP_TYPE(name)
Definition: MixedMode.h:734
UniversalProcPtr NewRoutineDescriptor(ProcPtr theProc, ProcInfoType theProcInfo, ISAType theISA)
short TypeSelectFindItem(const TypeSelectRecord *tsr, short listSize, TSCode selectMode, IndexToStringUPP getStringProc, void *yourDataPtr)
void DisposeIndexToStringUPP(IndexToStringUPP userUPP)
short TypeSelectCompare(const TypeSelectRecord *tsr, ScriptCode testStringScript, StringPtr testStringPtr)
Boolean TypeSelectNewKey(const EventRecord *theEvent, TypeSelectRecord *tsr)
IndexToStringUPP NewIndexToStringUPP(IndexToStringProcPtr userRoutine)
Boolean InvokeIndexToStringUPP(short item, ScriptCode *itemsScript, StringPtr *itemsStringPtr, void *yourDataPtr, IndexToStringUPP userUPP)
void TypeSelectClear(TypeSelectRecord *tsr)
Definition: TypeSelect.h:54