From 69a286eff8bd69c38e9543d4b1252eb31eb35dd1 Mon Sep 17 00:00:00 2001 From: hobbs Date: Mon, 4 Dec 2006 20:13:21 +0000 Subject: * generic/tkListbox.c (ConfigureListboxItem): ListboxWorldChanged not needed - just call EventuallyRedrawRange. [Bug 1608046] (rezic) --- ChangeLog | 5 +++++ generic/tkListbox.c | 15 ++++++++++----- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 79ab9f1..3ee62b2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2006-12-04 Jeff Hobbs + + * generic/tkListbox.c (ConfigureListboxItem): ListboxWorldChanged + not needed - just call EventuallyRedrawRange. [Bug 1608046] (rezic) + 2006-12-04 Donal K. Fellows TIP #286 IMPLEMENTATION diff --git a/generic/tkListbox.c b/generic/tkListbox.c index 78cf3c9..d5f0663 100644 --- a/generic/tkListbox.c +++ b/generic/tkListbox.c @@ -11,7 +11,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkListbox.c,v 1.35 2006/05/29 21:53:16 hobbs Exp $ + * RCS: @(#) $Id: tkListbox.c,v 1.36 2006/12/04 20:13:21 hobbs Exp $ */ #include "tkPort.h" @@ -384,7 +384,7 @@ static int ConfigureListbox(Tcl_Interp *interp, Listbox *listPtr, int objc, Tcl_Obj *CONST objv[], int flags); static int ConfigureListboxItem(Tcl_Interp *interp, Listbox *listPtr, ItemAttr *attrs, int objc, - Tcl_Obj *CONST objv[]); + Tcl_Obj *CONST objv[], int index); static int ListboxDeleteSubCmd(Listbox *listPtr, int first, int last); static void DestroyListbox(char *memPtr); @@ -931,7 +931,7 @@ ListboxWidgetObjCmd(clientData, interp, objc, objv) } } else { result = ConfigureListboxItem(interp, listPtr, attrPtr, - objc-3, objv+3); + objc-3, objv+3, index); } break; } @@ -1694,13 +1694,14 @@ ConfigureListbox(interp, listPtr, objc, objv, flags) */ static int -ConfigureListboxItem(interp, listPtr, attrs, objc, objv) +ConfigureListboxItem(interp, listPtr, attrs, objc, objv, index) Tcl_Interp *interp; /* Used for error reporting. */ register Listbox *listPtr; /* Information about widget; may or may not * already have values for some fields. */ ItemAttr *attrs; /* Information about the item to configure */ int objc; /* Number of valid entries in argv. */ Tcl_Obj *CONST objv[]; /* Arguments. */ + int index; /* Index of the listbox item being configure */ { Tk_SavedOptions savedOptions; @@ -1711,7 +1712,11 @@ ConfigureListboxItem(interp, listPtr, attrs, objc, objv) return TCL_ERROR; } Tk_FreeSavedOptions(&savedOptions); - ListboxWorldChanged((ClientData) listPtr); + /* + * Redraw this index - ListboxWorldChanged would need to be called + * if item attributes were checked in the "world". + */ + EventuallyRedrawRange(listPtr, index, index); return TCL_OK; } -- cgit v0.12