From: SourceForge.net <no...@so...> - 2006-03-23 10:27:33
|
Bugs item #1456342, was opened at 2006-03-22 18:38 Message generated for change (Settings changed) made by dkf You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=112997&aid=1456342&group_id=12997 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: 18. [text] >Group: current: 8.4.12 Status: Open Resolution: None >Priority: 8 Submitted By: Luc Moulinier (luckyluke67) Assigned to: Jeffrey Hobbs (hobbs) Summary: slow deletion of whole text widget content/"sliced" deletion Initial Comment: When a text widget contains a lot of data (i.e. 350 lines of 2000 characters, with a total of 250 000 characters tagged), the deletion of the content of the widget text is very slow using the normal command : $w delete 1.0 end (say 2-3 Minutes). If the same widget is deleted in a "sliced" way : set nl [lindex [split [$w index end] .] 0] while {$nl <= 30} { $w delete 1.0 30.end incr nl -30 } $w delete 1.0 end takes few Seconds !!! This behavior seems not to be normal , and has benn reported since Tcl/Tk version 8.3.4. ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2006-03-22 23:52 Message: Logged In: NO FYI. In cvs HEAD this was fixed (I think as part of one of the text widget TIPs): /* * We are deleting more than one line. For speed, we remove all tags * from the range first. If we don't do this, the code below can (when * there are many tags) grow non-linearly in execution time. */ ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=112997&aid=1456342&group_id=12997 |