diff options
Diffstat (limited to 'Parser')
-rw-r--r-- | Parser/intrcheck.c | 77 |
1 files changed, 1 insertions, 76 deletions
diff --git a/Parser/intrcheck.c b/Parser/intrcheck.c index 96dd484..09df460 100644 --- a/Parser/intrcheck.c +++ b/Parser/intrcheck.c @@ -116,82 +116,7 @@ intrcheck() #ifdef macintosh -#ifdef applec /* MPW */ -#include <OSEvents.h> -#include <SysEqu.h> -#endif /* applec */ - -#include <signal.h> - -static int interrupted; - -static RETSIGTYPE intcatcher PROTO((int)); -static RETSIGTYPE -intcatcher(sig) - int sig; -{ - interrupted = 1; - signal(SIGINT, intcatcher); -} - -void -initintr() -{ - if (signal(SIGINT, SIG_IGN) != SIG_IGN) - signal(SIGINT, intcatcher); -} - -#ifdef THINK_C -/* MPW and MW runtime catch cmd-. and raise SIGINT, THINK does not, it seems */ -static void -scan_event_queue(flush) - int flush; -{ - register EvQElPtr q; - - q = (EvQElPtr) GetEvQHdr()->qHead; - - for (; q; q = (EvQElPtr)q->qLink) { - if (q->evtQWhat == keyDown && - (char)q->evtQMessage == '.' && - (q->evtQModifiers & cmdKey) != 0) { - if ( flush ) - FlushEvents(keyDownMask, 0); - interrupted = 1; - break; - } - } -} -#endif - -int -intrcheck() -{ -#ifdef THINK_C - scan_event_queue(1); -#endif - PyMac_Yield(); - if (interrupted) { - interrupted = 0; - return 1; - } - return 0; -} - -/* intrpeek() is like intrcheck(), but it doesn't flush the events. The -** idea is that you call intrpeek() somewhere in a busy-wait loop, and return -** None as soon as it returns 1. The mainloop will then pick up the cmd-. soon -** thereafter. -*/ -int -intrpeek() -{ -#ifdef THINK_C - scan_event_queue(0); -#endif - return interrupted; -} - +/* The Mac interrupt code has moved to macglue.c */ #define OK #endif /* macintosh */ |