diff options
author | Jack Jansen <jack.jansen@cwi.nl> | 2000-06-02 21:27:11 (GMT) |
---|---|---|
committer | Jack Jansen <jack.jansen@cwi.nl> | 2000-06-02 21:27:11 (GMT) |
commit | bb6d83a8c4b5d6872b7bf5ee927a184f286cf56d (patch) | |
tree | 80572eff679043c8c0676e94f8470844010784b7 | |
parent | 14cd750004af0fac7d39fae307eb8184c8f0dc24 (diff) | |
download | cpython-bb6d83a8c4b5d6872b7bf5ee927a184f286cf56d.zip cpython-bb6d83a8c4b5d6872b7bf5ee927a184f286cf56d.tar.gz cpython-bb6d83a8c4b5d6872b7bf5ee927a184f286cf56d.tar.bz2 |
Removed (within an #ifdef) Carbon-incompatabilities:
- Use TickCount() in stead of LMGetTicks()
- Don't use xxxGetFile event filter
- Don't call SystemTask or HandleSysWindowEvent (is this also automatically handled under os9??)
- Don't scan event queue for cmd-. (to be fixed at some point).
-rw-r--r-- | Mac/Python/macglue.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Mac/Python/macglue.c b/Mac/Python/macglue.c index fd0ddfb..e79a64a 100644 --- a/Mac/Python/macglue.c +++ b/Mac/Python/macglue.c @@ -32,6 +32,11 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. #include <Events.h> +#ifdef TARGET_API_MAC_CARBON +/* Unfortunately this call is probably slower... */ +#define LMGetTicks() TickCount() +#endif + #ifdef __CFM68K__ #undef GetEventQueue #endif /* __CFM68K__ */ @@ -147,8 +152,15 @@ struct hook_args { int selectcur_hit; /* Set to true when "select current" selected */ char *prompt; /* The prompt */ }; +#ifdef TARGET_API_MAC_CARBON +/* The StandardFile hooks don't exist in Carbon. This breaks GetDirectory, +** but the macfsn code will replace it by a NavServices version anyway. +*/ +#define myhook_upp NULL +#else static DlgHookYDUPP myhook_upp; static int upp_inited = 0; +#endif /* ** The python-code event handler @@ -400,6 +412,10 @@ static void scan_event_queue(flush) int flush; { +#ifdef TARGET_API_MAC_CARBON + /* CARBONXXXX To be implemented */ + return; +#else register EvQElPtr q; q = (EvQElPtr) LMGetEventQueue()->qHead; @@ -414,6 +430,7 @@ scan_event_queue(flush) break; } } +#endif } int @@ -486,6 +503,7 @@ void PyMac_HandleEventIntern(evp) EventRecord *evp; { +#ifndef TARGET_API_MAC_CARBON if ( evp->what == mouseDown ) { WindowPtr wp; @@ -494,6 +512,7 @@ PyMac_HandleEventIntern(evp) return; } } +#endif #ifdef __MWERKS__ { int siouxdidit; @@ -561,9 +580,11 @@ PyMac_DoYield(int maxsleep, int maycallpython) */ if( in_here > 1 || !schedparams.process_events || (python_event_handler && !maycallpython) ) { +#ifndef TARGET_API_MAC_CARBON if ( maxsleep >= 0 ) { SystemTask(); } +#endif } else { latest_time_ready = LMGetTicks() + maxsleep; do { @@ -743,10 +764,12 @@ PyMac_GetDirectory(dirfss, prompt) StandardFileReply reply; struct hook_args hook_args; +#ifndef TARGET_API_MAC_CARBON if ( !upp_inited ) { myhook_upp = NewDlgHookYDProc(myhook_proc); upp_inited = 1; } +#endif if ( prompt && *prompt ) hook_args.prompt = (char *)Pstring(prompt); else @@ -769,10 +792,12 @@ void PyMac_PromptGetFile(short numTypes, ConstSFTypeListPtr typeList, static Point where = {-1, -1}; struct hook_args hook_args; +#ifndef TARGET_API_MAC_CARBON if ( !upp_inited ) { myhook_upp = NewDlgHookYDProc(myhook_proc); upp_inited = 1; } +#endif if ( prompt && *prompt ) hook_args.prompt = (char *)Pstring(prompt); else |