home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-04-24 | 1.6 KB | 47 lines | [TEXT/CWIE] |
- // Program Author: Paul Baxter pbaxter@assistivetech.com
- // This program may be freely distributed.
- //
- //
-
- // Constant offsets into jGNEFilter for inline data
- #define kNextFilterOffset 0x02
- #define kEventHelperOffset 0x06
- #define kEventHelperDataOffset 0x0A
-
- #define ____USE_FRALLOC____
-
- // Cleanest Solution for PPC - Stuff Raw 68k into a SystemPtr
- #define kGNEFilterHexData "\p600C0000000000000000000000004E56000048E7E0E0207AFFEE2008\
- 4A80670E2F3AFFE82F09207AFFDE4E90508F4CDF07074E5E207AFFCC4ED08B4576656E7446696C7465720000"
-
- // Declare a Guide for Passing the Filter Helper, for Universal Headers
- #if !GENERATINGPOWERPC
- typedef void (*FilterHelperProcPtr)(EventRecord *theEvent, Ptr helperData);
- typedef FilterHelperProcPtr FilterHelperUPP;
- enum {
- uppFilterHelperProcInfo = 0
- };
- #define NewFilterHelperProc(proc) (FilterHelperUPP)(proc)
- #else
- typedef UniversalProcPtr FilterHelperUPP;
- enum {
- uppFilterHelperProcInfo = kCStackBased
- | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(EventRecord *)))
- | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(Ptr)))
- };
- #define NewFilterHelperProc(proc) (FilterHelperUPP) \
- NewRoutineDescriptor((ProcPtr)(proc), uppFilterHelperProcInfo, GetCurrentArchitecture())
- #endif GENERATINGPOWERPC
-
- #if GENERATING68K
- asm void EventFilter(void);
- void EndEventFilter(void);
- #endif GENERATING68K
-
- // Function Prototypes
- extern Ptr InstallEventFilter(FilterHelperUPP helperProc, Ptr helperData);
- extern Ptr ReleaseEventFilter(Ptr filterProc);
- extern Boolean GetFloaterEvent(EventRecord *theEvent);
- extern void EventFilterHelper(EventRecord *theEvent, Ptr helperData);
- extern void InstallFilter(void);
-