diff options
-rw-r--r-- | generic/tk.decls | 2 | ||||
-rw-r--r-- | generic/tkDecls.h | 5 | ||||
-rw-r--r-- | generic/tkInt.h | 4 | ||||
-rw-r--r-- | generic/tkStyle.c | 18 | ||||
-rw-r--r-- | generic/tkText.h | 2 |
5 files changed, 17 insertions, 14 deletions
diff --git a/generic/tk.decls b/generic/tk.decls index 8ce0ad5..1075977 100644 --- a/generic/tk.decls +++ b/generic/tk.decls @@ -996,7 +996,7 @@ declare 259 { void Tk_FreeStyleFromObj(Tcl_Obj *objPtr) } declare 260 { - Tk_StyledElement Tk_GetStyledElement(Tk_Style style, int elementId, + Tk_StyledElement Tk_GetStyledElement(Tk_Style style, Tcl_Size elementId, Tk_OptionTable optionTable) } declare 261 { diff --git a/generic/tkDecls.h b/generic/tkDecls.h index 70726ac..706d91a 100644 --- a/generic/tkDecls.h +++ b/generic/tkDecls.h @@ -826,7 +826,8 @@ EXTERN Tk_Style Tk_GetStyleFromObj(Tcl_Obj *objPtr); /* 259 */ EXTERN void Tk_FreeStyleFromObj(Tcl_Obj *objPtr); /* 260 */ -EXTERN Tk_StyledElement Tk_GetStyledElement(Tk_Style style, int elementId, +EXTERN Tk_StyledElement Tk_GetStyledElement(Tk_Style style, + Tcl_Size elementId, Tk_OptionTable optionTable); /* 261 */ EXTERN void Tk_GetElementSize(Tk_Style style, @@ -1196,7 +1197,7 @@ typedef struct TkStubs { Tk_Style (*tk_AllocStyleFromObj) (Tcl_Interp *interp, Tcl_Obj *objPtr); /* 257 */ Tk_Style (*tk_GetStyleFromObj) (Tcl_Obj *objPtr); /* 258 */ void (*tk_FreeStyleFromObj) (Tcl_Obj *objPtr); /* 259 */ - Tk_StyledElement (*tk_GetStyledElement) (Tk_Style style, int elementId, Tk_OptionTable optionTable); /* 260 */ + Tk_StyledElement (*tk_GetStyledElement) (Tk_Style style, Tcl_Size elementId, Tk_OptionTable optionTable); /* 260 */ void (*tk_GetElementSize) (Tk_Style style, Tk_StyledElement element, void *recordPtr, Tk_Window tkwin, int width, int height, int inner, int *widthPtr, int *heightPtr); /* 261 */ void (*tk_GetElementBox) (Tk_Style style, Tk_StyledElement element, void *recordPtr, Tk_Window tkwin, int x, int y, int width, int height, int inner, int *xPtr, int *yPtr, int *widthPtr, int *heightPtr); /* 262 */ int (*tk_GetElementBorderWidth) (Tk_Style style, Tk_StyledElement element, void *recordPtr, Tk_Window tkwin); /* 263 */ diff --git a/generic/tkInt.h b/generic/tkInt.h index 662bab5..052ed4e 100644 --- a/generic/tkInt.h +++ b/generic/tkInt.h @@ -80,7 +80,9 @@ # define Tcl_UtfToChar16DString Tcl_UtfToUniCharDString #endif -#if defined(__GNUC__) && (__GNUC__ > 2) +#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) +# define TKFLEXARRAY +#elif defined(__GNUC__) && (__GNUC__ > 2) # define TKFLEXARRAY 0 #else # define TKFLEXARRAY 1 diff --git a/generic/tkStyle.c b/generic/tkStyle.c index 418f74f..2da67ae 100644 --- a/generic/tkStyle.c +++ b/generic/tkStyle.c @@ -99,7 +99,7 @@ typedef struct Element { */ typedef struct { - int nbInit; /* Number of calls to the init proc. */ + size_t nbInit; /* Number of calls to the init proc. */ Tcl_HashTable engineTable; /* Map a name to a style engine. Keys are * strings, values are Tk_StyleEngine * pointers. */ @@ -108,7 +108,7 @@ typedef struct { * fallback for all engines. */ Tcl_HashTable styleTable; /* Map a name to a style. Keys are strings, * values are Tk_Style pointers.*/ - int nbElements; /* Size of the below tables. */ + Tcl_Size nbElements; /* Size of the below tables. */ Tcl_HashTable elementTable; /* Map a name to an element Id. Keys are * strings, values are integer element IDs. */ Element *elements; /* Array of Elements. */ @@ -129,7 +129,7 @@ static void FreeStyleEngine(StyleEngine *enginePtr); static void FreeStyleObjProc(Tcl_Obj *objPtr); static void FreeWidgetSpec(StyledWidgetSpec *widgetSpecPtr); static StyledElement * GetStyledElement(StyleEngine *enginePtr, - int elementId); + Tcl_Size elementId); static StyledWidgetSpec*GetWidgetSpec(StyledElement *elementPtr, Tk_OptionTable optionTable); static void InitElement(Element *elementPtr, const char *name, @@ -240,7 +240,7 @@ TkStylePkgFree( Tcl_HashSearch search; Tcl_HashEntry *entryPtr; StyleEngine *enginePtr; - int i; + Tcl_Size i; tsdPtr->nbInit--; if (tsdPtr->nbInit != 0) { @@ -366,7 +366,7 @@ InitStyleEngine( { ThreadSpecificData *tsdPtr = (ThreadSpecificData *) Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData)); - int elementId; + Tcl_Size elementId; if (name == NULL || *name == '\0') { /* @@ -421,7 +421,7 @@ FreeStyleEngine( { ThreadSpecificData *tsdPtr = (ThreadSpecificData *) Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData)); - int elementId; + Tcl_Size elementId; /* * Free allocated elements. @@ -841,7 +841,7 @@ static StyledElement * GetStyledElement( StyleEngine *enginePtr, /* Style engine providing the implementation. * NULL means the default system engine. */ - int elementId) /* Unique element ID */ + Tcl_Size elementId) /* Unique element ID */ { StyledElement *elementPtr; ThreadSpecificData *tsdPtr = (ThreadSpecificData *) @@ -852,7 +852,7 @@ GetStyledElement( enginePtr = tsdPtr->defaultEnginePtr; } - while (elementId >= 0 && elementId < tsdPtr->nbElements) { + while (elementId != TCL_INDEX_NONE && elementId < tsdPtr->nbElements) { /* * Look for an implemented element through the engine chain. */ @@ -1035,7 +1035,7 @@ GetWidgetSpec( Tk_StyledElement Tk_GetStyledElement( Tk_Style style, /* The widget style. */ - int elementId, /* Unique element ID. */ + Tcl_Size elementId, /* Unique element ID. */ Tk_OptionTable optionTable) /* Option table for the widget. */ { Style *stylePtr = (Style *) style; diff --git a/generic/tkText.h b/generic/tkText.h index 877d991..1368208 100644 --- a/generic/tkText.h +++ b/generic/tkText.h @@ -168,7 +168,7 @@ typedef struct TkTextSegment { Tcl_Size size; /* Size of this segment (# of bytes of index * space it occupies). */ union { - char chars[TKFLEXARRAY]; /* Characters that make up character info. + char chars[1]; /* Characters that make up character info. * Actual length varies to hold as many * characters as needed.*/ TkTextToggle toggle; /* Information about tag toggle. */ |