Import Tk 8.6.10

This commit is contained in:
Steve Dower
2020-09-24 22:55:34 +01:00
parent 5ba5cbc9af
commit 42c69189d9
365 changed files with 24323 additions and 12832 deletions

View File

@@ -256,11 +256,11 @@ Tk_MessageObjCmd(
MessageCmdDeletedProc);
msgPtr->optionTable = optionTable;
msgPtr->relief = TK_RELIEF_FLAT;
msgPtr->textGC = None;
msgPtr->textGC = NULL;
msgPtr->anchor = TK_ANCHOR_CENTER;
msgPtr->aspect = 150;
msgPtr->justify = TK_JUSTIFY_LEFT;
msgPtr->cursor = None;
msgPtr->cursor = NULL;
Tk_SetClass(msgPtr->tkwin, "Message");
Tk_SetClassProcs(msgPtr->tkwin, &messageClass, msgPtr);
@@ -398,7 +398,7 @@ DestroyMessage(
* Tk_FreeConfigOptions handle all the standard option-related stuff.
*/
if (msgPtr->textGC != None) {
if (msgPtr->textGC != NULL) {
Tk_FreeGC(msgPtr->display, msgPtr->textGC);
}
if (msgPtr->textLayout != NULL) {
@@ -525,7 +525,7 @@ MessageWorldChanged(
ClientData instanceData) /* Information about widget. */
{
XGCValues gcValues;
GC gc = None;
GC gc = NULL;
Tk_FontMetrics fm;
Message *msgPtr = instanceData;
@@ -536,7 +536,7 @@ MessageWorldChanged(
gcValues.font = Tk_FontId(msgPtr->tkfont);
gcValues.foreground = msgPtr->fgColorPtr->pixel;
gc = Tk_GetGC(msgPtr->tkwin, GCForeground | GCFont, &gcValues);
if (msgPtr->textGC != None) {
if (msgPtr->textGC != NULL) {
Tk_FreeGC(msgPtr->display, msgPtr->textGC);
}
msgPtr->textGC = gc;
@@ -838,26 +838,33 @@ MessageTextVarProc(
register Message *msgPtr = clientData;
const char *value;
/*
* See ticket [5d991b82].
*/
if (msgPtr->textVarName == NULL) {
if (!(flags & TCL_INTERP_DESTROYED)) {
Tcl_UntraceVar2(interp, name1, name2,
TCL_GLOBAL_ONLY|TCL_TRACE_WRITES|TCL_TRACE_UNSETS,
MessageTextVarProc, clientData);
}
return NULL;
}
/*
* If the variable is unset, then immediately recreate it unless the whole
* interpreter is going away.
*/
if (flags & TCL_TRACE_UNSETS) {
if ((flags & TCL_TRACE_DESTROYED) && !(flags & TCL_INTERP_DESTROYED)) {
if (!Tcl_InterpDeleted(interp) && msgPtr->textVarName) {
ClientData probe = NULL;
do {
probe = Tcl_VarTraceInfo(interp,
msgPtr->textVarName,
TCL_GLOBAL_ONLY|TCL_TRACE_WRITES|TCL_TRACE_UNSETS,
MessageTextVarProc, probe);
if (probe == (ClientData)msgPtr) {
break;
}
} while (probe);
if (probe) {
/*
* We were able to fetch the unset trace for our
* textVarName, which means it is not unset and not
* the cause of this unset trace. Instead some outdated
* former variable must be, and we should ignore it.
*/
return NULL;
}
Tcl_SetVar2(interp, msgPtr->textVarName, NULL, msgPtr->string,
TCL_GLOBAL_ONLY);
Tcl_TraceVar2(interp, msgPtr->textVarName, NULL,