summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordgp@users.sourceforge.net <dgp>2015-02-12 13:19:25 (GMT)
committerdgp@users.sourceforge.net <dgp>2015-02-12 13:19:25 (GMT)
commita78353d58d86898def58f36a4d9ec766c5e6c6de (patch)
treec7384dd1de5df953b48ac6d72206b3c01c841238
parent774aa97ece5b80333d81535c33fd4a822ea5248b (diff)
downloadtk-a78353d58d86898def58f36a4d9ec766c5e6c6de.zip
tk-a78353d58d86898def58f36a4d9ec766c5e6c6de.tar.gz
tk-a78353d58d86898def58f36a4d9ec766c5e6c6de.tar.bz2
Different approach to stubs for the TkpScanWindowId() declaration.
Man, what an inflexible maintenance chore this stuff is.
-rw-r--r--generic/tkBind.c38
-rw-r--r--generic/tkInt.decls6
-rw-r--r--generic/tkIntDecls.h14
-rw-r--r--generic/tkIntPlatDecls.h11
-rw-r--r--generic/tkStubInit.c3
5 files changed, 38 insertions, 34 deletions
diff --git a/generic/tkBind.c b/generic/tkBind.c
index d7c8c04..c4f8226 100644
--- a/generic/tkBind.c
+++ b/generic/tkBind.c
@@ -16,9 +16,9 @@
#ifdef __WIN32__
#include "tkWinInt.h"
-#endif
-
-#if !(defined(__WIN32__) || defined(MAC_OSX_TK)) /* UNIX */
+#elif defined(MAC_OSX_TK)
+#include "tkMacOSXInt.h"
+#else
#include "tkUnixInt.h"
#endif
@@ -156,7 +156,7 @@ typedef struct PatternTableKey {
* events as part of the process of converting X events into Tcl commands.
*/
-typedef struct Pattern {
+typedef struct TkPattern {
int eventType; /* Type of X event, e.g. ButtonPress. */
int needMods; /* Mask of modifiers that must be present (0
* means no modifiers are required). */
@@ -170,7 +170,7 @@ typedef struct Pattern {
* button (0 means any buttons are OK). For
* virtual events, specifies the Tk_Uid of the
* virtual event name (never 0). */
-} Pattern;
+} TkPattern;
/*
* The following structure defines a pattern sequence, which consists of one
@@ -223,7 +223,7 @@ typedef struct PatSeq {
* for end of list). Needed to implement
* Tk_DeleteAllBindings. In a virtual event
* table, always NULL. */
- Pattern pats[1]; /* Array of "numPats" patterns. Only one
+ TkPattern pats[1]; /* Array of "numPats" patterns. Only one
* element is declared here but in actuality
* enough space will be allocated for
* "numPats" patterns. To match, pats[0] must
@@ -685,7 +685,7 @@ static PatSeq * MatchPatterns(TkDisplay *dispPtr,
static int NameToWindow(Tcl_Interp *interp, Tk_Window main,
Tcl_Obj *objPtr, Tk_Window *tkwinPtr);
static int ParseEventDescription(Tcl_Interp *interp,
- const char **eventStringPtr, Pattern *patPtr,
+ const char **eventStringPtr, TkPattern *patPtr,
unsigned long *eventMaskPtr);
static void DoWarp(ClientData clientData);
@@ -1960,7 +1960,7 @@ MatchPatterns(
for ( ; psPtr != NULL; psPtr = psPtr->nextSeqPtr) {
XEvent *eventPtr = &bindPtr->eventRing[bindPtr->curEvent];
Detail *detailPtr = &bindPtr->detailRing[bindPtr->curEvent];
- Pattern *patPtr = psPtr->pats;
+ TkPattern *patPtr = psPtr->pats;
Window window = eventPtr->xany.window;
int patCount, ringCount, flags, state, modMask, i;
@@ -2174,7 +2174,7 @@ MatchPatterns(
*/
if (bestPtr != NULL) {
- Pattern *patPtr2;
+ TkPattern *patPtr2;
if (matchPtr->numPats != bestPtr->numPats) {
if (bestPtr->numPats > matchPtr->numPats) {
@@ -3259,7 +3259,7 @@ HandleEventGenerate(
char *name, *windowName;
int count, flags, synch, i, number, warp;
Tcl_QueuePosition pos;
- Pattern pat;
+ TkPattern pat;
Tk_Window tkwin, tkwin2;
TkWindow *mainPtr;
unsigned long eventMask;
@@ -3961,10 +3961,10 @@ FindSequence(
unsigned long *maskPtr) /* *maskPtr is filled in with the event types
* on which this pattern sequence depends. */
{
- Pattern pats[EVENT_BUFFER_SIZE];
+ TkPattern pats[EVENT_BUFFER_SIZE];
int numPats, virtualFound;
const char *p;
- Pattern *patPtr;
+ TkPattern *patPtr;
PatSeq *psPtr;
Tcl_HashEntry *hPtr;
int flags, count, isNew;
@@ -4044,7 +4044,7 @@ FindSequence(
key.type = patPtr->eventType;
key.detail = patPtr->detail;
hPtr = Tcl_CreateHashEntry(patternTablePtr, (char *) &key, &isNew);
- sequenceSize = numPats*sizeof(Pattern);
+ sequenceSize = numPats*sizeof(TkPattern);
if (!isNew) {
for (psPtr = (PatSeq *) Tcl_GetHashValue(hPtr); psPtr != NULL;
psPtr = psPtr->nextSeqPtr) {
@@ -4072,7 +4072,7 @@ FindSequence(
return NULL;
}
psPtr = (PatSeq *) ckalloc((unsigned) (sizeof(PatSeq)
- + (numPats-1)*sizeof(Pattern)));
+ + (numPats-1)*sizeof(TkPattern)));
psPtr->numPats = numPats;
psPtr->eventProc = NULL;
psPtr->freeProc = NULL;
@@ -4119,7 +4119,7 @@ ParseEventDescription(
const char **eventStringPtr,/* On input, holds a pointer to start of event
* string. On exit, gets pointer to rest of
* string after parsed event. */
- Pattern *patPtr, /* Filled with the pattern parsed from the
+ TkPattern *patPtr, /* Filled with the pattern parsed from the
* event string. */
unsigned long *eventMaskPtr)/* Filled with event mask of matched event. */
{
@@ -4397,7 +4397,7 @@ GetPatternString(
PatSeq *psPtr,
Tcl_DString *dsPtr)
{
- Pattern *patPtr;
+ TkPattern *patPtr;
char c, buffer[TCL_INTEGER_SPACE];
int patsLeft, needMods;
ModInfo *modPtr;
@@ -4447,15 +4447,15 @@ GetPatternString(
if ((psPtr->flags & PAT_NEARBY) && (patsLeft > 1)
&& (memcmp((char *) patPtr, (char *) (patPtr-1),
- sizeof(Pattern)) == 0)) {
+ sizeof(TkPattern)) == 0)) {
patsLeft--;
patPtr--;
if ((patsLeft > 1) && (memcmp((char *) patPtr,
- (char *) (patPtr-1), sizeof(Pattern)) == 0)) {
+ (char *) (patPtr-1), sizeof(TkPattern)) == 0)) {
patsLeft--;
patPtr--;
if ((patsLeft > 1) && (memcmp((char *) patPtr,
- (char *) (patPtr-1), sizeof(Pattern)) == 0)) {
+ (char *) (patPtr-1), sizeof(TkPattern)) == 0)) {
patsLeft--;
patPtr--;
Tcl_DStringAppend(dsPtr, "Quadruple-", 10);
diff --git a/generic/tkInt.decls b/generic/tkInt.decls
index 4cbdb60..ab56bed 100644
--- a/generic/tkInt.decls
+++ b/generic/tkInt.decls
@@ -568,9 +568,6 @@ declare 180 {
char *TkSmoothPrintProc(ClientData clientData, Tk_Window tkwin,
char *widgRec, int offset, Tcl_FreeProc **freeProcPtr)
}
-declare 181 {
- int TkpScanWindowId(Tcl_Interp *interp, const char *string, Window *idPtr)
-}
declare 184 {
void TkUnusedStubEntry(void)
}
@@ -974,6 +971,9 @@ declare 53 aqua {
declare 54 aqua {
void *TkMacOSXDrawable(Drawable drawable)
}
+declare 55 aqua {
+ int TkpScanWindowId(Tcl_Interp *interp, const char *string, Window *idPtr)
+}
##############################################################################
diff --git a/generic/tkIntDecls.h b/generic/tkIntDecls.h
index b31bbd4..9dea8d4 100644
--- a/generic/tkIntDecls.h
+++ b/generic/tkIntDecls.h
@@ -966,12 +966,7 @@ EXTERN char * TkSmoothPrintProc(ClientData clientData,
Tk_Window tkwin, char *widgRec, int offset,
Tcl_FreeProc **freeProcPtr);
#endif
-#ifndef TkpScanWindowId_TCL_DECLARED
-#define TkpScanWindowId_TCL_DECLARED
-/* 181 */
-EXTERN int TkpScanWindowId(Tcl_Interp *interp,
- CONST char *string, Window *idPtr);
-#endif
+/* Slot 181 is reserved */
/* Slot 182 is reserved */
/* Slot 183 is reserved */
#ifndef TkUnusedStubEntry_TCL_DECLARED
@@ -1192,7 +1187,7 @@ typedef struct TkIntStubs {
char * (*tkOrientPrintProc) (ClientData clientData, Tk_Window tkwin, char *widgRec, int offset, Tcl_FreeProc **freeProcPtr); /* 178 */
int (*tkSmoothParseProc) (ClientData clientData, Tcl_Interp *interp, Tk_Window tkwin, CONST char *value, char *widgRec, int offset); /* 179 */
char * (*tkSmoothPrintProc) (ClientData clientData, Tk_Window tkwin, char *widgRec, int offset, Tcl_FreeProc **freeProcPtr); /* 180 */
- int (*tkpScanWindowId) (Tcl_Interp *interp, CONST char *string, Window *idPtr); /* 181 */
+ VOID *reserved181;
VOID *reserved182;
VOID *reserved183;
void (*tkUnusedStubEntry) (void); /* 184 */
@@ -1865,10 +1860,7 @@ extern TkIntStubs *tkIntStubsPtr;
#define TkSmoothPrintProc \
(tkIntStubsPtr->tkSmoothPrintProc) /* 180 */
#endif
-#ifndef TkpScanWindowId
-#define TkpScanWindowId \
- (tkIntStubsPtr->tkpScanWindowId) /* 181 */
-#endif
+/* Slot 181 is reserved */
/* Slot 182 is reserved */
/* Slot 183 is reserved */
#ifndef TkUnusedStubEntry
diff --git a/generic/tkIntPlatDecls.h b/generic/tkIntPlatDecls.h
index 9b800f3..b377173 100644
--- a/generic/tkIntPlatDecls.h
+++ b/generic/tkIntPlatDecls.h
@@ -531,6 +531,12 @@ EXTERN unsigned long TkpGetMS(void);
/* 54 */
EXTERN VOID * TkMacOSXDrawable(Drawable drawable);
#endif
+#ifndef TkpScanWindowId_TCL_DECLARED
+#define TkpScanWindowId_TCL_DECLARED
+/* 55 */
+EXTERN int TkpScanWindowId(Tcl_Interp *interp,
+ CONST char *string, Window *idPtr);
+#endif
#endif /* AQUA */
#if !(defined(__WIN32__) || defined(__CYGWIN__) || defined(MAC_OSX_TK)) /* X11 */
#ifndef TkCreateXEventSource_TCL_DECLARED
@@ -716,6 +722,7 @@ typedef struct TkIntPlatStubs {
VOID *reserved52;
unsigned long (*tkpGetMS) (void); /* 53 */
VOID * (*tkMacOSXDrawable) (Drawable drawable); /* 54 */
+ int (*tkpScanWindowId) (Tcl_Interp *interp, CONST char *string, Window *idPtr); /* 55 */
#endif /* AQUA */
#if !(defined(__WIN32__) || defined(__CYGWIN__) || defined(MAC_OSX_TK)) /* X11 */
void (*tkCreateXEventSource) (void); /* 0 */
@@ -1127,6 +1134,10 @@ extern TkIntPlatStubs *tkIntPlatStubsPtr;
#define TkMacOSXDrawable \
(tkIntPlatStubsPtr->tkMacOSXDrawable) /* 54 */
#endif
+#ifndef TkpScanWindowId
+#define TkpScanWindowId \
+ (tkIntPlatStubsPtr->tkpScanWindowId) /* 55 */
+#endif
#endif /* AQUA */
#if !(defined(__WIN32__) || defined(__CYGWIN__) || defined(MAC_OSX_TK)) /* X11 */
#ifndef TkCreateXEventSource
diff --git a/generic/tkStubInit.c b/generic/tkStubInit.c
index b2e6314..3ee54dd 100644
--- a/generic/tkStubInit.c
+++ b/generic/tkStubInit.c
@@ -478,7 +478,7 @@ TkIntStubs tkIntStubs = {
TkOrientPrintProc, /* 178 */
TkSmoothParseProc, /* 179 */
TkSmoothPrintProc, /* 180 */
- TkpScanWindowId, /* 181 */
+ NULL, /* 181 */
NULL, /* 182 */
NULL, /* 183 */
TkUnusedStubEntry, /* 184 */
@@ -591,6 +591,7 @@ TkIntPlatStubs tkIntPlatStubs = {
NULL, /* 52 */
TkpGetMS, /* 53 */
TkMacOSXDrawable, /* 54 */
+ TkpScanWindowId, /* 55 */
#endif /* AQUA */
#if !(defined(__WIN32__) || defined(__CYGWIN__) || defined(MAC_OSX_TK)) /* X11 */
TkCreateXEventSource, /* 0 */