1This file summarizes all changes made to Tk since version 1.0 was 2released on March 13, 1991. Changes that aren't backward compatible 3are marked specially. 4 5RCS: @(#) $Id: changes,v 1.64.2.55 2008/04/11 16:55:47 dgp Exp $ 6 73/16/91 (bug fix) Modified tkWindow.c to remove Tk's Tcl commands from 8the interpreter when the main window is deleted (otherwise there will 9be dangling pointers to the non-existent window). 10 113/16/91 (bug fix) Modified tkColor.c not to free black or white colors: 12some X servers get upset at this. 13 143/18/91 (bug fix) Modified tkShare.c to fix bug causing "DeleteGroup 15couldn't find group on shareList" panic. 16 173/18/91 (bug fix) Several changes to tkListbox.c and tkScrollbar.c to 18handle listboxes (and scrollbars) with zero total entries in them. 19 203/22/91 (bug fix) Fixed a few ='s in tkListbox.c that should be ==. 21 223/22/91 (bug fix) Fixed error in main.c that caused BadWindow errors 23in some cases where wish scripts invoke "destroy .". 24 253/23/91 (new feature) Added Tk_CancelIdleCall to remove Tk_DoWhenIdle 26handler. 27 283/23/91 (bug fix and new feature) Added -name option to main.c, made 29it more clever about choosing name (was always using the name "wish" 30on most Unix systems). 31 323/23/91 (new feature) Added TK_CONFIG_STRING option to Tk_ConfigureWidget, 33used it to malloc strings for various widget options that used to be 34Tk_Uid's (e.g. button text, message strings, etc.). Eliminates core 35leaks when values change in continuous non-repeating fashion. 36 373/29/91 (new feature) Added Tk_Preserve, Tk_Release, and 38Tk_EventuallyFree procedures to help manage widget records and avoid 39premature memory free-ing. 40 414/4/91 (bug fix) Fixed problem in tkWm.c where top-level window geometry 42wasn't tracking correctly when wm-induced size change also changed window 43position (e.g. menus wouldn't be displayed at the right places). 44 454/5/91 (new feature) Added "invoke" option to widget command for buttons, 46check buttons, and radio buttons. 47 484/5/91 (new feature) Added "unpack" option to "pack" command. 49 504/5/91 (bug fix) Changed tkPack.c to use new Tk_Preserve code and be 51more careful about window deletions that occur while repacking is in 52progress. 53 544/6/91 (bug fix) Major overhaul of deletion code in all widgets to use 55Tk_Preserve and Tk_Release. Should fix many problems. 56 574/6/91 (bug fix) Changed "winfo children" to generate correct lists 58when child names have embedded spaces. 59 604/6/91 (new feature) Added "screenheight" and "screenwidth" options to 61"winfo". 62 634/18/91 (bug fix) Binding mechanism didn't correctly handle very long 64%-substitutions in commands (e.g. long path names) and caused memory 65to be overwritten. Modified tkBind.c to fix. 66 67---------------------- Release 1.1, 4/18/91 ------------------------- 68 694/19/91 (bug fix) Inconsistent ICCCM handling of coordinates of reparented 70windows causes windows to gradually walk south when moved or resized. 71Fixed tkWm.c to patch around the problem. 72 73---------------------- Release 1.2, 4/24/91 ------------------------- 74 754/26/91 (new feature) Added -geometry and -display switches to wish. 76Also wrote wish manual entry. 77 785/3/91 (bug fix) Fixed bug in tkListbox.c that caused garbage to appear 79at right edge of window when strings were to large to fit in window. 80 815/3/91 (bug fix) Fixed bug in tkListbox.c where topIndex wasn't getting 82updated when elements were deleted: tended to cause errors in 83communication with scrollbars. 84 855/16/91 (bug fix) Fixed bug in tk3d.c, which caused core dumps when 86consecutive points in a polygon were the same (happened with some 87configurations of radio buttons, for example). 88 895/16/91 (bug fix) Fixed main.c to allow stdin to be redirected. 90 916/1/91 (bug fix) Make sure that pointers are never used after being 92freed. 93 946/15/91 (bug fix) Fixed bug in tkBind.c that caused current binding 95values to not always be printed correctly. 96 976/15/91 (bug fix) Make sure that interpreters are always unregistered 98when their main windows are deleted, and make wish delete the main 99window before exiting. 100 1018/21/91 (misfeature correction) Automatically set source of window 102position to "user" in "wm geometry" command, unless it has been 103explicitly set to "program". 104 1059/5/91 (bug fix) Modified option code to accept '#' as a comment 106character in .Xdefaults files, in addition to '!'. 107 1089/10/91 (misfeature correction) Changed binding mechanism so that 109numeric %-sequences are output in decimal instead of hex. 110 1119/19/91 (bug fix) Fixed bug in Tk_DoOneEvent(1) where it wasn't 112checking files and X connections properly so it missed events. 113 11410/6/91 (new feature) Reorganized tkBind.c to provide generic "binding 115table" structure, which can be used to create bindings on items in 116canvases as well as windows. 117 11810/6/91 (new feature) Upgraded buttons and menus to use new tracing 119code in Tcl 6.0. Allows radio buttons and check buttons to both set 120and clear themselves when associated variable changes. 121 12210/17/91 (bug fix) Fixed 2 bugs in listboxes: accidentally advanced the 123selection when new entries were inserted in the listbox after the location 124of the selected item(s), and goofed up on redisplay if selected item 125was deleted and then selection was immediately lost. 126 12710/27/91 (bug fix) "pack unpack" wasn't telling Tk that it no longer 128manages window; this led to core dumps in some situations. 129 13010/31/91 (reorganization) Renamed manual entries so that they are no 131more than 14 characters in length. 132 13310/31/91 (reorganization) Changed tk.h and tkInt.h so that tkInt.h 134doesn't needed to be included by tk.h. 135 13611/3/91 (portability improvement) Eliminated use of "class" as a variable 137name, since it's a reserved word in C++. 138 13911/7/91 (reorganization) Many changes to upgrade for Tcl 6.1 including 140use of Tcl hash tables instead of separate "Hash_" module. The "lib" 141subdirectory is no longer needed in Tk. 142 143---------------------- Release 1.3, 11/7/91 ------------------------- 144 14511/24/91 (bug fix) Fixed bug causing occasional errors if existing bindings 146are modified (FindSequence in tkBind.c forget to set *maskPtr). 147 14811/24/91 (bug fix) Used wrong hash table in Tk_GetColorByValue. Could 149cause new entries to get created unnecessarily. 150 15112/2/91 (bug fix) Changed "bind" code to put backslashes in front of 152special characters (e.g. [ or \) that appear in %-replacements, so that 153they can be parsed cleanly. 154 15512/10/91 (bug fix) Manual entries had first lines that caused "man" program 156to try weird preprocessor. Added blank comment lines to fix problem. 157 1581/2/92 (documentation cleanup) Changed manual entries for Tk_GetBitmap 159and the like to make it more clear that the argument must be a Tk_Uid 160and not a string. 161 1621/2/92 (bug fix) Fixed problem where scrollbars that were very short or 163very narrow (too small to hold both arrows) could cause negative values 164in calls to XClearArea, which crashed some servers. 165 1661/2/92 (bug fix) Fixed bug in TkMeasureChars occurring when maxChars 167is 0. Occasionally affected things like message window geometry. 168 1691/3/92 (new feature) Added procedures Tk_GetJustify, Tk_GetAnchor, 170Tk_GetCapStyle, and Tk_GetJoinStyle, plus support for these things 171in Tk_ConfigureWidget. 172 173---------------------- Release 1.4, 1/10/92 ------------------------- 174 1751/12/92 (bug fix) TkMenubutton.c wasn't cleaning up mbPtr->varName 176properly during menubutton cleanup if an error occurred during 177menubutton creation. 178 1791/19/92 (bug fix) Fixed off-by-one bug in tkListbox.c that caused 180scrollbars to display a slider that was too large. 181 1822/10/92 (bug fix) Tk_CreateFileHandler didn't correctly handle case 183where new mask was specified for existing handler. 184 1852/13/92 (bug fix) Tk_DeleteAllBindings wasn't correctly removing 186bindings from the pattern table: only did the removal for the 187first pattern in a pattern list. 188 1892/15/92 (new feature) Added procedures Tk_DefineBitmap and 190Tk_SizeOfBitmap. Tk_GetBitmapFromData is now considered obsolete 191and probably shouldn't be used anymore. Tk_GetBitmapFromData 192is now implemented by calling Tk_DefineBitmap and Tk_GetBitmap. 193 1942/15/92 (new feature) Added "curselection" and "select clear" options 195to widget command for listboxes. 196 1972/15/92 (new feature) Added Tk_3DBorderColor procedure. 198 1992/17/92 (relaxed limitations) Changed scrollbars so they no longer limit 200the slider position to lie within the object's range: can scroll off the 201end of an object, if the object permits it. Changed listboxes and 202entries to explicitly prevent viewing off the ends. Also relaxed 203listbox index checks so that out-of-range indices are automatically 204adjust to fit within the listbox range. 205 2062/19/92 (bug fix) tkWindow.c tended to leave half-created windows around 207if a new window's name was found to be in use already. Fixed to clean 208them up. 209 2102/22/92 (new feature) Added -anchor, -bitmap, -height, -textvariable, 211-width options to labels, buttons, check buttons, menu buttons, and radio 212buttons. This means that (a) size can be controlled better, (b) bitmaps 213can be displayed in any buttons, (c) the position of the text within the 214button can be controlled, and (d) a button can be made to display the value 215of a variable, continuously updating itself. Also changed -selector option 216so that if it's specified as an empty string then no selector is drawn 217for the button. 218 2192/22/92 (new feature) Changed menus to support bitmaps in menu entries: 220added new -bitmap option for entries. 221 2222/26/92 (bug fix) "after" command, when invoked with just one argument, 223called Tk_Sleep rather than registering a timer handler and looping on 224Tk_DoOneEvent. As a result, it caused the application to become non- 225responsive to X events during the sleep. Changed to use a Tk_DoOneEvent 226loop so that it is responsive. 227 2282/26/92 (bug fix) Tk's main program didn't map the main window until 229after the startup script returned. Changed to map the window as a 230do-when-idle handler, so that scripts can cause the window to be 231mapped immediately with a call to "update" or "after". 232 2332/28/92 (bug fix) "wm withdraw" wasn't working if invoked before window 234was originally mapped: window got mapped anyway. Fixed so that the 235window doesn't get mapped as long as it's withdrawn. 236 2372/29/92 (new feature) Can use "focus none" to clear input focus. 238 2392/29/92 (bug fix) Fixed tkEvent.c to generate SubstructureNotify events 240properly. These weren't being generated previously. 241 2422/29/92 (bug fix) Fixed entries so that newline characters can be properly 243displayed (as `\x0a'). Had to change interface to TkDisplayChars in order 244to do this (added flags argument). 245 2462/29/92 (bug fix) Change Tk not to update size and position of top-level 247windows directly during calls like Tk_ResizeWindow. Instead, wait until 248actual event is received. This makes updates happen at same time as 249callbacks. 250 2513/6/92 (bug fix) TkMenubutton.c was dumping core when a menubutton was 252pressed at a time when there was no associated menu for the button. 253 2543/6/92 (new feature) Added Tk script library directory with official 255Tk initialization file "tk.tcl". Other procedures used by Tk are in 256other files. Tk procedures and variables all have names starting 257with "tk_". Also added Wish startup script "wish.tcl", which sources 258both the Tk and Tcl startup scripts. This means that things like 259auto-loading and abbreviation expansion are now available in wish. 260Added new variables tk_library, tk_priv, and tk_version. 261 2623/6/92 (new feature) It's now possible to set bindings for whole 263classes by using the class name in the bind command. For example, 264"bind Button <Enter> {puts stdout Hi!}" will cause a message to be 265printed whenever any mouse button is entered. Can also use "all" 266to set bindings for all widgets. Widget-specific bindings override 267class bindings which override "all" bindings. 268 2693/6/92 (reorganization) Changed buttons (all flavors) and listboxes to 270eliminate all hard-wired behavior. Instead, default behavior is set 271by class bindings in tk.tcl. Also set up class bindings for menus, 272menubuttons, and entries, which previously had no default behavior at 273all. Scrollbars and scales still have hard-wired behavior that can't 274be overridden. 275 2763/7/92 (look-and-feel change) Changed listboxes and entries and menus 277to use button 2 for scanning instead of button 3. This is more consistent 278with the official Motif use of button 2 for dragging. 279 2803/10/92 (new features) Added more options to "winfo" command: screencells, 281screendepth, screenmmheight, screenmmwidth, and screenvisual. 282 2833/13/92 (bug fix) Event sharing mechanism (tkShare.c) wasn't checking 284to see whether window was mapped before sharing events with it. 285 2863/16/92 (bug fix) Tk_SetInternalBorderWidth was passing wrong window to 287geometry-management procedures, causing core-dumps when menu buttons 288had their border widths changed. 289 2903/16/92 (bug fix) Menus were setting their geometry directory rather 291than using Tk_GeometryRequest mechanism. 292 2933/17/92 (new feature) Added -cursor option to all widgets to set the 294active cursor for the widget. Also added TK_CONFIG_ACTIVE_CURSOR 295configure type. 296 2973/18/92 (new feature) Implemented generalized screen coordinates to 298allow resolution-independent specification in many cases (but pixel- 299based coordinates are still OK). Added Tk_GetScreenMM(), 300Tk_GetPixels(), new configure types TK_CONFIG_SCREEN_MM and 301TK_CONFIG_PIXELS. Changed widgets to use this new configure types 302wherever possible (a few of the more complex cases still haven't 303been taken care of yet). Added "pixels" and "fpixels" options to 304"winfo" command. 305 3063/18/92 (new feature) First cut at canvas widgets is done and part of 307the official Tk now. Canvases display text and structured graphics, 308and allow you to bind commands to events related to the text and 309graphics. 310 3113/21/92 (new feature) Added new "place" command. It implements a 312new geometry manager that provides fixed placement, rubber-sheet 313placement, and combinations of the two. Eliminated the commands 314"move", "resize", and "map" that were provided by main.c but never 315officially supported; the placer provides all of this functionality. 316 3173/23/92 (bug fix) Fixed bug in tkWm.c where top-level windows were 318occasionally not being given the right size. The problem occurred 319when a string of resizes happened all in a row (such as deleting all 320the windows in an application and then recreating them). 321 3223/23/92 (new feature) Added Tk_CoordsToWindow procedure and 323"winfo containing" command. These may be used to locate the window 324containing a given point. 325 3263/28/92 (new feature) Added "-exportselection" option to listboxes, 327so that listbox selection need not necessarily be the X selection. 328 3294/12/92 (bug fix) Changed menu buttons to store name of menubutton 330in the associated variable, rather than the name of the menu. This 331is necessary in order to allow several menu buttons to share the 332same menu. 333*** POTENTIAL INCOMPATIBILITY *** 334 3354/12/92 (bug fix) Fixed core dump that occurred in tkError.c when 336removing the first error record from the error list. 337 3384/15/92 (bug fix) Fixed bug in tkBind.c that prevented <KeyPress-1> 339event specifications from being processed correctly: the "1" was 340treated as a button name rather than a keysym. 341 3424/18/92 (new feature) Added Tk_DefineCursor and Tk_UndefineCursor 343procedures. 344 3454/18/92 (new feature) Major revision to listboxes. Can now scroll and 346scan in both x and y, plus -exportselection option allows selection not 347to be exported. The "view" widget command has been replaced by "xview" 348and "yview", and the "scan" widget command has a new syntax. 349*** POTENTIAL INCOMPATIBILITY *** 350 3514/18/92 (new feature) Added -exportselection option to entries, so you 352can select whether you want the entry selection to be the X selection 353or not. 354 3554/24/92 (new features) Added TK_CONFIG_CUSTOM type to Tk_ConfigureWidget, 356plus added new flags TK_CONFIG_NULL_OK, TK_CONFIG_DONT_SET_DEFAULT, 357and TK_CONFIG_OPTION_SPECIFIED. Several other new types, such as 358TK_CONFIG_CAP_STYLE, were also added as part of implementing canvases. 359 3604/29/92 (bug fix) Changed "-selector" default for menus to have separate 361values for mono and color. 362 3634/30/92 (bug fix) Fixed bug in tkListbox.c where it occasionally generated 364bogus scroll commands (last index less than first). 365 3664/30/92 (reorganization) Moved demos directory to "library/demos". 367 368---------------------- Release 2.0, 5/1/92 ------------------------- 369 3705/2/92 (bug fix) Fixed problem in tkListbox.c where it was doing too many 371redisplays after repeated insertions. Also reduced number of invocations 372of scrollbar commands. 373 3745/7/92 (portability improvement) Changed main.c not to use TK_EXCEPTION 375flag; it isn't needed and it causes problems on some systems. 376 3775/9/92 (bug fix) Plugged core leaks in tkListbox.c and tkBind.c 378 3795/9/92 (bug fix) TkBind.c was accidentally deleting bindings during 380attempts to print non-existent bindings. 381 3825/11/92 (bug fix) Maximum name length for applications (name used in 383"send" commands) was too short (only 20); increased to 1000. Also 384fixed bug related to over-long names that caused core dumps. 385 3865/13/92 (bug fix) tkShare.c was using a dangling pointer if a share 387group was deleted as a side-effect of a shared event. 388 3895/13/92 (bug fix) Various initialization and core leak problems in 390tkGC.c, tkSend.c, tkMenu.c, tkEvent.c, tkCanvas.c, tkCanvPoly.c, 391tkCanvLine.c, tkListbox.c, tkEntry.c. 392 3935/13/92 (bug fix) Empty entries could be scanned off the left edge, 394displaying a garbage character. 395 3965/13/92 (bug fix) Fixed a few problems with window manager interactions, 397such as tendency for windows to spontaneously shrink in size. By no 398means are all of the problems fixed, though. 399 4005/13/92 (performance optimization) Changed Tk_GeometryRequest not to 401invoke geometry manager unless requested size has changed. 402 403---------------------- Release 2.1, 5/14/92 ------------------------- 404 4055/1/92 (new features) Added flags like TK_IDLE_EVENTS to Tk_DoWhenIdle, 406plus added "idletasks" option to "update" command. Tk_DoWhenIdle arguments 407look different now, but the change should be upward-compatible. 408 4095/17/92 (new feature/bug fix) Added support for VisibilityNotify events 410to the "bind" command. For some reason they weren't supported previously. 411 4125/17/92 (new feature) Added "tkwait" command. 413 4145/17/92 (new feature) Added "grab" command. 415 4165/17/92 (new feature) Added "-width" option to messages. Also changed 417messages to use the computed (i.e. desired) line length when displaying, 418not the actual width of the window. 419 4205/17/92 (bug fixes) Did some more fiddling with tkWm.c in the hopes 421of improving window manager interactions. Now there won't be more than 422one configure request outstanding to the wm at a time. 423 4245/17/92 (bug fix) Arrowheads on canvas lines weren't being translated 425or scaled correctly. 426 4275/20/92 (bug fix) Page-mode scrolling didn't work correctly for canvases 428(wrong windowUnits was passed to scrollbars). 429 4305/20/92 (bug fix) Changed scrollbars not to lose highlight when pointer 431leaves window with button down. Also changed redisplay to double-buffer 432for smoother redraws. 433 4345/21/92 (new feature) Added "gray50" and "gray25" as predefined bitmaps. 435 4365/22/92 (new feature) Buttons can now be disabled using the "-state" and 437"-disabledforeground configuration options. The "activate" and "deactivate" 438widget commands for buttons are now obsolete and will go away soon. 439Please change Tcl scripts not to use them. 440 4415/23/92 (new feature) Entries can now be disabled using the "-state" 442config option. Also improved class bindings for entries to keep the 443cursor visible in the window when operations occur. Also made slight 444improvements in the way redisplay is done. 445 4465/23/92 (new feature) Added "-textvariable" option to entries so that 447the text in an entry can be tied to the value of a global variable in 448a fashion similar to buttons. 449 4505/27/92 (new feature) Added "-textvariable" and "-anchor" options to 451messages. 452 4535/28/92 (new feature) Added "-padx" and "-pady" and "-underline" options 454to menubuttons. 455 4565/28/92 (feature change) Changed "-width" and "-height" options on 457all flavors of buttons and menubuttons so that they are orthogonal 458to "-padx" and "-pady". It used to be that -width overrode -padx 459(no padding). Now they accumulate. 460 4615/29/92 (new feature) Added "-disabledforeground" option to menus and 462all flavors of buttons (can specify color for disabled things rather 463than just using stipple to gray out). 464 4655/29/92 (new features) Added many new options to menu entries: 466-activebackground, -background, -font, -state, -underline. The 467"disable" and "enable" widget commands for menus are now obsolete 468and will go away soon. Please change Tcl scripts not to use them. 469 4705/29/92 (new features) Added "atom" and "atomname" options to "winfo" 471command. 472 4735/29/92 (new feature) Wrote tk_listboxSingleSelect procedure, which 474can be used to change listbox behavior so that only a single item is 475selected at once. 476 4776/1/92 (new feature) Added new modifier names "Meta" and "Alt" for 478"bind" command. 479 4806/3/92 (new feature) Added "winfo toplevel" command. 481 4826/3/92 (new feature) Made several changes for greater Motif compliance, 483including: 484 - menu retention if you click and release in the menu button, 485 - keyboard traversal of menus (see traversal.man) 486 - no widget flashing if you set $tk_strictMotif to 1 487 4886/15/92 (bug fix) Fixed problem in tkBind.c where command string for a 489binding could get reallocated while the command was being executed (e.g. 490bindings that delete or change themselves). 491 4926/15/92 (bug fix) Don't allow "tabWidth" field to become zero in tkFont.c: 493can cause core dumps for fonts that don't enough information to compute 494tab widths. 495 4966/19/92 (bug fix) Fixed bug in binding mechanism that caused structure- 497related events to be reported both to the correct window and its parent. 498 4997/14/92 (bug fix) Changed tkColor.c not to free colors for visual types 500StaticGray or StaticColor. 501 5027/15/92 (new feature) Text widgets now exist. They display any number of 503lines of text with a variety of display formats, and include hypertext 504facilities. See the manual page for details. 505 5067/20/92 (bug fix) If a top-level window was put in the iconic state to 507begin with, it could be deiconified with "wm deiconify .foo" until it had 508first been deiconified by hand from the window manager. Tk was getting 509confused and thought the window was mapped when it wasn't. 510 5117/29/92 (bug fix) Don't permit rectangles or ovals to have zero-sized 512dimensions. Round up to at least one pixel. 513 5147/29/92 (new features) Major upgrade to canvases: 515 - new item types: arc, window, bitmap 516 - added Bezier spline support for lines and polygons 517 - rectangles and ovals now center their outlines on the shape, 518 rather than drawing them entirely inside the shape 519 - new "coords" and "bbox" widget commands 520 - new "-tags" option for all item types. 521 - new "-confine" option to prevent scrolling off edge of canvas. 522 5238/6/92 (new feature) Added "-width" and "-height" options to frames. 524The "-geometry" option is now obsolete and should be removed from Tcl 525scripts: it may go away in the future. 526 5278/7/92 (bug fix) Error messages in Tk_ParseArgv were sometimes including 528the option name where they should have included its value. 529 530---------------------- Release 2.2, 8/7/92 ------------------------- 531 5328/7/92 (bug fix) Changed tkCanvas.c to be more conservative in the area 533it passes to XCopyArea. 534 5358/8/92 (bug fix) Fixed bug in tkTextDisp.c that sometimes caused core 536dumps when text views changed (e.g. typing return on last line of screen). 537 5388/8/92 (bug fix) Fixed bug in menu.tcl that caused errors when using 539keyboard to traverse over separator menu entries. 540 5418/10/92 (bug fix) Changed to use OPEN_MAX instead of MAX_FD to compute 542maximum # of open files. 543 5448/10/92 (bug fix) Canvases weren't updating scrollbars on window size 545changes. They also weren't recentering canvases on window size changes. 546 5478/10/92 (bug fix) There were still a few places where commands were being 548invoked at local level instead of global level (e.g. commands associated 549with buttons and menu entries). 550 5518/10/92 (bug fix) TkBind.c used to ignore explicit shift modifiers for 552all keys (i.e. <Shift-Tab> was treated the same as <Tab>). Modified to 553allow explicit request for shift modifier, like <Shift-Tab>. 554 5558/13/92 (feature change) Changed default fonts to request "Adobe" fonts 556explicitly. 557 5588/16/92 (bug fixes) Modified tkCanvArc.c and tkTrig.c to increase slightly 559the bounding boxes for arcs, in order to make sure that proper redisplay 560occurs when arcs are moved (little turds were getting left behind). 561 5628/16/92 (bug fix) Modified tkCanvas.c not to redraw at all if the redisplay 563area is off the screen. Also, only do a background clear for the portion 564of the redraw area that is on-screen. Also, reduced size of off-screen 565pixmaps used for redisplaying, which speeds up redisplay in some cases. 566 5678/19/92 (bug fix) Canvases that were taller than wide were not being 568redisplayed properly. 569 5708/20/92 (new feature) Added Tk_CreateGenericHandler procedure for trapping 571all X events (useful for tracing, watching non-Tk windows, etc.). 572 5738/21/92 (bug fix) Widgets weren't always being notified when they got 574the focus back again (the problem had to do with grabs and menus in 575particular). 576 5778/21/92 (new feature) Added "-state" option to scale widgets. 578 5798/22/92 (new feature) Changed tkBitmap.c to allow tilde-substitution 580to occur in bitmap file names. 581 582---------------------- Release 2.3, 8/24/92 ------------------------- 583 5848/27/92 (bug fix) Changes to -activebackground and -activeforeground options 585for menubuttons were being lost. 586 5878/27/92 (bug fix) Entries were selecting last character when a B1-drag 588occurred past the right edge of the text. 589 5908/28/92 (bug fix) Fixed bug in canvases where a grab during a button 591press caused the canvas state to lock up so that it didn't select a 592new current item. 593 5949/7/92 (bug fix) Changed tkMenu.c to accept numerical menu indices that 595are out of range; now it just rounds them off to the nearest existing 596entry. 597 5989/7/92 (bug fix) Fixed bug in tkTextDisp.c that caused core dumps when 599invoking "yview -pickplace" widget command on texts that are too small 600to hold any lines at all. 601 6029/11/92 (bug fix) Fixed bug in tkTextDisp.c that caused core dumps 603when adding tags to non-existent lines. 604 6059/11/92 (bug fix) Line items in canvases didn't permit an empty fill 606color (i.e. couldn't make them transparent). 607 6089/14/92 (reorganization) Changed manual entries to use .1, .3, and .n 609extensions. Added "install" target to Makefile to suggest how Tk should 610be installed. 611 6129/16/92 (bug fix) Changed tkSend.c to always specify the root window of 613screen 0 rather than using DefaultRootWindow. DefaultRootWindow doesn't 614always go to screen 0 on displays with multiple screens, which can result 615in send's not being possible between the screens. 616 6179/18/92 (new feature) Added three new options to "wm" command: "protocol", 618"client", and "command". These provide support for window manager protocols 619such as WM_DELETE_WINDOW and WM_TAKE_FOCUS, plus support for the 620WM_CLIENT_MACHINE and WM_COMMAND properties. 621 6229/30/92 (new feature) Implemented color model support, including 623"tk colormodel" command and Tk_GetColorModel and Tk_SetColorModel 624procedures. These allow you to force mono operation even on a color 625display. Also changed color allocation not to give errors when colors 626run out, but just to switch to a mono color model. 627 62810/1/92 (bug fixes) Fixed two bugs in tkTextBTree.c that caused core dumps 629during text deletion. 630 63110/5/92 (bug work-around) Changed tkColor.c to ignore errors when freeing 632colors. This is needed to work around improper reference count management 633for colormap entries under X11/NeWS. 634 63510/7/92 (new feature) Added support for different visual types, including 636procedures Tk_SetWindowVisual and Tk_SetWindowColormap, plus macros 637Tk_Visual, Tk_Depth, and Tk_Colormap. The code for this was contributed 638by Paul Mackerras. 639 64010/7/92 (new feature) Added Tk_IsTopLevel macro. 641 64210/12/92 (bug fix) Fixed bug in tk.tcl that caused torn-off menus with 643cascaded children not to track mouse motion correctly (the cascade 644switched in response to mouse motions within the cascaded child). 645 64610/12/92 (new feature) Major changes to focus handling: 647(a) Tk watches FocusIn and FocusOut events for focus changes, not Enter 648 and Leave, so it will work better with explicit-focus-model window 649 managers (e.g. mwm in default mode). 650(b) Tk generates FocusIn and FocusOut events for the focus window now. 651 The old procedural interface (via Tk_CreateFocusHandler) is obsolete 652 and is no longer used inside Tk. It is still supported for 653 compatibility, but won't be for long. You should change your code 654 to use FocusIn and FocusOut events instead. 655(c) The model for FocusIn and FocusOut events is different than the 656 one described in Xlib documentation. See the "focus" manual entry 657 for details. 658(d) If there is no input focus then keyboard events are discarded. They 659 used to be directed to the mouse pointer window, although this wasn't 660 documented. The focus now defaults to the root window. 661*** POTENTIAL INCOMPATIBILITY *** 662 66310/15/92 (bug fix) Fixed text items in canvases where they didn't 664display the insertion cursor if the item had no characters in it. 665 66610/26/92 (bug fix) Fixed bug in tkSelect.c that occasionally caused 667BadWindow X protocol errors when retrieving the selection. Tk wasn't 668making sure that a window existed before using it to retrieve the 669selection. 670 67110/30/92 (feature change) Changed canvases so that if the scroll region 672is smaller than the window and -confine is on, the scroll region isn't 673forced to be centered in the window; it can be anywhere that meets the 674confinement restrictions. 675 67611/2/92 (new feature) Added "winfo exists" command. 677 67811/5/92 (new feature) Changed DoWhenIdle handlers so that if a new 679when-idle handler is created as a side-effect of another when-idle 680handler, the new handler isn't invoked until Tk has first checked 681for other events to process. 682 68311/6/92 (bug fixes, new features) Major overhaul of window manager 684interface: 685(a) Tk should now work with virtual-root window managers; 686(b) windows will now place more accurately on the screen and stay where 687 they're supposed to; 688(c) size changes handled more reliably; 689(d) code now works robustly in the face of withdrawals followed 690 immediately by deiconifications. 691(e) Added new procedure Tk_GetVRootInfo and new options to "winfo" command: 692 vrootx, vrooty, vrootwidth, vrootheight. 693(f) Added "overrideredirect" option to "wm". 694(g) Fixed bug where change in width-only via "wm geom" didn't always work 695 (min and max window sizes weren't being set properly for the wm). 696 69711/6/92 (bug fixes) Modified menus so that they work correctly with 698virtual root window managers. Also fixed bug where menus didn't move 699along with their associated windows, so that the menu popped up at 700the old location of the window rather than its new location. 701 70211/9/92 (new constraint) Made it illegal to give windows names that 703start with upper-case letters, since such names will goof up the 704option database by appearing to be classes rather than names. 705*** POTENTIAL INCOMPATIBILITY *** 706 70711/10/92 (new feature) Added Postscript output to canvases. 708 70911/13/92 (bug fix) Changed default for maximum size passed to window 710manager from 1000000 (which causes some wm's to make windows too large 711when "maximized") to the size of the display. 712 71311/14/92 (feature change) Major overhaul of menubuttons and pull-down 714menus. Removed event-sharing code, including Tk_ShareEvents and 715Tk_UnshareEvents. The -variable option for menubuttons has been 716removed,and the "post" and "unpost" widget commands for menubuttons 717no longer exist. The "post" widget command for menus no longer 718allows a group option. The procedure tk_menus has been replaced 719with a new procedure, tk_menuBar, which has a slightly different 720interface. 721*** POTENTIAL INCOMPATIBILITY *** 722 72311/20/92 (new features, feature changes) Major overhaul of grab 724mechanism to produce more correct event streams. Also changed Tcl 725commands to require explicit window for grab releases (makes it 726possible for grabs to work on multiple displays simultaneously). 727The old "grab none" command no longer exists, but new options 728have been added: "current", "release", "set", and "status". 729*** POTENTIAL INCOMPATIBILITY *** 730 73111/20/92 (new feature) Use TK_LIBRARY environment variable to set library 732directory location, if it is defined. Otherwise fall back on usual 733compiled-in value. 734 73511/25/92 (bug fix) "wm grid" command was using wrong window. 736 73711/29/92 (bug fix) Fixed core dump that occurred when trying to use 738placer on top-level windows: return error instead. 739 74011/29/92 (bug fix) Selection retrieval wasn't making sure that the window 741on whose behalf selection is being retrieved actually exists. 742 74312/3/92 (new feature) Added support for Mode_switch key to support the 744full ISO character set. Also added event handlers for MappingNotify 745events so that Tk updates itself in response to keycode and modifier 746changes. 747 74812/6/92 (bug fix) Ignore recursive attempts to destroy window. 749 75012/9/92 (new demos) Added "tcolor" and "rmt" demos. 751 75212/10/92 (new features) Added "yposition" widget command for menus, 753changed "delete" widget command to take an optional second index, 754and changed -command option for cascade entries so that it is 755invoked when the entry is activated rather than when it is invoked. 756*** POTENTIAL INCOMPATIBILITY *** 757 75812/12/92 (implementation change) Changed the procedures Tk_FreeBitmap, 759Tk_NameOfBitmap, Tk_SizeOfBitmap, Tk_FreeCursor, Tk_NameOfCursor, and 760Tk_FreeGC to require an addition Display argument. This is needed for 761Tk to function correctly when an application has windows on multiple 762displays. 763*** POTENTIAL INCOMPATIBILITY *** 764 76512/12/92 (new feature) Started creating a test suite. Right now it 766only has a few tests. 767 76812/12/92 (new feature) Modified the packer so that a window can be 769packed in descendants of its parent (used to be restricted to the 770parent alone). This makes it possible to hide extra windows used 771for geometry management. Also, can use generalized screen distances 772in the "pack" command. 773 77412/16/92 (feature change) Boolean options such as -exportselection now 775print as 0/1 rather than true/false (both the default and current values 776print this way). This makes it easier to use these values in expressions. 777*** POTENTIAL INCOMPATIBILITY *** 778 77912/16/92 (name change) The classes "RadioButton" and "CheckButton" have 780been renamed "Radiobutton" and "Checkbutton" for consistency. From now 781on widget class names will have exactly one capital letter. 782*** POTENTIAL INCOMPATIBILITY *** 783 78412/16/92 (new feature) Added -setgrid option to listboxes. 785 78612/16/92 (new feature) The "destroy" command, and the "delete" widget 787command for canvases, now accept any number of arguments, including 788zero. 789 79012/16/92 (new feature) Changed internal TkBindError procedure to 791Tk_BackgroundError and exported it to Tk clients. 792 79312/16/92 (option name change) Changed the place command's "dependents" 794option to "slaves" for better consistency with documentation. 795*** POTENTIAL INCOMPATIBILITY *** 796 79712/16/92 (name changes) Renamed the "cursor*" options in entries and 798canvases to "insert*". Also renamed the "cursor" index to "insert" and 799the "cursor" widget command to "icursor". This was done to avoid 800confusion between the mouse cursor and the insertion cursor. 801*** POTENTIAL INCOMPATIBILITY *** 802 803---------------------- Release 3.0, 12/17/92 ------------------------- 804 80512/17/92 (bug fix) Fixed dangling-pointer bug in canvases that occurred 806if a <LeaveNotify> binding deleted the current item. 807 80812/18/92 (bug fix) Core dump occurred if "wm" invoked with no arguments. 809Also, tkWm.c wasn't properly setting WM_CLASS property on application 810startup. 811 81212/18/92 (incorrect documentation) Updated manual entries for Tk_FreeGC, 813Tk_FreeCursor, and Tk_FreeBitmap to reflect new interface that requires 814"display" argument. 815 81612/18/92 (missing documentation) Added documentation for the canvas 817"postscript" command, which was missing in the 3.0 release. 818 81912/21/92 (bug fixes) There were lots of problems with the new installation 820targets in the Makefiles, such as using "cp -f" and not installing 821prolog.ps. Made several other miscellaneous improvements to Makefile. 822 82312/21/92 (bug fix) Arrowheads on canvas line items weren't moving properly 824after coordinate changes made with the "coords" widget command. 825 82612/21/92 (bug fix) If top-level window was initially withdrawn, couldn't 827ever deiconify it again. 828 82912/21/92 (bug fix) Double-button event sequences didn't always trigger 830properly when grabs were in effect. 831 83212/22/92 (bug fix) The packer didn't display any top or bottom windows 833after a left or right expanded window, and vice versa. Also made the 834distribution of space among expanded windows more even. 835 83612/28/92 (new features) Several improvements to selection: 837(a) Added procedures Tk_ClearSelection and Tk_DeleteSelHandler. 838(b) Added "clear" and "own" options to "selection" command, extended 839 "handle" option to delete handlers. 840(c) Error returns from "selection handle" scripts are now turned into 841 selection retrieval errors ("no such selection") rather than an 842 empty selection. 843(d) Tk responds automatically for targets APPLICATION (name of application, 844 so you can "send" to it) and WINDOW_NAME (name of window within 845 application. 846(e) Added test file "select.test" to test suite. 847 84812/28/92 (bug fix) Fixed problem with flashing menus that occurred 849because menu.tcl was willing to unpost and then immediately repost 850the same menu. 851 8521/6/93 (bug fix) Test for UnmapNotify events in tkPack.c used = instead 853of ==. 854 8551/21/93 (bug fix) Changed many widgets to eliminate use of 856DefaultVisualofScreen, DefaultColormap, etc. and use the visuals 857and colormaps for the actual windows instead. Also changed to 858inherit colormaps and windows from parent by default. 859 8601/21/93 (new features) Added new winfo options "cells", "depth", and 861"visual". 862 8631/23/93 (bug fix) Fixed problem with text display that could result 864in negative XCopyArea heights being sent to X server. This causes some 865servers (e.g. some versions of OpenWindows) to crash. 866 8671/25/93 (new feature) Added -postcommand option to menus, so that menus 868can be reconfigured before each posting. 869 8701/29/93 (feature change) Changed %X and %Y in bindings so that they 871refer to the virtual root rather than the true root. Although 872potentially incompatible, this change should almost always "do the 873right thing". 874*** POTENTIAL INCOMPATIBILITY *** 875 8761/31/93 (bug fix) Changed "send" code to grab server while updating 877the registry property (before this fix, two programs could allocate 878the same interpreter name if they started up simultaneously). In 879order to make this fix I had to change the code for reclaiming 880names of dead interpreters in a way that sometimes allows dead 881interpreters to persist in the registry. 882 8832/1/93 (feature change) Changed entries to allow leftmost "visible" 884character to be the end of the text (i.e. no characters actually visible). 885This is needed so that the cursor can be displayed even if the last 886actual character is too wide to fit in the window. 887 8882/3/93 (bug fix) Fixed two bugs in tkFocus.c: (a) FocusIn events 889were getting lost in some cases because the focus window hadn't been 890created yet (e.g. new top-level window pops up underneath the mouse); 891(b) Tk was accidentally triggering FocusOut events when the mouse 892moved from a top-level window to one of its children. 893 8942/4/93 (new feature) Added "visibility" option to "tkwait" command to make 895it easier to wait for a new window to appear on the screen. 896 897---------------------- Release 3.1, 2/5/93 ------------------------- 898 8992/10/93 (installation improvements) Makefile improvements: added RANLIB 900variable for easier Sys-V installation, changed to use INCLUDE_DIR 901properly, and added SHELL variable for SGI systems. 902 903---------------------- Release 3.2, 2/11/93 ------------------------- 904 9052/11/93 (new feature) Added "wm state" command, and improved wm so that 906the right thing will happen if you invoke "wm iconify" when a window is 907withdrawn. 908 9092/14/93 (bug fix) When -colormap option was used in generating Postscript 910for canvases, Tk didn't add an extra space after the color command. 911 9122/14/93 (new feature) Changed "extern" declarations in tk.h to "EXTERN", 913which will use the definition of EXTERN from tcl.h and work correctly 914in C++ programs. 915 9162/18/93 (bug fix) Item-specific bindings weren't getting deleted from 917canvas items when the items were deleted. As a result, they could 918suddenly re-appear for new items if the new items were allocated a 919record at the same addresses as the old ones. 920 9212/18/93 (feature reversal) Changed "after" back again, so that it sleeps 922*without* responding to events when it is invoked with just one argument; 923can always use tkwait plus after with additional arguments to achieve 924the effect of responding to events. 925*** POTENTIAL INCOMPATIBILITY *** 926 9272/20/93 (bug fix) Fixed bug in tkWindow.c where colormaps weren't being 928set correctly for new top-level windows on different screens than their 929parents (the bug results in X protocol errors: "invalid Colormap 930parameter"). 931 9322/22/93 (bug fix) Changed "#!/usr/local/wish" in demo scripts to 933"#!/usr/local/bin/wish" to reflect new location of binary. 934 9352/22/93 (new feature) Added new reliefs "groove" and "ridge". 936 9372/25/93 (new feature) Added new built-in bitmaps: "error", "hourglass", 938"info", "question", "questhead", and "warning". Also added new demo in 939"widget" to display all of these (under the Miscellaneous menu). 940 9412/25/93 (improved implementation) Changed DrawText procedure in 942prolog for outputting Postscript from canvases to use stringwidth 943instead of charpath+pathbbox: avoids limitcheck problems with long 944strings, and also properly includes space characters in calculation. 945 9462/25/93 (bug fix) Fixed several bugs in library/menu.tcl that caused 947menu traversal to mis-behave when menu had no entries. 948 9492/26/93 (new feature) Added "wm frame" command. 950 9513/6/93 (bug fix) Mwm in click-to-focus mode was goofing up grabs so that 952pull-down menus were sometimes unresponsive. Modified tk.tcl to ignore 953the spurious B1-Enter events generated by mwm, plus modified tkGrab.c to 954release simulated button grabs correctly. 955 9563/8/93 (bug fix) Tk had wrong interpretation of "lbearing" font metric, 957which caused text to be displayed at the wrong horizontal position in 958several places (labels/buttons, listboxes, canvas text, scales). This 959change will cause slight changes in the way certain widgets are 960displayed. 961 9623/12/93 (bug fix) Fixed core dumps that occurred in tkEntry.c because of 963zero values in entryPtr->avgWidth. 964 9653/12/93 (bug fix) Tk_CoordsToWindow was using root coordinates always. 966Changed to use virtual-root coordinates when a virtual-root window 967manager is being used. Before this fix, "winfo containing" didn't 968return the correct window under virtual-root window managers. 969 9703/18/93 (bug fix) Modified tkWm.c so that Tk doesn't fight with window 971manager over position of window; it just takes what the window manager 972gives it. 973 9743/21/93 (new feature) Changed menus to display cascade entries with 975standard Motif arrows at right side.a 976 9773/22/93 (bug fix) Fixed bug in tkPack.c that was causing memory to 978get trashed with the integer value 1. 979 9803/22/93 (bug fix) Canvas text didn't print correctly if it contained 981an open paren (or other special character) immediately followed by 982an octal digit. 983 9843/22/93 (bug fix) Text widgets didn't redisplay properly in cases 985where two or more groups of lines both got taller at the same time 986(e.g. from tag changes), causing two separate bit copies where the 987first bit copy's target area overlapped the source area for 988the second bit copy. 989 9904/1/93 (bug fix) Changed canvases to use ISO Latin-1 font encoding 991if that's supported by the Postscript interpreter. Also added workaround 992for bug in NeWSprint related to stipple fills. 993 9944/1/93 (bug fixes) Made various changes to focusing and grabs to 995eliminate extraneous focus events and generally improve behavior. 996 9974/2/93 (bug fix) Modified tkWm.c not to wait indefinitely for the window 998manager to map or reconfigure a window: this led to deadlock in some 999situations, such as creating a new top-level window with a grab held. 1000 10014/19/93 (bug fix) Fixed another bug in tkWm.c that caused windows to walk 1002across the screen in some situations. Also fixed problem where rapid 1003posting and unposting of cascaded submenus (or menus?) could cause Tk 1004to become confused about whether or not a window is mapped (added 1005TkWmUnmapWindow procedure to make top-level unmaps synchronous). 1006 10074/24/93 (feature change) Changed the "after" command to allow times 1008less than or equal to 0, and to use 0 whenever they occur. 1009 10104/26/93 (new feature) Implemented security check for "send" as proposed 1011by Bennett Todd: incoming sends are now rejected unless (a) xhost-style 1012access control is enabled and (b) the list of authorized hosts is 1013empty. In other words, you have to use xauth to use send. This feature 1014can be disabled by setting the TK_NO_SECURITY flag at compile-time. 1015 10165/15/93 (improvement) Switched to use Tcl_PrintDouble whenever returning 1017real values as Tcl results. This potentially allows higher precision. 1018Switched to use %.15g whenever printing reals in Postscript files. 1019However, the change Tcl_PrintDouble causes incompatibilities. For 1020now, it's disabled with a macro in tclInt.h that redefines Tcl_PrintDouble. 1021Tk 4.0 will delete the macro, and you can also delete it now if you 1022want the better (but incompatible) behavior. 1023 10245/19/93 (bug fix) Fixed divide-by-zero problem that could occur in 1025closeness calculations for canvas oval items. 1026 10275/30/93 (bug fix) PROP and CONFIG were accidentally #defined to the same 1028value in tkBind.c, which could cause incorrect %-substitutions in event 1029bindings in a few exotic cases. 1030 10316/4/93 (improvement) Changed to use GNU autoconfig for configuration. 1032Makefile format changed, and Tcl is no longer automatically included 1033in Tk releases. 1034 10356/7/93 (bug fix) Fixed off-by-one error in rounding negative coordinates 1036during redisplay of canvases. 1037 10386/9/93 (feature improvement) Modified default bindings for entries to 1039keep one character visible to the left of the cursor during backspaces. 1040 10416/18/93 (feature improvement) Added patchlevel.h, for use in coordinating 1042future patch releases, and also added tk_patchLevel variable to make the 1043patch level available in scripts. 1044 10456/26/93 (bug fix) Fixed numeric problems in scales that occurred with 1046very large scale values. 1047 10486/26/93 (bug fix) Polygon items in canvases could cause core dumps if 1049the "coords" widget command was used to add one new coordinate. 1050 10516/26/93 (bug fix) Changed canvases to handle large stipple patterns 1052gracefully (stipples used to jump around during redisplay and lose 1053coherency). 1054 10557/1/93 (syntax change, new feature) Implemented the new packer syntax 1056as described in the book. For now the old syntax will continue to be 1057supported too. Converting over is straightforward except (a) use 1058"-anchor" instead of "frame", and (b) padding is different (separate 1059internal and external padding, plus pad amounts are *on each side* 1060instead of total). Also added "pack propagate" command for keeping 1061the packer from setting the master's requested size. 1062 10637/1/93 Changed copyright notices. The effect is the same as with the 1064old notices, but the new notices more clearly disclaim liability. 1065 10667/7/93 (new feature) Added support for window stacking order. Windows 1067will now stack in the order created (most recent on top), plus "raise" 1068and "lower" commands may be used to restack (Tk_RestackWindow procedure 1069is available from C level). 1070 10717/7/93 (reorganization) Moved main.c to tkMain.c, reorganized it to 1072call Tcl_AppInit just like tclsh does, and added argv0 variable to contain 1073application name, and added default Tcl_AppInit procedure for wish. 1074Also added tkTest.c to hold C code for testing. 1075 10767/7/93 (new feature) Added new Tk-specific "exit" command, which cleans 1077up properly before exiting. It replaces the Tcl "exit" command, and 1078can be used in place of "destroy .". 1079 10807/9/93 (new features) Added tk_dialog library procedure that creates 1081dialogs with a bitmap, message, and any number of buttons. Also changed 1082default tkerror procedure to use tk_dialog plus offer the user a chance 1083to see a Tcl stack trace. 1084 1085-------------------- Release 3.3 Beta 1, 7/9/93 ------------------------- 1086 10877/12/93 (configuration changes) Eliminated leading blank line in 1088configure script; provided separate targets in Makefile for installing 1089binary and non-binary information; fixed -lnsl and -lsocket handling 1090in configure; added autoconf support for fd_set type; check for various 1091typedefs like mode_t and size_t, and provide substitutes if they 1092don't exist; don't include tkAppInit.o in libtk.a; try to locate the 1093X includes and library in all of the standard places for various systems. 1094 10957/14/93 (new feature) Modified tkMain.c so that it stores the value 1096of the -display command-line option into the DISPLAY environment 1097variable, if it is specified. 1098 10997/15/93 (feature removal) Removed auto-initialization feature from 1100Tk_ConfigureWidget, so that you must once again initialize all fields 1101of a widget record before calling Tk_ConfigureWidget. This restores 1102the behavior back to what it was in Tk 3.2. 1103 11047/16/93 (bug fix) Modified tkBind.c to ignore the Caps Lock modifier 1105unless it is explicitly requested in a binding. Without this fix, 1106buttons and menus and other things didn't work if the Caps Lock key 1107was active. 1108 1109-------------------- Release 3.3 Beta 2, 7/21/93 ------------------------- 1110 11117/21/93 (new feature) Change "make install" so that it will modify the 1112#! lines on demo scripts to reflect the place where the wish binary 1113is installed. 1114 11157/23/93 (new feature) Added Tk_MainWindow procedure that returns the 1116main window associated with a Tcl interpreter. This is intended for 1117use by Tcl_AppInit and other initialization procedures. 1118 11197/24/93 (configuration improvements) Changed configure script not to 1120omplain about "fd_set" missing if it's defined in <sys/select.h>. 1121 11227/28/93 (bug fix) "Bad Match - parameter mismatch" errors were 1123sometimes occurring when several top-level windows got created 1124at the same time, due to wrong choice of sibling when stacking 1125windows. 1126 11278/14/93 (new feature) Added support for tcl_prompt1 and tcl_prompt2 1128to wish main program: makes prompts user-settable. 1129 11308/19/93 (bug fix) Bindings to event sequences like "aD" never matched 1131because the Shift key has to be pressed before D. Modified Tk to 1132ignore extraneous keypresses if they are for modifier keys. 1133 11348/26/93 (configuration changes) Added Tk_Init, modified Tcl_AppInit 1135procedures to use it and Tcl_Init. Added support for .wishrc file. 1136 11378/28/93 (new feature) The main window is now a legitimate toplevel 1138widget. 1139 1140-------------------- Release 3.3 Beta 3, 8/30/93 ------------------------- 1141 11429/2/93 (bug fix) The packer wasn't always relaying out a master after 1143changes to some of the configuration options of its slaves. 1144 11459/2/93 (bug fix) The binding mechanism made it impossible for patterns 1146like <Double-ButtonRelease-1> to ever match. 1147 11489/2/93 (bug fix) Fixed core dump that occurred for bitmap canvas items 1149if Postscript is generated but no -bitmap option has been specified. 1150 11519/4/93 (enhancement) Slight improvements to menu traversal: set menu 1152traversal bindings for menubar window in tk_menuBar, plus trigger 1153traversal on <Any-Alt-Keypress> instead of <Alt-Keypress>. 1154 11559/9/93 (bug fix) Changed tkBind.c so that the Num_Lock key doesn't 1156prevent events from triggering bindings. 1157 11589/9/93 (bug fix) Changed tkOption.c to always fetch RESOURCE_MANAGER 1159property from root window of screen 0, rather than using default 1160screen. 1161 11629/9/93 (bug fix) Entry widgets weren't allocating quite enough width 1163for themselves. Fixed this and changed the size computation to match 1164what's done for buttons and texts. 1165 11669/16/93 (bug fix) Changed tkMain.c not to call exit C procedure directly; 1167instead always invoke "exit" Tcl command so that application can redefine 1168the command to do additional cleanup. 1169 1170-------------------- Release 3.3, 9/29/93 ------------------------- 1171 11729/30/93 (bug fix) Packer wasn't unmapping slaves when master got deleted. 1173 11749/30/93 (bug fix) Binding event sequences such as <Right> were being 1175misprinted as ASCII characters such as "S". 1176 117710/6/93 (bug fix) Canvases weren't unmapping window items when the canvas 1178got unmapped, which caused problems for window items whose windows weren't 1179descendants of the canvas (they got left on the screen). 1180 118110/7/93 (feature change) NULL proc arguments to Tk_CreateFileHandler used 1182to have a special undocumented meaning (fd was display); eliminated this 1183special interpretation. 1184 118510/7/93 (configuration change) Eliminated dependency of tkMain.c on 1186tkInt.h and tkConfig.h, so that it's easier for people to copy the file 1187out of the source directory to make modified versions. 1188 118910/8/93 (bug fix) 3.0 introduced a bug where the class of the application 1190wasn't being set properly, so options based on the application class 1191weren't triggering. Fixed by adding new argument to Tk_CreateMainWindow. 1192 119310/11/93 (bug fix) Fixed bug in tkTextBTree.c where some deletions would 1194cause core dumps due to halfwayLinePtr not getting set correctly. 1195 119610/18/93 (bug fix) Fixed a couple of bugs that made it hard to actually 1197display N characters in an entry with "-width N" (tended to scroll the 1198entry so that only N-1 characters were visible at once). 1199 120010/22/93 (bug fix) During configuration, XINCLUDE_DIR and XLIBRARY_DIR 1201weren't overriding xmkmf like they were supposed to. 1202 120310/23/93 (new feature) Allow negative scale factors in canvas "scale" 1204widget command. 1205 120610/23/93 (bug fix) Grabs weren't being cleaned up right if the grab 1207window was deleted, causing core-dumps in some cases. 1208 120910/23/93 (bug fix) tk_TextSelectTo wasn't checking to be sure that 1210the "anchor" mark exists. 1211 121210/27/93 (bug fix) Fixed core dump that could occur in a text widget if 1213the scroll command modifies the text. 1214 121511/1/93 (bug fix) Change texts so that the -yscrollcommand option is 1216invoked at display time, not when the window is re-layed out. This 1217eliminated various core dumps that could occur if -yscrollcommand modified 1218the text. 1219 1220-------------------- Release 3.4, 11/04/93 ------------------------- 1221 1222Note: there is no 3.5 release. It was flawed and was thus withdrawn 1223shortly after it was released. 1224 122511/12/93 (bug fix) TkMain.c didn't compile on some systems because of 1226R_OK in call to "access". Changed to eliminate call to "access". 1227 1228-------------------- Release 3.6, 11/26/93 ------------------------- 1229 123011/10/93 (bug fix) Packer and placer didn't always reposition a window 1231correctly if it was managed inside a neice or lower descendant (using 1232"-in" option) and the neice's parent moved. 1233 123411/24/93 (bug fix) Fixed time problem in selection (retrievals could 1235fail if retriever hasn't received any X events since selection was 1236made, so that time of retrieval appears to be older than time of 1237selection). Selection code is now much less picky about times, both 1238on retrieving and supplying sides. 1239 124012/2/93 (new feature) Changed arrow-head drawing code for canvas 1241lines to draw a 0-width outline in addition to filling the area: 1242this produces much nicer, more symmetrical displays. 1243 124412/2/93 (bug fix) When colors ran out, Tk was invoking "tkerror" 1245when its state was internally inconsistent, which could cause 1246core dumps in some situations (e.g. if tkerror used the same color 1247that caused colors to run out). Changed notification to occur 1248as a when-idle handler. 1249 125012/3/93 (bug fix) During a global grab, Tk wasn't including PointerMotion 1251in the list of grabbed events, so pointer motion couldn't be tracked 1252outside the grabbing application. 1253 125412/3/93 (bug fix) Canvases didn't handle smoothed lines correctly 1255when they only contained two points. 1256 125712/3/93 (bug fix) Fixed bug in tkWindow.c where certain kinds of 1258errors during window creation could cause Destroy events to be generated 1259for a window that was never completely initialized. 1260 126112/13/93 (bug fix) Fixed bug in tkTextDisp.c that resulted in core 1262dumps at line 1467 under exmh. The exact situation is that a text 1263widget was being redisplayed at a time when it had a -yscrollcommand 1264option but hadn't yet been mapped onto the screen. 1265 126612/17/93 (bug fix) Fixed bug in tkWindow.c whereby new top-level windows 1267with non-default visuals still inherited border pixmap from parent (root), 1268which could cause visual clash and X error. 1269 127012/17/93 (bug fix) Fixed bug in tkTextDisp.c that caused round-off 1271error in the information passed to scroll commands. 1272 127312/18/93 (bug fix) Fixed bug in tkPack.c that caused core dumps in 1274some situations if a master with siblings packed "-in" it was deleted. 1275 127612/18/93 (bug fix) Added "compat" directory to distribution, since it's 1277referenced by tkConfig.h on some systems. 1278 127912/18/93 (performance improvement) Improved performance of appending to 1280a listbox, so that inserting N items doesn't take N**2 time. 1281 128212/20/93 (bug fix) Fixed bug in canvas ovals that caused the fill color 1283for the oval to stick out past the outline. 1284 12851/2/94 (fixed Xlib bug) Added code to reuse X resource identifiers so 1286that they won't run out in long running applications. There are three 1287new library procedures: Tk_FreeXId, Tk_GetPixmap, and Tk_FreePixmap. 1288Modified all Tk code to use these procedures, so wish applications should 1289now be able to run forever without running out of identifiers. 1290 12911/10/94 (bug fix) tkCursor wasn't freeing pixmaps used to create 1292cursors, which caused memory leaks in programs that changed cursors 1293frequently. 1294 12951/21/94 (bug fix) Fixed bug in scales that caused them to loop 1296infinitely drawing tick-marks when -from and -to were the same. 1297 12982/2/94 (bug fix) Fixed problem where messages that contained tabs 1299didn't always compute the correct size, so that text spilled off 1300the right edge. The fix adds an extra "tabOrigin" parameter to 1301the internal procedures TkMeasureChars, TkDisplayChars, and 1302TkUnderlineChars. 1303 13042/4/94 (bug fix) Fixed off-by-one problem in tkBind.c that caused 1305it to read past the initialized part of dispPtr->modKeyCodes. 1306 13072/7/94 (bug fix) Text widgets didn't handle grabs correctly, such 1308that the "current" character got stuck if a grab occurred while a 1309mouse button was down. It would get unstuck until after the 1310next button press and release. 1311 13122/19/94 (bug fix) Fixed prolog.ps (prolog for Postscript printing from 1313canvases) so that it correctly prints all of the characters in the 1314ISO Latin-1 character set. 1315 13162/19/94 (bug fix) Modified tkBind.c to save and restore the interpreter's 1317result across the execution of binding scripts. Otherwise if an event 1318triggers in the middle of some other script (e.g. a destroy event during 1319window creation, because there was an error in the creation command), 1320the intepreter's result gets lost. 1321 13222/19/94 (bug fix) Fixed bug in dealing with results of sent command 1323that could cause them to get lost in some situations. 1324 13252/21/94 (bug fix) Don't let user close a dialog window created by 1326tk_dialog, since this would cause tk_dialog to hang: force the user 1327to select one of the dialog's buttons. 1328 13292/21/94 (bug fix) Fixed bug in canvas polygons whereby they didn't 1330correctly handle changes in the number of points (via "coords" 1331widget command). 1332 13332/23/94 (bug fix) Large bitmaps in canvases didn't print correctly 1334because they overflowed the 64-KB limit on strings in Postscript. 1335Changed canvas printing to split up large bitmaps into mutliple 1336smaller ones for printing. 1337 13382/25/94 (bug fix) The "." window was being set up with -width 1339and -height options, which interfered with geometry management (any 1340configuration change on "." causes the window to change size to 1341200x200, then change back again). 1342 13432/26/94 (bug fix) Fixed several bugs that occurred when a Destroy 1344event handler for a window deleted the window's parent. 1345 13463/3/94 (new features) Changes to binding mechanism: 1347 - The modifiers for "Alt", "Meta", and "M" are now computed by 1348 examining the modifier map, rather than being hardwired to 1349 M2, M1, and M1. 1350 - When processing events, one script is invoked for each object 1351 in the list passed to Tk_BindEvent, rather than stopping as 1352 soon as a script is invoked for some object. The "break" and 1353 "continue" commands can be used within a script to abort all 1354 scripts for the event or the current one. 1355 *** POTENTIAL INCOMPATIBILITY *** 1356 - Added "bindtags" command so that new binding groups can be 1357 defined for widgets and the evaluation order can be changed. 1358 - When matching events to bindings, extra modifiers are now ignored, 1359 as if "Any" were specified for every event. The "Any" modifier 1360 is still recognized, but it is ignored and is deprecated. 1361 *** POTENTIAL INCOMPATIBILITY *** 1362 - In % sequences that print window identifiers (e.g. %a and %S), print 1363 in hexadecimal rather than decimal, for consistence with "winfo id". 1364 *** POTENTIAL INCOMPATIBILITY *** 1365 - The "bind" command no longer supports the event types CirculateRequest, 1366 ConfigureRequest, MapRequest, or ResizeRequest. These event types 1367 are somewhat dangerous, and they never worked anyway. 1368 13693/13/94 (bug fix) Fixed numerous problems with the "wm iconwindow" command. 1370It appears that this command never really worked at all, but it should 1371work OK now. 1372 13733/14/94 (feature changes) Removed several obsolete features: 1374 - Eliminated "enable" and "disable" widget commands for menus. 1375 *** POTENTIAL INCOMPATIBILITY *** 1376 - Eliminated "activate" and "deactivate" widget commands for buttons, 1377 checkbuttons, radiobuttons, and menubuttons. 1378 *** POTENTIAL INCOMPATIBILITY *** 1379 - Removed -geometry option for frames and toplevels: it causes 1380 problems when .Xdefaults files contain entries like 1381 "*geometry: +0+0". Must use -width and -height instead. 1382 *** POTENTIAL INCOMPATIBILITY *** 1383 - Desupported "tkVersion" variable: use "tk_version" instead. 1384 *** POTENTIAL INCOMPATIBILITY *** 1385 13863/16/94 (feature changes) Changes to listboxes: 1387 - Eliminated -geometry option (it causes problems when .Xdefaults 1388 files contain entries like "*geometry: +0+0"). Added -width 1389 and -height options to use instead. 1390 *** POTENTIAL INCOMPATIBILITY *** 1391 13923/21/94 (bug fix) Fixed bug in tkOption.c where the option cache wasn't 1393properly cleaned up after window deletion; this could cause the wrong 1394value from the option database to be used under some conditions. 1395 13963/25/94 (new features) Changes to geometry management: 1397 - Added Tk_MaintainGeometry and Tk_UnmaintainGeometry procedures 1398 to solve problems with -in windows. Modified the packer, the 1399 placer, and canvases to use them. 1400 - Changed 2nd argument to Tk_ManageGeometry from Tk_GeometryProc * 1401 to a pointer to a structure with additional information about 1402 the geometry manager, such as name and procedure to call when 1403 slaves are stolen. 1404 *** POTENTIAL INCOMPATIBILITY *** 1405 14063/28/94 (new feature) Overhauled event management: 1407 - Added "cancel" option to the "after" command so that you can 1408 cancel previously-scheduled commands. 1409 - Separated X-specific stuff from generic event management. The 1410 file tkEvent.c can now be used stand-alone without the rest of Tk. 1411 See the manual entry for Tk_EventInit for information on which 1412 procedures are available this way. 1413 - Added Tk_CreateFileHandler2 procedure, which provides a lower-level 1414 and more powerful form of file event handler. 1415 - Fixed bug in Tk_DoOneEvent where an infinite loop could occur if 1416 the TK_FILE_EVENT and TK_DONT_WAIT flags were set simultaneously 1417 (there were bugs with several other combinations too; all should 1418 be fixed now). 1419 14203/28/94 (new feature) Added "fileevent" command, which allows event- 1421driven I/O in the style of Mark Diekhans' "addinput" command. 1422 14234/11/94 (new feature) Better support for colormaps and visuals: 1424 - Added new -colormap and -visual options to toplevels and frames. 1425 - Added "winfo visualsavailable" command. 1426 - Added "wm colormapwindows" command, plus support for WM_COLORMAP_WINDOWS 1427 to Tk_SetWindowColormap. 1428 - Added new library procedures Tk_GetVisual, Tk_GetColormap, 1429 and Tk_FreeColormap. 1430 14314/11/94 (bug fix) Fixed core dump that used to occur when specifying 1432an iconwindow ("wm iconwindow") for a toplevel on a different screen 1433than the main window. 1434 14354/23/94 (new feature) Added support for images, including the following: 1436 - New "image" command for creating images. 1437 - Built-in image type: bitmap. 1438 - New "image" item type in canvases. 1439 - Labels, buttons, checkbuttons, radiobuttons, menubuttons, and 1440 menu entries now support a -image option for displaying images. 1441 - Tk_CreateImageType and Tk_ImageChanged procedures, for defining 1442 new types of images in C. 1443 - Tk_GetImage, Tk_FreeImage, Tk_RedrawImage, and Tk_SizeOfImage 1444 procedures, for using images in widgets. 1445 14465/1/94 (new features) Added new procedures Tk_3DVerticalBevel and 1447Tk_3DHorizontalBevel. 1448 14495/11/94 (new features) Major overhaul of text widgets: 1450 - Implemented embedded windows and "window" widget command. 1451 - Added new configuration options for tags: -justify, -lmargin1, 1452 -lmargin2, -rmargin, -offset, -spacing1, -spacing2, and -spacing3. 1453 See the "Display styles" widget demo for examples. 1454 - Added new configuration options for texts: -spacing1, -spacing2, 1455 and -spacing3. 1456 - Added "tagList" option to "insert" widget command to control 1457 tags on new text. Made tagged regions so they aren't sticky on 1458 either side: new characters get a tag only if the old chars. on 1459 both sides had it. 1460 *** POTENTIAL INCOMPATIBILITY *** 1461 - Added gravity for marks, and "mark gravity" widget command. 1462 - Added horizontal scrolling, "xview" widget command, -xscrollcommand 1463 option. Changed "scan" widget commands to support horizontal 1464 scrolling. 1465 *** POTENTIAL INCOMPATIBILITY *** 1466 - Added "search" widget command for searching (either exact matches 1467 or regular expressions). 1468 - New widget commands: bbox, dlineinfo, and see. 1469 - Changed implementation of bindings so that Enter and Leave 1470 events are not generated unless the tag has just become present 1471 (or just ceased to be present) on the current character. Also 1472 changed bindings to process separately for each tag, rather than 1473 having high-priority tags override low-priority ones. 1474 - The "end" index now refers to the character after the last newline 1475 rather than the newline itself. You can now tag the final newline 1476 and set a mark after the final newline. 1477 - Deletions of the "sel" tag and the "insert" and "current" marks 1478 are now ignored silently, rather than generating errors. This means 1479 you can do things like "eval .t tag delete [.t tag names]". 1480 14815/19/94 (bug fix) Canvases didn't generate proper Postscript for stippled 1482text. 1483 14845/20/94 (new feature) Added "bell" command to ring the display's bell. 1485 14865/20/94 (new feature) Incorporated "square" demonstration widget into 1487tktest application. 1488 14895/20/94 (new features) Changed wish application (tkMain.c): 1490 - wish no longer processes the -help option. 1491 *** POTENTIAL INCOMPATIBILITY *** 1492 - The wish main program is now called Tk_Main; tkAppInit.c has a 1493 "main" procedure that calls Tk_Main. This makes it easier to use 1494 Tk with C++ programs, which need their own main programs, and it 1495 also allows an application to prefilter the argument list before 1496 calling Tk_Main. 1497 *** POTENTIAL INCOMPATIBILITY *** 1498 - The application's class is now the same as its name (except the 1499 first letter is capitalized), instead of "Tk". 1500 *** POTENTIAL INCOMPATIBILITY *** 1501 - The -file keyword is no longer required: the script file name can 1502 be provided as the first argument without being preceded by "-file", 1503 as in tclsh. For backward compatibility the "-file" keyword is 1504 ignored if it is the first argument, but it is deprecated. 1505 15065/26/94 (feature removed) Removed support for "fill" justify mode from 1507Tk_GetJustify and from the TK_CONFIG_JUSTIFY configuration option. None 1508of the built-in widgets ever supported this mode anyway. 1509*** POTENTIAL INCOMPATIBILITY *** 1510 15115/27/94 (feature change) Changed Tk to use Tk_PrintDouble everywhere 1512that it converts reals to strings. This means that floating-point 1513values will be generated in some cases where integer-like values were 1514generated before. 1515*** POTENTIAL INCOMPATIBILITY *** 1516 15176/1/94 (feature change) Renamed "pack newinfo" command to "pack info". 1518The old "pack info" command is no longer available. 1519*** POTENTIAL INCOMPATIBILITY *** 1520 15216/20/94 (feature changes) Overhaul of entry widgets: 1522 - Added "-justify" option. 1523 - Added "-show" option to make entries easier to use for passwords. 1524 - Added "cget" widget command. 1525 - Added "selection range" and "selection present" widget commands. 1526 - Added "anchor" symbolic index. 1527 - Changed "-scrollcommand" option to "-xscrollcommand", "view" 1528 widget command to "xview", for compatibility with other widgets. 1529 *** POTENTIAL INCOMPATIBILITY *** 1530 - Changed sel.last to refer to character just *after* last one 1531 selected, again for compatibility with other widgets. 1532 *** POTENTIAL INCOMPATIBILITY *** 1533 - For "delete" widget command, second index now refers to character 1534 just *after* last one to delete. 1535 *** POTENTIAL INCOMPATIBILITY *** 1536 - Overhauled bindings to be more Motif-compatible and to include 1537 common Emacs bindings for editing. 1538 - Changed -width option: if specified as 0, widget sizes to fit 1539 its current text. 1540 15416/11/94 (new features) Improved Motif compatibility: 1542 - Added "-highlightwidth" and "-highlightcolor" options to all widgets. 1543 15446/27/94 (bug fix) Postscript generation for text items in canvases was 1545not justifying the text properly when a -width was specified that was 1546longer than the longest line. 1547 15486/27/94 (bug fix) "winfo exists" used to report a window as existing 1549if it was in the process of being destroyed (i.e., a destroy handler 1550is in the middle of execution). Changed to report it as non-existent 1551under these conditions. 1552*** POTENTIAL INCOMPATIBILITY *** 1553 15547/11/94 (bug fix) Selections claimed via "selection own" weren't always 1555being cleared properly when the selection was claimed away. Also fixed 1556bug where Tk wasn't properly claiming the selection, if there haven't 1557been any recent X events at the time of the claim. 1558 15597/13/94 (feature changes) Overhaul of scrollbar widgets: 1560 - New widget commands: "activate", "cget", "fraction", and "identify". 1561 - New options: -activebackground, -activerelief, -highlightcolor, 1562 -jump, -highlightthickness, and -troughcolor. What used to be 1563 -background is now -troughcolor, -foreground is now -background, 1564 and -activeforeground is now -activebackground. 1565 *** POTENTIAL INCOMPATIBILITY *** 1566 - Added new syntax for "set" command, "get" result, and generated 1567 commands. Changed other widgets to use the new syntax. 1568 - Moved the bindings out of C and into Tcl scripts, using the new 1569 options and widget commands. Added support for all Motif 1570 bindings, plus jump scrolling and cancelling of slider drags. 1571 15727/16/94 (bug fix) Canvases assumed that the Leave event for one item 1573didn't modify or delete the next current item; this could cause core 1574dumps under some conditions. 1575 15767/23/94 (feature change) Modified Tk_BackgroundError so that tkerror 1577is invoked as an idle handler. If tkerror generates a break exception 1578then all other queued reports are aborted. 1579 15808/14/94 (bug fix) "cursorOffTime" and "cursorOnTime" were confused in 1581canvases, resulting in the same time being used for both. 1582 15838/16/94 (bug fix) "tkwait variable" command didn't detect errors in 1584variable name, such as trying to wait for an entire array. 1585 15869/2/94 (new features) Overhaul of scale widgets: 1587 - Floating-point values are supported now, following Paul Mackerras' 1588 "fscale" widget. Added "-resolution" and "-digits" options. 1589 - Added "-variable" option to link scale to variable, following 1590 Henning Schulzrinne's implementation. 1591 - Added focus highlight (-highlightthickness and -highlightcolor 1592 options). 1593 - Added new widget commands "cget", "coords", "identify", plus 1594 improved "get"; removed wired-in bindings, added complete set 1595 of Motif bindings via Tcl scripts. 1596 - Changed -sliderforeground option to -background, -background to 1597 -troughColor, -activeforeground to -activebackground. 1598 *** POTENTIAL INCOMPATIBILITY *** 1599 - Moved value label from below horizontal scales to above the scale, 1600 for Motif compliance. 1601 16029/9/94 (bug fix) Fixed bug in tkWm.c that caused long delays in "raise" 1603command under some conditions (window already at the top of the stack). 1604 16059/10/94 (new features) Overhaul of label/button/checkbutton/radiobutton 1606widgets: 1607 - Added focus highlight (-highlightthickness and -highlightcolor 1608 options). 1609 - Added new widget command "cget". 1610 - Changed -selector option to -selectcolor, and changed its meaning 1611 too: empty no longer means don't draw the indicator; it means 1612 don't use a special color when selected. 1613 *** POTENTIAL INCOMPATIBILITY *** 1614 - Added -indicatoron (controls whether indicator is displayed) and 1615 -selectimage (gives special image to display when selected) options. 1616 - Modified bindings to be more Motif-like, added binding for space 1617 key. 1618 - Changed padding defaults to give widgets correct Motif appearance 1619 by default. Also, changed to ignore padding options when displaying 1620 an image or bitmap. 1621 *** POTENTIAL INCOMPATIBILITY *** 1622 - Can now display text on multiple lines: newlines cause line breaks, 1623 and word wrapping can be requested with -wraplength option. Also 1624 added -justify and -underline options. 1625 - The -value option for radiobuttons can now have an empty string as 1626 its value; it no longer defaults to the name of the widget. 1627 *** POTENTIAL INCOMPATIBILITY *** 1628 16299/13/94 (new features) Modified both canvases and messages to support 1630-highlightthickness and -highlightcolor options plus "cget" widget 1631command. 1632 16339/19/94 (new features) Added Tk_UnsetGrid procedure, modified widgets 1634to use it. Also changed Tk_SetGrid so that at most one window per 1635toplevel can have gridding enabled. 1636 16379/23/94 (new features) Major overhaul of listbox widgets: 1638 - Added focus highlight (-highlightthickness and -highlightcolor 1639 options). 1640 - Added new widget command "cget". 1641 - Revised selection commands to support single selections as well 1642 as multiple disjoint selections; syntax of "selection" widget 1643 command has changed to support this. Added new option -selectmode 1644 for specifying which mode to use. Default is single selection; 1645 tk_listboxSingleSelect procedure no longer exists. Selections 1646 now return as items separated by newlines instead of a list whose 1647 elements are the items. 1648 *** POTENTIAL INCOMPATIBILITY *** 1649 - Extended "get" widget command to allow many items to be retrieved 1650 at once. 1651 - Added "bbox" widget command for finding position of an element on 1652 screen. 1653 - Added "activate" command to mark element with traversal focus. 1654 - Extended index mechanism to support new types of indices: 1655 "active", "anchor", "@x,y". 1656 - Added "see" widget command. 1657 - Revised bindings to include all Motif features except for AddMode. 1658 - If -width or -height option is <= 0, the widget requests a size just 1659 large enough to hold all of its text. 1660 166110/6/94 (new features) Overhaul of menubuttons: 1662 - Added focus highlight (-highlightthickness and -highlightcolor 1663 options). 1664 - Added new widget command "cget". 1665 - Added -indicatoron option to display option menu indicator. 1666 - The -menu option must be a child of the menubutton. 1667 *** POTENTIAL INCOMPATIBILITY *** 1668 166910/6/94 (new features) Overhaul of menu widgets: 1670 - Added new widget commands "cget" and "entrycget". 1671 - Changed the implementation of tear-off menus to be more 1672 Motif-like; added -tearoff option for specifying whether 1673 tearoff entry is displayed. 1674 - Changed interpretation of "@y" index: it now returns the 1675 closest entry, rather than "none" if y is outside the menu's 1676 range. 1677 *** POTENTIAL INCOMPATIBILITY *** 1678 - The -menu option for a cascade entry must now be a child of 1679 the menu. 1680 *** POTENTIAL INCOMPATIBILITY *** 1681 - Added "type" widget command, so that you can query the type of 1682 an entry. 1683 - Added -foreground, -activeforeground, -selectcolor, -indicatoron, 1684 -image, and -selectimage options to menu entries. 1685 - Changed "selector" menu option to "selectColor" for Motif compliance. 1686 *** POTENTIAL INCOMPATIBILITY *** 1687 - Added -relief option for menus, just for consistency with other 1688 widgets (it was implicitly "raised" before). 1689 169010/6/94 (feature change) Completely overhauled the bindings for menus 1691and menubuttons. They now fit better with other Tk 4.0 facilities, 1692such as the new binding mechanism, and they provide better Motif 1693compliance (e.g. keyboard traversal of submenus). Also, the bindings 1694now support option menus, popup menus, and proper Motif tear-off 1695menus. 1696 169710/6/94 (obsolete features) The procedures tk_menuBar and 1698tk_bindForTraversal are no longer needed in Tk 4.0. They still exist 1699for compability, but they do nothing. 1700 170110/6/94 (new procedures) Added "tk_popup" procedure for posting a 1702popup menu, and "tk_optionMenu" for creating an option menubutton 1703and its associated menu. 1704 170510/6/94 (change in name) The variable "tk_priv" has been renamed 1706to "tkPriv" to reflect that fact that it is private to Tk now. 1707This shouldn't cause any problems, since no-one except Tk should 1708have been using it before anyway (right?). 1709 171010/6/94 (bug fix) Fixed bug in texts where sometimes the text would 1711stop tracking mouse motion (the "current" item wouldn't get updated) 1712because the text widget missed a ButtonRelease event. 1713 171410/20/94 (new features) Overhauled selection code to support multiple 1715selections (primary, secondary, etc.) and multiple displays: 1716 - Changed "selection" command to support new options such as 1717 "-displayof" and "-selection". Old command formats are still 1718 supported for compatibility, but they are no longer documented 1719 and are deprecated. 1720 - Changed procedures Tk_GetSelection, Tk_CreateSelHandler, and 1721 Tk_ClearSelection to take additional "selection" argument. 1722 *** POTENTIAL INCOMPATIBILITY *** 1723 - Selection targets APPLICATION and WINDOW_NAME have been replaced 1724 by TK_APPLICATION and TK_WINDOW. 1725 *** POTENTIAL INCOMPATIBILITY *** 1726 172710/20/94 (new features) Added support for clipboard: 1728 - New "clipboard" command. 1729 - C procedures Tk_ClipboardClear and Tk_ClipboardAppend. 1730 - Bindings for "cut", "paste", and "copy" for text and entry widgets, 1731 plus "copy" binding for listboxes. 1732 173310/24/94 (bug fix) Button widgets weren't checking for errors when 1734setting the values of associated variables. 1735 173611/3/94 (bug fix) Fixed bug whereby Tk would hang if "exit" was invoked 1737from inside a <Destroy> binding. 1738 173911/15/94 (new features) Overhaul of focus mechanism: 1740 - Added support for multiple displays: separate focus windows are 1741 kept for each display. 1742 - Added support for keyboard traversal. 1743 - Changed focus model so Tk keeps track of a focus window for each 1744 top-level window and automatically sets the focus on Enter to the 1745 top-level. Tk no longer synthesizes FocusIn and FocusOut events, 1746 but just uses the standard X mechanisms. There is no "default" 1747 focus window anymore; the focus reverts to top-levels by default. 1748 *** POTENTIAL INCOMPATIBILITY *** 1749 - Changed focus command: eliminated "focus default" and "focus none", 1750 added "-displayof" and "-lastfor" options. An empty string is now 1751 used to signify "no focus" instead of "none". 1752 *** POTENTIAL INCOMPATIBILITY *** 1753 - Added library procedures tk_focusNext, tk_focusPrev, and 1754 tk_focusFollowsMouse. 1755 - Removed obsolete Tk_CreateFocusHandler: must use FocusIn and 1756 FocusOut events now. 1757 *** POTENTIAL INCOMPATIBILITY *** 1758 175911/23/94 (new features) Overhaul of "send" command: 1760 - Added support for multiple displays: -displayof option to "send". 1761 - Added asynchronous sends: -async option to "send". 1762 - Eliminated fixed timeouts on sends: as long as the target 1763 application appears to exist, the send will wait for it. 1764 - Stale entries get removed from the application registry now, 1765 so "winfo interps" should never return non-existent applications. 1766 - Can change the name of an application with "tk appname" command. 1767 This is also the preferred way of querying the application name 1768 now. 1769 - The errorCode and errorInfo variables are now propagated back to 1770 the sender now, so a full stack trace is available. 1771 - Tk checks display security on each send now, instead of just during 1772 initialization, so changes in the security status are seen immediately 1773 by all applications. 1774 - The above changes required changes to the data formats used for 1775 communication between source and target applications, so Tk 4.0 1776 applications cannot send to, or be sent from, Tk 3.6 applications. 1777 *** POTENTIAL INCOMPATIBILITY *** 1778 - The procedure Tk_RegisterInterp has been replaced with Tk_SetAppName. 1779 *** POTENTIAL INCOMPATIBILITY *** 1780 178112/6/94 (cleanup) Eliminated "interp" argument to Tk_GetColorByValue, 1782since it is no longer needed. 1783*** POTENTIAL INCOMPATIBILITY *** 1784 178512/7/94 (feature change) Changed the "wm" command so that top-level 1786windows are now resizable by default. You can no longer specify 1787empty arguments to "wm maxsize" and "wm minsize". 1788*** POTENTIAL INCOMPATIBILITY *** 1789 179012/8/94 (new feature) Added new "photo" image type using code provided 1791by Paul Mackerras: currently supports only PPM "P6" format images. 1792 179312/14/94 (new features) Canvas modifications: 1794 - Modified the interfaces between generic canvas code and the item 1795 types so that it's easy for people to write new item types outside 1796 of Tk. 1797 - Added support for transparent bitmap items: just specify an 1798 empty string as the background color. 1799 - Changed the "xview" and "yview" commands for canvases to use the 1800 new scrolling syntax. 1801 - Eliminated -scrollincrement option. 1802 *** POTENTIAL INCOMPATIBILITY *** 1803 180412/14/94 (bug fix) Fixed bug where the dimensions of canvas arrowheads 1805scaled during a "scale" widget command, but the scaling was only 1806temporary and got lost on the next re-configure of the item. The 1807correct behavior is for the arrowheads not to scale. 1808 1809-------------------- Release 4.0b1, 12/23/94 ------------------------- 1810 181112/26/94 (bug fix) Removed obsolete demos from Makefile (color, dialog, 1812size), fixed "install" target. 1813 18141/3/95 (bug fix) Fixed all procedure calls to explicitly cast arguments: 1815implicit conversions from prototypes don't work when compiling under 1816non-ANSI compilers. Tk is now clean under gcc -Wconversion. 1817 18181/4/95 (bug fix) Used "screenX" without ever setting it in DisplayText 1819in tkCanvText.c: caused tabs in canvas text items to get messed up. 1820 18211/4/95 (bug fix) Canvases forgot to register the built-in types if 1822Tk_CreateItemType was called before a canvas widget was created. 1823 18241/4/95 (bug fixes) Fixed glitches in various text bindings: 1825 - Up used to do nothing if the cursor was at 2.0. 1826 - Right used to make the cursor invisible if it was just before 1827 the final newline of the text. 1828 - Control-t didn't conform to Emacs; made it conform to GNU Emacs. 1829 - Deleted Control-x binding, since it doesn't conform to anything and 1830 is confusing for Emacs users. 1831 18321/4/95 (bug fixes) Changed Control-t for entries just as for texts (see 1833above) an deleted Control-x for entries (see above). 1834 18351/4/95 (bug fix) The packer didn't map slaves unless the master was mapped; 1836this could cause slaves to get "lost" so that they weren't mapped until the 1837master resized. 1838 18391/5/95 (bug fix) Scrollbars weren't executing the proper code the first time 1840the mouse entered the widget; this caused problems if tk_strictMotif was 1841set. 1842 18431/6/95 (bug fix) Fixed label/button/checkbutton/radiobutton/menubutton 1844widgets to allow arbitrary screen distances when specifying -width and 1845-height for an image or bitmap (the manual pages already documented this 1846but the code didn't implement it). 1847 18481/6/95 (new feature) Added very primitive support for input methods, 1849as suggested by Martin Forssen. This should be enough for European 1850character sets (Compose key) but it isn't near enough for Asian 1851character sets. 1852 18531/8/95 (bug fix) Fixed problem in canvas "xview" and "yview" commands 1854where divide-by-zero errors could sometimes occur. 1855 18561/8/95 (bug fix) New event handler didn't properly handle files for 1857which both TK_READABLE and TK_WRITABLE were specified. 1858 18591/11/95 (bug fix) Fixed bug with text selections: was returning count 1860too high for data, causing bogus garbage to appear when selection was 1861copied. 1862 1863-------------------- Release 4.0b2, 1/12/95 ------------------------- 1864 18651/27/95 (feature removal) Removed %D substitution from binding scripts: 1866wasn't portable, shouldn't be used anyway. 1867*** POTENTIAL INCOMPATIBILITY *** 1868 18691/27/95 (new features) Added -displayof options to the commands 1870"winfo atom", "winfo atomname", "winfo containing", "winfo interps", 1871and "winfo pathname". 1872 18731/27/95 (new feature) Added "idle" option to "after" command to run 1874scripts as idle handlers. 1875 18761/28/95 (new feature) Modified placer to make -x and -relx additive 1877if you specify both. Same for -y and -rely, -width and -relwidth, 1878and -height and -relheight. This makes it easy to make request such 1879as "make .a 2 pixels larger than .b". 1880*** POTENTIAL INCOMPATIBILITY *** 1881 18821/28/95 (new feature) Improved auto-grab mechanism in canvases (which 1883prevents current item from changing while a button is down): changed 1884to report Enter and Leave events for the current item while a button 1885is down. However, as before, no Enter events are reported for other 1886items until the button goes up. 1887 18881/28/95 (new feature) Bitmap images are now transparent if the -background 1889is specified as an empty string (-maskdata and -maskfile are ignored in 1890this case). This is also the default. 1891 18921/28/95 (bug fix) Tk didn't support manufacturer- or site-specific keysyms 1893such as SunAudioMute. Modified tkBind.c so that it uses XStringToKeysym 1894in addition to its own hash table, so that all keysyms are now available. 1895 18961/30/95 (feature change) Modified "clipboard append" so that it reclaims 1897the clipboard selection if it had been previously lost, rather than just 1898generating an error. This handles certain race conditions more cleanly, 1899and also allows the use of programs like "xclipboard". 1900 19011/30/95 (new feature) Added -xscrollincrement and -yscrollincrement 1902options to canvases. 1903 19041/31/95 (bug fix) Geometry management was broken if a particular geometry 1905manager claimed a slave away from itself. 1906 19071/31/95 (bug fix) Fixed bug in tkVisual.c where a visual with fewer bits 1908than requested was being selected in preference to one with just the right 1909number of bits. 1910 19111/31/95 (bug fix) Texts weren't redisplaying the padding region properly 1912after changes in -padx or -pady. 1913 19141/31/95 (new features) More text improvements: 1915 - Extended "insert" widget command for texts to allow multiple 1916 text-tagList pairs in the same command. 1917 - Added -nocase option to "search" widget command. 1918 - Added -overstrike option to tags. 1919 - Added tab stops, via -tabs option for widget and for tags. 1920 19212/10/95 (bug fix) Modified all widgets to allow renaming of widget 1922commands. Deleting a widget command will delete the widget. 1923 19242/11/95 (new feature) Added -highlightbackground option to all widgets. 1925 19262/14/95 (new feature) Added "insert" widget command for menus. 1927 19282/15/95 (new feature) Modified text display code (for all widgets) to 1929display well-known control characters like newline and backspace as 1930\n or \b instead of \xa. 1931 19322/15/95 (bug fix) Modified bitmap and photo image managers to delete 1933the image command when the image is deleted. Also modified them to 1934allow renaming of the image command, and to delete the image if the 1935image command is deleted. 1936 19372/15/95 (bug fix) Fixed text widgets to allow horizontal scrolling 1938even if wrapping was enabled, if a line isn't entirely visible due to 1939a large character or embedded window. 1940 19412/16/95 (feature change) Added "postcascade" widget command to menus, 1942changed "invoke" and "activate" not to post or unpost submenus. Also 1943fixed bug in redisplay that tended to leave bits of garbage on menu 1944when submenu unposted. 1945*** POTENTIAL INCOMPATIBILITY *** 1946 19472/16/95 (feature removal) Removed "snap back" behavior (slider 1948snaps back to old position if you move the mouse outside the widet 1949before releasing the button) from scrollbars and scales. 1950 19512/16/95 (bug fix) The last line of a listbox wasn't being displayed if 1952it was only partially visible. 1953 19542/16/95 (new features) Added support for "-resolution 0" (no rounding 1955of values) to scale widgets, plus smarter computation of how many digits 1956to display. 1957 19582/17/95 (bug fix) Fixed bug in text bindings for things like Shift-Left: 1959didn't properly set the anchor position. 1960 19612/20/95 (bug fix) Changed management of COLORMAP_WINDOWS property to 1962add the toplevel implicitly to the end of the list if it wasn't already 1963on the list somewhere. Without this, some window managers implicitly 1964put it at the front of the list, so that colormaps in internal windows 1965are never used. 1966 19672/20/95 (bug fix) Changed to use separate command procedures for 1968button, checkbutton, label, and radiobutton commands. This allows the 1969class commands to be renamed without breaking their behavior. 1970 19712/20/95 (removed feature) The "bind" command no longer supports 1972"Keymap" events; they never worked anyway. 1973 19742/20/95 (bug fix) The text "search" widget command looped infinitely 1975when searching an empty text. 1976 19772/20/95 (bug fix) Canvases weren't redrawing their borders after 1978configuration changes. 1979 19802/20/95 (upgrade) Changed to use autoconf version 2.2. 1981 19822/21/95 (bug fix) Fixed several bug fixes in menu bindings that occur 1983when menus have no entries. 1984 19852/21/95 (bug fix) Fixed bug in geometry management that caused windows 1986packed -in siblings to not always be mapped and unmapped properly 1987(particularly when the toplevel got unmapped and mapped). 1988 19892/22/95 (bug fix) Fixed resource leak problem in tkTextDisp.c that 1990caused embedded windows not to be unmapped when off-screen. 1991 19922/23/95 (bug fix) "After cancel" dumped core when the script for an 1993after event cancelled itself. 1994 19952/24/95 (bug fix) Text and entry widgets weren't properly ignoring 1996Alt-, Control-, and Meta- keystrokes, so a widget-specific binding 1997for one of these resulted in the character also being inserted. 1998 19992/24/95 (bug fix) Several widgets accidentally performed unsigned 2000division on negative numbers, thereby losing the sign bit. This 2001mostly affected the display of images and bitmaps in buttons, 2002menubuttons, and messages. 2003 20042/24/95 (feature reversal) Restored old behavior of %A so that it 2005returns non-printing characters as well as printing ones now. 2006*** POTENTIAL INCOMPATIBILITY with Tk 4.0b2, but not with Tk 3.6 *** 2007 20082/24/95 (bug fix) Duplicate "leave" events could occur for canvas 2009items under some conditions, due to recursive calls to PickCurrentItem. 2010Added code to detect and skip the nested calls. 2011 20122/24/95 (bug fix) Fixed bug where an error could occur during the first 2013keystroke in an application if its binding invoked "break". 2014 20152/25/95 (new feature) Modified syntax of "search" widget command for 2016texts. The -nowrap switch and the "variable" final argument are no 2017longer supported. Instead, there is a -count switch to replace 2018the final argument; if the final argument is specified, it is now 2019a stopping index for the search. The features of -nowrap can be 2020achieved now with the stopping index. 2021*** POTENTIAL INCOMPATIBILITY with Tk 4.0b2, but not with Tk 3.6 *** 2022 20232/27/95 (bug fix) Fixed problem that appears to prevent keyboard 2024input for working under IRIX: tkBind.c was ignoring XmbLookupString 2025calls that returned a status of XLookupBoth. 2026 20272/27/95 (new feature) Added Tk_GetItemTypes procedure to return 2028information about available canvas item types. 2029 20302/27/95 (feature change) Changed Makefile to always use install-sh 2031for installations: there's just too much variation among "install" 2032system programs, which makes installation flakey. 2033 20342/27/95 (bug fix) Fixed bug in tkSend.c that caused core dumps if 2035the app's main window was destroyed by a destroy handler on a 2036child. 2037 20383/5/95 (feature change) Change separator character used in "bind +..." 2039bindings from semi-colon to newline (permits bindings that are 2040comments, for what that's worth). 2041 20423/7/95 (bug fix/feature change) Overhauled focus code, both in C 2043and in Tcl: 2044 - Tk won't move the X focus in response to the "focus" command 2045 unless either the application already has the focus or the 2046 -force switch is specified. 2047 - Tk no longer sets the X focus to anything other than top-levels; 2048 it synthesizes events for FocusIn and FocusOut to children. 2049 - A window no longer has to be viewable when focussed to; Tk will 2050 set the X focus later, when the window becomes viewable. 2051 - Added -takefocus option to all widgets. 2052 - Rewrote tk_focusPrev and tk_focusNext to use the -takefocus option. 2053 These procedures no longer set the focus; they just return the 2054 next window in focus order. 2055 *** POTENTIAL INCOMPATIBILITY with Tk 4.0b2, but not with Tk 3.6 *** 2056 - Eliminated tk_focusContinue. 2057 *** POTENTIAL INCOMPATIBILITY with Tk 4.0b2, but not with Tk 3.6 *** 2058 20593/8/95 (new feature, bug fix) Added support for tk_strictMotif variable 2060in C: Tk_StrictMotif library procedure. Modified buttons, menubuttons, 2061menus to use it. This fixes the problem with menus not supporting 2062tk_strictMotif properly in Tk4.0b1 and b2. 2063 20643/16/95 (feature overhaul) Overhauled color management: 2065 - Changed Tk so it never denies a color request because a colormap 2066 filled up. Instead, it allocates the closest available color. 2067 - Eliminated "color model" mechanism. The "tk colormodel" command 2068 is gone, as are the procedures Tk_GetColorModel and Tk_SetColorModel. 2069 *** POTENTIAL INCOMPATIBILITY *** 2070 - Changed 3D border implementation to allocate colors for shadows 2071 lazily, so they're never allocated if they're never used. Also 2072 added new feature whereby stippling is used for borders when 2073 the colormap has run out of entries. Changed arguments to many 2074 of Tk_3D C procedures to take a Tk_Window as argument instead of 2075 a (Display *). This is needed to do lazy color allocation. 2076 *** POTENTIAL INCOMPATIBILITY *** 2077 - Eliminated colormap argument to Tk_GetColor, Tk_GetColorByValue, 2078 and Tk_Get3DBorder. 2079 *** POTENTIAL INCOMPATIBILITY *** 2080 20813/16/95 (feature change) Event bindings created from Tcl will now ignore 2082Enter, Leave, FocusIn, and FocusOut events with detail NotifyInferior. 2083This is done in anticipation of mega-widgets, so that the user of a 2084mega-widget can create Enter/Leave bindings on the mega-widget without 2085seeing spurious events as the mouse moves among the windows in the 2086mega-widget. 2087*** POTENTIAL INCOMPATIBILITY *** 2088 20893/17/95 (feature change) Changed C interfaces throughout Tk to use ints 2090instead of unsigneds: the unsigneds turn out to cause subtle problems 2091with arithmetic in some places, and using ints everywhere is just 2092simpler. 2093*** POTENTIAL INCOMPATIBILITY *** 2094 20953/23/95 (bug fix) Selections longer than 4000 bytes were being 2096truncated to 4000 bytes. 2097 2098-------------------- Release 4.0b3, 3/24/95 ------------------------- 2099 21003/25/95 (bug fix) Changed "install" to "./install" in Makefile so that 2101"make install" will work even when "." isn't in the search path. 2102 21033/25/95 (bug fix) Modified Tk's selection mechanism to prevent core 2104dumps in other applications during retrievals of large selections 2105(this is actually a bug in the other apps, but I've patched Tk to 2106keep it from getting triggered). 2107 21083/25/95 (bug fix) Fixed bug where X window for "." wasn't being 2109deleted. 2110 21113/27/95 (bug fix) Fixed many bugs associated with having more than 2112one application in a single process. 2113 21143/28/95 (bug fix) The "search" widget command for texts didn't 2115return the correct index and count if there were embedded widgets 2116on the same line as the returned range but before the end of 2117the range. 2118 21193/28/95 (bug fix) Changed pasting via button 2 in text and entries 2120so that it inserts at the pointer location, not the location of 2121the insertion cursor. 2122 21233/28/95 (bug fix) Fixed several bugs related to <Destroy> bindings 2124that delete ancestors in the window hierarchy. Also eliminated 2125extraneous calls to XDestroyWindow, which speeds up window deletion 2126by about 3x. 2127 21283/28/95 (bug fix) Several widgets (buttons, menubuttons, menus) didn't 2129properly handle image deletions that occurred while the widget was 2130being deleted (caused core dumps). 2131 21323/29/95 (bug fix) When retrieving long selections from text widgets, 2133parts of lines were getting duplicated in the selection information. 2134 21354/1/95 (bug fix) Fixed bug that caused infinite loop in horizontal 2136scales with 0 range. 2137 21384/1/95 (bug fix) Fixed problem with -command option for scrollbars and 2139-takefocus option that caused commands to be evaluated in the wrong 2140context. 2141 21424/1/95 (bug fix) Fixed problem with option database that caused it to 2143sometimes use the wrong option (wasn't flushing the database properly 2144after a change in a window's class). 2145 21464/1/95 (bug fix) If a line in a text widget just barely fit in the window, 2147Tk was allocating a second screen line just for the newline character. 2148 21494/1/95 (new feature) When backspacing in an entry widget, when you reach 2150the left edge of the widget, the insertion cursor gets recentered. 2151 21524/1/95 (new features) Added "winfo pointerx" and "winfo pointery" commands 2153to fetch the current pointer position. 2154 21554/6/95 (bug fix) If the last line of a text widget was only partially 2156visible, it was counted as visible for purposes of the scrollbar. Now 2157it is treated as if it were off-screen for scrolling purposes. 2158 21594/6/95 (new feature) Modified "bell" command to reset screen saver as well. 2160 21614/6/95 (feature change) Modified menu scanning (where menus pull down 2162as you drag across their menubuttons) so it only works among menus 2163in the same toplevel; it used to work for any menubuttons in the 2164application. 2165 21664/6/95 (bug fix) Canvas text items weren't allowing real numbers in 2167"@x,y" notation for specifying indices. 2168 21694/7/95 (bug fix) Menus didn't display correctly when -activeborderwidth 2170was large. 2171 21724/7/95 (bug fix) Changed "clipboard append" command to support -- option 2173and to always treat the last argument as data, even if it starts with 2174"-". 2175 21764/17/95 (new feature) Added -wrap option to text tags. 2177 21784/18/95 (bug fix) Listboxes and texts weren't updating their grid information 2179when -width or -height changed. 2180 21814/18/95 (bug fix) "Down" didn't work right in text widgets if the last 2182line was only partially visible in the window. 2183 21844/19/95 (bug fix) Listboxes didn't handle partially visible last lines 2185right: couldn't scroll it into full visibility, for example. 2186 21874/20/95 (bug fix) If a toplevel was positioned with a command like 2188"wm geometry . -0-0", the window didn't reposition itself to maintain 2189that geometry after a size change. 2190 21914/21/95 (feature change) Changed order of binding tags so widget bindings 2192fire before class bindings. New order is: widget, class, toplevel, all. 2193*** POTENTIAL INCOMPATIBILITY with Tk 4.0b3, but not with Tk 3.6 *** 2194 21954/23/95 (new feature) Added "winfo colormapfull" command. 2196 21974/23/95 (new feature) Buttons and radiobuttons and checkbuttons now 2198treat Return the same as Space, unless tk_strictMotif is set. 2199 22004/23/95 (bug fix) Modified menu tear-off procedure to duplicate the 2201binding tags and bindings of the original in the copy. 2202 22034/25/95 (bug fix and feature change) Modified mechanism for choosing 2204"best" visual to fix a bug where depth wasn't really getting highest 2205priority in all situations. 2206 22074/28/95 (bug fix) Failed text searches starting at "end" could result 2208in an infinite loop in Tk. 2209 22104/30/95 (new feature) Added "wm resizable" command to enable and 2211disable interactive resizing. 2212 22134/30/95 (new feature) Added "window names" widget command to texts: 2214returns a list of all embedded windows. 2215 22165/2/95 (feature change) Changed text searches so that forward searches 2217start at the given index, rather than the character just after the 2218given index. 2219*** POTENTIAL INCOMPATIBILITY with Tk 4.0b3, but not with Tk 3.6 *** 2220 22215/4/95 (bug fix) Default bit gravity for windows was wrong (it was 2222ForgetGravity) causing unnecessary flashing when windows were resized. 2223 22245/4/95 (feature change) Modified Tk_DoOneEvent so that it doesn't 2225sleep if there's nothing that will wake it up again (e.g. no file 2226or timer handlers). Returns 0 immediately. 2227 22285/5/95 (configuration change) Changed to use BSDgettimeofday instead 2229of gettimeofday on systems like IRIX where BSDgettimeofday is 2230available. This avoids compilation problems due to the different 2231interface to gettimeofday provided by IRIX. 2232 22335/5/95 (feature change) Changed binding mechanism so that all bindings 2234are created immediately at initialization time, rather than waiting 2235until the first FocusIn or Enter event for a class. 2236 22375/6/95 (feature change) Changed default text for labels, buttons, 2238checkbuttons, radiobuttons, menubuttons, and messages from " " to 2239"". 2240 22415/6/95 (bug fix) If the application was destroyed in the middle of 2242an "update" command, Tk would dump core. 2243 22445/6/95 (bug fix) Changed manual entries to use the standard .TH 2245macro instead of a custom .HS macro; the .HS macro confuses index 2246generators like makewhatis. 2247 22485/6/95 (bug fix) Change "wm iconwindow" command to disable button 2249presses for the icon window. This is needed so that the window 2250manager can get those events (X only allows button presses to go 2251to one client for a given window). 2252 22535/9/95 (new feature) When specifying visuals, can now use "best" 2254with a depth, e.g. "-visual {best 8}" to get the best 8-bit visual. 2255 22565/18/95 (bug fix) Fixed bug with -spacing* options for text widget: 2257screen distances weren't allowed, only integers. 2258 22595/20/95 (bug fix) Eliminated memory leaks in tkTextDisp.c and elsewhere. 2260 22615/22/95 (color change) Changed the Tk color palette to a gray scheme. 2262Also added a library procedure tk_setPalette that makes it easy to 2263change colors on the fly, and a procedure tk_bisque that restores the 2264previous light brown scheme. 2265 22665/28/95 (bug fix) Modified canvases so that the -width and -height 2267options refer to the space inside the borders, not the total widget 2268space. Also changed "xview" and "yview" commands and scroll-increment 2269rounding to use the pixel just inside the borders, rather than (0,0). 2270 22715/28/95 (bug fix) Several widgets (e.g. entries, buttons, and menus) 2272didn't properly handle unsets of variables they were tracing, if the 2273variables were reference through upvars in procedures. 2274 22756/4/95 (bug fix) The placer wasn't rounding window widths right when 2276both -relx and -relwidth were specified (or -rely and -relheight) so 2277that rounding errors accumulated. 2278 22796/4/95 (feature improvement) Change parsing of text indices to handle 2280weird mark and tag names better (e.g. any string ending with ".first" 2281will now be parsed as a tag name, even if it contains embedded spaces, 2282etc.). 2283 22846/4/95 (feature change) If a font defines glyphs for control characters, 2285they are now displayed, instead of translating the character to a 2286backslash sequence (however, tabs and newlines are still treated 2287specially; glyphs are not displayed for these characters). 2288 22896/4/95 (bug fix) Modify the implementation of "raise" and "lower" for 2290toplevels so that it now works under olwm and olvwm. It didn't use to 2291work, and the problem is really in the window manager, but Tk now 2292patches around it. However, only "total" raises and lowers work: 2293raising and lowering relative to a sibling still don't work under 2294olvwm and olwm. 2295 22966/4/95 (feature change) Modified tab code in texts so that a tab always 2297occupies at least as much space as a space character. 2298 22996/4/95 (bug fix) The "%t" substitution wasn't being made properly in 2300Enter and Leave event bindings. 2301 23026/7/95 (new feature) Added support for GIF images. Unfortunately it's 2303a bit fragile: certain kinds of badly formed images can cause core 2304dumps; I don't know enough about the GIF reader (taken from giftoppm) 2305to figure this out. 2306 23076/7/95 (bug fix and feature change) Fixed PPM image reader to be more 2308flexible about header formats, and added support for PGM images. 2309 23106/7/95 (feature change) Added -outlinestipple option to canvas arc 2311items, changed "-style arc" to use -outline as the color instead of 2312-fill (the old approach was pretty quirky). 2313*** POTENTIAL INCOMPATIBILITY *** 2314 23156/8/95 (feature change) Modified interface to Tk_Main to pass in the 2316address of the application-specific initialization procedure. 2317Tcl_AppInit is no longer hardwired into Tk_Main. This is needed 2318in order to make Tcl a shared library. 2319 23206/8/95 (feature change) Modified Makefile so that the installed versions 2321of wish and libtk.a have version number in them (e.g. wish4.0 and 2322libtk4.0.a) and the library directory name also has an embedded version 2323number (e.g., /usr/local/lib/tk4.0). This should make it easier for 2324Tk 4.0 to coexist with earlier versions. 2325 23266/9/95 (new feature) Added -outline and -width options to canvas polygon 2327items. 2328 23296/9/95 (feature changed) Renamed -decimate in photo widget to -subsample 2330(decimate wasn't technically correct). 2331*** POTENTIAL INCOMPATIBILITY with Tk 4.0b3, but not with Tk 3.6 *** 2332 2333-------------------- Release 4.0b4, 6/16/95 ------------------------- 2334 23356/19/95 (bug fix) Colors weren't being rounded correctly in canvas 2336Postscript generation: caused "white" to appear slightly gray when 2337the display of the canvas used only 8 bits per color. 2338 23396/20/95 (bug fix) "bbox" widget command for texts didn't return 2340proper width for tabs. 2341 23426/20/95 (bug fix) Scrollbars didn't always work right for texts: 2343couldn't scroll all the way to the bottom of the text in a single 2344drag of the slider. 2345 23466/20/95 (new feature) Added "delta" widget command for scrollbars 2347(needed for above bug fix). 2348 23496/23/95 (bug fix) Listboxes weren't properly redisplaying their 2350borders when the were configured to a smaller size. 2351 23526/23/95 (new feature) Added "winfo server" command. 2353 23546/23/95 (bug fix) If a menu was posted, couldn't switch to another 2355menu with an Alt- key. 2356 23576/24/95 (new feature) Added "winfo pointerxy" command. 2358 23596/25/95 (bug fix) Tk_ParseArgv referenced beyond the end of 0-length 2360option names. 2361 23626/25/95 (bug fix) Fixed problem in tkOption.c where "cachedWindow" 2363could get garbage in it if the main window's class was changed by 2364calling Tk_SetClass. 2365 23666/25/95 (bug fix) Fixed two bugs in menus, one where errors in 2367variable traces weren't propagated correctly and one where "invoke" 2368was invoked at the wrong stack level, with the result that variable 2369traces didn't have access to the right variables. 2370 23716/27/95 (bug fix) tk3d.c wasn't using all the right information 2372when deciding whether or not to stipple borders, so it stippled 2373borders even on 16-bit true-color displays. 2374 23756/28/95 (bug fix) Page up and down operations in texts could cause 2376insertion cursor to drift to the right. Changed tkTextScrollPages 2377to use upper-left corner of current character, rather than center 2378of character. 2379 23806/28/95 (bug fix) Changed text widget so that you can't put the 2381insertion cursor after the last newline in the text. 2382 23836/28/95 (bug fix) Bitmap images didn't allow ~'s in file names. 2384 23856/28/95 (bug fix) Fixed problem that could cause core dumps in the 2386text widget when dealing with embedded windows (there were problems 2387if the act of redisplaying caused the window layout to change, which 2388can happen with embedded windows). 2389 23906/28/95 (bug fix) Texts didn't handle indices with double negatives, 2391such as ".t mark set insert {insert + -20 chars}". 2392 23936/28/95 (bug fix) Fixed problem where focus didn't always revert to 2394its prior window after a dialog box was dismissed. 2395 23966/28/95 (bug fix) Fixed problem with "search" widget command returning 2397incorrect length on some backwards regexp searches. 2398 23996/28/95 (bug fix) Successive "wm iconbitmap . {}" commands could cause 2400a core dump. 2401 24026/29/95 (new feature) Added -elementborderwidth option for scrollbars 2403so the -borderwidth can be set to 0 without flattening the arrows and 2404slider. 2405 2406-------------------- Release 4.0, 7/1/95 ------------------------- 2407 24087/18/95 (bug fix) %t in event bindings didn't work properly for some 2409events (e.g. PropertyNotify). 2410 24117/18/95 (bug fix) Changed "exec wish" lines in demo scripts to 2412"exec wish4.0" to avoid version conflicts. 2413 24147/18/95 (bug fix) Fixed round-off errors in scrolling for texts, 2415canvases, listboxes, and entries. The error could cause the view 2416to shift up in a command like "$w yview moveto [lindex [$w yview] 0]". 2417 24187/19/95 (bug fix) Canvases weren't always redrawing borders correctly 2419when they became unobscured. There were also some problems with 2420improper refresh after size changes. 2421 24227/19/95 (bug fix) Fixed bug in text index processing that causes 2423tests textIndex-11.1 and textIndex12.1 to fail on some platforms. 2424 24257/19/95 (bug fix) Fixed bug where 2-second delays were ocurring during 2426"raise" and "lower" commands for toplevel windows under some window 2427managers (such as fvwm). 2428 24297/20/95 (bug fix) Text searches were misbehaving when there were embedded 2430windows on the starting line of the search. The most common symptom is 2431that Tk would fail to find a match at the starting position for the 2432search. 2433 24347/22/95 (bug fix) Fixed core dump that could occur in menus if a checkbutton 2435entry's -variable option referred to an array (or couldn't be read 2436by the menu C code for some other reason). 2437 24387/22/95 (bug fix) Text widgets didn't update their scrollbars when 2439changes were made to information that was off-screen. 2440 24417/25/95 (bug fix) Fixed core-dump in tkListbox.c that used to happen 2442in the command ".l bbox end" if the listbox was empty. 2443 24447/25/95 (bug fix) Page-up and page-down bindings for listboxes didn't 2445move active element to remain on the screen. 2446 24477/25/95 (bug fix) Patched around H-P compiler problem that results in 2448core-dumps in tkImgPhoto.c during image handling. 2449 24507/25/95 (bug fix) Fixed bug in tkImgPhoto.c that caused core dumps 2451(during Tk self-tests and other image uses) on AIX and other machines 2452where "schar" in tkImgPhoto.c was being defined as "short" instead of 2453"char". 2454 24557/26/95 (bug fix) The PPM image reader couldn't handle maximum intensity 2456values other than 255. 2457 24587/26/95 (bug fix) Canvases didn't redraw their borders when the relief 2459changed from raised to flat. 2460 24617/27/95 (bug fix) Canvases didn't set the scrolling values correctly 2462when no scroll region was specified. 2463 24647/28/95 (bug fix) Modified menu and tk_dialog scripts to restore any 2465old grab that might have been in effect before a menu or dialog was 2466posted. 2467 2468----------------- Released patch 4.0p1, 7/29/95 ---------------------- 2469 24708/4/95 (bug fix) Calls to toupper and tolower weren't using the UCHAR 2471macro, so they didn't always work in non-U.S. locales. (JO) 2472 24738/14/95 (new feature) Added -tearoffcommand option for menus. 2474 24758/16/95 (bug fix) Canvases didn't generate proper Enter and Leave 2476events if the Leave handler for an item reconfigured the canvas in 2477a way that made the old current item the new current item again. (JO) 2478 24798/21/95 (bug fix/feature change) When -takefocus was a script, Tk 2480was allowing window viewability to override it. Changed so that 2481viewability is now ignored when -takefocus is a script. (JO) 2482 24838/21/95 (bug fixes) Fixed memory leaks in tkSend.c, tkSelect.c, and 2484tkUnixWm.c (JO). 2485 24868/21/95 (bug fix) Text widgets didn't handle commands like 2487".t search -backwards foo end 1.0" properly: never found foo. (JO) 2488 24898/23/95 (new feature) Added Makefile and configure.in support for 2490dynamic loading. (JO) 2491 24928/25/95 (bug fix) The "frame" and "toplevel" commands couldn't safely 2493be renamed, due to a kludgy way that they shared a single command 2494procedure. Split into separate procedures. (JO) 2495 24968/25/95 (bug fix) Fixed bug in libary/menu.tcl that caused "grab 2497window not visible" errors for popup menus (and perhaps elsewhere?). (JO) 2498 24998/25/95 (bug fix / new feature) The "gray25" bitmap was really only 250012.5% on, not 25%. Added new "gray12" bitmap that is the same as the 2501old "gray25". "Gray25" is still supported for compatibility, but its 2502use is deprecated. (JO) 2503 25048/25/95 (bug fix) Scrollbar bindings didn't properly handle case where 2505B2 is clicked while B1 is already down. (JO) 2506 25078/26/95 (bug fix) Menus were ignoring -activebackground if tk_strictMotif 2508was set, but not -activeforeground. Changed to ignore both. (JO) 2509 25108/26/95 (bug fix) Scales and scrollbars didn't properly handle a 2511-repeatdelay value of 0 (they shouldn't auto-repeat in this case). (JO) 2512 25138/28/95 (bug fix) Tcl errors were occurring for tkPriv(oldGrab) when 2514clicking on a disabled option menu. (JO) 2515 25168/28/95 (bug fix) Changed event-handling code to use FD_SETSIZE instead 2517of OPEN_MAX, since OPEN_MAX is incorrect on some systems (e.g., IRIX). (JO) 2518 25198/28/95 (bug fix) Fixed bug in photo images that caused garbling of 2520image data in the "put" and "copy" commands if the source data had 2521only one scan line but had a width less than the width of the target 2522image. (JO) 2523 25248/29/95 (bug fix) Tk used to refuse to post menus if they had no 2525entries. This made it impossible for a menu to fill itself the first 2526time it is posted. Changed to allow menus with no entries to be 2527posted. (JO) 2528 25298/30/95 (bug fix) If there was extra space at the bottom of a menu, 2530it wasn't being redisplayed properly. 2531 25328/30/95 (new feature) Added -transient option to menus. 2533 25348/30/95 (new features) Added proper button 2 support to both scrollbars 2535and scales (it sets the slider position from the mouse position). (JO) 2536 25378/30/95 (bug fix) Fixed potential core dump that could occur in 2538photo images (ReadPPMFileHeader could overflow buffer under some bad 2539inputs, such as certain GIF images). (JO) 2540 25418/30/95 (bug fix) Errors of the form `syntax error in expression "!"' 2542could occasionally happen in tkScaleDrag. (JO) 2543 25448/31/95 (new feature) Changed man page installation (with "mkLinks" 2545script) to create additional links for manual pages corresponding to 2546each of the procedure and command names described in the pages. (JO) 2547 25489/1/95 (new feature) Added "after info" command. Also added checks 2549so that one interpreter can't cancel another's "after" events. (JO) 2550 25519/8/95 (bug fix) Fixed bug that could cause memory corruption and core 2552dumps if a "fileevent" handler was deleted while the handler was 2553active. (JO) 2554 25559/11/95 Reorganized Tk sources for Windows and Mac ports. All sources 2556are now in subdirectories: "generic" contains sources that work on all 2557platforms, "windows", "mac", and "unix" directories contain platform- 2558specific sources. (SS) 2559 25609/11/95 (new feature) Added new "notifier" mechanism to allow multiple 2561implementations of the mechanisms for finding out about events. This 2562change was necessary to support Mac and PC platforms, but it may also 2563allow other goodies such as combining Xt and Tk widgets in a single 2564application. See the new manual entry Notifier.3 for details. (SS) 2565 25669/11/95 (feature change) Changed interface to Tk_RestrictProc so that 2567(a) it takes a clientData argument instead of display and arg, and 2568(b) it returns a value that can ask for the event to be discarded as well 2569as deferred or processed. (SS) 2570*** POTENTIAL INCOMPATIBILITY *** 2571 25729/11/95 (new feature) Added TK_WINDOW_EVENTS #define, which is equivalent 2573to TK_X_EVENTS but is now preferred, since it applies to all platforms. (SS) 2574 25759/11/95 (feature change) Can't export variables anymore because this doesn't 2576work under Windows DLLs. Eliminated tk_NumMainWindows variable and replaced 2577with procedure Tk_GetNumMainWindows. (SS) 2578*** POTENTIAL INCOMPATIBILITY *** 2579 25809/11/95 (new feature) Added procedure Tk_PreserveColormap to increment 2581the reference count on colormaps. Used in photo widgets. (SS) 2582 2583----------------- Released patch 4.0p2, 9/15/95 ---------------------- 2584 2585----------------- Released 4.1a1, 9/15/95 ---------------------- 2586 25879/22/95 (renamed files) Changed the names of the bitmap images in the 2588$tk_library/demos/images directory to use the .bmap file extension. (RJ) 2589 25909/22/95 (bug fix) Fixed bug where text widgets could occasionally 2591display the insertion cursor both at the end of one line and the 2592beginning of the next. (JO) 2593 25949/25/95 (bug fix) Fixed bug that could cause core dumps when an 2595application uses multiple screens and a binding destroys the main 2596window (bind code was using MainInfo structure after it had been 2597freed). (JO) 2598 25999/25/95 (bug fix) Text widgets sometimes scrolled backwards on 2600occasion if you dragged down past the bottom of the scrollbar. (JO) 2601 26029/25/95 (bug fix) Fixed bug in menus where a cascaded submenu posted 2603from a torn-off menu could be left posted if mouse was pulled off the 2604end of the cascade and released. (JO) 2605 26069/25/95 (new feature) Added "--" switch to wish, so that you can 2607pass arguments like -n through to a script without having wish 2608interpret them. (JO) 2609 26109/25/95 (bug fix) Fixed core dump that could occur for radiobuttons 2611and selectbuttons if -selectcolor was an empty string. (JO) 2612 26139/26/95 (bug fix) Entries didn't used to notice if a trace procedure 2614on the -textvariable overrode a new value set by the entry. This 2615could cause the variable to get out of sync with the contents of the 2616entry. (JO) 2617 26189/26/95 (new feature) Added -sliderrelief option to scales, changed 2619default bindings to change the slider's relief to sunken while it's 2620being dragged with the mouse. (JO) 2621 26229/26/95 (bug fix) TkColor.c wasn't computing colormap size correctly; 2623could result in X Protocol error for QueryColors when colormaps run 2624out of colors. (JO) 2625 26269/26/95 (bug fix) Wish couldn't handle script files with spaces in 2627their names. (JO) 2628 26299/27/95 (cosmetic clean-up) Removed extraneous spaces to make error 2630messages consistent: ": should be" is now ": should be". (JO) 2631 26329/27/95 (feature change) Modified tk_dialog so that it uses the 2633option database for the -wraplength option on the message. This 2634allows the option to be overridden by the caller. (JO) 2635 26369/28/95 (bug fix) Wish incorrectly parsed the command line under 2637Windows, causing backslashes to be substituted. (SS) 2638 26399/28/95 (bug fix) Wish now sources wishrc.tcl instead of .wishrc. (SS) 2640 26419/28/95 (bug fix) Tk_DoOneEvent returned 0 under some circumstances 2642when it was possible to find more work to do. For example, if a 2643signal interrupted select(), but no event handlers were triggered, it 2644would return 0 even though it could still detect events by reentering 2645select(). (SS) 2646 26479/29/95 (bug fix) "winfo interps" caused a crash under Windows. (SS) 2648 264910/1/95 (feature change) Eliminated Tk_NotifyIdle interface in favor of 2650Tk_IdlePending. (SS) 2651 265210/1/95 (bug fix) Turned motion event collapsing into an idle handler 2653so it will be easier to move the event loop into Tcl. (SS) 2654 265510/1/95 (bug fix) Fixed several problems with negative coordinates 2656in canvases. One example: dragging a canvas rectangle with a wide 2657border and fractional coordinates could leave junk on the screen 2658if the rectangle was in negative coordinate space. (JO) 2659 266010/2/95 (bug fix) Tk was improperly handling Enter/Leave events 2661during a button grab. (SS) 2662 266310/2/95 (new feature) Added support for the Macintosh do script 2664('dosc') event. Available only on the Macintosh. (RJ) 2665 266610/4/95 (new feature) Added support for compiling with VC++. 2667Resulting binaries work under Win32s through NT. 2668 2669----------------- Released 4.1a2, 10/6/95 ---------------------- 2670 267110/10/95 (new feature) Macintosh Tk now supports the complete set 2672of X cursors that Unix Tk supports. (RJ) 2673 267410/11/95 (bug fix) Tk now supports all of the X11 cursors under 2675Windows. (SS) 2676 267710/11/95 (bug fix) The "wm resizable" command was missing from the 2678Windows version of Tk. (SS) 2679 268010/12/95 (bug fix) Macintosh Tk had problems with clipping toplevel 2681windows that children of any frame other than another toplevel. (RJ) 2682 268310/13/95 (bug fix) Eliminated dependency on MKS toolkit for generating 2684the tk.def file from Borland object files. (SS) 2685 268610/16/95 (bug fix) Fixed clipping and update problems relating to 2687the raising and lowering of overlapping windows on Mac. (RJ) 2688 268910/30/95 (bug fix) When focus-follows-mode (invoked via tk_focusFollowsMouse), 2690was focussing on windows even in situations where keyboard traversal would 2691skip the window. Changed to use the tkFocusOK procedure so that the 2692criteria for focussing are the same in both modes. (JO) 2693 269411/2/95 (bug fix) Changed listbox bindings to ignore double-clicks. 2695This avoids errors that used to occur if a user defined a binding 2696for double-click that deleted the listbox. (JO) 2697 269811/3/95 (feature change) Moved most of the Tk event loop to Tcl. Many 2699Tk_ names have become Tcl names now: 2700 2701TK_READABLE => TCL_READABLE 2702TK_WRITABLE => TCL_WRITABLE 2703TK_EXCEPTION => TCL_EXCEPTION 2704TK_DONT_WAIT => TCL_DONT_WAIT 2705TK_WINDOW_EVENTS => TCL_WINDOW_EVENTS 2706TK_FILE_EVENTS => TCL_FILE_EVENTS 2707TK_TIMER_EVENTS => TCL_TIMER_EVENTS 2708TK_IDLE_EVENTS => TCL_IDLE_EVENTS 2709TK_ALL_EVENTS => TCL_ALL_EVENTS 2710Tk_IdleProc => Tcl_IdleProc 2711Tk_FileProc => Tcl_FileProc 2712Tk_TimerProc => Tcl_TimerProc 2713Tk_TimerToken => Tcl_TimerToken 2714Tk_BackgroundError => Tcl_BackgroundError 2715Tk_CancelIdleCall => Tcl_CancelIdleCall 2716Tk_CreateFileHandler => Tcl_CreateFileHandler 2717Tk_CreateTimerHandler =>Tcl_CreateTimerHandler 2718Tk_DeleteFileHandler => Tcl_DeleteFileHandler 2719Tk_DeleteTimerHandler =>Tk_DeleteTimerHandler 2720Tk_DoOneEvent => Tcl_DoOneEvent 2721Tk_DoWhenIdle => Tcl_DoWhenIdle 2722Tk_Sleep => Tcl_Sleep 2723tkerror => bgerror 2724 2725Other than the name changes, the functions are the same. In addition, 2726there are #defines in tk.h so that the old Tk names will still work. 2727tkerror and bgerror are specially hacked as synonyms, so it should be 2728safe to use either one. You should switch to the new Tcl names ASAP, 2729though, since the old Tk names will eventually be desupported. (JO) 2730 273111/7/95 (features removed) As part of moving the event loop to Tcl, 2732the following procedures were deleted: 2733 - Tk_EventInit (the presence of the event loop in Tcl should 2734 make this unneccessary). 2735 - Tk_CreatFileHandler2 (you can get the same effect by using event 2736 sources in Tcl, but you have to modify your code to use the new 2737 Tcl APIs). 2738 - All of the stuff in the manual entries Notifer.3 and QueueEvent.3; 2739 this has changed because the notifier got reworked when it was 2740 moved to Tcl. 2741*** POTENTIAL INCOMPATIBILITY *** 2742 274311/7/95 (feature change) Changed to use exit handler to cleanup windows 2744in Tk, so Tk no longer needs to have a private copy of the "exit" command. 2745(JO) 2746 274711/7/95 (bug fix) If wish was invoked with a command-line geometry and 2748a script file (e.g. "wish foo.tcl -geometry 30x20"), and if one of 2749the windows created by the script used the -setgrid option, then the 2750width and height from the command line were lost. (JO) 2751 275211/8/95 (bug fix) The "see" command didn't work quite right for texts: 2753if the window was small and you try to "see" a line just offscreen, 2754Tk centered the line (actually, mis-centered it) when it should have 2755aligned it at the top or bottom. (JO) 2756 275711/9/95 (bug fix) The "send" command crashed if you tried to send to 2758a different display with "-displayof". (JO) 2759 276011/9/95 (bug fix) The Symbol font didn't print right in Postscript 2761output, because of changes made to re-encode fonts to get proper 2762ISO Latin1 behavior. Changed the code not to re-encode the Symbol 2763font. (JO) 2764 276511/13/95 (bug fix) Fixed Makefile.in and configure.in for UNIX so that 2766configure can be run from a clean directory separate from the Tcl source 2767tree, and compilations can be performed there. (JO) 2768 276911/17/95 (bug fix) If a window was gridded, Tk still computed the 2770default maximum dimensions in pixel units, which resulted in windows 2771that could grow much larger than the screen. (JO) 2772 277311/17/95 (bug fix) If a menus entries were all disabled, posting 2774the menu and typing Up or Down caused an infinite loop, locking 2775up the screen (JO). 2776 277711/19/95 (bug fix) The focus wasn't being restored properly after a 2778menu selection in a cascaded menu. (JO) 2779 278011/19/95 (bug fix) Menubutton's didn't stipple display their images 2781differently when disabled. Change to have the same behavior as buttons: 2782the image is stippled over in the background color when the menubutton 2783is disabled. (JO) 2784 278511/21/95 (bug fix) Changes in display attributes such as font could 2786cause core dumps in the text widget under some circumstances involving 2787line wrapping. (JO) 2788 278911/22/95 (bug fix/new feature) Changed both the placer and the packer 2790to ensure that slaves are unmapped whenever the master is unmapped. 2791This saves time that slaves might otherwise spend trying to redisplay 2792themselves when they're unmapped. (JO) 2793 279411/22/95 (bug fix) Space and return keys didn't work for menus if 2795they were posted via Alt-x keystrokes. (JO) 2796 279711/24/95 (bug fix) tk_dialog procedure had binding for <Return> that 2798always activated default binding, even if input focus was in some 2799other binding. Removed this feature, since existing focus support 2800will already "do the right thing". (JO) 2801 280211/24/95 (bug fix) Both canvases and texts could dump core if a binding 2803(such as ButtonRelease on an internal item) deleted the widget. (JO) 2804 280511/24/95 (feature change) Replaced "configInfo" file with tkConfig.sh, 2806which is more complete and uses slightly different names. Also 2807arranged for tkConfig.sh to be installed in the platform-specific 2808library directory. (JO) 2809 281011/24/95 (bug fix) It was possible for a slave to be placed or packed 2811-in itself, with unpleasant consequences. It is now an error for the 2812slave to be its own master for geometry management. (JO) 2813 281411/25/95 (bug fix) The -command option of scales was sometimes being 2815invoked spuriously (e.g. when the mouse moved in the scale without a 2816button down). This was because the scale wasn't rounding properly 2817when setting the scale value from its associated variable. (JO) 2818 2819----------------- Released patch 4.0p3, 11/28/95 ---------------------- 2820 282112/18/95 (feature change) Moved Tk_Preserve, Tk_Release, and 2822Tk_EventuallyFree to Tcl, renamed to Tcl_Preserve etc. Added #defines 2823to tk.h so that the old names still work. (JO) 2824 282512/23/95 (bug fix) If a single process had > 1 Tk application, Tk 2826didn't guarantee that the application names were unique, which could 2827cause all sorts of confusion with "send". (JO) 2828 282912/23/95 (feature change) Eliminated Tk_CreateMainWindow and moved 2830all of its functionality to Tk_Init. All that you need to do now 2831to get Tk in an application is to call Tk_Init. Improved Tk_Init 2832so that -colormap and -visual command-line arguments are now passed 2833through to TkCreateFrame. Tk_Main is much simpler now, since a lot 2834of its functionality has moved to Tk_Init. (JO) 2835*** POTENTIAL INCOMPATIBILITY *** 2836 283712/23/95 (new feature) Added support for Tcl_StaticPackage so 2838that Tk can now be loaded into slave interpreters with the "load" 2839command to create new applications. (JO) 2840 284112/23/95 (new features) Added support for -colormap and -visual command- 2842line options for wish. (JO) 2843 28441/4/95 (bug fix) Fixed keyboard code to properly handle alt-key 2845sequences for international keyboards and menu-accelerators. (SS) 2846 28471/5/96 (bug fix) Scrollbar code sometimes generated errors on accesses 2848to tkPriv(relief) during control-clicks. (JO) 2849 28501/9/96 (new feature) added the "grid" command to provide a table based 2851geometry manager. (SU) 2852 28531/12/96 (performance optimization) Changed the way tag information is kept 2854in the text's Btree so the cost of adding and removing tag ranges is no longer 2855proportional to the number of unique tags in the text. In the old system 2856the cost of adding N unique tags was O(N-squared). The new implementation is 2857optimized for tags that only cover a small amount of text, measuring from 2858their earliest tag range to the end of their last range. In the best case the 2859cost of adding a tag range is unrelated to the number of unique tags, so the 2860cost of adding N tags is only O(N). In the worst case, where all tags 2861cover all the text, the cost is still O(N-squared) to add N such tags. 2862Deleting tags still has an O(N) cost (so deleting N tags is O(N-squared), 2863but it is now a factor of 2 faster than the old system. (BW) 2864 28651/12/96 (new feature) added the text "dump" operation that returns information 2866about all elements in a text widget: text, tags, marks, and windows. (BW) 2867 28681/12/96 (new feature) added the text "mark next" and "mark previous" operations 2869to search forward and backwards for the next (previous) mark in the text. (BW) 2870 28711/12/96 (new feature) added the text "tag prevrange" operation to search 2872backwards for the current or previous range of a tag. (BW) 2873 28741/16/96 (new feature) Added support for relative widget placement on 2875the "grid" command. (SU) 2876 28771/17/96 (new feature) Modified the Makefile/configure setup to support 2878compiling Tk as a shared library. Use the --enable-shared option to 2879the "configure" script. (JO) 2880 2881----------------- Released 4.1b1, 1/26/96 ----------------------- 2882 28832/2/96 (bug fix) Frames were getting a default size of 200x200, whereas 2884there should be no default. (JO) 2885 28862/2/96 (bug fix) Argc wasn't getting reset properly after Tk removed 2887the arguments it understood from those on the command line. (JO) 2888 28892/6/96 (bug fix) Fixed off by one error in argument parsing code under 2890Windows. (SS) 2891 28922/6/96 (bug fix) "wm transient" now works under Windows. The resulting 2893toplevel is created with a modal dialog box frame and will not appear 2894in the taskbar under Windows '95. (SS) 2895 28962/9/96 (bug fix) Changed Makefile.in to use -L and -l for Tcl and Tk 2897libraries so that shared libraries are more likely to be found correctly 2898on more platforms. (JO) 2899 29002/14/96 (feature change) Eliminated tk_CanvasTagsOption variable because 2901it can't be exported safely across DLL boundaries. Instead, exported 2902Tk_CanvasTagsParseProc and Tk_CanvasTagsPrintProc procedures for 2903use by canvas type managers in creating their own custom options. (JO) 2904*** POTENTIAL INCOMPATIBILITY *** 2905 29062/14/96 (bug fix) "winfo pointerxy" when applied to a non-toplevel window 2907crashed wish. (SS) 2908 29092/14/96 (bug fix) "tkwait visibility" would hang under Windows. (SS) 2910 29112/14/96 (bug fix) Cursors were not being updated until an enter event. 2912In cases where the cursor left the toplevel and reentered before Tk 2913noticed, the cursor would get "stuck" until the next enter event. 2914Similarly, if the cursor attribute of a window was updated while the 2915mouse was in the window, the cursor would not change until the next 2916time the mouse entered the window. (SS) 2917 29182/15/96 (bug fix) If a top-level was resizable in one direction 2919(e.g. "wm resizable . 0 1"), once the user resized it any changes 2920in the internally requested size (by the widgets) were ignored, 2921even for the non-resizable dimension. Fixed to handle the two 2922dimensions totally independently, so the widget's requests are 2923honored as long as that dimension hasn't been set by the user. (JO) 2924 29252/17/96 (bug fix) If a text widget had very long lines (e.g. more than 292632K pixels), integer overflow could occur, resulting in parts of the 2927line not being visible. (JO) 2928 29292/20/96 (feature change) Changed the -minsize option of grid to take 2930screen units instead of pixels. (SU) 2931 29322/20/96 (bug fix) grid row and column weights are compared against 2933MINWEIGHT (0.001) instead of 0.0 to guard against divide by zero errors 2934during weight normalization. (SU) 2935 29362/20/96 (bug fix) Menu commands were not being invoked sometimes. 2937There was a race condition that caused events to be processed while a 2938menu was being unposted. (SS) 2939 2940----------------- Released 4.1b2, 2/23/96 ----------------------- 2941 29422/23/96 (bug fix) Alt-keys invoked in torn-off and popped up menus 2943caused menus to be posted in the parent toplevel. (JO) 2944 29452/23/96 (bug fix) Canvases weren't always updating their scrollbars 2946when they should. (JO) 2947 29482/23/96 (bug fix) Fixed core dump that could occur if a WM_DELETE_PROTOCOL 2949handler generated an error. (JO) 2950 29512/24/96 (bug fix) Removed dependencies on Makefile in the UNIX Makefile: 2952this caused problems on some platforms (like Linux?). (JO) 2953 29542/24/96 (feature change) Changed text and entry widgets so that they 2955set the insertion cursor before inserting during a button-2 click. 2956Also made optional bindings check for tk_strictMotif at the time of 2957the event, rather than at the time the bindings are created. (JO) 2958 29592/24/96 (bug fix) Tk tended to crash with an X error when unsetting 2960an icon window (e.g. "wm iconwindow . {}"). (JO) 2961 29622/25/96 (bug fix) Wasn't removing windows from the WM_COLORMAP_WINDOWS 2963property when they were deleted. (JO) 2964 29653/1/96 (new feature) Added new "bbox" widget command for entries. 2966Also modified mouse bindings for entries and texts so that the 2967mouse position rounds to the nearest inter-character gap, rather 2968than the left edge of the character under the mouse. This provides 2969more natural selection behavior. (JO) 2970 29713/1/96 (bug fix) Fixed core dump that could occur in image code if an 2972image was deleted while in use in a widet, then re-used in another 2973widget while "deleted". (JO) 2974 29753/1/96 (bug fix) Calling wish with a single argument caused a crash 2976under Windows due to an off-by-one error in the argument parsing code. (SS) 2977 29783/1/96 (bug fix) Palette management was broken and resulted in 2979incorrect palette realization and refresh behavior. Also, images were 2980being drawn incorrectly if they were attached to widgets that had a 2981private colormap. (SS) 2982 29833/2/96 (bug fix) It was possible to press the mouse button over an 2984option menu, drag to a pulldown menu, and have the pulldown menu 2985popup in place of the option menu. Fixed this so that option menus 2986are isolated from each other and from pulldowns. (JO) 2987 29883/2/96 (bug fix) Fixed yet another bug that caused long delays when 2989raising toplevel windows. (JO) 2990 29913/2/96 (bug fix) Fixed bug in canvases where zero-sized rectangles 2992and ovals didn't always redisplay right (could leave trailing 2993garbage on screen when moved). (JO) 2994 29953/2/96 (bug fix) Entry widgets reset their insertion cursor, selection, 2996and view whenever the text variable changed, plus whenever a "configure" 2997widget command was invoked and there was a text variable for the 2998widget. Fixed to preserve this information as much as possible. (JO) 2999 30003/5/96 (new feature) Added version suffix to shared library names so that 3001Tk will compile under NetBSD and FreeBSD (I hope). (JO) 3002 30033/6/96 (bug fix) Changed the way certain configure & motion events are 3004reported. This fixes several bugs in menus & "winfo rootx". (RJ) 3005 30063/7/96 (bug fix) Fixed tag remove bug that showed up when draging out a 3007selection. If you had dragged left, then tried to drag back right, the 3008left edge of the selection wasn't being updated because the tag remove 3009wasn't doing anything. (BW) 3010 30113/7/96 (bug fix) Fixed the boundary conditions of tag prevrange. The second 3012index argument wasn't effecting in stopping the search if it fell within 3013a range. The second index has to come at or before the start of a range 3014for the range to be found by tag prevrange. (BW) 3015 30163/7/96 (bug fix) "puts" to stdout or stderr when running from a script 3017caused wish41.exe to exit silently. Now the output is silently 3018discarded without generating an error. (SS) 3019 30203/7/96 (bug fix) Fixed bug where wish was treating empty lines in the input 3021as end of input, if the input came from stdin. This would cause it to 3022complain about missing closing braces etc. (JL) 3023 3024----------------- Released 4.1b3, 3/8/96 ----------------------- 3025 30263/9/96 (bug fix) Fixed bug in text.tcl that could cause errors in text 3027widgets of the form 'can't use non-numeric string as operand of "-"'. (JO) 3028 30293/12/96 (feature improvement) Modified startup script to look in several 3030different places for the Tcl library directory. This should allow tk 3031to find the libraries under all but the weirdest conditions, even without 3032the TK_LIBRARY environment variable being set. (JO) 3033 30343/14/96 (bug fix) "wish bogus_file_name" didn't print an error message. (JO) 3035 30363/14/96 (bug fix) Button-2 wasn't claiming the focus during paste 3037operations. (JO) 3038 30393/14/96 (bug fix) "tkwait visibility" use to hang forever if its window 3040was deleted. Now it detects this condition and returns an error. (JO) 3041 30423/16/96 (bug fix) Changed configuration stuff to get dynamic loading and 3043shared libraries working under AIX. (JO) 3044 30453/16/96 (bug fix) Fixed core dumps that could occur when a slave interpreter 3046was deleted in the middle of executin bindings. (JO) 3047 30483/18/96 (new feature) Added support for Activate/Deactivate events. 3049Currently, these new X events will generated only on the Macintosh. (RJ/CS) 3050 30513/21/96 (bug fix) The "tag prevrange" command would fail to return the current 3052range if it began at 1.0 and the starting point of the search was within 3053the range. (BW) 3054 30553/21/96 (configuration improvement) Changed configure script so it 3056doesn't use version numbers (as in -ltk4.1 and libtk4.1.so) under 3057SunOS 4.1, where they don't work anyway. (JO) 3058 30593/22/96 (bug fix) Made Tk more robust against interpreter deletion. Now it 3060should be safe to delete an interpreter with a Tk application inside it, 3061without first deleting the Tk application. (JL) 3062 30633/26/96 (bug fix) Tk now returns results from a "send" to an interpreter 3064in which the Tk application is destroyed, if the interpreter continues 3065computing after the Tk application is destroyed. Previously any results 3066computed after '.' was destroyed in the target interpreter were discarded 3067by the "send". (JL) 3068 30693/26/96 (new feature) Tk now provides a static Tktest package which is 3070present only in test versions of Tk; this allows the testing commands to 3071be loaded into new interpreters besides the main one. (JL) 3072 30733/28/96 (bug fix) Changed the tk_dialog procedure *not* to make the 3074dialog a transient for its parent. The old behavior meant that the 3075dialog did not get posted if the parent was iconified. (JO) 3076 30774/5/96 (bug fix) Tk would occasionally crash when destroying toplevels 3078under Windows. (SS) 3079 30804/5/96 (bug fix) Fonts were not being properly deallocated, causing 3081GDI resources to be consumed and never released under Windows. (SS) 3082 30834/11/96 (bug fix) Toplevel windows with no specified geometry were 3084always appearing in the upper left corner of the screen under 3085Windows. (SS) 3086 30874/11/96 (bug fix) "wm minsize" did not properly report the minimum 3088size imposed by the Windows window manager. (SS) 3089 30904/13/96 (bug fix) Text widgets could dump core in some cases where 3091text was inserted on the top visible line. (JO) 3092 30934/16/96 (bug fix) Changed menu code to ignore errors that occur when 3094restoring a grab: the old grab window might not be visible anymore. (JO) 3095 3096----------------- Released 4.1, 4/21/96 ----------------------- 3097 30985/1/96 (bug fix) "option readfile" did not handle files with CRLF 3099line termination. (SS) 3100 31015/1/96 (bug fix) Changed to install tkConfig.sh under "make install-binaries", 3102not "make install-libraries". (JO) 3103 31045/7/96 (bug fix) Moved initScript in tkUnixInit.c to writable memory to 3105avoid potential core dumps. (JO) 3106 31075/7/96 (bug fix) Changed tk_dialog back so that the dialog box is a 3108transient window again. This is needed to make sure that the dialog 3109box doesn't get obscured. Also changed it to return -1 if the dialog 3110window is deleted before the user presses a button. (JO) 3111 31125/16/96 (bug fix) Fixed bug that caused core-dumps if a text widget 3113with -setgrid 1 was deleted by removing its command. (JO) 3114 31155/16/96 (bug fix) Fixed bug that caused Tk initialization to use improperly 3116initialized variables left over from previous invocation of Tk_Init on 3117another interpreter. (JL) 3118 31195/16/96 (new feature) Implemented application embedding on Windows 3120platforms (only Tk inside another application, not the other way yet). (JL) 3121 31225/16/96 (new feature) Added C API Tk_SafeInit that adds Tk to a safe 3123interpreter. (JL) 3124 31255/16/96 (bug fix) Fixed bug that caused Tk initialization to use improperly 3126initialized variables left over from previous invocation of Tk_Init on 3127another interpreter. (JL) 3128 31295/16/96 (new feature) Implemented application embedding on Windows 3130platforms (only Tk inside another application, not the other way yet). (JL) 3131 31325/16/96 (new feature) Added C API Tk_SafeInit that adds Tk to a safe 3133interpreter. (JL) 3134 31355/22/96 (bug fix) Listboxes weren't properly ignoring double clicks on 3136button 1. (JO) 3137 31386/12/96 (bug fix) Focus was automatically placed on new toplevels. 3139This caused the titlebar to flash during menubar traversal. (SS) 3140 31416/12/96 (bug fix) Iconification of a window with a specified geometry 3142by using the minimize button would leave the window in an inconsistent 3143state. When the window was deiconified using "wm deiconify", the 3144window would continue to display as an icon with the deiconified 3145geometry. (SS) 3146 31476/12/96 (bug fix) Fixed a resource leak where the text widget was not 3148freeing all of the TkRegions it created. This fix affects all 3149platforms, but is particularly important for Win32s. (SS) 3150 31516/21/96 (configuration change) Added --enable-gcc switch to configure 3152script to make Tk just like Tcl. Now Tk will not use gcc unless you 3153request it explicitly. (JO) 3154 31557/18/96 (bug fix) Changed "configure" script to add an extra -R switch 3156(or whatever is appropriate to the platform) if the X library is in a 3157nonstandard place. This guarantees that the shared library can be 3158found at runtime without having to set the LD_LIBRARY_PATH variable. (JO) 3159 31607/19/96 (bug fix) Fixed bug in tkImgGIF.c that cause core dumps if a 3161GIF file contained multiple images. (JO) 3162 31637/20/96 (bug fix) Deadlock could occur if a recursive series of send 3164operations involved multiple displays. (JO) 3165 31667/23/96 (bug fix) Fixed a resource leak where deallocated XIDs were 3167taking up memory on Windows and Macintosh platforms. (SS) 3168 31697/30/96 (bug fix) A core dump could occur if a <Destroy> handler for 3170a window tried to create a child in the half-dead window. Fixed by 3171making the window's name disappear from the name table once it starts 3172to be deleted. (JO) 3173 3174----------------- Released patch 4.1p1, 8/2/96 ----------------------- 3175 31764/30/96 (new feature) Added support for named virtual events. New "event" 3177command to define/destroy named virtual events and to programmatically 3178send both real and virtual events to Tk. (CS) 3179 31808/6/96 (bug fix) Entry widgets were invoking scrollbar update functions 3181too often. (JO) 3182 31838/9/96 (bug fix) 7/30 change above for <Destroy> handlers broke many 3184things by making window available during Destroy handler. Reworked 3185fix for core dump to simply disallow creating children of half-dead 3186parents. (JO) 3187 31888/12/96 (bug fix) Fixed bug where using the Copy menu item on the 3189Macintosh would append a NULL character at the end of the text. (RJ) 3190 31918/15/96 (bug fix) Fixed Mac code so garbage wouldn't be printed in 3192text and entry widgets when function & other non-printing keys were 3193pressed. (RJ) 3194 31958/15/96 (configuration improvement) Changed the file patchlevel.h 3196to be tkPatch.h. This avoids conflict with the Tcl file and is now 3197in 8.3 format on the Windows platform. (RJ) 3198 31998/19/96 (bug fix) Fixed a bug under Windows where the initial window 3200position for a toplevel window was reported as +0+0, regardless of the 3201actual position. (SS) 3202 32038/21/96 (bug fix) If the last character on a line in a text widget was 3204a space character that didn't completely fit, the text widget would 3205sometimes add an extra wrap line. (JO) 3206 32078/22/96 (feature change) Complete rewrite of the grid geometry manager. 3208There is a new layout algorithm that produces better (but different) 3209layouts in many common cases. (SU) 3210 32118/22/96 (new feature) There are two new options for the grid geometry 3212manager, "grid update" which forces an immediate layout calculation, 3213and a "-pad" option to rowconfigure and columnconfigure that allows for 3214extra space around widgets. (SU) 3215 32168/22/96 (feature change) The order in which the grid geometry manager 3217reports slaves is now last-managed first. (SU) 3218 32198/22/96 (feature change) The column and row weights in the grid 3220geometry manager are kept internally as integers, instead of floating 3221point values. Floating point values are still accepted on the command line, 3222but are truncated to integers. (SU) 3223 32248/22/96 (new feature) There are four new commands for opening common 3225dialog boxes: tk_chooseColor, tk_getOpenFile, tk_getSaveFile and 3226tk_messageBox. Native dialog boxes are used wherever available. (IL) 3227 32288/22/96 (new demos) Added "fsbox", "msgbox" and "clrpick" demos. (IL) 3229 32308/23/96 (feature change) Invoking the edit menu on the Macintosh now 3231generates the following virtual events <<Cut>>, <<Copy>>, <<Paste>>, 3232and <<Clear>> instead of faking key events. (RJ) 3233*** POTENTIAL INCOMPATIBILITY *** 3234 32358/25/96 (bug fix) Fixed a bug that would cause "grid x" to dump core. (SU) 3236 32378/26/96 (new feature) Added the "unsupported1" command to the 3238Macintosh version of Tk. This command will allow you to set the style 3239of a new toplevel Window (much like overrideredirect). You can use 3240this to get access to all of the Native Mac window styles. This is to 3241hold you over until we get a more general solution added to the 3242toplevel command. (RJ) 3243 32448/26/96 (new feature) Added support to handle the zoom box on a 3245Macintosh window. (Currently, you can only get a Tk window with a 3246zoom box by using the "unsupported1" command. (RJ) 3247 32488/27/96 (documentation change) Removed old change bars (for changes in 3249Tk 4.1 and earlier releases) from manual entries. (JO) 3250 3251----------------- Released 4.2b1, 8/30/96 ----------------------- 3252 32539/5/96 (bug fixes) Fixed several bugs in file dialogs: individual files 3254could be listed twice, if a long list of files were shown, and the view 3255scrolled to the right, and then a different file file was shown, the 3256scrollregion on the canvas wasn't being reset, so the file dialog was 3257broken from then on, added an update idletasks so that the watch 3258cursor was shown when the dialog was thinking. For the motif file 3259dialog, fixed the weights for resizing. On the clrpicker, fixed the 3260finalColor variable which caused problems when the OK button was 3261"clicked" before the dialog was mapped (in the test suite). Added Ioi's 3262last changes from before he left. For message boxes, if a single button 3263message box is shown (currently only 'ok'), it is set to be the default 3264even if not specified. (KC) 3265 32669/5/96 (bug fix) Fixed bug on Macintosh where menus would appear in a 3267seemingly random location. (RJ) 3268 32699/5/96 (bug fix) Text widgets had rounding problems with the "yview" 3270command that caused them sometimes to round to the line before the 3271correct one. (JO) 3272 32739/5/96 (bug fix) Changed grab code to retry grabs after errors where 3274another application already has the grab. This is needed to get 3275around race conditions with some window managers and will hopefully 3276solve the grab errors that people see occasionally. (JO) 3277 32789/6/96 (bug fix) Fixed x-y coordinate confusion problem with scaling 3279of window items in canvases. (JO) 3280 32819/11/96 (bug fix) The open and save file dialogs would change the 3282current working directory under Windows. (SS) 3283 32849/12/96 (bug fix) The Tk event system was delivering events to dead 3285windows, if the event handler got reentered during a Destroy event 3286handler. This could cause core dumps and other problems. (JO) 3287 32889/20/96 (bug fix) In XFillRectangles under Windows, a brush was not 3289being deallocated. (SS) 3290 32919/20/96 (bug fix) The Mac window manager used to generate a mouseUp 3292event for a top level that was recently raised to the front/active 3293window which often caused a tk(priv) error. The up event is no 3294longer generated with solves several problems. (RJ) 3295 32969/25/96 (bug fix) The font code under Windows was leaking memory 3297whenever a new font was referenced using the three part font names. (SS) 3298 32999/26/96 (bug fix) The tests for the common dialogs still used the 'testevent' 3300function. I updated these calls in clrpick.test, msgbox.test, filebox.test 3301to use the new event gereating mechanism. 3302 33039/18/96 (bug fix) Long-standing bug in bind where <Button-1><Button-1> was 3304reported as <Double-Button-1>, but <Double-Key-a> was reported as "aa". (CS) 3305 33069/27/96 (bug fix) Bindings didn't work on 64-bit machines due to changes 3307made for virtual events. (CS) 3308 33099/30/96 (feature change) Binding for new virtual events included both 3310lower and upper-case, e.g., <<Copy>> was defined as <Control-c> and 3311<Control-C>. Previously, widgets were directly bound to only lower-case 3312bindings. The upper-case binding caused incompatibility with some existing 3313Tcl programs, so the upper case bindings for <<Cut>>, <<Copy>>, and <<Paste>> 3314were removed. (CS) 3315 33169/30/96 (bug fix) The postscript code in the canvas widget now uses 3317channels to get and write .ps files which fixed a bug on the Mac where 3318an output file would have mixed EOL characters. In addition, I added 3319the ability for the prolog to come from the Tk shared library on the 3320Mac which makes it possible to have a standalone application. (RJ) 3321 332210/1/96 (feature change) "grid forget" was renamed "grid remove". A new 3323command "grid forget" was added whose semantics are the same as "pack forget" 3324(SAU) 3325*** POTENTIAL INCOMPATIBILITY *** 3326 332710/1/96 (feature change) grid no longer accepts floating point values for 3328row or column weights, integers must be used. (SAU) 3329*** POTENTIAL INCOMPATIBILITY *** 3330 333110/1/96 (feature change) "grid {column,row}configure <master> <index>" 3332returns a list of option value pairs for all of the row or column 3333constraints. It used to return an error. (SAU) 3334 333510/1/96 (bug fix) "The way grid handles '^' short-cuts was re-written 3336to eliminate core dumps. (SAU) 3337 333810/3/96 (feature change) A virtual event binding associated with a 3339given physical event is now considered less specific than a binding for 3340that same physical event, all other things being equal. (CS). 3341 334210/3/96 (bug fix) Under Windows text placed on the clipboard did not 3343undergo CRLF translation when delivered to other applications. (SS) 3344 334510/3/96 (bug fix) Copying an image onto itself with a zoom factor that 3346caused the image to grow was accessing freed memory. (SS) 3347 334810/3/96 (bug fix) Under Windows, the image blank subcommand did not 3349work. (SS) 3350 335110/10/96 (bug fix) Under Windows & Macintosh, XSetFont and XChangeGC 3352were not implemented, and XSetLineAttributes did not correctly update 3353the GC. (SS) 3354 335510/10/96 (bug fix) Under Windows, 8-bit non-palette displays were not 3356handled properly. (SS) 3357 335810/10/96 (bug fix) Under Windows, images of depth other than 8 or 24 3359bits were not being rendered properly. (SS) 3360 336110/10/96 (bug fix) Under Windows, bitmap subimages were not correctly 3362displayed. (SS) 3363 336410/14/96 (bug fix) Under Window, wm resizable would constrain both 3365programatic resizes as well as user resizes. (SS) 3366 3367----------------- Released 4.2, 10/16/96 ----------------------- 3368 336910/17/96 (bug fix) XCopyPlane was broken under Windows and would cause 3370a crash when used with a clipping bitmap. (SS) 3371 337210/21/96 (bug fix) Added missing resources needed by tk_getOpenDialog 3373on the Macintosh to the shared library for Tk. (RJ) 3374 337510/22/96 (bug fix) Invoking a menu with an Alt key sequence caused an 3376error due to a misplaced common in library/menu.tcl. (JO) 3377 337810/23/96 (bug fix) Errors in files sourced by the Macintosh 3379"Source..." menu are now correctly reported via the background 3380error mechanism. (RJ) 3381 338210/23/96 (bug fix) Fixed a bug in the Mac subwindow implementation 3383that caused refreshes to not occur for canvases with embedded 3384windows. (RJ) 3385 338610/24/96 (bug fix) Provided workaround for Apple bug that doesn't 3387handle zooming correctly for floating windows. (RJ) 3388 338910/24/96 (bug fix) Macintosh tearoff menus are now correctly 3390displayed as Mac floating windows. (RJ) 3391 339211/1/96 (bug fix) Restored manual page for procedures like 3393Tk_CreateWindowFromPath and Tk_DestroyWindow; was accidentally deleted 3394when Tk_CreateMainWindow procedure was decommissioned. (JO) 3395 339611/19/96 (bug fix) Fixed bugs in postscript code that would cause the 3397prefix to not be included and the output file to have the wrong 3398permissions. (RJ) 3399 340012/2/96 (bug fix) Fixed problem with canvas lines where it didn't 3401compute bounding boxes correctly for zero-width lines: this could 3402potentially leave garbage on the screen when items were deleted or 3403moved. (JO) 3404 340512/5/96 (bug fix) Fixed the Macintosh implementation of pointer x/y 3406which was returning garbage. (RJ) 3407 340812/6/96 (bug fix) Fixed grid bug where the positioning of slaves was 3409incorrect for non-zero values of ipadx and ipady (SU) 3410 341112/6/96 (bug fix) Fixed grid bug where slaves got "lost" when an 3412already managed slave is re-managed in a different master. (SAU) 3413 3414----------------- Released 4.2p1, 12/8/96 (Mac only) -------------- 3415 34161/17/97 (bug fix) Fixed bug where the Tk clipboard was not in sync 3417with the Macintosh clipboard on start-up. (RJ) 3418 3419----------------- Released 4.2p2, 1/31/97 -------------- 3420 3421---------------------------------------------------------- 3422Changes for Tk 4.2 go above this line. 3423Changes for Tk 4.3 go below this line. 3424---------------------------------------------------------- 3425 34269/19/96 (improvement) Implemented table driven mechanism for deciding 3427whether a command is safe. If it is added by Tk_Init and it appears in the 3428table then it is kept, otherwise it is removed in a safe interpreter. (JL) 3429 343010/18/96 (new feature) Added support for application embedding: 3431 - Frame and toplevel widgets now have a -container option, which 3432 turns the widget into a container. 3433 - Toplevel widgets have a -use option for requesting that the 3434 widget be embedded in another application. 3435 - Wish also supports a -use command-line option. 3436Embedding is fully supported under Unix, but the implementation is 3437not complete under Windows or the Macintosh (it works just well 3438enough to support the Tcl/Tk plugin). (JO) 3439 344010/22/96 (bug fix) The commands "winfo rootx" and "winfo rooty" didn't 3441work for non-toplevel windows in embedded applications: they returned 3442the coordinates of the nearest toplevel. (JO) 3443 344412/02/96 (new feature) Implemented Safe Tk. Tk can now be loaded into a 3445safe interpreter that has been created with tcl_safeCreateInterp, by 3446calling load {} Tk interpname. (JL) 3447 344812/02/96 (new feature) A safe Tk interpreter can no longer generate 3449postscript output from a canvas. (JL) 3450 345112/02/96 (new feature) Added -channel option to photo command to allow 3452image data to be read from a channel. This is useful in safe Tk 3453interpreters where the data cannot be read directly from a file. (JL) 3454 3455---------------------------------------------------------- 3456Changes for Tk 4.3 go above this line. 3457Changes for Tk 8.0 go below this line. 3458---------------------------------------------------------- 3459 34609/1/96 (new features) The font mechanism in Tk has been completely 3461reworked: 3462 - Font names need not be nasty X LFDs: more intuitive names like 3463 {Times 12 Bold} can also be used. See the manual entry font.n 3464 for details. 3465 - Font requests always succeed now. If the requested font is not 3466 available, Tk finds the closest available font and uses that one. 3467 - Tk now supports named fonts whose precise attributes can be 3468 changed dynamically. If a named font is changed, any widget 3469 using that font updates itself to reflect the change. 3470 - There is a new command "font" for creating named fonts and querying 3471 various information about fonts. 3472 - There are now officially supported C APIs for measuring and 3473 displaying text. If you use these APIs now, your code will 3474 automatically handle international text when internationalization 3475 is added to Tk in a future release. See the manual entries 3476 MeasureChar.3, TextLayout.3, and FontId.3. 3477 - The old C procedures Tk_GetFontStruct, Tk_NameOfFontStruct, and 3478 Tk_FreeFontStruct have been replaced with more portable procedures 3479 Tk_GetFont, Tk_NameOfFont, and Tk_FreeFont. 3480 *** POTENTIAL INCOMPATIBILITY *** 3481(CS) 3482 34839/24/96 (bug fix) Under Windows, transient windows would be destroyed 3484if their master was destroyed, even if the transient window was not a 3485child of the master. (SS) 3486 348710/18/96 (new features) A -menu option has been added to the toplevel 3488widget command, which allows a menu to operate as a menubar. On the 3489Macintosh, the menubar is displayed accross the top of the main monitor, 3490just like with other applications. Under Windows and Unix, the menu is 3491attached to the toplevel window. Also, changed some semantics. 3492Tearoff menus will now reflect changes to the menu it was 3493torn off from, and are deleted when the master menu is 3494deleted. Tearoffs also reflect more look-and-feel of the 3495platforms they are running on. (SRP) 3496 349710/31/96 (bug fix) Under Windows, missing system cursors would 3498generate an error instead of falling through to the Tk cursor of the 3499same name. (SS) 3500 350111/7/96 (feature change) Under Unix, default borderwidth is now 1 to 3502more closely approximate CDE. (SS) 3503Note: this change was undone on 6/12/97, restoring the default border 3504width to 2 again. (JO) 3505 350611/7/96 (new feature) The button widget now supports a -default option 3507that draws a platform specific default ring around the widget. (SS) 3508 350911/7/96 (feature change) Under Windows, buttons and scrollbars now 3510have native look and feel. This affects the default class bindings 3511and the way the some configuration options are interpreted. Refer to 3512the widget manual pages for more details. (SS) 3513*** POTENTIAL INCOMPATIBILITY *** 3514 351511/19/96 (bug fix) Under Windows, images were incorrectly drawn on 351616-bit displays. (SS) 3517 351811/19/96 (bug fix) Under Windows, the class name for the main window 3519(.) was not properly generated from argv0. (SS) 3520 352111/20/96 (bug fix) Fixed a couple of bugs in the Canvas widget. The 3522postscript file is now created with the correct permissions. Also, 3523the prolog is now properly included in all cases. (RJ) 3524 352511/22/96 (bug fix) Under Windows, the initial directory and file names 3526were not properly translated before being passed to the system 3527open/save file dialogs. So forward slashes were not converted to 3528backslashes, and tilde substitution was not performed. (SS) 3529 353011/25/96 (feature change) Under Windows and Macintosh, the selection 3531highlight is now hidden whenever an entry or text widget loses focus. 3532Also, the previous selection information is not lost when a new 3533selection is made in a different widget. (SS) 3534 353511/26/96 (new feature) Added support for images as primitive types in 3536text widgets. (SU) 3537 353811/30/96 (configuration improvement) Modified configure.in to handle the 3539case where Tcl and Tk are installed in different places by including both 3540their library directories in the library search path for Tk. (JO) 3541 354212/3/96 (bug fixes) Fixed two bugs related to canvas lines that caused 3543the screen to be incorrectly refreshed, leaving garbage on the screen. 3544One bug was related to lines with width zero, and the other was 3545related to lines with very long miters. (JO) 3546 354712/4/96 (bug fix) The "update" command was only syncing the display 3548for its main window. Changed to sync all displays. (JO) 3549 355012/5/96 (bug fix) Color deallocation would occasionally cause a panic 3551under Windows. (SS) 3552 355312/5/96 (bug fix) Errors during startup were silently discarded under 3554Windows. (SS) 3555 355612/5/96 (bug fix) Errors during startup were silently discarded under 3557Windows. (SS) 3558 355912/11/96 (bug fix) Text widgets weren't considering the -spacing1 3560and -spacing2 options when computing their desired geometry. (JO) 3561 356212/12/96 (feature change) Option menus using tk_optionMenu were 3563created with command entries that set the option menu's variable in a 3564command string. This has been changed so that the option menu's 3565entries are now radiobutton entries so that the entries that matches 3566the variable is now checked when the menu is posted. (SRP) 3567 356812/12/96 (feature change) The destroy command no longer returns an 3569error when a window does not exist. (SRP) 3570 357112/13/96 (new feature) grid row/column-configure accepts a list of 3572indices in addition to a single index. (SU) 3573 357412/17/96 (bug fix) Under Windows, command line was not being parsed 3575correctly if it contained the literal characters \" (CS) 3576 357712/17/96 (feature change) Native Windows labels do not get a focus-ring 3578border. (CS) 3579 358012/17/96 (bug fix) Under Windows, colors specified as "#XXYYZZ" where XX, YY, 3581or ZZ were not valid hex digits were getting a random color value instead of 3582being an error. (CS) 3583 3584----------------- Released 8.0a1, 12/17/96 ----------------------- 3585 358612/23/96 (bug fix) Fixed two menu bugs: 3587 - Menus could get stacked below other windows so that they weren't 3588 visible when posted (especially under olvwm and fvwm). 3589 - Under olvwm if you pressed button 1 over an entry in a new-style 3590 menubar, the menu didn't appear until you moved the mouse slightly. 3591(JO) 3592 35931/6/97 (bug fix) Focus could accidentally get grabbed by an application 3594away from the rightful focus owner if the focus recently changed from one 3595application to another. (JO) 3596 35971/6/97 (bug fix) Under Windows, the console was appearing even for 3598non-interactive applications. This was a side effect of a general 3599problem with the wm state of windows that were being mapped for the 3600first time. (SS) 3601 36021/6/97 (bug fix) Under Windows, the initialization code was not 3603looking in the right directory for the Tk libraries when the program 3604being run was not in the Tcl installation heirarchy. (SS) 3605 36061/8/97 (bug fix) Under Windows, the windows were not being unmapped 3607properly, which led to strange packer behavior. (SS) 3608 36091/8/97 (bug fix) The "winfo containing" command (and the Tk_CoordsToWindow 3610procedure) didn't work properly on Unix in the presence of embedding or 3611menubars. (JO) 3612 36131/15/97 (bug fix) Invoking "destroy ." as the command from a menu would 3614cause Tk to crash because TkMainInfo was freed before menu released its 3615resources. This bug had already been fixed for scrollbars and buttons. (CS) 3616 36171/15/97 (bug fix) Tk is now working under Win32s again, including Win32 3618version 1.25. Fixed separate problems in fonts and dialogs. (CS) 3619 36201/15/97 (feature change) Under Windows, font sizes are now specified in 3621points, not pixels. The mapping between pointsize and pixels depends on 3622Windows having accurate metrics for the monitor (plug&play helps). Font 3623metrics are still reported in pixels. (CS) 3624 36251/21/97 (bug fix) Grid no longer reports rows or columns "out of range" 3626when requesting their constraints. (SAU) 3627 36281/21/97 (bug fix) Fixed some window manager related bugs on the 3629Macintosh. Now better support global grabs. (RJ) 3630 36311/21/97 (bug fix) For Windows: Fixed problems with canvas items that 3632used end caps. Fixed arc implementation to more closely approximate 3633X. Stippling now works properly on fat lines. (SS) 3634 36351/21/97 (bug fix) Small interlaced GIF images were not properly 3636decoded. (SS) 3637 36381/21/97 (bug fix) More changes to image code to try to handle 16-bit 3639displays properly under Windows. (SS) 3640 36411/21/97 (bug fix) Numerous display bugs on Unix and Macintosh are now 3642fixed. Numerous binding problems for menubars under Unix are now 3643fixed. Deletion of menu separators under Windows is now fixed. (SRP) 3644 3645----------------- Released 8.0a2, 1/24/97 ----------------------- 3646 36471/29/97 (feature change) The -transient field for menus is no longer 3648supported. There is now a -type field which is used to achieve the 3649same purpose that the -transient field accomplished. When a menu is 3650created, the -type field controls whether the menu is a normal 3651pull-down menu, a floating tearoff menu or a menubar. This option is 3652normally only used by the library code and internally by the menubar 3653code. (SRP) 3654*** POTENTIAL INCOMPATIBILITY *** 3655 36562/5/97 (feature change) Changed the photo image mechanism to use 3657Tcl_Channels instead of FILE * as an argument to image matching 3658functions. The change will make it much easier to write cross 3659platform image types in Tk. Note: FILE * is no longer used anywhere 3660in Tk. (RJ) 3661*** POTENTIAL INCOMPATIBILITY *** 3662 36632/7/97 (enhancement) Were not allowed to bind to virtual events inside of 3664canvas or text widget (e.g., "$canvas bind all <<foo>> {script}" or 3665"$text tag bind sel <<foo>> {script}"); it would return an error 3666disallowing that binding. Now _can_ bind to a virtual event, but that 3667binding inside of the canvas or text widget will only fire if the 3668underlying virtual event definition is of type key, button, motion, 3669enter, or leave; all other physical event types get filtered out by the 3670widget before the virtual event mapping is done. (CS) 3671 36722/22/97 (bug fix) Under Unix, "wm geometry +-20+-30" didn't work. (JO) 3673 36742/24/97 (bug fix) The photo image didn't always zero out enough of its 3675pixel and dither correction arrays. (JO) 3676 36772/25/97 (bug fix) Fixed focus problem that could cause "BadMatch (invalid 3678parameter attributes)" in X_SetInputFocus requests on Unix. (JO) 3679 36802/25/97 (bug fix and new feature) Added new "gray75" bitmap, fixed 3681"gray25" bitmap to really be 25% on (due to an ancient mistake, it 3682had been only 12% on). (JO) 3683 36842/28/97 (bug fix) Windows: made embedding work again on Win32 platform. 3685Prevent iconification, deiconinification on embedded windows. (JL) 3686 36873/4/97 (new feature) Added the ability to manipulate the Apple and 3688Help menus on the Macintosh; the system menu on Windows; and to have a 3689right justified Help menu on Unix. See the documentation for menu.n 3690for more details. (SRP) 3691 36923/4/97 (bug fix) Prevented core dump at exit if a <Destroy> binding on "." 3693gets invoked from destroying a nested widget and the binding causes the 3694interpreter to be deleted. The core dump was being caused by the 3695interpreter not being Tcl_Preserve'd during the destroy of ".". (JL) 3696 36973/4/97 (bug fix) Under Unix, when embedded Tk is running in a separate 3698process, correctly handle a race condition: ignore cross-over messages from 3699the X server for windows that Tk thinks it had already deleted, when the 3700containing process deletes its container window. Some other race conditions 3701still remain, e.g. with pixmaps, colormaps and images. (JL) 3702 37033/10/97 (bug fix) Prevented core dump in generic console code due to 3704following a NULL pointer when the console interpreter was already deleted. 3705This may happen due to different orders of deletion possible at exit. (JL) 3706 37073/10/97 (bug fix) Fixed bug on Mac and Windows that caused time to be 3708ignored when considering if a single click was actually a double 3709click. (RJ) 3710 37113/11/97 (feature change) A major oversight has been that although it was 3712documented that the Tk programmer was asking for a font in points (1/72 of an 3713inch), under Unix and Mac Tk was actually asking for a font in pixels, while 3714only under Windows was it using points. This caused applications to appear 3715much larger when run under Windows. Now, on all platforms the (purportedly) 3716correct size in points is used when asking for fonts. However, for 3717compatibility with existing tk4.2 applications that depend on fonts being of 3718specified pixel size, XLFDs retain their incorrect behavior of getting a 3719font in pixels. (CCS) 3720*** POTENTIAL INCOMPATIBILITY *** 3721 37223/13/97 (new feature) "tk scaling" command to setup the mapping between 3723pixels and points. This scaling factor is used by all widgets that accept 3724ruler distances, not just fonts. (CCS) 3725 37263/24/97 (new feature) Added "-columnbreak" option to menu 3727entries. When this value is "1", the entry will appear at the top of a 3728new column in a non-menubar menu. Also added "-hideMargin". Together 3729with "-columnBreak", menus with palettes are now possible. (SRP) 3730 37313/26/97 (new features and bug fix) Titles for tearoff menus were 3732broken on the Mac and Windows. Added the ability to set the title of a 3733menu when it gets torn off and override Tk's automatic generation of 3734the title. On the Macintosh, whenever a menu 3735label contains three dots in a row "...", the menu will instead 3736display the elipses character '�'. (SRP) 3737 37383/27/97 (bug fixes) When a menu had an error executing a postcommand, 3739the error information was getting lost. On Windows, a set of 3740menubuttons was not highligting properly when clicking between 3741windows. On Windows, post commands were getting executed twice for 3742popup menus. On Macintosh, fixed problem where menubars were not 3743always current. (SRP) 3744 37454/11/97 (new feature) Menubuttons now have a direction flag which 3746controls where the menu popups up relative to the button. (SRP) 3747 37484/24/97 (bug fix) Transient windows did not obey the resizable setting 3749under Windows. (SS) 3750 37514/24/97 (bug fix) wm geometry did not correctly parse negative 3752coordinates. (SS) 3753 37544/29/97 (bug fix) Changed the canvas polygon implementation to only 3755report the coordinates specified by the end user not the automatically 3756generated end point of a self closing polygon. (RJ) 3757*** POTENTIAL INCOMPATIBILITY *** 3758 37594/23/97 (feature change) Loosened the rules on parsing font names so that 3760unix-centric fonts in scripts don't break when run on Windows or Mac. 3761(1) Previously, an XLFD had to specify font name, weight, slant, and size; 3762now, a minimal XLFD (such as "*-times-*") will be accepted, and all 3763unspecified attributes will be given default values. (2) Previously, in the 3764{name size style ...} format, only the style was optional; now both the size 3765and the style are optional; this solves the problem of old scripts that 3766contain specifications of the form "-font fixed" or "-font times". (CCS) 3767 37685/7/97 (new feature) Menus now send a virtual event <<MenuSelect>> 3769when an item is highlighted in a menu. Applications can use this to 3770implement context-sensitive help. (SRP) 3771 37725/14/97 (bug fix) Fixed a race condition in the focus code where focus 3773could be taken away from a window incorrectly. Scenario is that the main 3774window creates a toplevel and assigns focus to it. When the user moves the 3775mouse from the main window into the toplevel there was a race between 3776two different kinds of focus events. (BW) 3777 37785/20/97 (bug fix) Fixed bug where the clipboard was not rendered before 3779the application exited. (SS) 3780 37815/22/97 (feature change) When a Tk8.0 menu is configured, all menus 3782derived from it (menubars, tearoff) mirror the changes. This was not 3783true for the "-tearoff" flag. In Tk4.6, tearoff menus had the 3784"-tearoff" flag turned off. Now, the "-tearoff" flag is tracked just 3785as the other options are. Tearoff menus and menubars with the 3786"-tearoff" option set will not display the tearoff item. This means 3787that a given menu entry for a menu and a tearoff of that menu will 3788match now. (SRP) 3789*** POTENTIAL INCOMPATIBILITY *** 3790 3791----------------- Released 8.0b1, 5/27/97 ----------------------- 3792 37935/30/97 (bug fix) Made the options to the grid command shortcut-able. 3794Ie. You can now use -stick, in addition to -sticky. (RJ) 3795 37966/2/97 (bug fix) Fixed bug in startup code that caused a problem in 3797finding the library files when they are installed in a directory 3798containing a space in the name. (SS) 3799 38006/2/97 (bug fix) Virtual events associated with <Enter>/<Leave> in text 3801widget tag caused panic. (CCS) 3802 38036/6/97 (bug fix) On some systems, struct timeval.tv_sec is unsigned. (SS) 3804 38056/6/97 (feature change) Changed -default option on buttons to take 3806three states: normal, active, disabled. This allows apps to have a 3807row of buttons where the default ring moves between buttons without 3808changing the geometry of the buttons. See the button.n manual page 3809for more details. (SS) 3810*** POTENTIAL INCOMPATIBILITY with Tk 8.0b1, but not with Tk 4.2 *** 3811 38126/9/97 (bug fix) Canvas postscript printing now works for bitmaps 3813under Windows. (SS) 3814 38156/10/97 (bug fix) Fixed bug in bindings for listboxes where state wasn't 3816being properly initialized on Shift-1 button presses. (JO) 3817 38186/11/97 (bug fix) Text widget display code did not include internal 3819padding in the damage calculation for borders leading to unrefreshed 3820sections on Windows and Mac. (SS) 3821 38226/12/97 (feature reversal) Changed default border widths under Unix 3823back to 2 again. This reverses the change made on 11/7/96. (JO) 3824 38256/13/97 (bug fixes) In canvas text item: the insertion cursor wasn't shown 3826if insertion point was at end of text item, it was impossible to click to 3827position the insertion point after the last character, and @x,y indices were 3828computed incorrectly if -scrollregion had been specified and canvas was 3829scrolled. (CCS) 3830 38316/13/97 (bug fix) Hitting up/down arrows in a text widget packed in a 3832toplevel window created with the "-screen" option would cause an error dialog 3833to pop up. (CCS) 3834 38356/12/97 (bug fix) Fixed bug in canvas text items where multi-line 3836selections were not highlighted properly. This bug existed only in 3837earlier releases of Tk 8.0. (JO) 3838 38396/16/97 (bug fix) In some obscure cases, canvas window items could 3840accidentally specified a 0x0 size for the window, which caused a 3841BadValue error under X. (JO) 3842 38436/17/97 (bug fix) Tk buttons on the Macintosh will now correctly 3844draw under MacOS 8.0. (RJ) 3845 38466/18/97 (feature change) Changed the way highlights are drawn in text 3847widgets so that the empty space to the left of a line is highlighted 3848whenever the leftmost character of the line is highlighted (the empty 3849space didn't used to be highlighted). This produces a neater left 3850edge when several lines are selected. (JO) 3851 38526/18/97 (bug fix) Tk was using the wrong system colors to draw various 3853widgets under Windows. (SS) 3854 38556/19/97 (bug fix) Under Windows, the "wm transient" and "wm overrideredirect" 3856subcommands can now be applied to a toplevel to change its window 3857style at any time during the life of the window. (SS) 3858 38596/19/97 (feature change) All GIF and XBM images needed for the "TK" 3860file dialog box are included in-line in tkfbox.tcl. (IL) 3861 38626/27/97 (bug fix) Revamped focus code to eliminate most XSetInputFocus 3863calls from the FilterEvent procedure. This moves the implementation back 3864towards the Tk 4.2 implementation, but adds embedding support. There is 3865still a known bug with twm's NoTitleFocus and embedded windows. However, 3866the races in a2 and the funny focus stealing in b1 are gone. (BW) 3867 38686/25/97 (bug fix) Error message was not properly reported when using 3869button 'toggle'. (DL) 3870 38716/25/97 (bug fix) Removed one source of memory corruption in tkGrid.c code 3872(fixes what was exercised by "grid col . 0 -w 1; grid col . 0 -w 25") (DL) 3873 3874----------------- Released 8.0b2, 6/30/97 ----------------------- 3875 38767/1/97 (bug fix) Menu shortcut and tearoff reported problem fixed. (DL) 3877 38787/1/97 (new feature) TK_BUILD_SHARED flag set in tkConfig.sh 3879when Tk has been built with --enable-shared. TK_SRC_DIR added. 3880A new tkLibObjs make target, echoing the list of the .o's needed 3881to build a tk library, is now provided. (DL) 3882 38837/9/97 (bug fix) Fixed Tk_CreateFileHandler and Tk_DeleteFileHandler 3884macros to directly call the Tcl equivalents. (JL) 3885 38867/10/97 (bug fix) On the Mac, if the binding for <<MenuSelect>> was 3887drawing, the drawing could bleed over into the menus. This is now 3888fixed. (SRP) 3889 38907/10/97 (bug fixes) Removed duplicate code related to Tk_SafeInit, 3891made a single init script handling both cases. (DL) 3892 38937/10/97 (feature change) On Unix, to be able to load Tk into a safe 3894interp you need to set the env(DISPLAY) var. Some API should be 3895added to allow master crontrol over Tk instantiation. (DL) 3896 38977/11/97 (new feature) On the Mac, menus that are too big for the 3898screen will now scroll. This is part of the interface on the Mac, 3899impossible under Windows, and is not done for Unix. (SRP) 3900 39017/21/97 (bug fix) After fixing the bug that in canvas text item the insertion 3902cursor wasn't shown if insertion point was at end of text item, introduced a 3903different bug in where clicking in entry widget with 0 characters would 3904crash or display garbage. (CCS) 3905 39067/22/97 (bug fix) If there were a whole bunch of returns or tabs in a row in 3907a canvas text item, then the temporary buffer used when outputting 3908postscript could overflow and overwrite the stack. (CCS) 3909 39107/23/97 (feature change) Reenabled "tkwait" in the Safe Tk base. (JL) 3911 39127/24/97 (bug fix) Single init script for both Win and Unix. 3913new library/safetk.tcl using features from new tcl safe.tcl (DL) 3914 39157/30/97 (feature change) As a result of native menus, you can no 3916longer drag through a frame of menubuttons on Macintosh and Windows 3917and have the menus pop down. You can still click on individual 3918menubuttons and their menus will pop down. Applications needing to 3919present a menubar should consider using the new "-menu" configuration 3920of the toplevel widget to set up menubar which behaves correctly on 3921Macintosh, Windows and X Windows. (SRP) 3922 39237/31/97 (bug fix) Tk widget commands can now safely be hidden commands. 3924Previously destroying the widget would potentially leave dangling pointers 3925and destroy an exposed command instead of a hidden one if an exposed 3926command by that name existed. (JL) 3927 39287/31/97 (bug fix) On Windows, popup menus were not tracking the right mouse 3929button correctly if it was used to invoke the menu. On Unix, tearoff 3930menus were stealing focus when the mouse moving over them even when 3931focus following was turned off. (SRP) 3932 39338/4/97 (bug fix) Fixed problem under USENIX where raising a toplevel 3934window could cause an X error if the window had just been withdrawn. (JO) 3935 39368/4/97 (feature change) tkerror and bgerror are not anymore hard links 3937maintained by the Tcl core. The implementation of bgerror provided by 3938Tk tries, for backward compatibility only, to to call "tkerror" and 3939if that fails, falls back to the usual dialog and stack trace option 3940posting. You can thus still use either "bgerror" or "tkerror" as your 3941application error handling proc, but using "bgerror" is strongly 3942recommended as support for "tkerror" will eventually vanish in upcoming 3943releases. (DL) 3944*** POTENTIAL INCOMPATIBILITY with scripts that were using 3945 the actual hardlink implementation 'features' and with 3946 scripts (if any) that would be calling the default "tkerror" to 3947 simulate error messages (use "bgerror" instead) *** 3948 39498/7/97 (feature change/addition) Removed the gif files used for the 3950Open dialog box on UNIX (they were previously made inline). Added a 3951new images directory that includes several images of the Tcl and Tcl 3952Powered logos. (RJ) 3953 39548/7/97 (bug fix) Fixed focus to deal with embedding when there is 3955no window manager. (BW) 3956 39578/8/97 (bug fix) Fixed bug in photo image code where photo images from 3958different interpreters could get confused if they had the same name. (JO) 3959 39608/8/97 (new feature) Added new procedure Tk_GetImageMasterData for 3961mapping image names to master data. (JO) 3962 39638/8/97 (feature change) Modified Tk_FindPhoto procedure to require 3964extra "interp" argument (needed for bug fix above). (JO) 3965*** POTENTIAL INCOMPATIBILITY *** 3966 39678/8/97 (bug fix) Fixed problems under Windows renaming toplevels with 3968menubars. Fixed problems on all platforms renaming menu widgets and 3969using new menus of the same name as an old one as cascades. Fixed a 3970cosmetic problem with tearoff menus. (SRP) 3971 39728/13/97 (bug fixes) Fixed "-from" option for the "image create" and 3973"imageName read" commands for GIF images, which didn't used to work 3974correctly. Also made transparency work correctly for GIF images 3975without the TRANSPARENT_GIF_COLOR hack; TRANSPARENT_GIF_COLOR is 3976now ignored. These fixes were provided by Jan Nijtmans. (JO) 3977 39788/13/97 (new feature) added safe::loadTk command to load Tk in a 3979safe slave interpreter. See the loadTk.n manual page for more 3980details. (DL) 3981 3982----------------- Released 8.0, 8/18/97 ----------------------- 3983 39848/22/97 - (bug fix) Fixed syntax error in tk_popup; option menus now 3985popup over their selected items like they did in tk4.2. Fixed problem 3986where cascades sometimes did not work on X. On X, menubars with 3987checkbuttons and radiobuttons in them would infinite loop when 3988mappped. (SRP) 3989 39908/27/97 (new feature) Added support for new X11R6 colors under Windows 3991and Mac platforms. (SS) 3992 39938/29/97 (bug fix) Wish crashed if stdin was closed. (SS) 3994 39959/10/97 (bug fix) "font actual {helvetica 10} -displayof ." wasn't taking 3996into account the "-displayof" option. This problem also existed for the 3997"font metrics" and "font measure" commands. (CCS) 3998 39999/16/97 (new feature) Added "resource delete" and "resource files" 4000command to the Mac. Also fixed "resource write" when the resource 4001was specified by id and already existed. (JI) 4002 40039/16/97 (bug fix) Added null bindings to <Command-KeyPress> for the 4004text and entry widget on the Macintosh. This prevents unbound command 4005key sequences from having the character echoed to the widget. Also 4006fixed Cut & Copy bindings. (JI) (RJ) 4007 40089/18/97 (bug fix) Revamped Macintosh focus code. Cut, Copy & Paste 4009virtual events now go to the correct (focus) window. (RJ) 4010 40119/19/97 (bug fix) Made Macintosh tearoff menus non-resizable. (RJ) 4012 401310/9/97 (bug fix) Default font for new canvas text items was hardcoded to 4014"Helvetica 12" instead of using DEF_CANVTEXT_FONT defined in 4015tk{platform}Default.h like all the other widget settings. (CCS) 4016 401710/9/97 (bug fix) Image code could cause crashes during "exit" under 4018some conditions (such as an image named "place"). (JO) 4019 402010/9/97 (bug fix) Fixed bug that sometimes prevented listboxes from 4021scrolling far enough horizontally to see the rightmost character. (JO) 4022 402310/10/97 (bug fix) In canvas text items, if the text ended with a \n, it 4024was not counted in the bbox height, as it did in tk4.2. This caused 4025"hello\n" to be the same height as "hello" and you couldn't see the 4026cursor positioned on the next line. (CCS) 4027 402810/10/97 (bug fix) The grid geometry manager didn't always properly 4029forget about windows after a "grid forget" or "grid remove" command: 4030the windows could reappear on the screen later. (JO) 4031 403210/13/97 (bug fix) Selection could not be restored to a text widget 4033after "selection clear" on Windows. (SS) 4034 403510/14/97 (bug fix) If a canvas had contained windows that were off-screen, 4036the windows could sometimes reappear (in the wrong place) if the canvas was 4037enlarged. (JO) 4038 403910/20/97 (bug fix) Omitting the arguments to the text widget "mark 4040gravity" option caused a crash. (SS) 4041 404210/21/97 (bug fix) Tk did not reset the result after native dialog 4043modal loops on Window so background events could perturb the dialog 4044result. (SS) 4045 404610/23/97 (bug fix) Memory leak in unix's TkpGetFontFamilies. Thanks 4047to James Bonfield for the fix. (DL) 4048 404910/27/97 (bug fix) Fixed event reporting for the Mac during a grab 4050when the pointer was out of the toplevel window. (RJ) 4051 405210/28/97 (bug fix) Under Unix, override-redirect was getting set 4053incorrectly for menus, so that "wm overrideredirect" returned 0. (JO) 4054 405510/28/97 (bug fix) Under Unix, focus code could sometimes cause the 4056display to deadlock (it wasn't flushing the output buffer after issuing 4057an ungrab command). (JO) 4058 405910/28/97 (bug fix) If a PPM image file wasn't complete (e.g. it 4060consisted of nothing but space characters) Tk entered an infinite loop 4061reading the header. (JO) 4062 406310/28/97 (bug fixes) On the Mac, menubars assigned to toplevels would 4064disappear after a menu item was invoked from them. On Windows, 4065clicking a system menu with added items and then again with a 4066different set of added items would crash. On all platforms, a command 4067menu entry that caused the entry to be deleted, another one created in 4068its place, and the replacement deleted would cause a panic. On Unix, 4069<<MenuSelect>> event bindings were firing every time the mouse moved, 4070instead of everytime the active menu item changed. (SRP) 4071 407210/27/97 (bug fix) If a particular race condition occurred under Windows, 4073Tk would crash complaining about trying to free a color that wasn't 4074allocated. (SS) 4075 407610/28/97 (bug fix) Under Windows, button grabs did not report motion 4077events that occurred outside of Tk windows. (SS) 4078 407910/28/97 (bug fix) Fixed incorrect display of transparent images on 4080the Macintosh. (JI) 4081 408210/29/97 (bug fix) Reworked the handling of out-of-range indices in 4083the widget command for listboxes: there were all sorts of quirks 4084before (e.g., ".l delete -1" actually deleted the first element 4085of the listbox). (JO) 4086 408710/29/97 (bug fix) Fixed crash on the Macintosh that could occur if a 4088window is moved before it is mapped where the X window was created but 4089the Macintosh port was not. (RJ) 4090 409110/29/97 (bug fix) Fixed several errors in how wm state was maintained 4092on the Macintosh. Tk now also will iconify a toplevel window on the 4093Mac if the new Appearance Manager is present. (RJ) 4094 409510/28/97 (bug fixes) In canvas' postscript command: User name 4096information was leaked in safe interpreters on Unix (security fix). 4097Errors while reading prolog.ps were not propagated and the error 4098message was mixed with partial data. Note: postscript output does 4099not work in safe interpreters on unix and windows. (DL) 4100 410110/28/97 (bug fix) Safe Tk interps on unix were leaking env(DISPLAY). (DL) 4102 410310/31/97 (bug fix) Fixed problems related to the input focus when one 4104application had windows open simultaneously on several displays. (JO) 4105 410610/31/97 (bug fix) Fixed several problems with traversal of menus via 4107the keyboard under Unix. (SRP) 4108 410911/4/97 (bug fix) Fixed various word-size related problems for 64-bit 4110architectures. (SS) 4111 411211/5/97 (bug fix) Embedding on Windows was using freed data (crashing 4113in safe.test with TCL_MEM_DEBUG). NB: Embedding is still not fully 4114implemented on Windows ! (It works mostly when Tk is embeded into it's 4115own Tk frame (safe::loadTk case), but not well with respect to resizing 4116with a toplevel container or with an external process). (DL) 4117 4118----------------- Released 8.0p1, 11/7/97 ----------------------- 4119 412011/20/97 (bug fix) Fixed bug on the Mac where the "package require" 4121command caused menus to stop working. (JI) 4122 412311/20/97 (bug fix) Fixed bug in rendering transparent gifs on Text 4124widgets. (JI) 4125 412611/20/97 (enhancement) Made the changes required to work with the new 4127Apple Universal Headers V. 3.0 so we can compile with CW Pro 2.0 (JI) 4128 4129----------------- Released 8.0p2, 11/25/97 ----------------------- 4130 413111/25/97 (security bug fix + added feature) Tk Safe Init now asks 4132the master's safe::TkInit for the 'argv' to use. This is transparently 4133dealt with by the safe::loadTk API. New optional "-display displayName" 4134argument to safe::loadTk, and the "-use" argument accepts both window 4135Ids and Tk window names: see loadTk(n). Made the ":0.0" default display 4136work on the Mac as it works on Windows and Unix. (DL) 4137 413812/3/97 (bug fix/optimization) Removed unneeded and potentially dangerous 4139instances of double evaluations if "if" and "expr" statements from 4140the library files. It is recommended that unless you need a double 4141evaluation you always use "expr {...}" instead of "expr ..." and 4142"if {...} ..." instead of "if ... ...". It will also be faster 4143thanks to the byte compiler. (DL) 4144 414512/3/97 (new feature) Added support for browser/plugin style embedding, 4146and made various other fixes to get the plugin working on the Mac. (JI) 4147 414812/8/97 (bug fix) on Windows, using "winfo pathname" before "." was mapped 4149was crashing. (DL) 4150 4151---- Shipped as part of the plugin2.0b5 as 8.0p2Plugin1, Dec 8th 97 ---- 4152 415312/97 (bug fix) more Macintosh embeding fixes needed for the plugin. (JI) 4154 4155Jan/9/98 (improvement) Allow applications to have custom init script 4156without having to patch the Tk core: Tk_Init will use an existing 4157"tkInit" proc if one exists in the interp where one tries to install Tk 4158instead of defining it's own (tkInit is the transient proc defined in 4159generic/tkInitScript.h that searches and sources tk.tcl and defines 4160the 'correct' tk_library). (DL) 4161 4162---- Shipped as part of the plugin2.0 as 8.0p2Plugin2, Jan 15th 98 ---- 4163 41646/3/98 (bug fix) Fixed bugs in the tk_getOpenFile under Unix. 4165 1) If the -initialdir option was "." the result would be "././foo.tcl" 4166 instead of an absolute path, like the Windows interface. 4167 2) There is a traceVar on the data(selectPath) where the script was 4168 assumes the window exists. (BS) 4169 41706/12/98 (feature change) Focus -force now sets the foreground window 4171on Windows platforms in addition to moving the focus. (SS) 4172 41736/12/98 (bug fix) Fixed bug in Windows font measurement that did not 4174take kerning into account. (BS) 4175 41766/24/98 (bug fix) On Unix, fixed -initialdir switch to tk_getOpenFile 4177and tk_getSaveFile to convert the specified directory to an absolute 4178path and to use the current working directory if the specified 4179directory does not exist. (SS) 4180 41816/25/98 (bug fix) On Unix, both the Tk and the Motif file dialogs 4182would fail if the -parent flag changed between two parent windows that 4183had been previously used as file dialog parents. (SS) 4184 41856/29/98 (compatibility patch) Added reserved fields to several Tk 4186structures to match additions made by Jan Nijtmans dash patch. This 4187means that extensions can be compiled against the dash patch 4188and still work with unpatched Tk, and vice versa. 4189 41907/6/98 (bug fix) Added keysym definitions for the new keys on the 4191Microsoft keyboards. You can bind to <App>, <Win_L>, and <Win_R>, 4192but you cannot use the Win keys as modifiers. (SS, BW) 4193 41947/6/98 (new feature) Added support for the Macintosh Appearance Manager. (JI) 4195 41967/24/98 (feature change) Eliminated the static variable that sets 4197tk_library and simplified search order for tk.tcl. The tk_library 4198variable can now be set before calling Tk_Init to avoid doing any 4199searches. If it isn't set, then Tk checks env(TK_LIBRARY), relative 4200to tcl_library, an install directory relative to the executable, a 4201source directory relative to the executable, and a tk directory 4202relative to the source heirarchy containing the executable. See the 4203comment at the top of generic/tkInitScript.h for more details. (SS) 4204 42057/27/98 (bug fix) The bbox for coords in the canvas were incorrectly 4206including the center of the coord as part of the bound area. (RJ) 4207 42088/4/98 (bug fix) Fixed memory leak in Windows menu code. (SS) 4209 42108/4/98 (bug fix) Fixed bug where bgerror's were not being generated 4211from menu callbacks on Windows. (SS) 4212 42138/4/98 (bug fix) Alt-key bindings were not being handled properly 4214under Windows, resulting in annoying beeps. (SS) 4215 42168/4/98 (bug fix) Fixed bug in Windows menubar handling that allowed 4217a shared menubar to be deleted when any window using it was deleted. (SS) 4218 42198/4/98 (feature change) Introduced TkReadBitmapFile to replace 4220XReadBitmapFile so that all Tk file opens go through the Tcl channel 4221mechanism. This lets us wrap applications that define their own 4222bitmaps and cursors. Note that XReadBitmapFile is no longer 4223emulated for non-unix platforms platforms (RJ, BW) 4224 42258/5/98 (bug fix) <Insert> binding in entries was masking the virtual 4226event <<Paste>> binding to Shift-Insert on Windows. (SS) 4227 42288/5/98 (bug fix) wm frame would crash if the window had not been 4229mapped yet on Windows. (SS) 4230 42318/5/98 (bug fix) Local grabs did not exclude menus or the caption bar 4232under Windows. (SS) 4233 42348/5/98 (bug fix) Reduced message traffic by setting 4235WS_EX_NOPARENTNOTIFY on TkChild windows. (SS) 4236 42378/6/98 (feature change) Changed tkInitScript.h to use the new 4238tcl_findLibrary procedure to locate its script library. (BW) 4239 42408/10/98 (bug fix) Added special case to font code to limit the 4241length of displayed strings to avoid wrap-around bugs in some 4242PC X servers when the pixel length of the string exceeds 0x7fff. (SS) 4243 42448/12/98 (bug fix) Macintosh, lock down some of the resources 4245associated with menus to try and stabilise the menu system 4246on memory limited machines. (JI) 4247 42488/12/98 (windows build change) Moved the tkConsole.obj into the tk80.dll 4249on windows. If you build your own Tk main program, you no longer 4250need to compile and link this yourself. (SKS) 4251 4252-------- Released 8.0.3 to the Tcl Consortium CD-ROM project, 8/13/98 ------ 4253 425410/5/98 (new feature) Added the event "MouseWheel" that will fire on 4255Windows applications in response to mouse wheel movement. You can 4256bind to the MouseWheel event and use the %D substitution to get the 4257delta the wheel moved. The "event generate" command has also been 4258enhanced with the -delta flag so you can generate these events from 4259Tcl. See the bind and event man pages for more details. The listbox 4260and text widgets' default bindings have been updated to understand 4261MouseWheel events. (RJ) 4262 426310/12/98 (performance improvement) Added hash table to canvas widget 4264that holds numeric ids for items. The hash table makes item lookup 4265almost constant time which improves certain canvas operations 4266(exspecially for canvases with large number items). Thanks to Mark 4267Weissman <weissman@gte.com> and Jan Nijtmans <Jan.Nijtmans@wxs.nl> 4268for submitting this improvement. (RJ) 4269 427010/15/98 (bug fix) The -fill option to text items in the canvas did 4271not allow the empty string as an argument (meaning transparent) even 4272though every other item type did. Thanks to Sebastian Wangnick 4273<sebastian.wangnick@eurocontrol.be> for supplying this patch. (RJ) 4274 427510/20/98 (feature change) The Makefile and configure scripts have been 4276changed for IRIX to build n32 binaries instead of the old 32 abi 4277format. If you have extensions built with the o32 abi's you will need 4278to update them to n32 for them to work with Tcl. (RJ) 4279*** POTENTIAL INCOMPATIBILITY *** 4280 428111/10/98 (feature change) The Macintosh menus will use the Appearance 4282Theme backgrounds, separators and menu shape, if Appearance version 42831.0.1 or greater is installed. The version of Appearance that shipped 4284with MacOS 8.0 so it will not work with a straight 8.0, but it will 4285with MacOS 8.1 or later. (JI) 4286 4287----------------- Released 8.0.4, 11/20/98 ----------------------- 4288 428911/24/98 (bug fix) On some X servers, XQueryLoadFont will always 4290return a font, even if the name is meaningless. This prevents Tk from 4291parsing the font name, so now we perform a quick sanity check on the 4292name before letting X have it. (stanton) 4293 429412/30/98 (bug fix) Fixed bug in "grid forget" that failed to cancel 4295pending idle handlers, resulting in a crash in a few odd cases. (stanton) 4296 42971/28/99 (configure change) Now support -pipe option on gcc. (RJ) 4298 42992/4/99 (bug fix) Changed so color tables in photo images are freed 4300immediately instead of being delayed. This ensures that color tables 4301are properly disposed at process exit. (stanton) 4302 43032/4/99 (bug fix) Changed postscript template to include a European 4304character with an umlaut when determining font height. (stanton) 4305 43062/4/99 (bug fix) If an image bitmap mask changed but ended up with the 4307same XID, the GC failed to be updated and so the new mask was 4308not used. (stanton) 4309 43102/4/99 (bug fix) Changed so focus window is always set if -force is 4311specified. This fixes the problem on Windows where Tk does not 4312activate the window if it already has focus. (stanton) 4313 43142/4/99 (bug fix) Fixed so errors in console eval are reported 4315properly. Eliminated duplicate result messages. (stanton) 4316 43172/4/99 (bug fix) Under Windows, changed so toplevels that aren't 4318resizable don't have resize handles and the zoom box is disabled. (stanton) 4319 43202/4/99 (bug fix) Changed to cancel the mouse timer when a user 4321initiated move/resize loop begins on Windows. (stanton) 4322 43232/4/99 (configure change) TK_LD_SEARCH_FLAGS was set incorrectly if 4324SHLIB_LD_LIBS='${LIBS}', and shared linking is performed through the C 4325compiler. Systems affected are Linux, MP-RAS and NEXTSTEP, but also 4326with gcc on many more systems. 4327 43282/4/99 (bug fix) Changed some EXTERN declarations to extern since they 4329are not defining exported interfaces. This avoids generating useless 4330declspec() attributes and makes the Windows makefile simpler. (stanton) 4331 43322/4/99 (bug fix) Changed so keyboard shortcuts will only be found in 4333the current toplevel. Previously, they might be found in menus 4334attached to other toplevels that might not even be mapped. (stanton) 4335*** POTENTIAL INCOMPATIBILITY *** 4336 43372/4/99 (bug fix) Changed to treat zero width lines in the canvas like 4338they have width 1 for purposes of selection. (stanton) 4339 43402/4/99 (bug fix) Added a workaround for a bug in GetTextExtentExPoint 4341on Win NT 4.0/Japanese that cause a crash in some cases. (stanton) 4342 43432/4/99 (bug fix) Fixed uninitialized memory access bug in Unix send 4344code. (stanton) 4345 4346---------------------------------------------------------- 4347Changes for Tk 8.0 go above this line. 4348Changes for Tk 8.1 go below this line. 4349---------------------------------------------------------- 4350 43511/16/98 (new feature) Tk now supports international characters sets: 4352 - Font display mechanism overhauled to display Unicode strings 4353 containing full set of international characters. You do not need 4354 Unicode fonts on your system in order to use tk or see international 4355 characters. For those familiar with the Japanese or Chinese patches, 4356 there is no "-kanjifont" option. Characters from any available fonts 4357 will automatically be used if the widget's originally selected font is 4358 not capable of displaying a given character. 4359 - Textual widgets are international aware. For instance, cursor 4360 positioning commands would now move the cursor forwards/back by 1 4361 international character, not by 1 byte. 4362 - Input Method Editors (IMEs) work on Mac and Windows. Unix is still in 4363 progress. 4364 43657/7/97 (new feature) The send command now works for Microsoft 4366Windows. It is implemented using Dynamic Data Exchange, and a new 4367command, dde, allows Tk to send more generic DDE commands to other 4368applications. (SRP) 4369 437011/3/97 (new feature) Major overhaul of code that manages configuration 4371options to use Tcl_Obj structures instead of strings: 4372 - There is a new set of procedures including Tk_CreateOptionTable, 4373 Tk_InitOptions, and Tk_SetOptions, which replace Tk_ConfigureWidget 4374 and related procedures. The old procedures are still available. 4375 The new procedures use a new format for configuration tables. 4376 See SetOptions.3 for more information. 4377 - There are new procedures Tk_AllocColorFromObj, Tk_GetColorFromObj, 4378 and Tk_FreeColorFromObj to manage colors using objects to hold the 4379 name of the color and cache the corresponding XColor pointer. 4380 There are similar procedures Tk_Alloc3DBorderFromObj, 4381 Tk_AllocBitmapFromObj, Tk_AllocCursorFromObj, Tk_AllocFontFromObj, 4382 and so on to manage borders, bitmaps, cursors, and fonts. 4383 - The old-style procedures such as Tk_GetColor and Tk_GetBitmap no 4384 longer take Tk_Uids for arguments; they just take strings. 4385 - Menus, labels, buttons, checkbuttons, and radiobuttons have been 4386 converted to use the new object-based configuration library. 4387 (SRP & JO) 4388 438911/7/97 (improvement) Changed code referring to "interp->result" to call 4390accessor functions like Tcl_SetResult(). 4391 439212/23/97 (fix) Fixed transparency and web optimized the palette of 4393the images/ Tcl powered logos. (DL) 4394 439512/16/97 (bug fix) Canvas and text "bind" subcommands generated an 4396error with no message if called to fetch a binding that didn't exist. 4397They now silently return without an error like the "bind" command. (SS) 4398 43991/13/98 (bug fix) Keysyms for international characters were not being 4400reported properly under Windows. (SS) 4401 4402----------------- Released 8.1a1, 1/22/98 ----------------------- 4403 44042/4/98 (bug fix) Calling XFreeFontNames() twice if couldn't allocate 4405font. (CCS) 4406 44072/10/98 (bug fix) Inlined prolog.ps in tkCanvPs.c to make it accessible 4408from safe interpreters: canvas postscript now works in safe interps 4409(like in tk8.0plugin). (DL) 4410 44112/11/98 (bug fix) Windows "send" to a remote interp wasn't propagating 4412$errorInfo correctly from the remote interp to the local invoking interp. 4413(CCS) 4414 44152/11/98 (bug fix) Windows "send" should have accepted "--" to mean "no more 4416arguments". (CCS) 4417 44182/11/98 (bug fix) Windows "send" was concatenating its arguments 4419incorrectly (not consistent with "eval", "uplevel", or Unix "send"). (CCS) 4420 44212/18/98 (bug fix) Macintosh radiobuttons and checkbuttons now color 4422their backgrounds correctly under Appearance. The controls gadgets themselves 4423however, remain the Theme colors. (JI) 4424 44252/18/98 (improvement) The corner pixels that peek through around the 4426rounded corners of the Mac button widget are now controlled by the 4427-highlightbackground, rather than the -background option. (JI) 4428 44292/18/98 (improvement) Implemented the intra-application Send on the 4430Mac (RJ) 4431 44322/18/98 (bug fix) Under X, a problem mapping from a fontStructPtr to an 4433XLFD (no XA_FONT attribute) would lead to dereferencing NULL. (CCS) 4434 4435----------------- Released 8.1a2, Feb 20 1998 ----------------------- 4436 443710/21/98 (bug fix) Tk_UnderlineChars did not handle UTF strings properly 4438so underline indices were in bytes instead of characters. (stanton) 4439 444011/19/98 (bug fix) Fixed menus and titles so they properly display 4441Unicode characters under Windows. [Bug: 819] (stanton) 4442 444311/24/98 (bug fix) Fixed a bunch of memory leaks in the Windows menu 4444code. [Bug: 620] (stanton) 4445 444611/25/98 (bug fix) Various small bug fixes: (stanton) 4447 - hidemargin option was not honored properly in menus [Bug: 859] 4448 - disabled menu entries were getting reenabled whenever the 4449 mouse passed over the entry [Bug: 860] 4450 - fixed deletion order bug where a crash would result if a 4451 binding deleted "." 4452 445311/30/98 (bug fix) The error result was getting lost when restoring 4454configuration options in buttons. [Bug: 619] (stanton) 4455 445612/8/98 (bug fix) The Windows clipboard was not correctly traslating 4457multibyte characters. [Bug: 935] (stanton) 4458 4459----------------- Released 8.1b1, Dec 11 1998 ----------------------- 4460 44611/29/99 (bug fix) Fixed bug in "grid forget" that failed to cancel 4462pending idle handlers, resulting in a crash in a few odd 4463cases. (stanton) 4464 44652/4/99 (bug fix): Fixed uninitialized memory access in 4466Tk_SetAppName. [Bug: 919] (stanton) 4467 44682/4/99 (bug fix): Added a workaround for a bug in GetTextExtentExPoint 4469on Win NT 4.0/Japanese. [Bug: 1006] (stanton) 4470 44712/4/99 (bug fix): Changed so keyboard shortcuts for menus will only be 4472found in the current toplevel. Previously, they might be found in 4473menus attached to other toplevels that might not even be mapped. 4474[Bug: 924] (stanton) 4475 44762/4/99 (bug fix): Changed to treat zero width lines in the canvas like 4477they have width 1 for purposes of selection. [Bug: 925] (stanton) 4478 44792/4/99 (bug fix): TK_LD_SEARCH_FLAGS was set incorrectly if 4480SHLIB_LD_LIBS='${LIBS}', and shared linking is performed through the C 4481compiler. Systems affected are Linux, MP-RAS and NEXTSTEP, but also 4482with gcc on many more systems. [Bug: 908] (stanton) 4483 44842/4/99 (feature enhancement): Changed so windows that aren't resizable 4485don't have resize handles and the zoom box is disabled on 4486Windows. (stanton) 4487 44882/4/99 (bug fix): Fixed so errors in console eval are reported 4489properly. Eliminated duplicate result messages. [Bug: 973] (stanton) 4490 44912/4/99 (bug fix): Changed so focus window is always set if -force is 4492specified. This fixes the problem on Windows where Tk does not 4493activate the window if it already has focus. (stanton) 4494 44952/4/99 (bug fix): If an image mask changed but ended up with the same 4496XID, the GC failed to be updated and so the new mask was not 4497used. [Bug: 970] (stanton) 4498 44992/12/99 (new feature): Tk is now thread safe. You enable this by 4500configuring with --enable-threads. Tcl must also be compiled with 4501--enable-threads. See Tcl for more information about the threading 4502interfaces. (lfb) 4503 45042/25/99 (bug fix) Under Windows, wish can now inherit pipe handles on 4505stdio so it is possible to use the wish executable in a command 4506pipeline to capture the output of puts or read from the pipe with 4507gets. (redman) 4508 45093/1/99 (bug fix) Under Windows, Tk was not properly handling focus and 4510activation changes in some cases. (redman) 4511 45123/10/99 (new feature) Tk now uses the new stub library feature in Tcl. 4513The Tk library now contains no direct references to any symbols in 4514Tcl. In addition, there is a new Tk_MainEx() function that takes an 4515interpreter as an argument. See the Tcl documentation for more 4516information about the stubs mechanism. (redman) 4517 45183/14/99 (feature change) Test suite now uses "test" namespace to 4519define the test procedure and other auxiliary procedures as well as 4520global variables. 4521 - Global array testConfige is now called ::test::testConfig. 4522 - Global variable VERBOSE is now called ::test::verbose, and 4523 ::test::verbose no longer works with numerical values. We've 4524 switched to a bitwise character string. You can set 4525 ::test::verbose by using the -verbose option on the Tk command 4526 line. 4527 - Global variable TESTS is now called ::test::matchingTests, and 4528 can be set on the Tk command line via the -match option. 4529 - There is now a ::test::skipTests variable (works similarly to 4530 ::test::matchTests) that can be set on the Tk command line via 4531 the -match option. 4532 - The test suite can now be run in any working directory. When 4533 you run "make test", the working directory is nolonger switched 4534 to ../tests. 4535(hirschl) 4536*** POTENTIAL INCOMPATIBILITY *** 4537 4538----------------- Released 8.1b2, March 16, 1999 --------------------- 4539 45403/23/99 (feature change) Test suite now uses "tcltest" namespace to 4541define the test procedure and other auxiliary procedures as well as 4542global variables. The previously chosen "test" namespace was thought 4543to be too generic and likely to create conflits. 4544(hirschl) 4545*** POTENTIAL INCOMPATIBILITY *** 4546 45473/26/99 [bug fix] Fixed bug reported by Bryan Oakley in the 4548menubutton bindings. There was a false assumption that there was 4549always a menu attached to the button. [Bug 1116] (surles) 4550 45513/26/99 (feature change) Removed --enable-tcl-stub from the configure 4552script. Linking Tk to Tcl stubs is causing too many problems when 4553linking executables like wish. Until the Tk is a fully loadable 4554extension, linking against the Tcl stubs is not supported in Tk. 4555(redman) 4556 45573/26/99 (feature change) --nameble-shared is now the default and builds 4558Tk as a shared library; specify --disable-shared to build a static Tk 4559library and shell. 4560*** POTENTIAL INCOMPATIBILITY *** 4561 45623/29/99 (api change) Standardized text layout and font interfaces 4563so they are consistent with respect to byte versus character 4564oriented indices. The layout functions all manipulate character 4565oriented values while the lower level measurement functions all 4566operate on byte oriented values. (stanton) 4567 45684/1/99 (bug fix) Image handlers are finalized before the font subsystem 4569to fix crashes during finalization of complex widgets. (stanton) 4570 45714/1/99 (feature change) Removed the send command on Windows. Moved 4572the DDE basis of that command out to its own extension. The send 4573implementation on top of DDE was causing Tk to lock up in some cases. 4574(redman) 4575 45764/5/99 (bug fix) Fixed handling of Unicode in text searches. The 4577-count option was returning byte counts instead of character counts. 4578 45794/5/99 (feature change) Cut and paste to an entry widget returns the 4580selection instead of the widget contents, which can be different if the 4581-show option is used to hide the display. (stanton) 4582 4583--------------- Released 8.1b3, April 6, 1999 ---------------------- 4584 45854/20/99 (compiler fix) changed definition of Status type to use a 4586typedef instead of a #define to avoid conflicting with the cygwin win32 4587headers. (redman) 4588 45894/22/99 (bug fix) Set the -translation and -encoding options to binary 4590for image files. (redman) 4591 45924/27/99 (bug fix) Changed to avoid the need for forward declarations in 4593stub initializers. Added extern "C" blocks around stub table pointer 4594declarations so the stubs can be used from C++ code. (stanton) 4595 4596--------------- Released 8.1 final, April 29, 1999 ---------------------- 4597 45985/7/99 (bug fix) Fixed bug wheretk_popup fails when called too 4599quickly. [Bug: 2009] (stanton) 4600 46015/18/99 (bug fix) Fixed clipboard code so it handles Unicode data 4602properly on Windows NT and 95. [Bug: 1791] (stanton) 4603 46045/19/99 (bug fix) Add extern "C" block around entire header file for 4605C++ compilers to fix linkage issues. Submitted by Don Porter and Paul 4606Duffin. (redman) 4607 4608--------------- Released 8.1.1, May 25, 1999 ---------------------- 4609 46105/21/99 (bug fix) Fixed clipboard code to handle lack of CF_LOCALE 4611information (from command.com). (stanton) 4612 46136/1/99 (bug fix) Improved I18N selection support. COMPOUND_TEXT 4614is converted to/from iso2022, and STRING is converted to/from 4615iso8859-1. More work is needed. (stanton) 4616 46176/3/99 (bug fix) Fixed selection code to handle Unicode data in 4618COMPOUND_TEXT and STRING selections. [Bug: 1791] (stanton) 4619 46206/16/99 (new feature) Changes to makefiles and configure scripts to 4621support TEA specification. (wart) 4622 46236/30/99 (bug fix) Removed deprecated functions, patch from Jan 4624Nijtmans. [Bug 2080] (redman) 4625 46266/30/99 (bug fix) Applied patch to allow Img extension to work with 46278.2, patch from Jan Nijtmans. [Bug 2068] (redman) 4628 46296/30/99 (bug fix) Applied patch from Don Porter to prevent the Windows 4630shutdown code from calling Tcl functions when the stub table has not 4631been initialized in TkWinWmCleanup. [Bug: 2269] (redman) 4632 46337/8/99 (bug fix) Changed TkWinChildProc to pass WM_WINDOWSPOSCHANGED 4634through to DefWindowProc to make OpenGL sub-windows happpy. This 4635allows Windows to generate the WM_SIZE and WM_MOVE messages. (stanton) 4636 4637--------------- Released 8.2b1, July 14, 1999 ---------------------- 4638 46397/16/99 (bug fix) Copy prolog.ps from the generic directory for 4640install-libraries make target. (redman) 4641 46427/22/99 (bug fix) Applied patch from Jeff Hobbs to fix 4643library/menu.tcl. [Bug: 2425] (redman) 4644 46457/22/99 (bug fix) Make install-sh have executable permissions before 4646calling from the Makefile. [Bug: 2413] (redman) 4647 46487/22/99 (bug fix) Block out sys/stat.h include with #if to allow 4649extension writers to use the MetroWerks compiler on Windows. 4650[Bug: 2385] (redman) 4651 46527/29/99 (bug fix) Allow tcl to opn CON and NUL on Windows, moved check 4653to Tk Console code instead. [Bug: 2393 2392 2209 2458] (redman) 4654 46557/30/99 (bug fix) corrected the Windows build of threaded Tk from both 4656sets of makefiles (nmake and gmake). (redman) 4657 46587/30/99 (bug fix) Added XFillRectangle to stub table, patch from Jan 4659Njitmans. [Bug: 2446] (hobbs) 4660 46618/1/99 (bug fix) Wrapped #define of panic() inside #ifndef blocks to 4662avoid compiler errors on Macintosh. Patch from Vince Darley. 4663[Bug: 2389] (hobbs) 4664 4665--------------- Released 8.2b2, August 5, 1999 ---------------------- 4666 46678/13/99 (Mac) Rearranged the projects in the tkMacProjects.sea.hqx so 4668that the build directory is separate from the sources. Fixed bug in 4669Tk_DrawChars(). (Jim Ingham) 4670 4671--------------- Released 8.2.0, August 17, 1999 ---------------------- 4672 46739/21/99 (bug fix) fixed 'wm deiconify' quirks on Windows. (hobbs) 4674 46759/21/99 (bug fix) fix fg<>bg GC swap bug for canvas. [Bug: 2676] (hobbs) 4676 46779/21/99 (config fix) fixed AIX config issues for Tk. (hobbs) 4678 46799/24/99 (feature change) tk_dialog now uses {Times 12} by default. (hobbs) 4680 4681--- Released 8.2.1, October 04, 1999 --- See ChangeLog for details --- 4682 468310/30/99 (bug fix) fixed XKeysymToKeycode to handle mapping of symbolic 4684keysyms (Left, Home, ...) with event generate (hobbs) 4685 468610/30/99 (bug fix) change tkEntrySeeInsert to avoid the use of a while loop 4687that could eat CPU tremendously. Behavior of moving the cursor at the 4688right edge changes slightly. [Bug: 3195] (hobbs) 4689 469010/30/99 (bug fix) changed tkScrollButtonUp to check for existence of 4691tkPriv(relief) in order to avoid spurious release events (hobbs) 4692 4693--- Released 8.2.2, November 04, 1999 --- See ChangeLog for details --- 4694 469511/19/99 (bug fix) fixed expression error that could cause 4696'malformed bucket chain' error in tkEntry.c. (hobbs) 4697 469811/19/99 (bug fix) fixed Tk_NameOfColor (hobbs) 4699 4700--- Released 8.2.3, December 16, 1999 --- See ChangeLog for details --- 4701 47021999-09-01 (feature enhancement) rewrote runtime libraries to use new 4703Tcl functions where appropriate 4704 47051999-10-28 (feature enhancement) added Img patch from Jan Nijtmans that 4706makes the image command Tcl_Obj-based, adds support for binary -data args, 4707adds alpha channel to images, adds GIF write capability (RLE). Binary 4708compatability is maintained, and source level compatibility is retained 4709with -DUSE_OLD_IMAGE. (nijtmans) 4710 47111999-11-16 (feature enhancement) made listbox Tcl_Obj based, added 4712-listvariable option and itemconfigure command to allow coloring 4713individual items. (melski) 4714 47151999-11-23 (feature enhancement) added TK_OPTION_DONT_SET_DEFAULT as an 4716equivalent to TK_CONFIG_DONT_SET_DEFAULT (hobbs) 4717 47181999-11-24 (feature enhancement) updated dialogs to use color icons on 4719Unix, center properly over -parent. (hipp, hobbs) 4720 47211999-12-01 (feature enhancement) added hooks into main() code to support 4722"big" shells more easily. (redman) 4723 47241999-12-02 (feature enhancement) converted Tk_DestroyCmd, Tk_LowerCmd and 4725Tk_RaiseCmd to their ObjCmd equivalent. 4726 47271999-12-12 (bug fix) fixed bug in TextSearchCmd for multibyte chars 4728 47291999-12-13 (feature enhancement) added support for pointer warping via the 4730event -warp option, added some items from Dash patch: canvas widget now 4731Tcl_Obj-based, added Tk_CreateSmoothMethod, added support for <Quadruple> 4732clicks, entry widget validation routines, new -state hidden in text 4733widgets, new -state -active* -disabled* -offset options to canvas items 4734(see man page for full docs). New features include dashed line support on 4735the canvas, -elide support for TkMan, postscript printing of images and 4736windows from the canvas. Binary compatibility is maintained with 8.2, and 4737source level compatibility is kept by using -DUSE_OLD_CANVAS. 4738(hobbs, nijtmans, et al) 4739 47401999-12-16 (feature enhancement) added "bitstream cyberbit" to list of 4741font fallbacks. (hobbs) 4742 47431999-12-16 (feature enhancement) added new 'tk useinputmethods ...' command 4744to provide support for disabling/enabling the use of XIM on X. This was 4745previously all done at compile time, and always on. Now it is turned off 4746by default, even when available, and the user must turn it on to use XIM 4747(per display). 4748 *** POTENTIAL INCOMPATIBILITY *** 4749user must add 'tk useinputmethods 1' to retain old style. (hobbs) 4750 47511999-12-16 (feature enhancement) added proper support for -initialfile 4752to tk_get*File, and made Unix version better match Windows file box 4753that it was emulating. (hobbs) 4754 47551999-12-16 (bug fix) removed necessity of 'update idle' before 'wm 4756deiconify' on Windows. (mao) 4757 47581999-12-16 (feature enhancement) added support for Windows system cursors 4759to TkGetCursorByName (use -cursor @filename) 4760 47611999-12-21 (bug fix) fixed lack of refresh for thin frames (darley) 4762 47631999-12-21 (bug fix) fixed panic in Tk_CoordsToWindow to print error 4764to stderr instead (for Tix) (hobbs) 4765 47661999-12-21 (bug fix) fixed segv with scale widget when using -cursor (hobbs) 4767 4768--- Released 8.3b1, December 22, 1999 --- See ChangeLog for details --- 4769 47702000-01-05 (bug fix) Applied fixes for unprotected arg passing through eval 4771and after in Tk runtime code [Bug: 3943] (hobbs) 4772 47732000-01-05 (bug fix) Applied fix for i18n problems with Mac clipboard 4774[Bug: 3544] (hobbs) 4775 47762000-01-05 (feature change) removed the 8.3b1 introduced -state option 4777for text tags, and documented -elide (-state hidden == -elide true) (hobbs) 4778 47792000-01-12 (bug fix) fix Windows 'wm deiconify' to zoomed state [Bug: 2077] 4780and fixed possible flashing of unmapped toplevel in deiconify [Bug: 3338] 4781and fixed unwanted mapping of transient window [Bug: 572] (hobbs) 4782 47832000-01-12 (feature enhancement) extended 'wm state' to accept a state 4784to set for the toplevel, and added support for zoomed (maximized) state 4785on Windows (hobbs) 4786 47872000-01-12 (bug fix) Applied fix for cursor to not blink when entry or 4788text widget was disabled [Bug: 1807] (hobbs) 4789 4790--- Released 8.3b2, January 13, 2000 --- See ChangeLog for details --- 4791 47922000-01-20 (bug fix) fixed interpretation of consecutive ^ characters in 4793grid command (melski) 4794 47952000-01-20 (bug fix) fixed -select(bg|fg) class names in listbox (hobbs) 4796 47972000-01-20 (bug fix) fixed handling of too few coords for line item type in 4798canvas (hobbs) 4799 48002000-01-20 (bug fix) fixed dialog's association with parent (melski) 4801 48022000-01-26 (bug fix) fixed handling of binary data for -data option to 4803image create (melski) 4804 48052000-01-26 (feature enhancement) improved GIF decoding speed by ~60% 4806(melski) 4807 48082000-01-26 (feature enhancement) added tk_chooseDirectory implementation 4809for Unix and Mac (nelson, melski) 4810 48112000-02-01 (bug fix) fixed resolution rounding problem in scale (porter) 4812and fixed potential Unix seg fault due to use of ckfree instead of 4813Tcl_EventuallyFree (hobbs) 4814 48152000-02-01 (bug fix) fixed handling of negative dash values for canvas 4816items (nijtmans) 4817 48182000-02-01 (bug fix) fixed dialog lockup on Windows where once the native 4819dialog disappeared, the parent window could end up locked up (hobbs) 4820 48212000-02-03 (bug fix) fixed text dump to use char indices instead of byte 4822indices (melski) 4823 48242000-02-07 (bug fix) fixed handling of default extension in unix file 4825dialogs (dejong) 4826 48272000-02-08 (bug fix) corrected windows symbol font use to restrict itself 4828to 8-bit chars (kenny) 4829 48302000-02-08 (feature enhancement) improved support for moving from the old 4831style image C API to the new obj'ified one with new Tk_InitImageArgs 4832command and stub'ing of image code. See docs for how to make the 4833transition. (nijtmans) 4834 48352000-02-08 (bug fix) fixed incorrect handling of CapsLock on Win9* and the 4836use of dead keys on international keyboards (spjuth) 4837 48382000-02-10 (bug fix) brought Mac back to building state, added support 4839for Appearance Manager (ingham) 4840 48412000-02-10 (feature enhancement) added support for buttons 4 && 5 as 4842mousewheel style scrolling in listbox and text widget for Unix. 4843 4844--- Released 8.3.0, February 10, 2000 --- See ChangeLog for details --- 4845 48462000-03-02 (bug fix) fixed crash in listbox when cursor was configure and 4847then widget was destroyed (hobbs) 4848 48492000-03-02 (feature enhancement) added %V substitution to entry widget 4850validation to clarify type of validation occuring (hobbs) 4851 48522000-03-07 (feature enhancement) added -disabledforeground/-state to labels 4853(melski) 4854 48552000-03-29 (config enhancement) improved build support for gcc/mingw on 4856Windows (nijtmans, hobbs) and added RPM target (melski) 4857 48582000-03-24 (bug fixes) numerous corrections for more correct Unix dialog 4859behaviors (melski) 4860 48612000-03-27 (bug fix) fixed mem leak in wm commands (hu) 4862 48632000-03-31 (bug fix) correct initialization of Windows static builds and 4864added Unicode aware open/save file dialogs on Windows (hobbs) 4865 48662000-03 (bug fix) canvas: corrected support for transparency in dashed 4867lines on Windows (nijtmans); added support for postscript generation of 4868images on Windows, also fixing transparency printing (biancardi); corrected 4869handling of configure options in non-empty canvas (melski) 4870 48712000-04-07 (bug fix) correct font name length restriction that prevented 4872the use of long named (>16 char) fonts on NT/2000 (hobbs) 4873 48742000-04-07 (bug fix) fixed safe Tk to work in base cases (hobbs) 4875 48762000-04-10 (bug fix) corrected Alt-Key event generation and handling of 4877Alt-sequence Windows special char generation and (Control|Shift|Alt)_L/_R 4878determination (melski) 4879 48802000-04-10 (bug fix) correctly check state of parent when popping up 4881bgerror dialog. (melski) 4882 48832000-04-11 (feature enhancement) msgcat now searches up the namespace chain 4884for a match instead of just in the local namespace (hershey) 4885 48862000-04-12 (bug fix) corrected handling of Windows clipboard to allow for 4887use of user-defined types within the Tk app (hobbs) 4888 48892000-04-13 (feature enhancement) improved handling of shadow determination 4890for 3D borders in very light/dark cases (hipp, melski) 4891 48922000-04-13 (bug fix) correctly color separator bg in menus on Windows 4893(melski) 4894 48952000-04-14 (bug fix) improved handling of scale widget, reduced number of 4896redraws (hobbs) 4897 48982000-04-17 (feature enhancement) made shift-selection more Windows-like 4899(intuitive) in text widget (melski) 4900 49012000-04-22 (bug fix) mac bug fixes, nav services handling (ingham) 4902 49032000-04 more docs for public APIs (melski) 4904 4905--- Released 8.3.1, April 26, 2000 --- See ChangeLog for details --- 49062000-04 (doc updates) extended, updated docs (melski) 4907 49082000-05-09 (feature change) removed WS_EX_TOOLWINDOW style bit for 4909transient windows on Windows platforms, so that transients have 4910full-size titlebars (melski) 4911 49122000-05-09 (bug fix) fixed calling of takeFocus proc (nemethi) 4913 49142000-05-11 (bug fix) corrected handling of 3DBorder, Cursor and Color 4915objects on multiple screens (hobbs) 4916 49172000-05-12 (feature enhancement) improved support for chars in 0-255 4918range for bitmap ANSI fonts (spjuth, hobbs) 4919 49202000-05-12 (widget enhancement) added support for -repeatdelay, 4921-repeatinterval for command buttons; and -compound (image and text 4922simultaneously) for labels, check-, radio-, and command buttons (melski) 4923 49242000-05-14 (widget change) added "readonly" state for entries and 4925changed behavior of "disabled" entries; added -readonlybackground 4926option for entries (melski) 4927*** THIS IS A BACKWARDS INCOMPATIBLE BEHAVIOR CHANGE *** 4928 49292000-05-15 (feature enhancement) added [image inuse] command (melski) 4930 49312000-05-15 (feature enhancement) added -nice option to [bell] command (duncan) 4932 49332000-05-17 (widget enhancement) added -overrelief option for 4934check/radio/buttons (melski) 4935 49362000-05-26 (feature change) added support for new syntax in 4937Tk_OptionSpec tables; if the database name for an option contains an 4938embedded "." it indicates that the name contains an overriding window 4939class specifier in addition to the database name, which allows widgets 4940to perform queries for certain options as if they were options for a 4941different widget class (melski) 4942 49432000-05-28 (new widget) added spinbox widget (hobbs) 4944 49452000-05-31 (feature change) replaced bgerror dialog with a new and 4946improved one (fellows, melski) 4947 4948--- Released 8.4a1, June 6, 2000 --- See ChangeLog for details --- 4949 49502000-05-15 (bug fix) changed wm deiconify from using idle callback to 4951calling restack and focus code immediately. (hobbs) 4952 49532000-07 (build cleanup) cleanup of defines in tkConfig.sh, and cleanup 4954in make and configure files to better handle .rc files across 4955builds. (welch) 4956 49572000-07 (build improvements) cleanup of the makefiles and configure scripts 4958to correct support for building under gcc for Windows. (dejong) 4959 49602000-08 (feature enhancements) for Windows, corrected drawing of separator 4961menu entries, disable menu entries and the height for separator 4962bars. (melski) 4963 49642000-08 (bug fix) fixed calling of takeFocus proc with arg bearing 4965functions. (nemethi) 4966 49672000-08 (bug fix) For text widgets, added a test for a NULL segment pointer 4968when doing backwards searches for "", correct searching over elided chars, 4969and corrected search combining -regexp and -nocase. (melski) 4970 49712000-08 (bug fix) Corrected code for using 'place', cursors, colors and 3D 4972borders on multiple screens simultaneously. (hobbs, hipp) 4973 4974--- Released 8.3.2, August 9, 2000 --- See ChangeLog for details --- 4975 49762000-06-15 (new feature) [tk_getOpenFile ... -multiple] (melski) 4977 49782000-06-29 (new feature) localization support in Tk dialogs (duperval, 4979melski, et al) 4980 4981200-07-28 (new feature) -state option for listbox, better native color 4982defaults (melski) 4983 49842000-08 (feature rewrites) Tcl_Obj'ified clipboard, message, tkwait, 4985bindtags, grab. place, selection commands (melski) 4986 49872000-08-24 (new feature) More correct GNU configure support (no more 4988--enable-gcc) (dejong) 4989 *** POTENTIAL INCOMPATIBILITY *** 4990 49912000-08-29 (bug fix) Corrected Windows menu indicator drawing (oberhumer) 4992 49932000-09-01 (bug fix) Added tkPlatDecls.h to default install (melski) 4994 49952000-09-17 (new feature) Added TK_OPTION_CUSTOM type, similar to 4996TK_CONFIG_CUSTOM (melski) 4997 49982000-09-29 (bug fix) Several fixes for multi-display uses of Tk (hipp, hobbs) 4999 50002000-10-05 (new feature) Tk_CreateAnonymousWindow API to create anonymous 5001Tk windows controllable from C (melski) 5002 50032000-10-27 (new default behavior) [tk useinputmethods 1] is the default 5004in tk.tcl, for users of XIM and "dead" keys (hobbs) 5005 50062000-10-30 Improved support for static builds on Windows (gravereaux) 5007 5008 * Added support for mingw (gcc on Windows), AIX-5 and Win64 builds 5009 (dejong, hobbs) 5010 5011 * Improved error checking in Windows native dialogs (melski, hobbs) 5012 5013--- Released 8.4a2, November 3, 2000 --- See ChangeLog for details --- 5014 50152001-04-04 (build improvements) redid Mac build structure (steffen) 5016Corrected IRIX-5* configure (english). Added support for AIX-5 (hobbs). 5017Added support for Win64 (hobbs). 5018 50192001-04-04 (doc fixes) numerous doc corrections and clarifications. 5020Update of READMEs. 5021 50222001-04-04 (bug fix) corrected reseting of service mode to only occur when 5023it was set (hedin, hobbs) 5024 50252001-04-02 (bug fix) Improved tests on Windows for correctness. 5026Checked for menu deletion before calling associated menu entry command. 5027Fixed listbox, canvas and entry destruction to be more aware of current 5028widget activity. (hobbs) 5029 50302001-03-30 (feature enhancement) added support for changing IME on the fly 5031in Windows (2000) (lam) 5032(bug fix) handled the error case where a valid-looking but invalid 5033identifier could be passed in certain event generate options causing a 5034crash (hobbs) 5035 50362001-03-29 (bug fix) corrected handling of drag-selection (dejong) 5037 50382001-01-02 (feature enhancement) added Windows icon support in wm 5039iconbitmap (darley) 5040 50412000-10-27 (feature enhancement) made [tk useinputmethods 1] the default 5042for Tk (hobbs) 5043 50442000-10-18 (bug fix) Corrected rendering of 1-pixel wide stippled lines on 5045Windows. Correct use of active- and disabledwidth values for displaying 5046lines. Enhanced error handling in Windows native dialogs (melski) 5047 50482000-09-29 (bug fix) corrected BadMatch errors when using Tk on multiple 5049screens (hipp) 5050 50512000-08-18 (feature enhancement) Removed redundant call to DitherInstance 5052(melski) 5053 5054--- Released 8.3.3, April 6, 2001 --- See ChangeLog for details --- 5055 50562000-11-21 (new feature)[TIP 5] Tk_ClassProcs, Tk_SetClassProcs API (melski) 5057 50582000-12-13 (performance enhancement)[403327] Tcl_Objs of type "double" 5059are recognized in SetMMFromAny to speed up canvas coord calculations (hobbs) 5060 50612001-01-02 (new feature)[TIP 8] [wn iconbitmap -default] on Windows (darley) 5062 50632001-02-12 (new feature)[TIP #21] asymmetric padding in the pack and grid 5064geometry managers (hipp) 5065 50662001-05-21 (new feature)[TIP #11], -compound for [menubutton] widget (helfter) 5067 50682001-06-03 (bug fix) corrected support for is10646 fonts on Unix, added a 5069ucs-2be encoding (welch) 5070 50712001-07-02 (bug fix) allowed tkwin to be Tcl_EventuallyFree'd in 5072Tk_DestroyWindow so other widgets could register their use of it. Updated 5073entry and listbox widgets to use this, correcting potential crashes. (hobbs) 5074 50752001-08-01 (interface rewrite)[TIP 44] moved all private tk[A-Z]* commands and 5076variables into the ::tk:: namespace (porter) 5077 *** POTENTIAL INCOMPATIBILITY *** 5078 5079 * overhaul of configure scripts for cleaner standard support and support 5080 of mingw gcc on Windows. (mdejong) 5081 5082 * improved tests to better handle results on variant systems (hobbs) 5083 5084 * correct several minor Purify complaints (hobbs) 5085 5086--- Released 8.4a3, August 6, 2000 --- See ChangeLog for details --- 5087 50882001-08-06 (new feature) added GNU (HURD) build support. (brinkman) 5089 50902001-08-23 (new feature) added QNX-6 build support. (loverso) 5091 50922001-08-24 (bug fix) correct several possible free memory reads and array 5093bounds read errors reported by purify. (hobbs) 5094 50952001-08-27 (new feature) added call to Tcl_SetMainLoop which enables Tk to 5096be loaded interactively into tclsh and have the event loop kick in 5097correctly. (hobbs) 5098 50992001-08-28 (bug fix) fixed tk_chooseDirectory crash on Win95. (baker) 5100 51012001-08-28 (bug fix) removed 2 second 'raise' delay seen by some Unix 5102window managers. (hobbs, baker) 5103 51042001-09-14 (bug fix) fixed memory leaks that occured if errors were 5105thrown while initializing the channel for an image. (darley) 5106 51072001-09-20 (new feature) --enable-64bit support was added for HP 11 when 5108using the native compiler. 5109 51102001-10-03 (new feature) finalized Win64 support with latest RC1 release 5111and SDK. (hobbs, stacy) 5112 51132001-10-04 (new feature) added enhanced bgerror dialog from Hipp. (hobbs) 5114 51152001-10-09 (new feature) added brace/quote matching and file/path/var 5116expansion to the Win/Mac console. (hobbs) 5117 51182001-10-17 (bug fix) fixed file filtering in the motif file dialog (nelson) 5119 51202001-10-17 (bug fix) updated Mac build support. (steffen) 5121 5122--- Released 8.3.4, October 19, 2001 --- See ChangeLog for details --- 5123 51242001-08-14 (bug fix)[450545] Tk's Tcl_ObjTypes now registered (fellows) 5125 51262001-08-20 (performance enhancement) internal use of a "window" Tcl_ObjType 5127(fellows) 5128 51292001-08-20 (performance enhancement) Obj-ified [grid] and [pack] (spjuth) 5130 51312001-09-26 (new feature)[TIP 18] add labels to frames, update geometry 5132managers (spjuth) 5133 51342001-09-30 (new feature)[TIP 37] [grid {row|column}configure -uniform] (spjuth) 5135 51362001-10-12 (new feature)[TIP 63] [$menu add ... -compound] (helfter) 5137 51382001-10-18 (build improvement) no more warnings about building with 5139thread-enabled Tcl (hobbs) 5140 51412001-11-10 (build improvement) new make target 'make gdb' (dejong) 5142 51432001-11-12 (new feature)[TIP 26] simple undo/redo in text widget (callewaert) 5144 51452001-11-12 (build improvement) revitalized makefile.vc (gravereaux) 5146 51472001-11-17 (visual change) default button size on Windows changed to 5148conform to Windows style (hobbs) 5149 **** POTENTIAL VISUAL INCOMPATABILITY **** 5150 51512001-12-03 (new feature)[TIP 74] [wm stackorder] (dejong, steffen) 5152 51532001-12 (new feature) more use of Unicode in native widgets on Windows (hobbs) 5154 51552001-12-18 (bug fix)[413735] event-click-drag-1.2 test failure (porter) 5156 51572001-12-28 (new feature) On Windows, buttons accept negative widths, meaning 5158minimum size, enabling native L&F (hobbs) 5159 51602002-01 (bug fix) updates for CONST-ification in Tcl API, notably 5161Tcl_ParseArgv. Use -DUSE_NON_CONST to suppress source incompatibility 5162 **** POTENTIAL INCOMPATABILITY **** 5163 51642002-01-31 (bug fix)[508988] logic error in menu cloning (helfter) 5165 51662002-02-01 (new feature)[TIP 14] [$photo transparency] (fellows) 5167 51682002-02-01 (bug fix)[511956] C99 spec: avoid 'bool' as a variable name (hobbs) 5169 51702002-02-19 (bug fix) updates to image code calls of Tcl_Seek/Tcl_Tell to 5171address TIP 72 changes (64-bit) in Tcl (fellows) 5172 51732002-02-21 (new widget)[TIP 41] added [panedwindow] (hobbs) 5174 51752002-02-22 (new feature) 64-bit support for xlc compiler on AIX-4 (hobbs) 5176 51772002-02-25 (bug fix)[503772] blinking cursor fix in [text] (hobbs) 5178 51792002-02-25 (bug fix)[503613] [listbox] handling of invalid listvar (hobbs) 5180 51812002-02-25 (feature change)[493145] mirror B2 bindings to B3 on Windows (hobbs) 5182 5183 * (updated demos) many updates to show new features (fellows) 5184 5185--- Released 8.4a4, March 5, 2002 --- See ChangeLog for details --- 5186 51872002-03-20 (feature change)[TIP 27][532644] Constness changes (porter) 5188 51892002-03-21 (bug fix)[528441] Change in optimization flags for windows 5190(gravereaux) 5191 51922002-04-08 (bug fix) MSL stdin/out fixes prevent crash on exit (steffen) 5193 51942002-04-12 (bug fix) Centralized closing of display, mem-leak fixes (hobbs) 5195 51962002-04-22 (bug fix)[223739] More robust FP comparisons for odd 5197architectures (fellows) 5198 51992002-04-22 (bug fix)[541999] Fixed posible overun of 16-bit size limit 5200of X windows in drawchars (hobbs,bonfield) 5201 52022002-04-22 (bug fix)[541849] ButtonLeave implementation corrected (hobbs) 5203 52042002-04-24 (new feature) TCLTK_NO_LIBRARY_TEXT_RESOURCES check added, 5205allowing disable of inclusion of tk lib into resources (steffen) 5206 52072002-05-07 (bug fix)[553208] Makefile/Win fix (TCLDIR, INSTALLDIR 5208forward slash trouble resolved) (gravereaux) 5209 52102002-05-20 (bug fix) msgcat added to resources, fixed setup of bindings 5211on startup (steffen, porter) 5212 52132002-05-21 (bug fix) Build system fix, SC_ENABLE_SHARED before 5214SC_CONFIG_CFLAGS for usage for SHARED_BUILD (dejong) 5215 52162002-05-26 (bug fix)[548765] Fixed -value "" redraw error for variable 5217created by radiobutton (spjuth) 5218 52192002-05-27 (feature change) [wm transient .t .t] now raises an error (dejong) 5220 *** POTENTIAL INCOMPATIBILITY *** 5221 52222002-06-10 (new feature)[566605] Utilities for -underline, ampersand magic 5223(kovalenko) 5224 52252002-06-12 (feature change) A transient toplevel now mirrors state changes 5226in the master. (dejong) 5227 *** POTENTIAL INCOMPATIBILITY *** 5228 52292002-06-13 (bug fix) Fixed handling of cursor specs across platforms to 5230be consistent. (fellows) 5231 52322002-06-14 (new feature) [TIP 98] Enhanced photo compositing (fellows) 5233 *** POTENTIAL INCOMPATIBILITY *** 5234 52352002-06-14 (bug fix) Removed references to matherr (kupries) 5236 52372002-06-14 (new feature) [TIP 47] Reorganized Tk to allow usage in writing 5238an X wm (english) 5239 52402002-06-14 (new feature) [TIP 84] Full motion events upon request (hobbs) 5241 52422002-06-17 (new feature) [TIP 82] -offrelief option for check/radiobutton 5243(hipp) 5244 52452002-06-17 (enhancement) Added msg catalog for UK English. (porter) 5246 52472002-06-17 (new feature) [TIP 96] Added caret handling (hobbs) 5248 52492002-06-19 (new feature) [TIP 48] Added style engine (bonnet) 5250 52512002-06-19 (bug fix)[570902] Reorganized Tk shutdown to work around bugs in 5252X (dejong) 5253 52542002-06-20 (new feature) [TIP 94] Added -activestyle for [listbox] (hobbs) 5255 52562002-06-21 (new feature) [TIP 104] generalized text undo/redo (callewart, 5257hobbs) 5258 52592002-06-22 (new feature) [TIP 95] Added [wm attributes] command (hobbs) 5260 52612002-06-22 (new feature) [TIP 93] enhanced get/delete to accept accept 5262multiple range pairs (hobbs) 5263 5264--- Released 8.4b1, July 5, 2002 --- See ChangeLog for details --- 5265 52662002-07-11 (bug fix) some memory allocation failures now result in 5267 error messages rather than panic (fellows) 5268 52692002-07-15 (platform support) Borland makefile on Windows (gravereaux,giese) 5270 52712002-07-16 (bug fix)[220800,581627] icon reading (darley) 5272 52732002-07-19 (bug fix) Postscript generation on Win2K (hipp) 5274 52752002-07-22 (bug fix)[570764,568278] transient windows (dejong) 5276 52772002-07-24 (bug fix)[581560] canvas memory management (hobbs) 5278 52792002-07-24 (bug fix)[584691] focus ring on compound button (hobbs) 5280 52812002-07-25 (feature enhancement)[564521] Obj-ified [wm] (spjuth) 5282 52832002-08-04 (new feature)[589853][TIP 27] Tk interfaces are now fully 5284 CONST-ified. Use the symbols USE_NON_CONST or USE_COMPAT_CONST 5285 to select interfaces with fewer changes. 5286 *** POTENTIAL INCOMPATIBILITY *** 5287 52882002-08-07 (bug fix)[578654] bezier curves on canvas (hobbs) 5289 52902002-08-07 (platform support)[468139] native directory browser on Win (hobbs) 5291 52922002-08-07 (bug fix)[467524] fixed -from handling for gifs (obermeier) 5293 52942002-08-08 (bug fix)[592201] wm transient panic (english,dejong) 5295 5296Rewrote Tk test suite to use tcltest package. 5297 5298--- Released 8.4b2, August 9, 2002 --- See ChangeLog for details --- 5299 53002002-08-20 (bug fix) tk.h checks for matching tcl.h version (porter) 5301 53022002-08-27 (bug fix)[582457] toolbar button bindings (hipp) 5303 53042002-08-31 (platform support)[602770] Mac OS X / Aqua port (steffen) 5305 53062002-09-02 (bug fix)[565485] button height on windows (hobbs) 5307 53082002-09-02 (new feature)[TIP 108] new comand [tk windowingsystem] (steffen) 5309 53102002-09-02 (new feature)[TIP 107][601518] [raise] is non-blocking (english) 5311 53122002-09-02 (platfrom support) 64-bit compile on HP-11 (martin) 5313 5314--- Released 8.4.0, September 10, 2002 --- See ChangeLog for details --- 5315 53162002-09-15 (bug fix)[570902] Use PEEK_XCLOSEIM to examine the input context 5317queue before invoking XCloseIM. Generate an assert if there is an input 5318context that has not been freed. (dejong) 5319 53202002-09-18 (platform support) Updated support for compiling with Cygwin and 5321either mingw or gcc. (khan, howell, dejong) 5322 53232002-09-30 (bug fix)[614650] Correct incremental transfers of UTF8_STRING 5324selections (fellows) 5325 53262002-10-02 (bug fix)[616791, 614474] don't blink the cursor unless it is 5327visible. (bonfield) 5328 53292002-10-02 (bug fix)[607390, 617446] check if the entry is being deleted 5330before handling an associated textvariable. (hobbs) 5331 53322002-10-08 (bug fix)[616589] leave the DestroyPanedWindow proc to free the 5333pwPtr. (hobbs) 5334 53352002-10-08 (bug fix)[588831] Ignore event if we are focusing into a dead 5336window (griffin) 5337 53382002-10-09 (bug fix)[619544] Only error-out creating an image if we fail to 5339allocate a non-empty buffer (fellows) 5340 53412002-10-09 (build support) all --enable-symbols to take the enhanced 5342options yes|no|mem|all. (hobbs) 5343 53442002-10-10 (feature enhancement) added support for generating ps for 5345embedded widgets on canvases on Windows (hobbs) 5346 53472002-10-10 (bug fix)[621241] The grid size was not updated properly when 5348removing a widget from a grid (forssen) 5349 53502002-10-16 (bug fix)[616988] macosx fix to accelerators shown in menus 5351with non-alphanumeric keys. (darley) 5352 53532002-10-15 (platform support) Correct AIX-5 ppc and 4/5 64-bit build flags. 5354Correct HP 11 64-bit gcc building. (martin, hobbs) 5355 53562002-10-17 (bug fix)[624974] fix arg handling for missing image create 5357photo -format or -data options (hobbs) 5358 53592002-10-17 (bug fix)[624732] In ControlUtfProc, properly return the number 5360of bytes consumed (hobbs) 5361 53622002-10-22 (platform support)[624509] On macosx, add embedded framework 5363dirs to tcl_pkgPath: @executable_path/../Frameworks and 5364@executable_path/../PrivateFrameworks (if they exist), as well as the dirs 5365in DYLD_FRAMEWORK_PATH (if set). Added 'rapp' apple event handler. Added 5366TEXT document type to plist so that files can be dragged onto Wish Shell. 5367Added private proc TkMacOSXUseAntialiasedText() to enable/disable quickdraw 5368text antialiasing where available, default is enabled. Added a linked 5369boolean ::tk::mac::antialiasedtext with write trace to allow control of 5370antialiasing from tcl. (steffen) 5371 5372--- Released 8.4.1, October 22, 2002 --- See ChangeLog for details --- 5373 53742002-11-07 (bug fix)[635025,532022] Make [place info] complete and bring into 5375line with other geometry managers. (spjuth) 5376 53772002-11-14 (bug fix)[630533] Handle half-dead windows better. (dejong) 5378 53792002-11-19 (bug fix) Better handling of narrow scrollbars on OSX. (ingham) 5380 53812002-11-22 (bug fix)[641778] Make the [text see] work when the widget is 5382unmapped. (hobbs) 5383 53842002-12-01 (bug fix) Stopped [wm withdraw] and [wm transient] from interfering 5385with each other. (dejong) 5386 53872002-12-06 (bug fix) Improved DLL cleanup on Windows. (hobbs) 5388 53892002-12-06 (new feature) New function TkWinSetHINSTANCE() as part of enabling 5390dynamic Tk to load resources correctly. (hobbs) 5391 53922002-12-13 (bug fix)[616245] Use Tcl*StartupScript*() routines in Tk_Main. 5393(porter) 5394 53952002-12-27 (bug fix)[578569] Made sure that Tk always knows whether its windows 5396are mapped or not. (english) 5397 53982003-01-03 (bug fix)[661792] Stopped crash when trying to create a toplevel 5399when Tk is dying. (hobbs) 5400 54012003-01-08 (bug fix)[663981] Clip long lines so they show correctly even when 5402they hit windowing-system limits. (hipp) 5403 54042003-01-14 (bug fix)[666346] Stopped selection handling crashes under KDE3.0. 5405(english) 5406 54072003-01-22 (bug fix)[220891] Image creation cannot trigger Tk's death. 5408(fellows) 5409 54102003-01-23 (bug fix)[673687] Entry typein works as expected even when the mouse 5411button is pressed. (hipp) 5412 54132003-01-28 (bug fix)[671330] Stopped segfaults from unsynchonized window 5414deletion epochs. (english) 5415 54162003-02-08 (bug fix) Make canvas item coordinate list handling consistent to 5417stop segfaults. Cannot now create items without coordinates. (hobbs) 5418 *** POTENTIAL INCOMPATIBILITY *** 5419 54202003-02-10 (bug fix) Better support for themed and animated cursors on OSX. 5421(ingham) 5422 54232003-02-17 (bug fix) Stopped motion events from morphing into button press 5424and motion events. (dejong) 5425 54262003-02-18 (bug fix) Removed memory leak in GIF image loader. (fellows) 5427 54282003-02-18 (bug fix) Made OSX menus support UTF8 text and icons. (darley) 5429 54302003-02-18 (bug fix)[608559] Stop message boxes from getting extremely wide. 5431(hobbs) 5432 54332003-02-18 (bug fix)[683813] Make focus behaviour of spinboxes more like 5434entries. (bron) 5435 54362003-02-19 (new demo)[627453] New demo showing off Tk's Unicode font handling. 5437(fellows,suchenwirth) 5438 54392003-02-19 (bug fix) Bring event handling more into line with the OSX standard. 5440Also improves "dead key" handling. (riefenstahl,ingham) 5441 54422003-02-20 (bug fix)[618872,689357] Stopped read of freed memory when working 5443with large composite fonts. (fellows) 5444 54452003-02-20 (bug fix)[689099,tcllib 689258] Improvements to [panedwindow] pane 5446size and sash handling. (spjuth,hobbs) 5447 54482003-02-20 (bug fix)[624116] Stopped semi-crash in Windows scrollbar handling. 5449(hobbs) 5450 54512003-02-21 (bug fix)[671122] Stopped panedwindow from crashing when embedded 5452in a window with a different visual to the root window. (fellows) 5453 54542003-02-21 (bug fix)[617392] Limit the screen-size of [tk_get*File] file type 5455selection menu. (fellows) 5456 54572003-02-21 (bug fix)[673722] Rework standard dialogs to use [grid]. (fellows) 5458 54592003-02-24 (bug fix)[637828] Report that entries can provide the selection, 5460even if they're not displaying it. (hobbs) 5461 54622003-02-24 (bug fix)[669595] Improved display of indicators in disabled 5463checkbuttons and radiobuttons. (hintermayer) 5464 54652003-02-24 (bug fix)[632514] Allow listbox 'selection includes' to respond 5466positively when disabled. 5467 54682003-02-24 (bug fix)[647497] Make Tk pick the first best matching font on 5469the font path. (dal zotto) 5470 *** POTENTIAL VISUAL INCOMPATIBILITY *** 5471 54722003-02-25 (bug fix)[621672] Fixed conversion of apple event parameters 5473to posix path names. (steffen,riefenstahl) 5474 54752003-02-25 (feature enhancement)[patch 685388] Support simple XOR text drawing 5476on Windows. (martin) 5477 54782003-02-28 (bug fix)[612110] Make %-substitutions for events only read data out 5479of the event structure when that field is valid for that event type. (fellows) 5480 *** POTENTIAL INCOMPATIBILITY *** 5481 5482--- Released 8.4.2, March 3, 2003 --- See ChangeLog for details --- 5483 54842003-03-14 (bug fix)[701812] Stop buttons from being very wide when a 5485tk_messageBox has a lot of content on Unix 5486 54872003-03-18 (bug fix) Fixed crash in [winfo server] on Mac OS X 5488 54892003-04-25 (bug fix)[477740] Correct compound button display in the 5490disabled state 5491 54922003-05-10 (bug fix)[734498] Correct crash when generating postscript for a 5493single-line polygon (point) with no color. 5494 54952003-05-13 (feature enhancement)[736774] Use new versioned bundle resource 5496API to get tk runtime library for TK_VERSION on Mac OS X 5497 54982003-05-14 (bug fix)[737790] Updated French message catalog 5499 55002003-05-15 (bug fix)[557030] Use gb2312-raw as the alias for gb2312* 5501charset fonts. gb2312.enc was made to be euc-cn for Tcl because that is 5502what is most often meant, but X really wants the original (-raw) gb2312 5503encoding. 5504 5505--- Released 8.4.3, May 20, 2003 --- See ChangeLog for details --- 5506 55072003-07-07 (bug fix)[749353] Improve deletion of images on exit. 5508 55092003-07-15 (bug fix)[465324] Fixed complex bug in menu clone cleanup. 5510 55112003-07-15 (bug fix)[755530] Don't test for XCloseIM bug when the XFree86 5512version is newer than 4.0 since the layout of the XIM structure has 5513changed. 5514 55152003-07-16 (bug fix)[748277, 702230, 738143] Numerous panedwindow fixes. 5516Ensure that the last pane shrinks instead of being clipped when resized 5517below the reqsize. Ensure that we can share GCs between a panedwindow and 5518its sash proxy, even if the panedwindow is in a toplevel with a different 5519visual. Ensure that panedwindows get their geometry right even when their 5520children don't know their initial size. Use widget-specific Priv slots for 5521pwAfterId and panecursor items to correctly handle cursor changes with 5522adjacant panedwindows. 5523 55242003-07-17 (bug fix)[697652] Make sure all options of a frame can be set to 5525their default value. 5526 55272003-07-17 (bug fix)[404421] Try harder to avoid zero-length mallocs() when 5528creating images. 5529 55302003-07-17 (feature enhancement) MacOSX build system rewrite. 5531 55322003-07-18 (bug fix) Do not make XGetGeometry call that prevents overwidth 5533lines drawing on unix as it requires a roundtrip call to the X server for 5534every string drawn. Hard-code max width to 32768 until a beter solution to 5535get max width is made. 5536 55372003-07-18 (bug fix)[742660] correct XCreateIC call for TK_XIM_SPOT usage 5538on unix. 5539 55402003-07-18 (bug fix)[420510] Provide consistency between unix and windows 5541-cursor option. 5542 55432003-07-19 (bug fix)[706765] Correctly handle the -sliderrelief option 5544while moving the thumb. 5545 5546--- Released 8.4.4, July 22, 2003 --- See ChangeLog for details --- 5547 55482003-08-13 (bug fix)[787065] Fix Button-2 binding for scale widget. 5549 55502003-08-19 (bug fix)[791500] Fix panedwindow refresh glitches for bg. 5551 55522003-09-17 (bug fix)[808039] Prevent [image create] from generating an 5553image command name that overwrites an existing command. 5554 55552003-09-25 (enhancement) Added -compound support for OS X bevel buttons. 5556 55572003-10-10 (bug fix) Fix image offset stippling for disabled buttons. 5558 55592003-10-22 (enhancement)[827535] Constrain tk_dialog to be sensibly sized and 5560placed 5561 55622003-10-28 (bug fix) Add 16bpp XGetImage support on Windows 5563 55642003-10-29 (enhancement)[795717] Allow some control of foreground and 5565background colors on Tk's tk_getOpenFile/tk_chooseDirectory. 5566 55672003-11-01 (enhancement)[820519] Updated Dutch (nl) message catalog. 5568 55692003-11-10 (enhancement)[826614] Provide more Tk build info in tkConfig.sh. 5570 55712003-11-10 (enhancement)[809157] Add alpha blending for images with partial 5572transparency on Windows and Unix on 15bpp+ displays. 5573 55742003-11-10 (enhancement)[820282] Use the XGCValues.function parameter when 5575filling rectangles with XFillRectangles on Windows. 5576 55772003-11-11 (enhancement)[840107] Add OS X unicode clipboard support. 5578 55792003-11-11 (enhancement)[833819] Improve Tk's 5580tk_getOpenFile/tk_chooseDirectory directory glob'ing speed. 5581 55822003-11-11 (bug fix)[836483] Fix mem leak in '$listbox itemconfigure'. 5583 55842003-11-11 (bug fix)[723856] Correctly handle menu (un)posting on menus 5585with spaces in their names. 5586 55872003-11-11 (enhancement) Improve AIX-64 build configuration. 5588 55892003-11-17 (bug fix) Fix menubutton -compound state disabled drawing. 5590 5591--- Released 8.4.5, November 20, 2003 --- See ChangeLog for details --- 5592 55932003-12-17 (platform support)[842952] Mac OS X: [scrollbar] 5594 55952004-02-13 (platform support)[776646] Win: native hand2/fleur cursors 5596 55972004-02-03 (enhancement) post menubuttons so they stay on screen. 5598 55992004-02-09 (bug fix)[877950] stop crash during intra-image copy/resize 5600 56012004-02-10 (enhancement) New msg catalogs for Esperanto and Polish (trzewik) 5602 56032004-02-13 (platform support)[478568] Win: bold/italic font handling 5604 56052004-02-15 (platform support)[860454] Mac OS X: [event generate] 5606 56072004-02-15 (platform support)[840107] Mac OS X: Unicode clipboard (senn) 5608 56092004-02-15 (platform support)[517600] Mac OS X: handle FSRef's 5610 56112004-02-15 (platform support) Mac OS X: native [tk_messageBox] 5612 56132004-02-15 (platform support) Mac OS X: PowerBook keycode 0x34 -> <Return> 5614 56152004-02-18 (platform support) Mac OS MouseWheel event handling 5616 56172004-02-18 (bug fix)[899246] fix shrinking grid geometry calculations 5618 56192004-02-23 (platform support)[809157] Mac OS X: Add alpha blending for 5620images with partial transparency. 5621 56222004-03-01 (platform support)[218561] Allow 64-bit configure on IRIX64-6.5* 5623 5624--- Released 8.4.6, March 1, 2004 --- See ChangeLog for details --- 5625 56262004-03-17 (platform support) Mac OS X: Grab the Command-H & 5627Command-Shift-H keys and use them for Hide and Hide Others before passing 5628keystrokes on to the generic keyboard event processing. 5629Stop putting a Quit menu item in the File menu. (ingham) 5630 56312004-03-26 (enhancement)[540375] Add code to read and write PPM/PGM data 5632from strings and/or bytearrays. (fellows) 5633 56342004-03-26 (bug fix)[923555] Restored support for the stringWriteProc of 5635old photo formats/ (fellows) 5636 56372004-03-31 (bug fix)[Bug 220871] Report errors from invoking menu commands 5638as background errors on OS X. (ingham) 5639 56402004-04-20 (bug fix)[915350, 922336] Do not set min, max size in WM_HINTS 5641when we shouldn't and correctly display maximize window button under 5642KDE-3.2.1. (english) 5643 56442004-05-03 (enhancement)[756952] Place images of compound menu entries in 5645indicator space if not a radio of checkbutton on Windows. (eserte) 5646 56472004-05-03 (bug fix)[904371] Fix drawing of unicode chars in menu titles. 5648(riefenstahl) 5649 56502004-05-03 (bug fix)[939389, 822002, 732662] Correctly post internal 5651clipboard data to the Windows clipboard on exit. (hobbs) 5652 56532004-05-03 (bug fix)[778893, 932155] Make the panedwindow -opaqueresize 5654option work as per the docs, and call DragSash to stop sash jump when B1 is 5655pressed and released without moving. (hobbs) 5656 56572004-05-05 (bug fix)[618872] Fix Tk_MeasureChars and Tk_DrawChars to handle 5658reallocation of subfonts when unicode chars require extra fonts. 5659(dkf, hobbs) 5660 56612004-05-14 (enhancement) reduce Tk tk_messageBox default font size to 566214-point (was 18-point). (fellows) 5663 56642004-07-11 (enhancement)[987169] Handle users destroying the dialog 5665indirectly. (fellows) 5666 56672004-07-14 (bug fix)[894550] Correctly set the cursor to the platform 5668cursor on OS X when Tk asks for the "NULL" (empty) cursor. 5669 56702004-07-14 (bug fix)[969358] Prevent possible segfault in -maxundo. (jiangwu) 5671 56722004-07-19 (bug fix)[874058] improved build configuration on 64-bit systems. 5673Corrects Tcl_StatBuf definition issues. (hobbs) 5674 56752004-07-23 (platform support) Mac OS X: Fix several problems with 5676Icelandic (and Faroese) keyboards (riefenstahl) 5677 56782004-07-24 (platform support) Mac OS X: Complete the implementation of 5679the CG version of the X drawing emulation layer. (tittle, ingham) 5680 5681--- Released 8.4.7, July 26, 2004 --- See ChangeLog for details --- 5682 56832004-08-09 (bug fix)[1006286] test wrapping on canvas; Win (dejong) 5684 56852004-08-10 (bug fix)[1006686] [wm resizable] Solaris (mcdonald,english) 5686 56872004-08-17 (bug fix)[1010938] panedwindow -handlepad GEOMETRY (fellows) 5688 56892004-08-19 (bug fix)[611615] file dialog double clicks fell through (hobbs) 5690 56912004-09-10 (bug fix)[845189] file dialog state initialization (fellows) 5692 56932004-09-10 (bug fix)[1013942] widget demo robust against strict motif (fellows) 5694 56952004-09-16 (bug fix)[1028888] [place forget] memory leak (spjuth) 5696 56972004-09-16 (bug fix)[607649] font size change: recompute menu geometry (hobbs) 5698 56992004-09-17 (new feature)[TIP 222] [wm attributes -alpha] (hobbs) 5700 57012004-09-22 (bug fix)[865842] disabled cascade menu arrow draw (dejong) 5702 57032004-09-22 (bug fix)[866194] menu accelerator text highlights (dejong) 5704 57052004-09-22 (bug fix)[223689] handle color/screen resolution changes (hobbs) 5706 57072004-10-05 (new feature)[TIP 159] [wm iconphoto] (hobbs) 5708 57092004-10-26 (bug fix)[905830] set IC focus after creation (max) 5710 57112004-10-26 (bug fix) shutdown safety corrections for Win (gravereaux) 5712 57132004-10-28 (bug fix) HAVE_NO_SEH handler code, Win (dejong) 5714 57152004-10-29 (bug fix)[533519] multi-display window placement (thoyts) 5716 57172004-11-10 (bug fix)[1055023] compound buttons, MacOSX (kirkham,ingham) 5718 57192004-11-11 (bug fix)[1035348] [load]-able Tk on MacOSX/Aqua (steffen) 5720 57212004-11-12 (bug fix)[800178] use correct display for [tk scaling] (hobbs) 5722 57232004-11-16 (bug fix)[1063675] Italian msg catalog fixes (ugoccioni,welton) 5724 57252004-11-17 (bug fix)[1036963] panedwindow: set save_under X attr (hobbs) 5726 57272004-11-17 (bug fix)[1004508] console: array keyname expansion (bold,hobbs) 5728 57292004-11-17 (bug fix)[1032300] ps generation of unspecified canvas image (hobbs) 5730 57312004-11-17 (bug fix)[982248] immediate unmap of hidden canvas windows (hobbs) 5732 57332004-11-18 (new feature) configure options --enable-man-suffix (max) 5734 5735--- Released 8.4.8, November 18, 2004 --- See ChangeLog for details --- 5736 57372004-12-01 (bug fix)[979239] Fix clipping of partially transparent images 5738on buttons on unix to avoid X error (hobbs, petasis) 5739 57402004-12-03 (bug fix)[848161] Fix Tk_PhotoPut(Zoomed)Block overlay 5741compositing of partially transparent areas. 5742 5743--- Released 8.4.9, December 6, 2004 --- See ChangeLog for details --- 5744 57452004-12-09 (performance)[1081966] BMP, JPG image load speed (fellows) 5746 57472004-12-29 (platform support)[1092952,1091967] MSVC7, gcc OPT compiles (hobbs) 5748 57492005-01-11 (bug fix)[1098779] -pady accept all lists (fellows,kirkham) 5750 57512005-01-14 (bug fix)[959973] Set _NET_WM_NAME and _NET_WM_ICON_NAME 5752(freedesktop.org) in addition to WM_NAME and WM_ICON_NAME (ICCCM). Allows 5753Unicode characters in wm titlebar on X11. (english) 5754 57552005-01-14 (bug fix)[742882] division by zero in gridded wm geometry (english) 5756 57572005-01-14 (bug fix)[632816] cannot remove transient (english) 5758 57592005-01-14 (bug fix)[568861] [wm minsize|maxsize] fix (dejong,english) 5760 57612005-01-18 (bug fix) dialog visibility in demos (nash,fellows) 5762 57632005-01-28 (platform support)[1021871] Solaris gcc 64-bit support (hobbs) 5764 57652005-01-31 (enhancement)[1111213] msg catalog for Spain's Spanish. (poser) 5766 57672005-02-10 (platform support) Correct gcc builds for AIX-4+, HP-UX-11 (hobbs) 5768 57692005-02-11 (bug fix)[949792] Fix error during panedwindow destroy (hobbs) 5770 57712005-02-11 (bug fix)[1105738] Fix [tk_messageBox -parent $nonToplevel] 5772segfault (hobbs) 5773 57742005-02-11 (bug fix)[1119460] Disabled canvas bmap/bbox segfault (hobbs) 5775 57762005-02-22 (bug fix)[1146057] Aqua: [tk_getOpenFile] encoding (steffen) 5777 57782005-02-28 (bug fix)[1118340] Fix Mousewheel %A translation (davis,hobbs) 5779 57802005-03-10 (bug fix)[1160025] Aqua: offset in mouse coords (davies,ingham) 5781 57822005-03-10 (bug fix)[1124237] Aqua: floating window focus (davies,ingham) 5783 57842005-03-15 (platform support) OpenBSD ports patch (thoyts) 5785 57862005-03-24 (enhancment) Aqua: native L&F for entry and spinbox (ingham) 5787 57882005-03-29 (platform support) Allow msys builds without cygwin (hobbs) 5789 57902005-04-12 (bug fix)[1122671] font encoding alignment issue (brubaker,hobbs) 5791 57922005-04-25 (platform support) Fix builds on Mac OS X 10.1 (steffen) 5793 57942005-05-06 (platform support) Added x86_64 Solaris cc and Solaris 10 build 5795support (hobbs) 5796 57972005-05-10 (bug fix)[1191895] [text] hang on <Control-Key-Up> (vlasov,darley) 5798 57992005-05-14 (enhancement)[1202052] Aqua: CFRunLoop notifier allows 5800[load]able Tk (steffen) 5801 58022005-05-15 (bug fix)[1012852] Aqua: check/radiobutton accelerator (kirkham) 5803 58042005-05-15 (bug fix)[1202181] Aqua: scrollbar thumb position (kirkham) 5805 58062005-05-15 (bug fix)[1202223] Aqua: [text] window -> scroll lock (kirkham) 5807 58082005-05-24 (platform support) Darwin/Aqua builds merged into unix (steffen) 5809 58102005-05-27 (behavior change) tk_popup menus now "sticky" (helfter) 5811 58122005-05-30 (bug fix)[1161543,1010941,795869,690169] panedwindow 5813display/resizing (south) 5814 58152005-05-30 (bug fix)[1159367] [menu] creation segfault (schofield,hobbs) 5816 58172005-05-31 (bug fix)[1152809] [wm stackorder] panic; multi-DISPLAY (dejong) 5818 5819Documentation improvements [1087842,1081527,1115907,etc.] 5820 5821--- Released 8.4.10, June 4, 2005 --- See ChangeLog for details --- 5822 58232005-06-03 (bug fix)[1016385] allow [rename console] (fellows) 5824 58252005-06-04 (bug fix)[1114977] UID thread-safety in canvas (fellows) 5826 58272005-06-20 (bug fix) Eliminate buffer overflow in GIF decoder (fellows) 5828 58292005-06-23 (bug fix)[1176610] Aqua: default [entry] borderwidth (steffen) 5830 58312005-06-23 (bug fix)[756840] Fix Tk console cleanup on exit/reinit (mistachkin) 5832 5833--- Released 8.4.11, June 28, 2005 --- See ChangeLog for details --- 5834 58352005-07-24 (enhancement)[1244153] use SC_PROG_TCLSH, SC_BUILD_TCLSH (dejong) 5836 58372005-08-09 (Aqua enhancement) Carbon events (steffen) 5838 58392005-08-11 (bug fix)[1252702] portable Tcl_GetStringFromObj() calls (fellows) 5840 58412005-08-16 (bug fix)[749908] per-thread Tk_ConfigSpec tables (fellows) 5842 58432005-08-23 (bug fix)[1235544] adopt Tcl's SEH implementation (kenny,dejong) 5844 58452005-08-23 (Aqua bug fix) dialogs ignore -initial* options (hobbs) 5846 58472005-10-04 (bug fix)[1216775] [tk_dialog] failing [grab] (fontana,hobbs) 5848 58492005-10-04 (bug fix)[1309218] [tk_chooseDirectory -mustexist] (lemburg,hobbs) 5850 58512005-10-10 (bug fix)[1319720] Tk_DeleteOptionTable() mem leak (melbardis) 5852 58532005-10-18 (bug fix)[1328926] $argv encoding and list formatting (porter) 5854 58552005-11-06 (platform support) OpenBSD missing LIBS (thoyts) 5856 58572005-11-22 (bug fix)[1353414] [selection get] compat w/OpenOffice.org (fellows) 5858 58592005-11-22 (bug fix)[1335485] dialog and space in widget name (taylor,fellows) 5860 58612005-11-29 (enhancement)[1369597] Win 64: --enable-64bit=amd64|ia64 (hobbs) 5862 58632005-11-29 (bug fix)[1252259] clear initial % from console (lawlor,hobbs) 5864 58652005-11-30 (bug fix)[1289565] ClientMessage handling (staplin,hobbs) 5866 58672005-11-30 (bug fix)[1086049] [wm attributes -topmost] fix (courtney,hobbs) 5868 58692005-12-01 (bug fix)[1353416] [tk_popup] wrong post location (fvogelnew1,hobbs) 5870 58712005-12-01 (workaround)[905830] Disable SCIM usage by Tk until properly 5872handled (max) 5873 5874--- Released 8.4.12, December 5, 2005 --- See ChangeLog for details --- 5875 58762005-12-12 (bug fix)[1377619] configure syntax error exposed in bash-3.1 (hobbs) 5877 58782005-12-13 (Aqua) MouseWheel bindings; kEventMouseScroll events (steffen) 5879 58802006-01-20 (bug fix)[905830] all events to XFilterEvent (SCIM compat) (english) 5881 58822006-01-25 (feature enhance)[1237759] update script lib to 8.4 (fradin,porter) 5883 58842006-02-27 (bug fix)[480862] [$img configure -data] no display change (fellows) 5885 58862006-02-27 (bug fix)[470322] BitmapInit() thread safety (griffin,fellows) 5887 58882006-03-02 (Aqua bug fix) image endian issue on OS X/x86 (hobbs) 5889 58902006-03-15 (bug fix)[1409140] speed up photo image updates (fellows) 5891 58922006-03-16 (enhancement)[1405069] added Portuguese l10n. (ricardoj,silasj) 5893 58942006-03-17 (bug fix)[1451587] no abbreviations in script library (thoyts) 5895 58962006-03-20 (bug fix)[1380427] crash in undo stack (lz_ufo,callewaert,fellows) 5897 58982006-03-27 (bug fix)[1458234] crash in animated GIFs (bron,fellows) 5899 59002006-03-29 (platform support)[917433] tolerate X servers that do not 5901accept the color names "Black" and "White" (porter) 5902 59032006-04-05 (bug fix) several finalization issues corrected (hobbs) 5904 59052006-04-05 (bug fix)[1442102] crash on full -elide [text] (hobbs) 5906 59072006-04-05 (bug fix)[1374119] default keyboard charset init (hobbs) 5908 59092006-04-05 (bug fix)[1414171] stop $text dump if change detected (hobbs) 5910 59112006-04-05 (bug fix)[1422430] [grid] empty index list crash (hobbs) 5912 59132006-04-06 (bug fix)[1455241] Aqua: [wm attributes -titlepath] fix (steffen) 5914 59152006-04-07 (bug fix)[934524] Aqua: background window dragging/growing (steffen) 5916 59172006-04-09 (bug fix)[1467004] Aqua: [wm resizable] fix (steffen) 5918 59192006-04-09 (bug fix)[1450800] Aqua: allow empty toplevel names (steffen) 5920 59212006-04-11 (bug fix)[1073456] Aqua: implement toplevel zoom (steffen) 5922 59232006-04-11 (bug fix)[700316] Aqua: enable 'Preferences' app menu item (steffen) 5924 59252006-04-11 (bug fix)[1193614] Aqua: tk_messageBox escape key binding (steffen) 5926 59272006-04-11 (enhancement)[1105284] Aqua: call ::tk::mac::* procs for all 5928registered applevents (steffen) 5929 59302006-04-11 (bug fix)[1212056] fix panic on safe window exit on Windows (hobbs) 5931 59322006-04-12 (bug fix)[1432666] grid row/col out of bounds crash (spjuth) 5933 5934--- Released 8.4.13, April 19, 2006 --- See ChangeLog for details --- 5935 59362006-04-25 (bug fix)[1475865] crash on invalid font name from XServer (fellows) 5937 59382006-04-28 (bug fix)[1243318] Aqua: incorrect cursor pos in bindings (steffen) 5939 59402006-04-28 (bug fix)[1476443] Aqua: incorrect toplevel pos on 1st map (steffen) 5941 59422006-05-12 (performance)[1409140] restore perf lost in 2006-03-15 change (hobbs) 5943 59442006-05-13 (bug fix)[1481503] Aqua: key shortcut for 'Preferences' (steffen) 5945 59462006-05-13 (bug fix)[1155596] Aqua: images with alpha on native btns (steffen) 5947 59482006-05-13 (bug fix)[1480105] Aqua: Map/Unmap propagation to children (steffen) 5949 59502006-05-13 (bug fix)[940117] Unmap canvas window items on canvas Unmap (steffen) 5951 59522006-05-16 (bug fix)[1472624] Aqua: balloon help don't steal focus (steffen) 5953 59542006-05-29 (bug fix)[706446] Aqua: active [button] highlight (hobbs) 5955 59562006-05-29 (bug fix)[1424513] [listbox] crash with namespace var (hobbs) 5957 59582006-06-01 (bug fix)[912571] [console] std chan refcount (mistachkin,hobbs) 5959 59602006-06-05 (bug fix)[1188340] [console] thread safety (porter) 5961 59622006-06-14 (bug fix)[950121] Aqua: crash in draw of very wide images (steffen) 5963 59642006-06-14 (bug fix)[1501922] Aqua: invalid clip regions on redraw (steffen) 5965 59662006-06-14 (bug fix)[891141] excess variable writes by [scale] (porter) 5967 59682006-06-15 (platform support)[1424909] MS VS2005 support (thoyts) 5969 59702006-07-20 (platform support) Mac OS X weak linking (steffen) 5971 59722006-07-21 (bug fix)[700311, 1525905] Aqua: pure modifier keysyms (steffen) 5973 59742006-07-24 (bug fix)[1358663] Aqua: [wm geometry -x-y] (steffen) 5975 59762006-07-25 (bug fix)[1516950] Aqua: cmd-Q app menu key shortcut (steffen) 5977 59782006-08-18 (bug fix)[1542205] Aqua: toplevel toolbar button crash (steffen) 5979 59802006-08-21 (bug fix) Aqua: recursively called event loop (steffen) 5981 59822006-08-24 (bug fix) Aqua: window grow icon obscuring scrollbar (steffen) 5983 59842006-08-30 (new feature)[1518677] WM_UNICHAR window message (hobbs,petasis) 5985 59862006-09-06 (bug fix)[1456342] speedier [text] delete (hobbs) 5987 59882006-09-10 (bug fix) Aqua: active/inactive text selection color&relief (steffen) 5989 59902006-09-10 (bug fix)[1472624] Aqua: mouse events in overrideredir wins (steffen) 5991 59922006-09-11 (bug fix) Aqua: app menu shortcuts with custom .apple menu (steffen) 5993 59942006-09-22 (bug fix)[1562528] NULL terminates variadic calls (fellows,ryazanov) 5995 59962006-09-26 (platform support) MSVC8 AMD64 support (thoyts) 5997 59982006-10-05 (bug fix)[1122671] alignment fixes in ucs-2be encoding routines 5999(hobbs,staplin) 6000 60012006-10-16 (bug fix)[1558051] Aqua: CG drawing matches X11 (steffen) 6002 6003--- Released 8.4.14, October 19, 2006 --- See ChangeLog for details --- 6004 60052006-10-31 (platform support)[1582769] Fix build with VC2003 (thoyts) 6006 60072006-11-02 (enhancement) Improve OS X Carbon Update event handling (steffen). 6008 60092006-11-23 (bug fix)[1599877] Win: multibyte menu item underlines (hobbs) 6010 60112006-11-24 (bug fix)[1487701] Better handling of tcl_interactive on OS X to 6012control display of console (hobbs, steffen) 6013 60142006-11-26 (platform support)[1230558] --enable-64bit on more systems (steffen) 6015 60162006-11-30 (bug fix) Fix handling of Escape binding on OS X dialogs (steffen) 6017 60182006-12-01 (new feature) Win: [wm attributes -transparentcolor] (hobbs) 6019 60202006-12-04 (performance)[1608046] [$listbox itemconfigure] (rezic,hobbs) 6021 60222006-12-22 (bug fix)[1522467] use fd_mask for 64bit support (fellow,vriezen) 6023 60242007-01-25 (configure change) ensure CPPFLAGS env var used when set (steffen) 6025 60262007-01-30 (enhancement) new target: `install-private-headers` (hobbs, steffen) 6027 60282007-02-19 (bug fix)[1662959] [tk_getOpenFile] in empty dir (hobbs) 6029 60302007-04-23 (enhancement) Allow empty value for -selectforeground opt (steffen) 6031 60322007-04-23 (platform support) Aqua: remove Tk-internal double buffering that is 6033wasteful on Aqua; allows direct-to-window CoreGraphics drawing (e.g. adding 6034support for colors with alpha) (steffen) 6035 60362007-04-23 (platform support) Aqua: add all OS theme colors/brushes (patterns) 6037as system colors (steffen) 6038 60392007-04-23 (platform support) Aqua: tk_dialog & bgerror use OS theme (steffen) 6040 60412007-04-23 (platform support) Aqua: add 'none' & missing theme cursors (steffen) 6042 60432007-04-23 (platform support) Aqua: [tk_getOpenFile -parent] et al use sheet 6044dialog (steffen) 6045 60462007-04-23 (bug fix) Aqua: fix custom MDEF and tearoff menu display (steffen) 6047 60482007-04-23 (bug fix)[1620826] Aqua: fix <<MenuSelect>> support (steffen) 6049 60502007-04-23 (platform support) Aqua: add support for live window resizing and 6051asynchronous window dragging; prevent window from becoming inacessible 6052offscreen or under Dock after dragging; use transparent grow box (steffen) 6053 60542007-04-23 (platform support) Aqua: improve event processing during nested 6055event loops (e.g. modal dialogs, menu tracking, window resizing etc) (steffen) 6056 60572007-04-23 (bug fix) Aqua: add support for all possible aqua scrollbar arrow 6058positions, scrollbar variants and for "jump to here" scrollbar behaviour; 6059correct scroll view size computation; enforce minimal scrollbar height (steffen) 6060 60612007-04-23 (platform support) Aqua: add [wm attributes] -topmost, -fullscreen 6062and -transparent (fully transparent win via -bg "systemTransparent") (steffen) 6063 60642007-04-23 (platform support) Aqua: determine win min/max sizes dynamically; 6065correct size handling of gridded windows; improve computation of initial 6066window bounds; correct window size handling on multi-headed systems (steffen) 6067 60682007-04-23 (platform support) Aqua: correct composite attribute handling in 6069[tk::unsupported::MacWindowStyle] and add new attributes; allow changing 6070window class of already existing windows (steffen) 6071 60722007-04-23 (platform support) Aqua: add tcl document extensions and mime type 6073to Wish.app's Info.plist (steffen) 6074 60752007-05-15 (bug fix)[1677608] list shimmer crash [grid *configure] (porter) 6076 6077--- Released 8.4.15, May 25, 2007 --- See ChangeLog for details --- 6078 60792007-05-31 (platform support) Aqua: improve interaction of Expose events and 6080idle-time redraws (steffen) 6081 60822007-05-31 (bug fix) Aqua: gridded window max-size calculation (steffen) 6083 60842007-06-02 (bug fix)[1731734] Aqua: menu cascades outside menubar (steffen) 6085 60862007-06-06 (platform support) Aqua: enable MouseWheel events in background 6087windows (steffen) 6088 60892007-06-09 (bug fix)[1724223] Unicode menu entry crash (hobbs) 6090 60912007-06-09 (bug fix)[1467997] Blue/red reversal in icons (hobbs,janssen) 6092 60932007-06-23 (bug fix) Aqua: nav dialog sheet crash (steffen) 6094 60952007-06-29 (platform support) Aqua: remove private internal declarations from 6096installed tkMacOSXInt.h header (steffen) 6097 60982007-06-29 (bug fix) Aqua: scrollbar thumb size calculation (steffen) 6099 61002007-07-09 (bug fix) Aqua: app-is-frontmost detection (steffen) 6101 61022007-07-09 (bug fix) Aqua: window click activation & titlebar click handling 6103in presence of grabs or modal windows (steffen) 6104 61052007-07-25 (bug fix)[1743786] Aqua: tk_getOpenFile result (steffen) 6106 61072007-08-27 (bug fix)[1782105] Aqua: tk_chooseColor result (steffen) 6108 61092007-09-11 (platform support) Windows AMD64 support (thoyts) 6110 61112007-09-11 (bug fix)[777203] add TK_INCLUDE_SPEC to tkConfig.sh (steffen) 6112 61132007-09-11 (bug fix) Animated GIF buffer overrun (max) 6114 61152007-09-15 (platform support) SunOS-5.1x link with cc, not ld (steffen) 6116 6117--- Released 8.4.16, September 21, 2007 --- See ChangeLog for details --- 6118 61192007-10-11 (bug fix)[1810818] Aqua: [wm resizeable] (steffen) 6120 61212007-10-11 (enhancement)[1800742] msg catalog for Hungarian. (reszo) 6122 61232007-10-25 (bug fix)[1818491] crash in [place] manager (mcdonald) 6124 61252007-10-26 (platform support) Mac OS X: 64-bit X11 support (steffen) 6126 61272007-11-09 (platform support) Aqua: replace RgnHandles by HIShapeRefs (steffen) 6128 *** POTENTIAL INCOMPATIBILITY for C code acessing MacDrawable Rgns *** 6129 61302007-11-09 (enhancement) Aqua: "Run Widget Demo" menu item (steffen) 6131 61322007-11-09 (bug fix) Aqua: activate event after window expansion (steffen) 6133 61342007-11-09 (bug fix)[1824521] Aqua: menubutton crash with -bitmap (steffen) 6135 61362007-11-09 (platform support) Aqua: (menu)button pressed/inactive/disabled 6137look&feel; menubutton size with -image/-bitmap (steffen) 6138 61392007-11-09 (bug fix) Aqua: [tk_getOpenFile] (et al.) and help menu crashes on 6140Mac OS X Leopard (steffen) 6141 61422007-11-26 (bug fix)[1822391] [photo put] segfault w/ PPM data (kenny) 6143 61442007-12-12 (bug fix)[1809538,1799782,1737288] fixes for the <<Modified>> 6145virtual event on [text] widgets (hobbs) 6146 61472007-12-13 (bug fix) correctly trace menubutton -textvariable for -compound 6148use (hobbs) 6149 61502007-12-18 (bug fix)[1845899] Aqua: [wm transient] (steffen) 6151 6152--- Released 8.4.17, January 4, 2008 --- See ChangeLog for details --- 6153 61542008-02-01 (bug fix)[CVE-2008-0553] buffer overflow in GIF format (max) 6155 6156--- Released 8.4.18, February 8, 2008 --- See ChangeLog for details --- 6157 61582008-02-27 (bug fix)[1863346] Aqua: memleak in QD drawing (steffen) 6159 61602008-03-27 (platform support)[1921166] Solaris 64bit build fixes (steffen) 6161 61622008-04-07 (bug fix)[1937135] Fix double-free with argv error (hobbs) 6163 6164--- Released 8.4.19, April 18, 2008 --- See ChangeLog for details --- 6165