diff options
author | das <das> | 2009-04-10 18:02:41 (GMT) |
---|---|---|
committer | das <das> | 2009-04-10 18:02:41 (GMT) |
commit | 3a59859d7ab015429c899f51da5ab7f456537a72 (patch) | |
tree | fb968c2412fe426061f702eb566c018a678bfbf4 /generic | |
parent | 851b84588c5868736c40cb8906df442c89b3a3ec (diff) | |
download | tcl-3a59859d7ab015429c899f51da5ab7f456537a72.zip tcl-3a59859d7ab015429c899f51da5ab7f456537a72.tar.gz tcl-3a59859d7ab015429c899f51da5ab7f456537a72.tar.bz2 |
* macosx/tclMacOSXNotify.c: revise CoreFoundation notifier to allow
* unix/tclUnixChan.c: embedding into applications that
* unix/tclUnixEvent.c: already have a CFRunLoop running and
want to run the tcl event loop via
Tcl_ServiceModeHook(TCL_SERVICE_ALL).
* macosx/tclMacOSXNotify.c: add CFRunLoop based Tcl_Sleep() and
* unix/tclUnixChan.c: TclUnixWaitForFile() implementations
* unix/tclUnixEvent.c: and disable select() based ones in
CoreFoundation builds.
* unix/tclUnixNotify.c: simplify, sync with tclMacOSXNotify.c.
* generic/tclInt.decls: add TclMacOSXNotifierAddRunLoopMode()
* generic/tclIntPlatDecls.h: internal API, regen.
* generic/tclStubInit.c:
Diffstat (limited to 'generic')
-rw-r--r-- | generic/tclInt.decls | 5 | ||||
-rw-r--r-- | generic/tclIntPlatDecls.h | 13 | ||||
-rw-r--r-- | generic/tclStubInit.c | 3 |
3 files changed, 18 insertions, 3 deletions
diff --git a/generic/tclInt.decls b/generic/tclInt.decls index ccc568f..ecd6196 100644 --- a/generic/tclInt.decls +++ b/generic/tclInt.decls @@ -13,7 +13,7 @@ # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. # -# RCS: @(#) $Id: tclInt.decls,v 1.121 2008/01/23 17:31:42 dgp Exp $ +# RCS: @(#) $Id: tclInt.decls,v 1.121.2.1 2009/04/10 18:02:42 das Exp $ library tcl @@ -1145,3 +1145,6 @@ declare 18 macosx { CONST char *fileName, Tcl_StatBuf *statBufPtr, Tcl_GlobTypeData *types) } +declare 19 macosx { + void TclMacOSXNotifierAddRunLoopMode(CONST void *runLoopMode) +} diff --git a/generic/tclIntPlatDecls.h b/generic/tclIntPlatDecls.h index 38563b1..a89c8f0 100644 --- a/generic/tclIntPlatDecls.h +++ b/generic/tclIntPlatDecls.h @@ -9,7 +9,7 @@ * Copyright (c) 1998-1999 by Scriptics Corporation. * All rights reserved. * - * RCS: @(#) $Id: tclIntPlatDecls.h,v 1.32 2007/12/13 15:23:18 dgp Exp $ + * RCS: @(#) $Id: tclIntPlatDecls.h,v 1.32.2.1 2009/04/10 18:02:42 das Exp $ */ #ifndef _TCLINTPLATDECLS @@ -368,6 +368,12 @@ EXTERN int TclMacOSXMatchType (Tcl_Interp * interp, Tcl_StatBuf * statBufPtr, Tcl_GlobTypeData * types); #endif +#ifndef TclMacOSXNotifierAddRunLoopMode_TCL_DECLARED +#define TclMacOSXNotifierAddRunLoopMode_TCL_DECLARED +/* 19 */ +EXTERN void TclMacOSXNotifierAddRunLoopMode ( + CONST void * runLoopMode); +#endif #endif /* MACOSX */ typedef struct TclIntPlatStubs { @@ -443,6 +449,7 @@ typedef struct TclIntPlatStubs { int (*tclMacOSXSetFileAttribute) (Tcl_Interp * interp, int objIndex, Tcl_Obj * fileName, Tcl_Obj * attributePtr); /* 16 */ int (*tclMacOSXCopyFileAttributes) (CONST char * src, CONST char * dst, CONST Tcl_StatBuf * statBufPtr); /* 17 */ int (*tclMacOSXMatchType) (Tcl_Interp * interp, CONST char * pathName, CONST char * fileName, Tcl_StatBuf * statBufPtr, Tcl_GlobTypeData * types); /* 18 */ + void (*tclMacOSXNotifierAddRunLoopMode) (CONST void * runLoopMode); /* 19 */ #endif /* MACOSX */ } TclIntPlatStubs; @@ -697,6 +704,10 @@ extern TclIntPlatStubs *tclIntPlatStubsPtr; #define TclMacOSXMatchType \ (tclIntPlatStubsPtr->tclMacOSXMatchType) /* 18 */ #endif +#ifndef TclMacOSXNotifierAddRunLoopMode +#define TclMacOSXNotifierAddRunLoopMode \ + (tclIntPlatStubsPtr->tclMacOSXNotifierAddRunLoopMode) /* 19 */ +#endif #endif /* MACOSX */ #endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */ diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c index f663610..18c4f44 100644 --- a/generic/tclStubInit.c +++ b/generic/tclStubInit.c @@ -8,7 +8,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclStubInit.c,v 1.150 2008/01/23 17:31:42 dgp Exp $ + * RCS: @(#) $Id: tclStubInit.c,v 1.150.2.1 2009/04/10 18:02:42 das Exp $ */ #include "tclInt.h" @@ -409,6 +409,7 @@ TclIntPlatStubs tclIntPlatStubs = { TclMacOSXSetFileAttribute, /* 16 */ TclMacOSXCopyFileAttributes, /* 17 */ TclMacOSXMatchType, /* 18 */ + TclMacOSXNotifierAddRunLoopMode, /* 19 */ #endif /* MACOSX */ }; |