2006-03-18 Vince Darley * generic/tkText.c: fix for undo/modified status of text widgets when empty strings are inserted and undone. 2006-03-17 Pat Thoyts * library/clrpick.tcl: bug #1451587: avoid using abbreviated * library/palette.tcl: sub-commands in core scripts as this * library/scale.tcl: can cause problems with mega-widget * library/scrlbar.tcl: libraries like snit. * library/tkfbox.tcl: * library/xmfbox.tcl: 2006-03-16 Don Porter * generic/tkConsole.c: Substantial rewrite of [console] support. * generic/tkInt.h: Included Obj-ification of the [console] and [consoleinterp] commands, and reworking of all the supporting data structures for cleaner sharing and lifetime management especially in multi-threaded configurations. 2006-03-16 Donal K. Fellows * library/msgs/pt.msg: Messages for Portuguese (strictly just for Brazilian Portuguese, but they'll do until we get other Portuguese speakers localize) from Ricardo Jorge and Silas Justiano . Many thanks! [Bug 1405069] * generic/tkImgPhoto.c (ImgPhotoCmd, Tk_PhotoPutBlock) (Tk_PhotoPutZoomedBlock): Added hack to detect copying of a photo with a simple alpha channel and skip calling ToggleComplexAlphaIfNeeded. This should speed up many photo-to-photo copies, keeping the cost of the alpha channel down. 2006-03-15 Donal K. Fellows * generic/tkImgPhoto.c (Tk_PhotoPutBlock, Tk_PhotoPutZoomedBlock): Try to squelch performance issue with code that writes to large images by single pixels. Masses of thanks to George Staplin for helping to trace this down to the COMPLEX_ALPHA flag handling code. [Bug 1409140] 2006-03-13 Don Porter * tests/scrollbar.test: Corrected several broken calls to [testmetrics] that were crashing the test suite. * tests/constraints.tcl: Added notAqua constraint to canvPs-3.1 * tests/canvPs.test: to stop test suite crash on Mac OSX. [Bug 1088807] * generic/tkCmds.c: Purged remaining references to errno, * macosx/tkMacOSXPort.h: and errno.h. Standardized the logic * macosx/tkMacOSXWm.c: for using header files from the compat * macosx/tkMacOSXWm.h: directory. Thanks Joe English for the * unix/tkUnixPort.h: patch. [Patch 1445404] 2006-03-08 Don Porter * unix/Makefile.in: Update `make dist` to copy the image files needed by the test suite into the source distro. This was overlooked in the 2005-10-12 commit. * changes: Update in prep. for 8.5a4 release. 2006-03-07 Joe English * unix/tcl.m4: Set SHLIB_LD_FLAGS='${LIBS}' on NetBSD, as per the other *BSD variants [Bug 1334613]. * unix/configure: Regenerated. 2006-03-07 Donal K. Fellows * doc/canvas.n: Added note that stipples are not well-supported on non-X11 platforms. [Bug 220787] It's not a great solution, but it does indicate the state of affairs that has existed for years anyway; not much modern software uses stipples anyway. 2006-03-02 Jeff Hobbs * macosx/tkMacOSXDraw.c (TkPutImage): fix endian issue on OS X x86 displaying images. Bitmap images still have a black/white reversal issue, appears to be a general OS X issue (as seen in frogger demo). 2006-02-27 Donal K. Fellows * generic/tkBitmap.c (Tk_GetBitmapFromData): Improve thread-safety. [Bug 470322] * generic/tkImgBmap.c (ImgBmapConfigureInstance): Force creation of new Pixmaps before deletion of old ones to prevent stupid caching problems. [Bug 480862] 2006-02-09 Daniel Steffen * generic/tk.decls: fix signature of TkMacOSXInvalClipRgns * generic/tkPlatDecls.h: to use Tk_Window instead of internal * macosx/tkMacOSXSubwindows.c: type TkWindow (which led to any include * macosx/tkMacOSXWindowEvent.c: of public header tkMacOSX.h requiring * macosx/tkMacOSXWm.c: prior include of tkInt.h). * generic/tk.h: move TkAqua specific REDO_KEYSYM_LOOKUP define * macosx/tkMacOSXPort.h: out of tk.h into platform header. 2006-01-31 Donal K. Fellows * library/bgerror.tcl (::tk::dialog::error::bgerror): Finish the internationalization of the error dialog. [Bug 1409264] 2006-01-25 Don Porter * library/bgerror.tcl: Updates to use Tcl 8.4 features. [Patch 1237759] * library/choosedir.tcl: * library/comdlg.tcl: * library/console.tcl: * library/dialog.tcl: * library/focus.tcl: * library/msgbox.tcl: * library/palette.tcl: * library/tk.tcl: * library/tkfbox.tcl: * library/xmfbox.tcl: 2006-01-23 Daniel Steffen * unix/configure: minor fix to Darwin specific code removing * unix/configure.in: 64bit flags from CFLAGS for Tk build. 2006-01-20 Joe English * generic/tkEvent.c, unix/tkUnixEvent.c: XIM fixes [See 905830, patch tk84-xim-fixes.patch], and revert 2005-12-05 patch disabling XIM when SCIM in use, and make sure all X events get passed to XFilterEvent, including those without a corresponding Tk window. 2006-01-13 Anton Kovalenko * generic/tkUndo.c (TkUndoSetDepth): Don't free TkUndoSubAtoms for separator entries that are deleted: there is some unpredictable garbage instead of subatoms. Free both 'apply' and 'revert' action chains for non-separator entries. 2006-01-12 Donal K. Fellows TIP #260 IMPLEMENTATION * generic/tkCanvText.c (TextItem, CreateText, DisplayCanvText): * doc/canvas.n: Code, docs and tests to implement an -underline * tests/canvText.test: option for canvases' text items. 2006-01-11 Peter Spjuth * generic/tkGrid.c: Removed a lingering error message from TIP#147 implementation. 2006-01-10 Daniel Steffen * macosx/tkMacOSXDebug.c: add TkMacOSXGetNamedDebugSymbol() function * macosx/tkMacOSXDebug.h: that finds unexported symbols in loaded libraries by manually walking their symbol table; only to be used for debugging purposes, may break unexpectedly in the future. Needed to get access to private_extern internal debugging functions in HIToolbox. * macosx/tkMacOSXCarbonEvents.c: fix debug event tracing on Tiger. * macosx/tkMacOSXMenu.c: add debug menu printing during reconfigure. * macosx/tkMacOSXInit.c: conditionalize 64bit-unsafe dyld code. * macosx/GNUmakefile: add 'wish8.x' symlink to SYMROOT. * macosx/Wish.xcode/project.pbxproj: fix copy to tktest resource * macosx/Wish.xcodeproj/project.pbxproj: fork when zerolinked. * macosx/Wish.xcode/default.pbxuser: add widget demo as argument to * macosx/Wish.xcodeproj/default.pbxuser: executables (on by default). * unix/configure: add caching, use AC_CACHE_CHECK instead of * unix/configure.in: AC_CACHE_VAL where possible, consistent message * unix/tcl.m4: quoting, sync relevant tclconfig/tcl.m4 changes and gratuitous formatting differences, fix SC_CONFIG_MANPAGES with default argument, Darwin improvements to SC_LOAD_*CONFIG. 2005-12-28 Donal K. Fellows * generic/tkUndo.c (TkUndoSetDepth): Apply [Patch 1391939] from Ludwig Callewaert to fix [Bug 1380427]. 2005-12-14 Daniel Steffen * macosx/Wish.xcode/project.pbxproj: * macosx/Wish.xcodeproj/project.pbxproj: add new tclTomMath* files. 2005-12-13 Daniel Steffen * library/demos/cscroll.tcl: add MouseWheel bindings for aqua. * macosx/tkMacOSXCarbonEvents.c (TkMacOSXInitCarbonEvents): * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent) (GenerateMouseWheelEvent): add support for kEventMouseScroll events (smooth mouse wheel scrolling from mighty mouse or scrolling trackpad) by handling kEventMouseWheelMoved on application target as well as on dispatcher, in order to pick up synthesized MouseWheel events from HIObject handler (c.f. QA1453); add support for horizontal scrolling events by generating MouseWheel XEvent with Shift modifier. 2005-12-12 Jeff Hobbs * unix/tcl.m4, unix/configure: Fix sh quoting error reported in bash-3.1+ [Bug 1377619] (schafer) 2005-12-09 Mo DeJong * win/tkWinWm.c (WinSetIcon): Don't check result of SetClassLong() or SetClassLongPtr() since it was generating an incorrect error and the MSDN docs indicate that the result need not be checked. 2005-12-09 Mo DeJong * win/configure: Regen. * win/tcl.m4 (SC_CONFIG_CFLAGS): Define MACHINE for gcc builds. The lack of a definition of this variable in the manifest file was causing a runtime error in wish built with gcc. 2005-12-09 Daniel Steffen * generic/tkInt.decls: Move all platform test sources from tk lib into * generic/tkTest.c: tktest directly, removes requirement to export * macosx/tkMacOSXTest.c:TkplatformtestInit from internal stubs table. * unix/Makefile.in: * win/Makefile.in: * win/makefile.vc: * win/tkWinTest.c: * generic/tkIntPlatDecls.h: * generic/tkStubInit.c: regen. 2005-12-08 Jeff Hobbs * win/tcl.m4: Add build support for Windows-x64 builds. * win/configure: --enable-64bit now accepts =amd64|ia64 for * win/Makefile.in: Windows 64-bit build variants (default: amd64) * win/makefile.vc: [Bug 1369597] (TKOBJS): add tkWinTest.obj to regular Tk obj for TkplatformtestInit * win/configure.in: Add CE build support (some C code fixes needed) * win/wish.exe.manifest.in (new): manifest must map in MACHINE * win/rc/wish.exe.manifest (removed): and VERSION to be correct. * unix/Makefile.in: fix dist target for manifest dir change * generic/tkTextTag.c (TkTextTagCmd): use correct arraySize for peered text widgets in [$text tag names]. [Bug 1375069 1374935] 2005-12-08 Daniel Steffen * macosx/tkMacOSXDraw.c: Remove inclusion of tclInt.h and use of tcl * macosx/tkMacOSXFont.c: internals wherever possible in tk/macosx, the * macosx/tkMacOSXInit.c: only remaining tcl internals in TkAqua are * macosx/tkMacOSXNotify.c:TclServiceIdle() in tkMacOSXScrlbr.c and * macosx/tkMacOSXScrlbr.c:Tcl_Get/SetStartupScript() in tkMacOSXInit.c [RFE 1336531]. * macosx/tkMacOSXInt.h: sync comments with core-8-4-branch. 2005-12-07 Jeff Hobbs * unix/tkUnixEvent.c (OpenIM): remove extraneous const 2005-12-06 Donal K. Fellows * doc/ConfigWidg.3 (TK_CONFIG_OPTION_SPECIFIED): Mentioned that the flag is deprecated because it is not thread-safe. 2005-12-05 Reinhard Max * unix/tkUnixEvent.c (OpenIM): Added a workaround to allow at least ASCII and the Compose key when typing into text and entry widgets on a system that uses SCIM. This has to be taken out again once the SCIM problems have been fixed. 2005-12-01 Daniel Steffen * unix/tcl.m4 (Darwin): fixed error when MACOSX_DEPLOYMENT_TARGET unset * unix/configure: regen. 2005-11-30 Jeff Hobbs * win/tkWinWm.c (WmAttributesCmd): set (no)topmost window aspect before rewrapping. [Bug 1086049] * macosx/tkMacOSXXStubs.c (TkpOpenDisplay, TkMacOSXDisplayChanged): * macosx/tkMacOSXWindowEvent.c (TkMacOSXProcessApplicationEvent): * macosx/tkMacOSXCarbonEvents.c (TkMacOSXInitCarbonEvents): * macosx/tkMacOSXEvent.h: Trap kEventAppAvailableWindowBoundsChanged * macosx/tkMacOSXInt.h: event to watch for change in display size and adjust internal state appropriately. * doc/checkbutton.n: fix -selectcolor docs [Bug 1083838] * generic/tkImgGIF.c: cast calls to blockOut * win/Makefile.in: place TCL_BIN_DIR first in PATH for targets to get Tcl built dll first. Add tkWinTest.obj to tk84.dll to handle some needed test functions being defined in stubs (TkplatformtestInit). * tests/scrollbar.test (6.22): fix rounding-error sensitive test 2005-11-29 Jeff Hobbs * library/console.tcl (::tk::ConsoleInit): improve work-around to avoid '% ' from tclMain.c [Bug 1252259] 2005-11-27 Daniel Steffen * unix/tcl.m4 (Darwin): add 64bit support, check for Tiger copyfile(), add CFLAGS to SHLIB_LD to support passing -isysroot in env(CFLAGS) to configure (flag can't be present twice, so can't be in both CFLAGS and LDFLAGS during configure), don't use -prebind when deploying on 10.4, define TCL_IO_TRACK_OS_FOR_DRIVER_WITH_BAD_BLOCKING (rdar://3171542). (SC_ENABLE_LANGINFO, SC_TIME_HANDLER): add/fix caching, fix obsolete autoconf macros. Sync with tcl/unix/tcl.m4. * unix/configure.in: fix obsolete autoconf macros, sync gratuitous formatting/ordering differences with tcl/unix/configure.in. * unix/Makefile.in: add CFLAGS to wish/tktest link to make executable linking the same as during configure (needed to avoid loosing any linker relevant flags in CFLAGS, in particular flags that can't be in LDFLAGS). Avoid concurrent linking of wish and compiling of tkTestInit.o during parallel make, fix dependencies and flags for building tkMacOSXInit.o (checkstubs, checkexports): dependency and Darwin fixes (dist): add new macosx files. * macosx/tkMacOSXEvent.c (TkMacOSXProcessEvent): * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): * macosx/tkMacOSXCarbonEvents.c: install standard application event handler, add & call functions to start and stop carbon even timer that runs the tcl event loop periodically during a nested carbon event loop in the toolbox (e.g. during menutracking) to ensure tcl timers etc continue to fire, register app event handler for menu tracking and HI command carbon events, move menu event handling to new handlers for those carbon events, no longer register for/handle appleevent carbon event (now dealt with by standard application event handler), event debugging code dynamically acquires carbon event debugging functions to allow use on Tiger where they are no longer exported from HIToolbox. * macosx/tkMacOSXFont.c (TkMacOSXUseAntialiasedText): * macosx/tkMacOSXKeyEvent.c (GetKeyboardLayout): * macosx/tkMacOSXCarbonEvents.c (TkMacOSXInitCarbonEvents): * macosx/tkMacOSXInit.c: * macosx/tkMacOSXInt.h: abstract common code to dynamically acquire address of a named symbol (from a loaded dynamic library) into new function TkMacOSXGetNamedSymbol() and macro TkMacOSXInitNamedSymbol. * macosx/tkMacOSXMenu.c (TkpNewMenu): * macosx/tkMacOSXMenubutton.c (MenuButtonInitControl): * macosx/tkMacOSXMenus.c (TkMacOSXHandleMenuSelect): switch to modern utf8 aware menu manager API, remove obsolete code, add error handling. * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMouseEvent.c: define OSX 10.3 or later only constants if necessary to allow compilation on OSX 10.2 * macosx/tkMacOSXWm.c (UpdateSizeHints): remove code that is never executed. * xlib/xgc.c (XCreateGC): sync with core-8-4-branch change. * generic/tk.h: add/correct location of version numbers in macosx files. * generic/tkInt.h: clarify fat compile comment. * macosx/Wish.pbproj/default.pbxuser (new): * macosx/Wish.pbproj/jingham.pbxuser: * macosx/Wish.pbproj/project.pbxproj: * macosx/Wish.xcode/default.pbxuser: * macosx/Wish.xcode/project.pbxproj: * macosx/Wish.xcodeproj/default.pbxuser (new): * macosx/Wish.xcodeproj/project.pbxproj (new): new/updated projects for Xcode 2.2 on 10.4, Xcode 1.5 on 10.3 & ProjectBuilder on 10.2, with native tktest targets and support for universal (fat) compiles. * macosx/Tk-Info.plist (removed): * macosx/Wish-Info.plist (removed): * macosx/buildTkConfig.tcl (removed): remove obsolete build files. * macosx/README: clarification/cleanup, document new Xcode projects and universal (fat) builds via CFLAGS (i.e. ppc and i386 at the same time). * unix/Makefile.in: * unix/aclocal.m4: * unix/configure.in: * macosx/configure.ac (new): add support for inclusion of unix/configure.in by macosx/configure.ac, allows generation of a config headers enabled configure script in macosx (required by Xcode projects). * macosx/GNUmakefile: rename from Makefile to avoid overwriting by configure run in tk/macosx, add support for reusing configure cache, build target fixes. * generic/tk3d.h: * generic/tkButton.h: * generic/tkCanvas.c: * generic/tkCanvas.h: * generic/tkColor.h: * generic/tkEntry.h: * generic/tkFileFilter.h: * generic/tkFont.c: * generic/tkFont.h: * generic/tkImage.c: * generic/tkImgPhoto.c: * generic/tkInt.h: * generic/tkMenu.c: * generic/tkMenu.h: * generic/tkMenubutton.h: * generic/tkScale.h: * generic/tkScrollbar.h: * generic/tkSelect.h: * generic/tkStubInit.c: * generic/tkStubLib.c: * generic/tkText.h: * generic/tkUndo.h: * macosx/tkMacOSXButton.c: * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXDialog.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXInt.h: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXSend.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c: * unix/tkUnixButton.c: * unix/tkUnixMenu.c: * xlib/xgc.c: ensure externally visible symbols not contained in stubs table are declared as MODULE_SCOPE (or as static if not used outside of own source file), #ifdef out a few Xlib and aqua functions that are never called. These changes allow 'make checkstubs' to complete without error on Darwin with gcc 4. * macosx/tkMacOSXTest.c: * macosx/tkMacOSXPort.h: * win/tkWinTest.c: * generic/tkInt.decls: add functions needed by tktest to internal stubs table, correct signature of TkMacOSXHandleMenuSelect, add XSync to aqua Xlib stubs. * unix/tkUnixSend.c: * generic/tkText.c: * generic/tkTest.c: #ifdef unix only declarations. (TestmetricsCmd): unify win and mac implementation. (TestsendCmd): move to tkUnixSend.c to avoid access to global var. (TesttextCmd): move to tkText.c to avoid having to put all the internal text functions it uses into the stubs table. * generic/tkTextDisp.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXXStubs.c: fix gcc 4 warnings. * macosx/tkMacOSXNotify.c: * macosx/tkMacOSXScrlbr.c: sync with core-8-4-branch. * generic/tkIntDecls.h: * generic/tkIntPlatDecls.h: * generic/tkIntXlibDecls.h: * generic/tkStubInit.c: * unix/configure: * unix/tkConfig.h.in: regen. 2005-11-22 Donal K. Fellows * library/tkfbox.tcl: Remove all references to data(curItem), as it is no longer used. [Bug 600313] (::tk::IconList_CurSelection): Renamed for clarity. * doc/GetFont.3: Revert previous fix; a NULL interp is now legal. * generic/tkFont.c (ParseFontNameObj, GetAttributeInfoObj): Allow these functions to work with a NULL interp by making them check when generating error messages. [Bug 1151523] * library/tkfbox.tcl (::tk::dialog::file::): Correct the quoting of the script used in variable traces so that widget names with spaces in will work. [Bug 1335485] 2005-11-16 Vince Darley * doc/text.n: clarify left to right interpretation of index modifiers, including the fact that validation occurs after each step. [Bug 1357575] 2005-11-15 Joe English * unix/tkUnixWm.c, tests/unixWm.test, doc/wm.n: Support for [wm attributes] on X11 [TIP#231, Patch 1062022]. 2005-11-14 Joe English * library/bgerror.tcl: Truncate error messages at 45 characters instead of 30 [Bug 1224235]. 2005-11-14 Donal K. Fellows * generic/tkSelect.c (TkSelDefaultSelection): Test select-9.5 highlighted further brokenness in this function. 2005-11-13 Donal K. Fellows * unix/tkUnixSelect.c (SelCvtToX): Arrange for the parsing code to use Tcl's list parsing code, another simplification that enables testing of the [Bug 1353414] fix. * unix/tkUnixSelect.c (SelCvtFromX): Generate string forms of the advanced selection types in a Tcl_DString. This makes fixing [Bug 1353414] trivial, and simplifies the code at the same time. * tests/select.test (select-9.5): Added test for [Bug 1353414] 2005-11-10 Donal K. Fellows * generic/tkBind.c (ChangeScreen): More DString fixes from * generic/tkTextWind.c (EmbWinLayoutProc): [Bug 1353022] * win/tkWinMenu.c (SetDefaults): * win/tkWinDialog.c (ConvertExternalFilename): Factored out the encoding conversion and de-backslash-ing code that is used in many places in this file. (GetFileNameW, GetFileNameA, ChooseDirectoryValidateProc): Make sure that data is freed correctly and that certain (hopefully impossible) failure modes won't cause crashes. [Bug 1353022] 2005-11-06 Pat Thoyts * unix/tcl.m4: Fix SHLIB_LD_LIBS for building tclkit on OpenBSD. * unix/configure: regenerated 2005-10-31 Vince Darley * generic/tkText.c * tests/textDisp.test: fix and test for [Bug 1333951] in '.text count -displaylines'. 2005-10-18 Don Porter * generic/tkMain.c: Rewrote code that sets the ::argv value to be sure conversion from the system encoding is complete before any processing sensitive to list-special characters is done. [Bug 1328926]. 2005-10-17 Jeff Hobbs * macosx/tkMacOSXScrlbr.c (UpdateControlValues): check geomMgrPtr is valid before checking type 2005-10-15 Jeff Hobbs * library/menu.tcl (::tk::MenuUnpost): remove leftover ] from string equal mods of 2005-07-25. (sowadsky) 2005-10-14 Pat Thoyts * win/tkWinSend.c: Avoid using tcl internal headers and fix to * win/tkWinSendCom.h: correctly link on all types of build (was * win/tkWinSendCom.c: broken in static,msvcrt builds). 2005-10-12 Donal K. Fellows * tests/canvPs.test, tests/canvPsBmap.tcl, tests/canvPsImg.tcl: * tests/imgPhoto.test, tests/menu.test: Arrange for the test suite to only ever refer to images in the same directory as the tests. This makes it possible to package the test suite itself as a starkit. Thanks to David Zolli for suggesting this. 2005-10-10 Jeff Hobbs * generic/tkConfig.c (Tk_DeleteOptionTable, Tk_CreateOptionTable): properly alloc/delete one more option. [Bug 1319720] (melbardis) * macosx/tkMacOSXInt.h: Move MODULE_SCOPE defn to tkInt.h and add * generic/tkInt.h: WORDS_BIGENDIAN checks that will work with OS X universal binary compiles. (steffen) * generic/tkMenu.c (TkSetWindowMenuBar): do not call TkMenuInit if the winPtr indicates TK_ALREADY_DEAD. This prevents reinit that creates a Tk exit handler after all exit handlers should be called. [Bug 749908, 1322294] 2005-10-10 Vince Darley TIP #256 IMPLEMENTATION * doc/text.n * generic/tkText.c * generic/tkText.h * generic/tkTextBTree.c * generic/tkTextDisp.c * generic/tkTextImage.c * generic/tkTextIndex.c * generic/tkTextMark.c * generic/tkTextTag.c * generic/tkTextWind.c * macosx/tkMacOSXDefault.h * tests/text.test * tests/textDisp.test * unix/tkUnixDefault.h * win/tkWinDefault.h: Implementation of TIP#256, adding a new text widget configuration option '-tabstyle', with new tests and documentation. Also a fix for [Bug 1281228] (documentation and full implementation of -strictlimits), and [Bug 1288677] (corrected elide behaviour), again with more tests. 2005-10-04 Jeff Hobbs * library/dialog.tcl (::tk_dialog): add tkwait visibility before grab. [Bug 1216775] * win/tkWinDialog.c (ChooseDirectoryValidateProc): reset stored path to "" if it doesn't exist and -mustexist is true. [Bug 1309218] Remove old-style dir chooser (no longer used). * macosx/tkMacOSXInt.h: add MODULE_SCOPE definition check for extension writers that access private headers on OS X and don't define it in configure. 2005-09-28 Don Porter * unix/tkUnixPort.h: Disabled inclusion of the private Tcl header * win/tkWinPort.h: file tclInt.h. Tk ought to have a tiny and shrinking number of calls of private Tcl routines. Each Tk source file doing this should follow the convention in the macosx port and have its own #include "tclInt.h". * generic/tkEvent.c: Disabled calls to private Tcl routine TclInExit(). See comment in TkCreateExitHandler() for full rationale. 2005-09-21 Donal K. Fellows * generic/tkEvent.c (TkCreateThreadExitHandler, TkFinalizeThread) (TkDeleteThreadExitHandler): New internal API (from Joe Mistachkin) to allow Tk to finalize itself correctly in a multi-threaded environment. [Bug 749908] 2005-09-14 Donal K. Fellows * generic/tkOldConfig.c (GetCachedSpecs): Split out the code to manipulate the cached writable specs so that it can be reused from all the public Tk_Configure* functions. (Tk_ConfigureInfo, Tk_ConfigureWidget, Tk_ConfigureValue): Use the factored out code everywhere, so we always manipulate the cache correctly. [Bug 1288128] 2005-09-13 Don Porter * win/winMain.c (WishPanic): Replaced TCL_VARARGS* macros with direct use of stdarg.h conventions. 2005-09-11 Daniel Steffen * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): check if process is in front on MouseDown, otherwise request process activation from BringWindowForward() via new isFrontProcess param. * macosx/tkMacOSXCarbonEvents.c (TkMacOSXInitCarbonEvents): register our event handler on the dispatcher target for all carbon events of interest to TkAqua; this replaces event processing directly from the event queue and thus allows to capture events that are syntesized by Carbon and sent directly to the dispatcher and not to the event queue. * macosx/tkMacOSXEvent.c: remove TkMacOSXCountAndProcessMacEvents(), rename ReceiveAndProcessEvent() to TkMacOSXReceiveAndProcessEvent(). (TkMacOSXReceiveAndProcessEvent): remove tk event processing before sending events to the dispatcher, all events of interest are now processed in our dispatcher target event handler. * macosx/tkMacOSXNotify.c (CarbonEventsCheckProc): dispatch events directly via TkMacOSXReceiveAndProcessEvent(), but dispatch no more than four carbon events at one time to avoid starving other event sources. * macosx/tkMacOSXEvent.c: formatting cleanup, move XSync() to XStubs, * macosx/tkMacOSXEvent.h: removed obsolete kEventClassWish handling. * macosx/tkMacOSXXStubs.c * macosx/tkMacOSXEvent.h: declare macosx internal procs as MODULE_SCOPE * macosx/tkMacOSXEvent.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXButton.c: conditionalize all debug message printing to * macosx/tkMacOSXCursor.c: stderr via TK_MAC_DEBUG define. * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXDialog.c: * macosx/tkMacOSXEvent.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * unix/configure.in: define TK_MAC_DEBUG on aqua when symbols enabled. * unix/configure: autoconf-2.59 * unix/tkConfig.h.in: autoheader-2.59 * library/listbox.tcl: synced aqua MouseWheel bindings with * library/scrlbar.tcl: core-8-4-branch. * library/text.tcl: * xlib/xcolors.c: fixed warning 2005-08-25 Daniel Steffen * unix/Makefile.in (html): reverted/amended changes of 2005-08-23 that broke TkAqua 'make install'; added BUILD_HTML_FLAGS optional var like in tcl/unix/Makefile.in. 2005-08-24 Donal K. Fellows * tests/text.test (text-8.18): Fix punctuation of error message to match good practice (actual message already fixed). [Bug 1267484] 2005-08-23 Jeff Hobbs * macosx/tkMacOSXDialog.c: make dialogs ignore -initialfile "" and -initialdir "" instead of error. 2005-08-23 Mo DeJong * win/tkWin32Dll.c (DllMain): Replace old asm SEH approach with Kenny's new SEH implementation. [Tcl bug 1235544] 2005-08-23 Mo DeJong * unix/Makefile.in: Subst BUILD_TCLSH and TCL_EXE. * unix/configure: Regen. * unix/configure.in: Update minimum autoconf version to 2.59. Invoke SC_PROG_TCLSH and SC_BUILD_TCLSH. * unix/tcl.m4 (SC_PROG_TCLSH, SC_BUILD_TCLSH): * win/Makefile.in: Subst BUILD_TCLSH and TCL_EXE. * win/configure: Regen. * win/configure.in: Update minimum autoconf version to 2.59. Invoke SC_BUILD_TCLSH. * win/tcl.m4 (SC_PROG_TCLSH, SC_BUILD_TCLSH): Split confused search for tclsh on PATH and build and install locations into two macros. SC_PROG_TCLSH searches just the PATH. SC_BUILD_TCLSH determines the name of the tclsh executable in the Tcl build directory. [Tcl bug 1160114] [Tcl patch 1244153] 2005-08-22 Daniel Steffen * macosx/tkMacOSXButton.c: * macosx/tkMacOSXDialog.c: fix warnings. 2005-08-20 Joe Mistachkin * win/tkWinX.c: Fixed bad cast. [Bug 1216006] 2005-08-18 Donal K. Fellows * doc/GetFont.3: Reworded to reflect the truth. [Bug 1151523] 2005-08-16 George Peter Staplin * doc/CrtItemType.3 prototypes were lacking [] after objv. Thus the man page was wrong about the actual prototypes. This was verified by studying tkCanvBmap.c. 2005-08-13 Chengye Mao * generic/tkOldConfig.c Fixed [Bug 1258604]. This bug was introduced into the modfied Tk_ConfigureWidget. It failed to properly handle the specFlags' bit TK_CONFIG_OPTION_SPECIFIED. 2005-08-12 Donal K. Fellows * generic/tkOldConfig.c (Tk_ConfigureWidget): Stop storing per-thread data in global data structures. Store it in per-interpreter data (i.e. per-thread data) instead. [Bug 749908] 2005-08-10 Donal K. Fellows * generic/tkFrame.c (CreateFrame) and others: Don't use size_t when working with Tcl_GetStringFromObj because it is not 64-bit clean. [Bug 1252702] 2005-08-04 Vince Darley * doc/text.n: Clarify behaviour of tab stops (as per [Bug 1247835]) 2005-08-09 Daniel Steffen * macosx/tkMacOSXCarbonEvents.c (AppEventHandlerProc): handle carbon events sent directly to application event target via the general TkMacOSXProcessEvent() in the same way as events posted to the event loop. Moved existing app event handlers to tkMacOSXWindowEvent.c. (TkMacOSXInitCarbonEvents): register our application event handler for kEventWindowExpanded events to deal with uncollapsing from the dock. * macosx/tkMacOSXEvent.h: made TkMacOSXProcessEvent() non-static, added * macosx/tkMacOSXEvent.c: new interp field to TkMacOSXEvent struct for use by app event handler. * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): retrieve current window, partCode, modifiers and local cursor position from carbon mouse event if possible. Use new static GenerateButtonEvent() taking a MouseEventData struct instead of TkGenerateButtonEvent() to avoid recomputing already known values. Move process activation on MouseDown into BringWindowForward() to allow clicking on window titlebar widgets without activating process. Move code dealing with clicks in window titelbar into separate function HandleWindowTitlebarMouseDown() to avoid code duplication. Avoid repeated calls to TkMacOSXGetXWindow() by storing result in MouseEventData struct. (TkMacOSXButtonKeyState, XQueryPointer): try to get button and modifier state from currently processed carbon event (to avoid unnecessary IPC with the window server), otherwise use modern carbon API to get this info instead of Button() and GetKeys(); only retrieve info caller asks for (via non-NULL ptr passed to XQueryPointer). (ButtonModifiers2State): new static function converting carbon button and modifier state into tk state, allows detection of more than 3 mouse buttons (tk supports up to 5) and of NumLock and Fn modifier keys (NumLock is mapped to Mod3 and Fn to Mod4). * macosx/tkMacOSXWindowEvent.c (TkMacOSXProcessApplicationEvent): handle kEventWindowExpanded event to deal with window uncollapsing from the dock by generating tk Map event, handle kEventAppHidden and kEventAppShown events (moved here from tkMacOSXCarbonEvents.c). * macosx/tkMacOSXSubwindows.c (XUnmapWindow): only hide window when it is not iconified to avoid window flashing on collapse. * macosx/tkMacOSXWm.c: replaced Tk_DoWhenIdle() by Tcl_DoWhenIdle(). (TkMacOSXZoomToplevel): remove call to TrackBox(), now done in HandleWindowTitlebarMouseDown() in tkMacOSXMouseEvent.c. (TkpWmSetState): avoid window flashing on collapse by unmapping after calling CollapseWindow(); only uncollapse window if it is collapsed. * generic/tkInt.decls: changed TkMacOSXZoomToplevel() signature. * generic/tkIntPlatDecls.h: * macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): only call GetMenuItemCommandID() on KeyDown or KeyRepeat events. * macosx/tkMacOSXMenu.c (ReconfigureMacintoshMenu): remove call to obsolete AppendResMenu() API. * macosx/tkMacOSXKeyEvent.c: replaced all direct uses of expensive * macosx/tkMacOSXMenu.c: GetMouse() and TkMacOSXButtonKeyState() * macosx/tkMacOSXMenus.c: APIs by calls to XQueryPointer() * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXDialog.c: replaced use of FrontNonFloatingWindow() * macosx/tkMacOSXKeyEvent.c: by ActiveNonFloatingWindow() as * macosx/tkMacOSXMenu.c: recommended by Carbon docs. * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXDialog.c: fixed warnings * macosx/tkMacOSXTest.c: * macosx/tkMacOSXCarbonEvents.c: added CVS Id line to file header. * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.h: * macosx/tkMacOSXInt.h: declare macosx internal procs as MODULE_SCOPE. * macosx/tkMacOSXCarbonEvents.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXWindowEvent.c * library/bgerror.tcl: sync with core-8-4-branch changes of 2005-07-28. * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXMouseEvent.c: * generic/tkFrame.c: sync with core-8-4-branch changes of 2005-07-27. * generic/tkIntDecls.h: * generic/tkStubInit.c: * generic/tkFrame.c: * win/tkWinDraw.c: * unix/tkUnixDraw.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXInt.h: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXButton.c: sync with core-8-4-branch. * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXScale.c: * library/demos/menu.tcl: removed errant '}'. 2005-08-04 Donal K. Fellows * doc/clipboard.n: Add example demonstrating custom types of clipboard data. 2005-07-25 Donal K. Fellows * library/*.tcl: Updated to use more 8.4 and 8.5 features as part of resolving [Patch 1237759]. 2005-07-22 Mo DeJong * win/tkWinX.c: Define _WIN32_WINNT with NT SP 3 data to fix compiler error because SendInput was not defined. The new msys_mingw7 release is now needed to compile the HEAD with mingw gcc. [Bug 1210712] 2005-07-21 Jeff Hobbs * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): corrected if expression error (use of = instead of ==) 2005-07-18 Vince Darley * generic/tkTextMark.c: fix to segfault in "mark prev" * tests/textIndex.test: [Bug 1240221] * tests/textWind.test: make test more robust to avoid infinite loop 2005-07-06 Jeff Hobbs * doc/getOpenFile.n: correct -multiple docs (takes boolean) 2005-07-05 Don Porter * unix/Makefile.in: Purged use of TCLTESTARGS [RFE 1161550]. 2005-06-23 Daniel Steffen * generic/tkConsole.c (TkConsolePrint): prevent potential NULL deref. * macosx/tkMacOSXDefault.h: change ENTRY_BORDER defaults to from 5 to 2 to make default entry widgets in TkAqua look like in other aqua apps (and have same border dimensions as other platforms). [Bug 1176610] 2005-06-21 Donal K. Fellows * doc/GetBitmap.3: Fix silly error in SYNOPSIS. [Bug 1224983] 2005-06-19 Donal K. Fellows * generic/tkImgGIF.c: Cleanse all static (i.e. non-thread-safe) data at a miniscule performance hit. 2005-06-18 Daniel Steffen * macosx/Makefile: for X11 build, add -X11 suffix to unversioned wish symbolic link. * unix/tcl.m4 (Darwin): add -headerpad_max_install_names to LDFLAGS to ensure we can always relocate binaries with install_name_tool. * unix/configure: autoconf-2.59 2005-06-07 Donal K. Fellows Bump patchlevel to a4 to distinguish from a3 release. 2005-06-04 Jeff Hobbs *** 8.5a3 TAGGED FOR RELEASE *** 2005-06-02 Jim Ingham * generic/tkEvent.c (InvokeFocusHandlers): On Mac OS X the scrollwheel events are sent to the window under the mouse, not to the focus window Another patch from M. Kirkham. * macosx/tkMacOSXScrlbr.c (ThumbActionProc, ScrollBarBindProc): Record the first mouse down point, and compute differences from that, rather than getting the mouse down each time through the loop. The old method would get fooled if you moved the mouse less than a text line height in the text widget. [Bug 1083728] 2005-06-03 Daniel Steffen * macosx/Makefile: fixed 'embedded' target. 2005-06-02 Reinhard Max * unix/tkUnix.c (Tk_GetUserInactiveTime): Improvements to get it working on Solaris, and panic if we run out of memory. * unix/configure.in: Rework the searching for Xss, to make it work on Solaris and provide more useful output. Use AC_HELP_STRING where appropriate. * unix/tcl.m4: synced from Tcl. * unix/configure: regenerated with autoconf 2.59. 2005-06-01 Jeff Hobbs * win/tkWinInt.h: added private decls of Tk_GetEmbeddedMenuHWND, Tk_GetMenuHWND, TkWinCleanupContainerList, and TkpWmGetState to that are used across source files. * win/tkWinX.c (Tk_ResetUserInactiveTime): cast to squelch compiler warning. 2005-05-31 Reinhard Max * doc/Inactive.3 (new file): C level API documentationn for TIP#245 (Tk_GetUserInactiveTime, Tk_ResetUserInactiveTime). * tests/tk.test: Added tests for the TIP#245 implementation. 2005-05-30 Jeff Hobbs * generic/tkPanedWindow.c, tests/panedwindow.test: batch of fixes to panedwindow from Daniel South. Improved auto-size to fit internal windows, fixed sash placement at edge of pane, fixed calculation of stretch amount for internal windows. [Bug 1124198 1161543 1054117 1010941 795869 690169 1192323] * generic/tkMenu.c (MenuCmd): create event handler earlier to ensure proper destruction of menu through DestroyNotify. [Bug 1159367] * library/console.tcl (::tk::ConsoleInit): print out first prompt and swallow the extra "% " that comes once from Tcl on Windows. 2005-05-29 Daniel Steffen * macosx/tkMacOSXFont.c: use Tcl_Panic instead of panic. * unix/configure.in: added description of HAVE_XSS for autoheader. * unix/configure: autoconf-2.59 * unix/tkConfig.h.in: autoheader-2.59 * macosx/Wish.pbproj/project.pbxproj: * macosx/Wish.xcode/project.pbxproj: added missing FRAMEWORK defines introduced with configure/make based build. * macosx/tkMacOSXInit.c: * macosx/tkMacOSXNotify.c: fixed warnings. * generic/tkDecls.h: * generic/tkIntPlatDecls.h: * generic/tkPlatDecls.h: * generic/tkStubInit.c: ran missing 'make genstubs' for TIP245 changes to tk.decls * macosx/tkMacOSXXStubs.c (Tk_ResetUserInactiveTime): use symbolic constant argument in call to UpdateSystemActivity(); * macosx/Wish.pbproj/project.pbxproj: * macosx/Wish.xcode/project.pbxproj: * unix/configure.in: added/corrected linking to IOKit.framework for TIP245. * unix/configure.in: skip X11 configure checks when building tk_aqua. * unix/configure: autoconf-2.59 2005-05-28 Donal K. Fellows TIP #245 IMPLEMENTATION from Reinhard Max * doc/tk.n: Documentation of [tk inactivity]. * win/tkWinX.c (Tk_GetUserInactiveTime, Tk_ResetUserInactiveTime): * unix/tkUnix.c (Tk_GetUserInactiveTime, Tk_ResetUserInactiveTime): * macosx/tkMacOSXXStubs.c: Implementations of the core API for (Tk_GetUserInactiveTime): determining how long as user's left (Tk_ResetUserInactiveTime): her machine alone. * unix/configure.in: Test for XScreenSaver support. * generic/tkCmds.c (Tk_TkObjCmd): Implementation of [tk inactivity]. 2005-05-27 Todd Helfter * library/menu.tcl: correct the sticky behavior of menus posted by tk_popup so that they "stick" after the initial following the post, that is not over an active menu entry. 2005-05-26 Daniel Steffen * macosx/tkMacOSXInit.c (TkpInit): fixed resource file extraction from __tk_rsrc section to work with non-prebound .dylib and .bundle. * macosx/Makefile: corrected EMBEDDED_BUILD check, use separate tcl and tk version vars to properly support tk/x11 framework version overriding, rewrite tkConfig.sh when overriding tk version, corrected Wish.app symlink in tk build dir. * unix/configure.in: corrected framework finalization to softlink stub library to Versions/8.x subdir instead of Versions/Current. * unix/configure: autoconf-2.59 2005-05-25 Jeff Hobbs * unix/Makefile.in (install-libraries): protect possible empty list in for with list= trick for older shells. 2005-05-23 Jeff Hobbs * generic/tkFileFilter.c (FreeGlobPatterns): s/null/NULL/ 2005-05-24 Daniel Steffen * generic/tkTest.c: disable commands not available on TkAqua. * macosx/Makefile: * macosx/README: * macosx/Tk-Info.plist.in (new file): * macosx/Wish-Info.plist.in (new file): * unix/Makefile.in: * unix/configure.in: * unix/tcl.m4: * unix/tkUnixInit.c: moved all Darwin framework and TkAqua build support from macosx/Wish.pbproj and macosx/Makefile into the standard unix configure/make buildsystem, the project and macosx/Makefile are no longer required to build Tk.framework and/or TkAqua. TkAqua is now enabled by the --enable-aqua configure option, and static and non-framework builds of TkAqua are now available via the standard configure switches. Tk/X11 can also be built as a framework. The macosx/Makefile now wraps the unix buildsystem and no longer uses the projects, embedded builds are still only available via this Makefile, but for other builds it is not longer required (but its current functionality is still available for backwards compatibility). The projects currently do not call through to the Makefile to build (unlike Tcl.pbproj) so project builds may differ from makefile builds. Due to issues with spaces in pathnames, 'Wish Shell.app' has been renamed to 'Wish.app', the macosx/Makefile installs backwards compatibility symlinks for the old name. * macosx/tkMacOSXInit.c (TkpInit): added support for Tk resource file in non-framework and static builds: the resource file is copied into a __tk_rsrc MachO section of the library or executable at link time and extracted into a temporary location at initialization. * unix/configure: autoconf-2.59 * unix/tkConfig.h.in (new file): autoheader-2.59 * macosx/Wish.pbproj/project.pbxproj: * macosx/Tk-Info.plist: * macosx/Wish-Info.plist: * macosx/tkAboutDlg.r: updated copyright years to 2005. 2005-05-22 Donal K. Fellows * generic/tkFileFilter.c (TkGetFileFilters): Add all filters, not just the first one. [Bug 1206133] 2005-05-15 Jim Ingham Fixes from Michael Kirkham: * macosx/tkMacOSXMenu.c (TkpConfigureMenuEntry): Thinko in clearing the ENTRY_ACCEL_MASK before re-parsing it. [Tk Bug 1012852] * macosx/tkMacOSXScrlbr.c (UpdateControlValues): Don't set the control value BEFORE setting the min and max or the control manager will reset it for you. [Tk Bug 1202181] * macosx/tkMacOSXXStubs.c (TkMacOSXXGetPixel, TkMacOSXXPutPixel): Restore the port to what it was before putting we were called. [Tk Bug 1202223] 2005-05-14 Jim Ingham * macosx/tkMacOSXScrlbr.c (ThumbActionProc): Missing Tcl_Release. 2005-05-14 Daniel Steffen * macosx/tkMacOSXInit.c: * macosx/tkMacOSXNotify.c: introduction of new tcl notifier based on CFRunLoop allows replacement of the custom TkAqua notifier by a standard tcl event source. Removes requirement of threaded tcl core for TkAqua, allows to stub-link TkAqua against Tcl by removing use of the unstubbed TclInitNotifier & TclFinalizeNotifier. [Tcl Patch 1202052] * macosx/Wish.xcode/project.pbxproj: * macosx/Wish.pbproj/project.pbxproj: stub-link TkAqua: build with USE_TCL_STUBS and link against libtclstub instead of Tcl.framework, unexport libtclstub symbols from Tk to avoid duplicate symbol warnings when linking with both Tcl and Tk, fixes for gcc4.0 warnings. * macosx/Wish.xcode/project.pbxproj: sync with Wish.pbproj changes since 2004-11-19. NOTE: to use this project, need to uncomment the tclConfig.h settings at the top of tcl/unix/configure.in, autoconf and rebuild tcl ! * macosx/tkMacOSXBitmap.c: * macosx/tkMacOSXButton.c: * macosx/tkMacOSXDialog.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyboard.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c: fixed gcc 4.0 warnings. * unix/tcl.m4: sync with tcl * unix/configure: autoconf-2.59 2005-05-10 Vince Darley * library/text.tcl: test and fix to TextPrevPara to avoid infinite loop * tests/textIndex.test: at start of widget [Bug 1191895] * generic/tkTextDisp.c: better synchronisation between explicit and implicit pixel line-height calculations [Bug 1186558] 2005-05-10 Don Porter * generic/tkTextDisp.c (GetXView): Improved numerical precision of calculation of [.t xview] return values. * tests/textDisp.test: Match greater precisions of [.t xview] and [.t yview] values in tests. 2005-05-06 Jeff Hobbs * unix/configure: regen * unix/configure.in: add AC_C_BIGENDIAN check and pkg-config xft checks to extend xft search. * unix/tcl.m4: correct Solaris 10 (5.10) check and add support for x86_64 Solaris cc builds. 2005-04-28 Donal K. Fellows * macosx/tkMacOSXNotify.c (TkMacOSXWaitForEvent): Fix for typo in waitTime computation. [Bug 1191097] (AlertNotifier): Factor out the core of the notifier alerting code. 2005-04-25 Daniel Steffen * macosx/tkMacOSXNotify.c: sync with tclUnixNotfy.c changes since 2004-06-22, added compile time check for threaded tcl core, removed unthreaded code paths as they are never used anyway, fixed TkMacOSXAlertNotifier() implementation. * unix/Makefile.in: added TCL_STUB_LIB_FILE, needed for unexporting of symbols from libtclstub to avoid duplicate symbol warnings. * unix/tcl.m4 (Darwin): added configure checks for recently added linker flags -single_module and -search_paths_first to allow building with older tools (and on Mac OS X 10.1), use -single_module in SHLIB_LD and not just T{CL,K}_SHLIB_LD_EXTRAS, added unexporting from Tk of symbols from libtclstub to avoid duplicate symbol warnings, added PLAT_SRCS definition for Mac OS X, defined MODULE_SCOPE to __private_extern__. (SC_MISSING_POSIX_HEADERS): added caching of dirent.h check. * unix/configure: autoconf-2.59 2005-04-22 George Peter Staplin * doc/FontId.3: I fixed a typo. "linespace" was used instead of "ascent". I also added a .PP before the paragraph to make the formatting look better for the ascent paragraph. 2003-04-18 Joe English * unix/tkUnixRFont.c(Tk_MeasureChars): Use Tcl_UtfToUnichar() for lax UTF-8 parsing instead of strict parsing with FcUtf8ToUcs4() [fix/workaround for Bug 1185640] 2003-04-18 Vince Darley * library/text.tcl * doc/text.n: corrected 'Home' and 'End' and Control-a/e handling to work with display lines. This was an ommission of the previous tip155 patch. Clarified the documentation on this point. 2005-04-14 Jeff Hobbs * unix/tkUnixFont.c (FontMapLoadPage): reorder char[] decls to avoid possible segv. Minimal fix for [Bug 1122671] 2005-04-12 Jeff Hobbs * library/tkfbox.tcl (::tk::dialog::file::): fix typeMenuLab ref. Add undoc'd ::tk::dialog::file::showHiddenBtn var (default 0) that will add a "Show Hidden" checkbutton to tk_get*File and tk_chooseDirectory if set to true. * library/choosedir.tcl (::tk::dialog::file::chooseDir::): fix cancelBtn ref, add hiddenBtn ref for "Show Hidden" button. 2005-04-09 Daniel Steffen * macosx/README: updated requirements for OS & developer tool versions + other small fixes/cleanup. * macosx/tkMacOSXEntry.c (ComputeIncDecParameters): manually define constants present only in 10.3 headers so that we can build on 10.2. * macosx/Wish.pbproj/project.pbxproj: fixed absolute path to tkEntry.h that confused 10.2 PBX. * unix/tcl.m4 (Darwin): added -single_module linker flag to TCL_SHLIB_LD_EXTRAS and TK_SHLIB_LD_EXTRAS. * unix/configure: autoconf-2.59 2005-04-07 Mo DeJong * macosx/tkMacOSXWm.c (TkWmStackorderToplevelWrapperMap, TkWmStackorderToplevel): * unix/tkUnixWm.c (TkWmStackorderToplevelWrapperMap, TkWmStackorderToplevel): * win/tkWinWm.c (TkWmStackorderToplevelWrapperMap, TkWmStackorderToplevel): Fix panic in wm stackorder when a toplevel is created on another diplay. The code now ignores toplevels that have a display that does not match the display of the parent window. [Bug 1152809] 2005-04-06 Donal K. Fellows * doc/wm.n, doc/winfo.n, doc/tk.n, doc/send.n, doc/selection.n: * doc/radiobutton.n, doc/photo.n, doc/options.n, doc/menu.n: * doc/listbox.n, doc/getOpenFile.n, doc/font.n, doc/event.n: * doc/entry.n, doc/clipboard.n, doc/checkbutton.n, doc/canvas.n: * doc/button.n, doc/bind.n, doc/TextLayout.3, doc/MeasureChar.3: * doc/GetRelief.3, doc/GetPixels.3, doc/GetJustify.3, doc/GetFont.3: * doc/GetCursor.3, doc/GetColor.3, doc/GetBitmap.3, doc/GetAnchor.3: * doc/FontId.3, doc/CrtWindow.3, doc/CrtImgType.3, doc/ConfigWidg.3: * doc/3DBorder.3: Purge old .VS/.VE macro instances. 2005-04-04 Don Porter * library/comdlg.tcl: Added Macintosh file type validation to [::tk::FDGetFileTypes]. [Bug 1083878] (Thanks, Vince Darley) 2005-04-04 Vince Darley * generic/tkText.c: * tests/text.test: fix to elide searching problems [Bug 1174269] and disappearing cursor with insertofftime 0 [Bug 1169429]. 2005-04-03 Peter Spjuth * tests/grid.test: * generic/tkGrid.c: Fixed bug in geometry calculations for widgets that span multiple columns/row. Bug was introduced in 8.5a1 when fixing 792387. [Bug 1175092] 2005-03-29 Jeff Hobbs * win/tcl.m4, win/configure: do not require cygpath in macros to allow msys alone as an alternative. 2005-03-27 Vince Darley * tests/textDisp.test: added test for fix of 2005-03-15. 2005-03-24 Jim Ingham * macosx/tkMacOSXEntry.c (TkpDrawEntryBorderAndFocus): Dopey bug - don't reset the width for entry widgets - we didn't change it for them. 2005-03-23 Jim Ingham These changes allow us to draw the Entry and Spinbox widget with a native look and feel on Mac OS X. * generic/tkEntry.h: New file, extracting the definitions of Entry and Spinbox. * generic/tkEntry.c (DisplayEntry): Call out to TkpDrawEntryBorderAndFocus and TkpDrawSpinboxButtons. Also provide default implementations for X11 & Win. * macosx/tkMacOSXEntry.c: New file, implements the entry & focus and spinbox button drawing. * tkMacOSXDefaults.h: Change the Mac OS X defaults so they fit the native widget shapes. This is cleanup thanks to Neil Madden . * macosx/tkMacOSXWm.c (TkMacOSXWinStyle) New function. (TkUnsupported1ObjCmd): New function, replaces the un-objectified version of the command. * generic/tkInt.h: Swap TkUnsupported1Cmd for TkUnsupported1ObjCmd. * generic/tkWindow.c (): Ditto. This adds a "-notify" flag to "wm attributes" that will bounce the dock icon on Mac OS X. This is from Revar Desmera * macosx/tkMacOSXWm.c (WmAttrGetNotifyStatus, WmAttrSetNotifyStatus): New functions. (WmAttributesCmd): Add the -notify. * doc/wm.n: Document -notify. 2005-03-19 Donal K. Fellows * generic/tkConsole.c (Tk_CreateConsoleWindow,TkConsolePrint): Rewrite so that TkConsolePrint cannot become detached from the console when the [console] command is renamed. [Bug 1016385] 2005-03-15 Vince Darley * generic/tkTextDisp.c: fix for [Bug 1143776] in adjusting displayed lines when running into the bottom of the window. 2005-03-14 Jim Ingham * macosx/tkMacOSXScrlbr.c (ThumbActionProc): No need to use "update idletasks" here, TclServiceIdle will do as well and it is simpler. These changes implement a change on the Mac OS X side. When we unmap a window we mark all its children as unmapped (not following toplevels. But we preserve whether they had been mapped before, and when the parent is remapped, we remap the children as well. [Bug 940117] * macosx/tkMacOSXInt.h: Added TK_MAPPED_IN_PARENT * macosx/tkMacOSXSubwindows.c (FixMappingFlags): New function. (XMapWindow): Call FixMappingFlags. (XUnMapWindow): Ditto. * macosx/tkMacOSXSubwindows.c (XMoveResizeWindow): Update the xOff & yOff data in the Macdrawable even if the native window hasn't been created yet. [Bug 700305] (XMoveWindow): Ditto. (XResizeWindow): Ditto. 2005-03-15 Pat Thoyts * unix/tcl.m4: Updated the OpenBSD configuration and regenerated * unix/configure: the configure script. 2005-03-14 Donal K. Fellows * generic/tkEvent.c (InvokeClientMessageHandlers): Ensure that client messages are handled correctly. Thanks to George Petasis for tracking this down. [Bug 1162356] 2005-03-11 Jim Ingham * macosx/tkMacOSXButton.c (TkpDisplayButton): Set the port to the Button window's port BEFORE you set the clip, otherwise you are setting the clip on the wrong window! Also, a little cleanup - move x & y into the branches where they are used, and don't compute the TextAnchor if we are using the native button text, since we aren't going to use it. (TkMacOSXDrawControl): Call ShowControl & SetControlVisibility in a more logical order. * tkMacOSXInt.h: Add TkMacOSXGenerateFocusEvent. * tkMacOSXSubwindows.c (XDestroyWindow): We don't get Activate events for the remaining windows when a Floating window is destroyed. This can cause the focus to disappear. So catch this case when the window is being destroyed and move the focus here. * tkMacOSXWindowEvent.c (TkMacOSXGenerateFocusEvent): Make this public (used to be GenerateFocusEvent) since we need it here and in tkMacOSXSubwindows.c. Then change the name everywhere it is used. [Bug 1124237] 2005-03-10 Jim Ingham * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): In the inDrag section, set the GrafPort to the drag window's GrafPort before doing LocalToGlobal. [Bug 1160025] 2005-03-09 Jim Ingham * macosx/tkMacOSXInit.c (TkpInit): Check to see if the environment variable XCNOSTDIN is set, and if so, close stdin & stdout. This is necessary to make remote debugging under Xcode work properly. 2005-03-08 Jeff Hobbs * win/tkWinWm.c (WinSetIcon): fix GCLP_ICONSM -> GCLP_HICONSM. * win/makefile.vc: clarify necessary defined vars that can come from MSVC or the Platform SDK. 2005-02-28 Jeff Hobbs * win/tkWinX.c (GenerateXEvent): correct %A translation on MouseWheel [Bug 1118340] 2005-02-24 Daniel Steffen * macosx/tkMacOSX.h: fixed incorrect inclusion of internal header. * macosx/tkMacOSXNotify.c: corrected included headers. 2005-02-22 Daniel Steffen * macosx/tkMacOSXDialog.c (Tk_GetSaveFileObjCmd, NavServicesGetFile): fixed encoding problems with -initialfile & -filetypes and corrected potential buffer overrun with -initialdir/-initialfile. [Bug 1146057] 2005-02-16 Mo DeJong TIP#223 IMPLEMENTATION * doc/wm.n: Add documentation for -fullscreen attribute. * tests/winWm.test: Add -fullscreen to wm attribute usage message. * tests/wm.test: Add -fullscreen to wm attribute usage message. Add -fullscreen attribute test cases for Windows. * win/tkWinWm.c (WmInfo, UpdateWrapper, TkpWmSetFullScreen) (WmAttributesCmd, UpdateGeometryInfo): Implement TIP 223 [wm attributes -fullscreen]. 2005-02-14 Vince Darley * generic/tkText.c: * generic/tkText.h: * generic/tkTextDisp.c: * generic/tkTextIndex.c: * generic/tkTextBTree.c: * doc/text.n: * tests/textDisp.test: * tests/textIndex.test: fix of longstanding elide problem when eliding a newline without eliding the entire logical line. [Bug 443848] 2005-02-14 Jeff Hobbs * doc/options.n: note -cursor {} behavior. [Bug 965618] 2005-02-14 Donal K. Fellows * tests/all.tcl: Add a [package require Tk] so that a missing display causes an early failure and keeps the error trace short. Issue observed in [FRQ 11122147], even though that's unrelated. 2005-02-11 Jeff Hobbs * library/panedwindow.tcl (::tk::panedwindow::Cursor): check window existence on delayed call. [Bug 949792] * doc/text.n: note 'image' key in 'dump' command. [Bug 1115907] * win/tkWinWm.c (TkWinGetIcon): fix toplevel retrieval for determining icon ref (potential crash). [Bug 1105738] * generic/tkCanvBmap.c (ConfigureBitmap, ComputeBitmapBbox): Fixed possible crash with disabled bmap and bbox handling [Bug 1119460] (BitmapToPostscript): made aware of various bitmap types * unix/Makefile.in: remove SHLIB_LD_FLAGS (only for AIX, inlined * unix/tcl.m4: into SHLIB_LD). Combine AIX-* and AIX-5 * unix/configure: branches in SC_CONFIG_CFLAGS. Correct gcc builds for AIX-4+ and HP-UX-11. autoconf-2.59 gen'd. 2005-02-09 Donal K. Fellows * tests/wm.test: Convert to use more tcltest2 features. 2005-02-07 Donal K. Fellows * generic/tkCanvas.c (CanvasWidgetCmd): Fix stupid mistake in variable names, reported by Andreas Leitgeb. 2005-02-03 Donal K. Fellows * generic/tkCanvas.c (GetStaticUids): New function to manage the thread-specific data detailing the list of all uids in a thread. (typeList): Protect this (the other piece of global data) with a mutex. [Bug 1114977] 2005-01-31 Jeff Hobbs * unix/tcl.m4, unix/configure: add solaris-64 gcc build support. [Bug 1021871] 2005-01-31 Donal K. Fellows * generic/tkImgPhoto.c (PhotoFormatThreadExitProc): Made the comments in the code more relevant to the function they were documenting! [Bug 1110553] * library/msgs/es_ES.msg: Added more localization for Spanish Spanish. [Bug 1111213] 2005-01-25 Daniel Steffen * macosx/tkMacOSXInit.c (TkpInit): set tcl_interactive to 1 to show console at startup instead of directly calling [console show]. * unix/tcl.m4 (Darwin): fixed bug with static build linking to dynamic library in /usr/lib etc instead of linking to static library earlier in search path. [Tcl Bug 956908] Removed obsolete references to Rhapsody. * unix/configure: autoconf-2.57 2005-01-18 Donal K. Fellows * library/demos/menu.tcl: Reworked to make dialogs children of the demo widget so that they are properly visible. Issue reported by Keith Nash 2005-01-13 Donal K. Fellows * library/tkfbox.tcl (IconList_Selection, IconList_Create): (IconList_Arrange): Assorted tk_getOpenFile fixes. [part of Bug 600313] (IconList_ShiftMotion1): Also fix shift-drag. 2005-01-12 Don Porter * unix/tcl.m4: Sync'ed to Tcl's copy. * unix/configure: autoconf-2.57 2005-01-12 Donal K. Fellows * doc/event.n: Added section on predefined virtual events. [Bug 608115] 2005-01-11 Vince Darley * generic/tkTextDisp.c: fix to scrollbar height calculations of text widgets containing a single very long (wrapped) line. This fixes at least part of [Bug 1093631]. 2005-01-11 Donal K. Fellows * generic/tkObj.c (TkParsePadAmount): * generic/tkPack.c: Moved function to tkObj.c and rewrote so that it takes advantage of Tcl_Objs properly and cannot leave objects in an inconsistent state. [Bug 1098779] 2005-01-10 Joe English * unix/Makefile.in, unix/configure.in, unix/tkConfig.sh.in: Remove ${DBGX}, ${TK_DBGX} from Tk build system [Patch 1081595]. * unix/tcl.m4: re-synced with tcl/unix/tcl.m4 * unix/configure: Regenerated. 2005-01-07 Donal K. Fellows * generic/tkWindow.c (GetScreen): Make sure the result is reset on all error paths to stop strange errors. [Bug 697915] 2005-01-05 Donal K. Fellows * doc/loadTk.n, doc/toplevel.n: Convert to other form of emacs mode control comment to prevent problems with old versions of man. [Bug 1085127] 2005-01-03 Jeff Hobbs * win/tkWinWm.c (TkWinWmCleanup): clean up layered window class. This caused crash in reinit of Tk (as seen in plugin). 2004-12-29 Jeff Hobbs * win/tcl.m4, win/configure: update MSVC CFLAGS_OPT to -O2, remove -Gs (included in -O2) and -GD (outdated). Use "link -lib" instead of "lib" binary and remove -YX for MSVC7 portability. Add -fomit-frame-pointer for gcc OPT compiles. [Bug 1092952, 1091967] 2004-12-21 Donal K. Fellows * library/demos/*.tcl: Add [package require Tk] to all the widget demo scripts so they follow standard practice better. [FRQ 815118] 2004-12-20 Vince Darley * generic/tkFileFilter.c: * generic/tkFileFilter.h: * macosx/tkMacOSXDialog.c: * win/tkWinDialog.c: * tests/filebox.test: * tests/winDialog.test: Corrected handling of MacOS file types in tk_*file dialogs [Bug 1083878]. 2004-12-20 Donal K. Fellows * doc/panedwindow.n: Fix silly typo. [Bug 1087842] 2004-12-19 Chengye Mao * win/tkWin.h, win/tkWinEmbed.h: Make embedding work better on Windows. * win/tkWinWm.c, win/tkWinX.c: [Bugs 222677, 831627, 842945, 1024364] 2004-12-17 Chengye Mao * generic/tkFrame.c: Make container windows display their * generic/tkWindow.c: background when they don't have content. 2004-12-10 Donal K. Fellows * unix/tk.spec, macosx/Tk-Info.plist, macosx/Wish-Info.plist: * macosx/Wish.pbproj/project.pbxproj, README, win/configure.in: * unix/configure.in, generic/tk.h: Bump version to 8.5a3. 2004-12-09 Daniel Steffen * unix/tcl.m4: synced with tcl/unix/tcl.m4 * unix/configure: regen 2004-12-09 Donal K. Fellows * generic/tkImgPhoto.c (Tk_PhotoPutBlock, Tk_PhotoPutZoomedBlock): Added guards so that rescanning for the complex-alpha check is not done in the common case of creating a simple image a bit at a time, or any other time where the image was simple before and the input data has no alpha channel. [Bug 1081966] 2004-12-07 Don Porter * tests/canvPs.test: Cleaned up the matching of [makeFile] and * tests/choosedir.test: [removeFile] commands as indicated by the * tests/filebox.test: results of a -debug 1 run of the test suite. * tests/imgPPM.test: Tk test suite is now -debug 1 clean. This * tests/imgPhoto.test: completes fixing [1078648]. * tests/listbox.test: * tests/main.test: 2004-12-07 Donal K. Fellows * tests/bind.test, tests/button.test, tests/canvas.test: * tests/cursor.test, tests/scrollbar.test: Eliminate all duplicate test names. [Bug 1078648 again] 2004-12-06 Jeff Hobbs *** 8.5a2 TAGGED FOR RELEASE *** 2004-12-06 Don Porter * tests/safe.test: Trim auto_path to improve performance [1080039] 2004-12-05 Jeff Hobbs * changes: updated for 8.5a2 release 2004-12-04 Donal K. Fellows * tests/*.test: Resolve duplicate test names. [Bug 1078648] 2004-12-03 Donal K. Fellows * generic/tkImgPhoto.c (Tk_PhotoPutBlock, Tk_PhotoPutZoomedBlock): Make overlay compositing where the target is empty no longer set the target to magical gray, and also make sure that the complex-alpha flag is toggled when necessary. [Patch 848161] 2004-12-01 Jeff Hobbs * unix/tkUnixButton.c (TkpDisplayButton): constrain coords to Tk_RedrawImage to display only portion that is valid. * generic/tkImgPhoto.c (ImgPhotoDisplay): add X error suppression around XGetImage to prevent app abort. [Bug 979239] 2004-11-28 Joe English * unix/tkUnixRFont.c(Tk_DrawChars): Check for short integer overflow in x,y coordinates [Fixes: Bug 942320 "Tk, Xft, text and long lines"] 2004-11-26 David Gravereaux * win/makefile.vc: Shell targets needed more stack space. [Bug 1066755] 2004-11-20 Vince Darley * tests/text.test: fix to test's platform sensitivities [Bug 1025871] * tests/textDisp.test: made test less timing sensitive [Bug 1034171], and fixed a platform-sensitive test [Bug 966845] 2004-11-19 Daniel Steffen * macosx/Wish.pbproj/project.pbxproj: reverted earlier changes for tclConfig.h changes to tcl, since those have been reverted for now. Note that newly added macosx/Wish.xcode will not work without tclConfig.h, this project has not been removed again. 2004-11-18 Reinhard Max * unix/tcl.m4 (SC_CONFIG_MANPAGES): Applied an improved version of * unix/configure.in: [Patch 996085], that introduces * unix/Makefile.in: --enable-man-suffix. * unix/installManPage: added * unix/mkLinks.tcl: removed * unix/mkLinks: removed * unix/configure: generated 2004-11-17 Jeff Hobbs * generic/tkCanvWind.c (ConfigureWinItem): unmap windows immediately when state hidden is requested. [Bug 982248] * generic/tkCanvImg.c (ImageToPostscript): don't try ps generation of canvas image item without image specified. [Bug 1032300] * library/console.tcl (::tk::console::ExpandVariable): correct array keyname expansion. [Bug 1004508] (bold) * generic/tkPanedWindow.c (Tk_PanedWindowObjCmd): set save_under X attr to prevent expose events when moving sash. [Bug 1036963] 2004-11-16 Vince Darley * doc/text.n: clarified documentation on use of -tabs option. 2004-11-16 Don Porter * library/msgs/it.msg: Updated Italian message catalog. Thanks to Roberto Ugoccioni [Bug 1063675]. 2004-11-16 Daniel Steffen * macosx/Wish.pbproj/project.pbxproj: * macosx/buildTkConfig.tcl: fixes for tclConfig.h changes. * macosx/Wish.pbproj/project.pbxproj: fixed references to renamed bitmap files. * macosx/Wish.xcode/project.pbxproj (new): * macosx/Wish.xcode/default.pbxuser (new): * macosx/Wish-Info.plist (new): * macosx/Tk-Info.plist (new): added new Xcode 1.5 project using native targets, made possible by tclConfig.h changes. * generic/tk.h: added version number change comments for new files. 2004-11-15 Vince Darley * generic/tkText.c: fix to multi-line search problem and * tests/text.test: removed 'knownBug' from one test. 2004-11-15 Donal K. Fellows * unix/tcl.m4, unix/configure.in: Expanded all AC_DEFINE calls to the three-argument form and ported recent changes to the tcl.m4 from the Tcl distribution. *No* call to AC_CONFIG_HEADERS has been added; this change should be virtually entirely cosmetic. 2004-11-12 Daniel Steffen * macosx/tkMacOSXXStubs.c: implemented XGetGeometry(). 2004-11-12 Jeff Hobbs * generic/tkCmds.c (Tk_TkObjCmd): use correct screen data when -displayof arg is passed to [tk scaling]. [Bug 800178] 2004-11-12 Daniel Steffen * doc/SetOptions.3: * doc/text.n: fixed *roff errors uncovered by running 'make html'. * macosx/tkMacOSXFont.c (Tk_MeasureChars,Tk_DrawChars,etc): Make sure that the lastSubFontPtr remains valid even when the subfont array is reallocated. [Bug 618872] 2004-11-11 Reinhard Max * generic/tkEvent.c (InvokeInputMethods): Call XSetICFocus whenever the window receives focus. This fixes [Bug 905830] but avoids [Bug 1000051]. 2004-11-11 Daniel Steffen * generic/tkMain.c: * macosx/tkMacOSXAppInit.c (removed): * macosx/Wish.pbproj/project.pbxproj: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXInt.h: changes to make TkAqua dynamically loadable, enabling [package require Tk] from tclsh. Startup code from tkMacOSXAppInit.c moved into tkMacOSXInit.c, added code that notifies the window server that an unbundled executable is a full GUI application after loading Tk. [Patch 1035348] * doc/wm.n: documented [wm attributes] on Mac OS X. [Bug 606665] * macosx/tkMacOSXWm.c: implemented TIP 222 [wm attributes -alpha] on Mac OS X. [Patch 892194] WmIconbitmapCmd: adopted FSRef changes from [wm atttrs -titlepath]. * macosx/tkMacOSXSubwindows.c: synced spacing/formatting with core-8-4-branch. * generic/tkRectOval.c: * macosx/README: * macosx/tkMacOSXDefault.h: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXInt.h: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXWm.c: forward port from core-8-4-branch of Jim's and my changes for CG drawing and [wm attributes] (corresponds to 8.4 changes dating from 09-18, 07-27, 07-24). * macosx/tkMacOSXMouseEvent.c: endianness fixes. * macosx/Wish.pbproj/project.pbxproj: corrected path to html help inside framework. * macosx/Makefile: prevent parallel make from building several targets at the same time. 2004-11-09 Vince Darley * macosx/tkMacOSXButton.c: fix to dynamic reconfiguration of button '-compound' options (cosmetic problem), [Bug 1055023] * tests/text.test: added 'knownBug' 20.172.1 in text widget multiline search routines. 2004-11-08 Donal K. Fellows * library/demos/goldberg.tcl: Added slightly adapted version of Keith Vetter's tkGoldberg as the final animation demo. Many many thanks to Keith for giving his permission! [FRQ 627466] 2004-11-07 Peter Spjuth * doc/frame.n: Added some info for -width/-height options. [Bug 1055423] 2004-11-07 Peter Spjuth * tests/grid.test: * generic/tkGrid.c: Made handling of ^ a bit more consistent in corner cases. This makes ^ work without any widgets in the same command. [Bug 962589] 2004-11-07 Donal K. Fellows * library/demos/pendulum.tcl: Added demonstrations of how to do * library/demos/aniwave.tcl: animations using Tcl/Tk to the * library/demos/anilabel.tcl: widget demo. 2004-11-03 Don Porter * tests/button.test: Update expected results to account for more verbose errorinfo from errors in variable traces [Tcl Bug 572164] 2004-11-01 Don Porter * tests/dialog.test (dialog-1.1): Update expected result to changes in the error messages produced by procs. 2004-10-29 Mo DeJong * tests/wm.test: Add Win32 test cases for attributes subcommand. * win/tkWinWm.c (WmAttributesCmd): Fixup broken option processing logic for attributes subcommand. 2004-10-28 Mo DeJong * win/tkWin32Dll.c (DllMain, _except_dllmain_detach_handler): Rework pushing of exception handler function pointer so that compiling with gcc -O3 works. Remove empty function call to avoid compiler warning. Mark the DllMain function as noinline to avoid compiler error from duplicated asm labels in generated code. 2004-10-28 Pat Thoyts * unix/tkUnixScale.c (DisplayHorizontalValue): Fix for [Bug 220927] by Michael Schlenker to keep the labels within the window. 2004-10-28 Donal K. Fellows * doc/*.n: Assorted minor documentation fixes. 2004-10-26 David Gravereaux * win/tkWinX.c: Signature for tkWinXCleanup needed to be * generic/tkInt.decls: changed so it matches the Tcl_ExitProc * generic/tkIntPlatDecls.h: typedef to avoid a bad-style cast. * win/makefile.vc: Force TCL_LIBRARY envar when calling tclsh 2004-10-26 Pat Thoyts * win/tkWinRegion.c (TkpBuildRegionFromAlphaData): Fixed syntax error * generic/tkImgPhoto.c (Tk_PhotoPutBlock): Removed unreferences vars. 2004-10-26 Donal K. Fellows * macosx/tkMacOSXRegion.c (TkpBuildRegionFromAlphaData): * win/tkWinRegion.c (TkpBuildRegionFromAlphaData): Factor out the * unix/tkUnix.c (TkpBuildRegionFromAlphaData): building of region * generic/tkImgPhoto.c (Tk_PhotoPutBlock): data to permit better implementations on particular platforms. [Bug 919066] 2004-10-24 Donal K. Fellows TIP#177 AND TIP#179 IMPLEMENTATIONS * doc/panedwindow.n: Docs for -hide and -stretch options. * tests/panedwindow.test: Basic tests of -hide and -stretch options. * generic/tkPanedWindow.c (Slave,slaveOptionSpecs,ComputeGeometry): (DisplayPanedWindow,ArrangePanes,MoveSash,PanedWindowIdentifyCoords): Add hide flag and stretch setting to list of options supported on a panedwindow's slaves. [Patch 983886] Much thanks to Brian Griffin for these options. 2004-10-20 Jeff Hobbs * win/tkWinWm.c (UpdateWrapper): pass SWP_NOOWNERZORDER to SetWindowPos when maintaining win Z order, to prevent parent from flashing (adjusting Z order). 2004-10-19 Joe English TIP#204 IMPLEMENTATION * library/tk.tcl, library/entry.tcl, library/spinbox.tcl: TIP #204 "Virtual Events for Keyboard Traversal" [Patch 976928] 2004-10-19 Donal K. Fellows * tests/canvPsImg.tcl, tests/canvPsBmap.tcl: * generic/tkBitmap.c, bitmaps/*.bmp: * library/demos/icon.tcl, library/demos/items.tcl: * library/demos/label.tcl, library/demos/menu.tcl: * library/demos/ruler.tcl, library/demos/twind.tcl: * library/demos/images/*.bmp: Renamed all X bitmap files files to have an .xbm extension so Windows users won't get confused when wandering around the Tcl source tree. [Bug 733835] 2004-10-11 Miguel Bañon * library/msgs/sv.msg: Swedish message catalog from Mats Bengtsson. 2004-10-09 Donal K. Fellows * doc/wm.n: Recorded what attribute values are supported on OSX though I don't know what they do. 2004-10-08 Joe English TIP#205 IMPLEMENTATION * unix/tkUnixRFont.c: TIP #205 "Use pkgconfig Database to Register Xft Support". 2004-10-05 Jeff Hobbs TIP#159 IMPLEMENTATION * doc/wm.n (iconphoto): added support for Tk photo * generic/tkInt.h (TkDisplay): images as titlebar icons. TIP #159 * win/tkWinWm.c (WmIconphotoCmd): wm iconphoto ?-default? image1 ... * macosx/tkMacOSXWm.c (WmIconphotoCmd): Implemented for Win/Unix, * unix/tkUnixWm.c (WmIconphotoCmd): stubbed out for OS X. * tests/wm.test, tests/unixWm.test, tests/winWm.test: [Bug 815751] 2004-10-04 Jeff Hobbs * generic/tkTextWind.c (EmbWinDelayedUnmap): Fix init warnings * generic/tkTextTag.c (TkTextCreateTag): * generic/tkTextMark.c (TkTextSetMark): * generic/tkTextIndex.c (GetIndex): * generic/tkUndo.c (EvaluateActionList): 2004-09-24 Don Porter * generic/tkCursor.c: Add missing initialization in debug routine. 2004-09-24 Vince Darley * library/text.tcl: corrected mousewheel scrolling [Bug 960190] * tests/textDisp.test: made some tests more robust to slowness in asynchronous height calculation callbacks [Bug 1025781] 2004-09-24 Pat Thoyts * win/tkWinX.c: Added declaration for advapi32 now that this file uses the Reg* functions (req'd for nmake build system). 2004-09-23 Vince Darley * generic/tkTest.c * tests/text.test: fix and tests for [Bug 1026485] -- negative text search ranges should not lead to any matches. 2004-09-22 Jeff Hobbs * win/tkWinInt.h (TkWinDisplayChanged): added decl * win/tkWinX.c (TkWinDisplayChanged, TkpOpenDisplay): Correctly * win/tkWinWm.c (InvalidateSubTreeDepth, WmProc): handle color and screen resolution changes. Tested for 16/24/32 bpp changes on XP. May need more fixes for 8bpp switch, use of special colormaps, or other special palette handling cases. [Bug 223689] 2004-09-21 Mo DeJong * generic/tkInt.decls: Add decl for TkWinGetPlatformTheme. It is only defined under Win32. * generic/tkIntPlatDecls.h: Regen. * generic/tkStubInit.c: Regen. * win/tkWinInt.h: Define TK_THEME_WIN_CLASSIC and TK_THEME_WIN_XP. * win/tkWinMenu.c (DrawMenuEntryAccelerator, DrawMenuEntryLabel): Draw a disabled 3D text highlight for the accelerator only with the Win95/98 look. Same goes for the menu entry text. * win/tkWinX.c (TkWinGetPlatformId, TkWinGetPlatformTheme): Automatically detect the Windows theme in use and return either TK_THEME_WIN_CLASSIC or TK_THEME_WIN_XP when the TkWinGetPlatformTheme function is invoked. [Patch 866194] 2004-09-21 Mo DeJong * win/tkWinWm.c: Rework WS_EX_LAYERED and LWA_ALPHA defines so that compiling with mingw works again. 2004-09-20 Jeff Hobbs * win/tkWinWm.c (UpdateWrapper, WmAttributesCmd): handle attribute settings prior to window mapping and resort to more forceful wrapper update again for -toolwindow (to remove it from taskbar). 2004-09-19 Donal K. Fellows * doc/*: Standardize style of references to manual sections and public Tcl symbols along the lines of what I set out in [Tcl Patch 1022527]. 2004-09-18 Jeff Hobbs * win/tkWinWm.c (WmAttributesCmd): correct -alpha 0.0/1.0 setting and round the value. (UpdateWrapper): don't adjust Z order of TOPMOST window. (WmAttributesCmd): don't call UpdateWrapper for -disabled or -toolwindow attr changes. 2004-09-17 Jeff Hobbs TIP#222 IMPLEMENTATION * doc/wm.n: * tests/winWm.test: Add 'wm attributes -alpha' to control toplevel * win/tkWinInt.h: alpha transparency on Win2K/XP+. * win/tkWinWm.c: TIP #222 [Patch 892194] * win/tkWinWm.c (UpdateWrapper): Ensure that we maintain Z order * tests/winWm.test: and focus of preexisting window when replacing the wrapper window. 2004-09-16 David Gravereaux * win/makefile.vc : added VC7-safe environment check as used in the Tcl makefile.vc [Bug 1029349] 2004-09-16 Jeff Hobbs * generic/tkMenu.c (MenuWorldChanged): ensure that we recompute the menu geometry on WorldChanged to handle font size changes. [Bug 607649] 2004-09-16 Peter Spjuth * tests/place.test: * generic/tkPlace.c: Fixed a memory leak when a placed widget was forgotten. [Bug 1028888] 2004-09-14 Mo DeJong * win/tkWinWm.c (WmIconwindowCmd): Replace bogus call to XWithdrawWindow with proper code. This avoids a "couldn't send withdraw message to window manager" error when the iconwindow is already mapped. The wm iconwindow command does not seem to do much under Win32, but at least this avoids an error message. 2004-09-13 Jeff Hobbs * win/tkWinWm.c (ReadIconFromFile): fix mem alloc to get the right size for both icons ('?:' order of precedence mistake). 2004-09-10 Donal K. Fellows * library/tkfbox.tcl (::tk::dialog::file::): Make sure that the state is reset properly when starting to run the dialog. [Bug 845189] * library/demos/filebox.tcl: Stop the use of tk_strictMotif from poisoning the rest of the widget demo. [Bug 1013942] 2004-09-10 Jeff Hobbs * win/tkWinWm.c (ActivateWindow): SetFocus to grab window when clicking outside the grab window hierarchy. [Bug 220908] (UpdateWrapper): update to 2004-06-12 Kovalenko to account for whether the override window has a transient parent, and apply WS_POPUP in the correct case. The makes splash screens pop up as well as making dropdowns not grab focus away from the parent. 2004-09-10 Vince Darley TIP#169 IMPLEMENTATION * doc/text.n, generic/tkTest.c, generic/tkText.c, generic/tkText.h: * generic/tkTextBTree.c, generic/tkTextDisp.c, generic/tkTextImage.c: * generic/tkTextIndex.c, generic/tkTextMark.c, generic/tkTextTag.c: * generic/tkTextWind.c, generic/tkUndo.c, generic/tkUndo.h: * library/text.tcl, library/demos/twind.tcl, library/demos/widget: * tests/text.test, tests/textImage.test, tests/textIndex.test: * tests/textWind.test: implementation of TIP#169, which provides the new '$text peer' widget subcommand. This includes new documentation, tests, and an extension to the text widget demos to illustrate some of the new features. Many thanks also to Brian Griffin for the initial implementation. 2004-09-09 Jeff Hobbs * tests/panedwindow.test: bulletproof 23.2 result [Bug 1019100] * win/tkWinWm.c (ReadIconFromFile): when using SHGetFileInfo to retrieve icon, get regular icon as well for correct Alt-Tab icon. 2004-09-09 Donal K. Fellows * doc/wish.1: Added note that the -use option is linked to the frame's -container option to help with [Bug 1024364] 2004-09-06 Jeff Hobbs * library/tkfbox.tcl (::tk::dialog::file::Create): use label instead of button for "File of type", as it properly handles -state disabled now. 2004-09-06 Pat Thoyts * win/makefile.vc: Set TK_LIBRARY when execing Tk apps (test, runtest, rundemo). 2004-09-03 Donal K. Fellows * macosx/tkMacOSXMenus.c (GenerateEditEvent): * macosx/tkMacOSXMenu.c (MenuSelectEvent): * win/tkWinMenu.c (MenuSelectEvent): Make sure everywhere that needs to NULL-out the user_data field does actually do so. (Code that uses bzero() or memset() for the task just needs to be rebuilt to work.) [Bug 1021812] 2004-09-01 Donal K. Fellows * tests/bind.test (bind-22.163): Fix inadvertent minor breakage from TIP#165. [Bug 1019085] * doc/toplevel.n, doc/loadTk.n: More spelling/abbreviation fixes from Mikhail Kolesnitchenko. 2004-08-29 Donal K. Fellows TIP#165 IMPLEMENTATION * generic/tk.h (XVirtualEvent): Added user_data field to structure. * generic/tkBind.c (ExpandPercents, HandleEventGenerate): * generic/tkEvent.c (Tk_HandleEvent): Handle putting data into the user_data field, passing it to scripts as %d substitution, and releasing the field's contents once the event has been processed. * doc/bind.n, doc/event.n, tests/bind.test: Docs + tests. 2004-08-26 Jeff Hobbs * library/text.tcl (::tk::TextTranspose): Ensure that Transpose is an atomic op to undo. 2004-08-25 Don Porter * macosx/tkMacOSXWm.c: Made use of Tcl_WrongNumArgs in a few * win/tkWinMenu.c: appropriate spots. 2004-08-22 Donal K. Fellows * doc/SetOptions.3, doc/SetClassProcs.3, doc/MeasureChar.3: * doc/GetVRoot.3, doc/GetHWND.3, doc/GetDash.3, doc/GetBitmap.3: * doc/FontId.3, doc/CrtItemType.3, doc/ConfigWidg.3, doc/GetCursor.3: More doc fixes from Mikhail Kolesnitchenko. [Patch 1013520] 2004-08-20 Donal K. Fellows * doc/TkInitStubs.3, doc/photo.n, doc/ParseArgv.3, doc/options.n: * doc/keysyms.n, doc/font.n: More doc fixes. [Patch 1012837] * doc/place.n, doc/pack.n, doc/grid.n, doc/getOpenFile.n: * doc/event.n, doc/chooseDirectory.n, doc/bind.n: Spelling and grammar fixes from Mikhail Kolesnitchenko. [Patch 1012083] * tests/canvas.test (canvas-17.1): Report the result of the test so that it can be compared. [Bug 1012331] 2004-08-19 Jeff Hobbs * win/tkWinDialog.c (Tk_MessageBoxObjCmd): Inherit the icon from * win/tkWinInt.h: the -parent window for * win/tkWinWm.c (TkWinGetIcon): the MessageBox. 2004-08-19 Joe English * unix/tkUnixWm.c: Cast argument 7 of XChangeProperty to 'const unsigned char *' (from 'const char *') to satisfy Solaris 8 Forte C compiler [Bug 1012325] 2004-08-19 Don Porter * tests/safe.test (safe-1.3): Made test less sensitve to the full set of existing aliases in an interp, so the it only tests whether the tested ones are present. * unix/Makefile.in: Copied LD_LIBRARY_PATH machinery from `make shell` target to other similar targets so that just built libraries are tested, rather than previous installations. 2004-08-19 Donal K. Fellows TIP#168 IMPLEMENTATION * generic/tkTrig.c (TkMakeRawCurve, TkMakeRawCurvePostscript): * generic/tkInt.decls: New functions to handle the geometry for "raw" bezier curves. * generic/tkCanvUtil.c (tkRawSmoothMethod, InitSmoothMethods) (TkSmoothParseProc): Add new type of smoothing method, simplify the method initialization, and change the old smoothing method to be called "true" and just keep "bezier" as an alias. * tests/canvas.test (canvas-17.1): Basic test of built-in smoothing method support. * doc/canvas.n: Documentation updates. 2004-08-18 Donal K. Fellows * generic/tkPanedWindow.c (optionSpecs): Add missing GEOMETRY flag to -handlepad option. [Bug 1010938] 2004-08-17 Donal K. Fellows * doc/menu.n, doc/text.n: Assorted fixes, including spelling fixes from Mikhail Kolesnitschenko. [Patch 1010083] * doc/spinbox.n, doc/scrollbar.n, doc/scale.n, doc/panedwindow.n: * doc/message.n, doc/listbox.n, doc/entry.n, doc/button.n: More spelling fixes from Mikhail Kolesnitschenko. [Patch 1010607] 2004-08-16 Donal K. Fellows * doc/button.n, doc/checkbutton.n, doc/label.n, doc/menubutton.n: * doc/radiobutton.n: Added cross-reference to new standard option. * doc/options.n: Added standard documentation for the -compound option. [Bug 712588] * doc/canvas.n: Spelling and grammar fixes from Mikhail Kolesnitschenko. [Bug 1009636] 2004-08-11 Donal K. Fellows * library/tkfbox.tcl (ResolveFile): Added some environment variable handling; this isn't perfect, but should do what most people want most of the time. [FRQ 979101] * library/xmfbox.tcl (MotifFDialog_BuildUI): Fix [Bug 987169] in the Motif file dialogs as well. 2004-08-10 Joe English * unix/tkUnixWm.c: Fix for [Bug 1006686] "wm resizable command not working on Solaris/CDE" (patch from Colin McDonald). 2004-08-09 Mo DeJong * tests/canvText.test: * win/tkWinFont.c (Tk_MeasureChars): Fix for text wrapping problem that appeared using canvas text under Win32. A long wrapping string that had leading spaces was being incorrectly wrapped. This change makes the Win32 implementation behave the same as the Unix implementation. [Patch 1006286] 2004-08-05 Donal K. Fellows * library/clrpick.tcl (BuildDialog): * library/msgbox.tcl (MessageBox): Add scheme for cancelling dialog boxes with Escape and also handle what happens when the window gets nuked from outside. [Bug 987169] 2004-08-04 Donal K. Fellows * generic/tkImgPhoto.c (ImgPhotoBlendComplexAlpha): Clean the code up a bit and add a few more comments. (Tk_PhotoPutBlock, Tk_PhotoPutZoomedBlock): Clarified the code, corrected the compositing rule now that I have looked up what the right thing to do is, and factorized out the compositing rule code into a few simpler macros. 2004-07-30 Daniel Steffen * unix/configure: * unix/tcl.m4 (SC_CONFIG_CFLAGS): Darwin: instead of setting PLAT_OBJS to explict object files in tcl.m4, refer to MAC_OSX_OBJS makefile var. 2004-07-29 George Peter Staplin * generic/tkEvent.c (TkQueueEventForAllChildren): Code from the core-8-4-branch to not queue events for unmapped windows was added. 2004-07-27 Daniel Steffen * generic/tkImgGIF.c (FileReadGIF): fix crash reported by Reinhard Max: in case of premature end of image data, return error instead of passing nil buffer to Tk_PhotoPutBlock(). 2004-07-22 Jeff Hobbs * library/tkfbox.tcl (::tk::dialog::file::Update): use -directory [pwd] (instead of .) to get around some VFS edge case bugs. Correct args passes to tk_messageBox when failing to cd. Add -force back to namespace import of msgcat. 2004-07-20 Jeff Hobbs * generic/tkEvent.c (InvokeInputMethods): ensure IC focus is set after creation. [Bug 905830] 2004-07-20 Daniel Steffen * macosx/Makefile: added support to tk framework build to optionally install tk manpages in addition to html help, similarly to tcl/macosx/Makefile. * macosx/Wish.pbproj/project.pbxproj: fixes for building with non-default SYMROOT/OBJROOT/SRCROOT, added support for using a Tcl.framework in DYLIB_INSTALL_PATH != /Library/Frameworks, added optional support for building html help without tcl sources present by giving explicit location of tcltk-man2html script. * macosx/tkMacOSXMenu.c: fixed #include case sensitivity bug. * unix/Makefile.in: * win/Makefile.in: added 'install-private-headers' makefile target to allow optionally installing private tk headers. [Tcl FR 922727] 2004-07-16 Jeff Hobbs * unix/Makefile.in, unix/tcl.m4: move (C|LD)FLAGS after their * unix/configure.in, unix/configure: _DEFAULT to allow for env setting to override m4 switches. Consolidate header checks to limit redundancy in configure. (CFLAGS_WARNING): Remove -Wconversion (SC_ENABLE_THREADS): Set m4 to force threaded build when built against a threaded Tcl core. Reorder configure.in for better 64-bit build configuration, replacing EXTRA_CFLAGS with CFLAGS. [Bug 874058] 2004-07-14 Jim Ingham * macosx/tkMacOSXCursor.c (TkpSetCursor): The code to not reset the cursor more often than necessary was getting fooled when the current cursor was nulled out when the current cursor gets freed. So in the case where the input cursor was NULL, we have to just always set it. [Bug 894550] 2004-07-13 Don Porter * library/tkfbox.tcl: Corrected coding errors in most recent change. Use [bind $w], not [$w configure] to modify bindings. 2004-07-11 Donal K. Fellows * library/tkfbox.tcl (::tk::dialog::file::Create): Watch out for users destroying the dialog indirectly. [Bug 987169] 2004-07-07 Donal K. Fellows * doc/canvas.n: Add paragraph to make clearer what is going on with the default canvas origin. [Bug 956681] 2004-07-05 George Peter Staplin * generic/tkEvent.c: TK_XIM_SPOT preprocessor usage was modified slightly to fix a bug that occured when TK_XIM_SPOT was defined as 0. Thanks to Joe Mistachkin for reporting this bug. 2004-07-05 Donal K. Fellows TIP#158 IMPLEMENTATION * tests/bind.test: Allow Win apps to distinguish keys * win/tkWinX.c (GetState): on the keypad using the Extended * generic/tkInt.h (EXTENDED_MASK): modifier. Thanks to Wolfgang * generic/tkBind.c: Grossbauer and Kevin Kenny for * doc/bind.n: developing this patch [Patch 797404] 2004-07-05 Joe English * unix/tkUnixWm.c: Set _NET_WM_NAME and _NET_WM_ICON_NAME (freedesktop.org) in addition to WM_NAME and WM_ICON_NAME (ICCCM). This allows the full Unicode character set to be used in window manager strings (but only for newer WMs that support the EWMH spec). [Bug 959973] 2004-07-02 George Peter Staplin * generic/tkEvent.c: Tk_HandleEvent was refactored to be more readable, and during this process two bugs were found. 1) Button 4 and 5 masks will now be synchronized with the TkDisplay. 2) ClientMessage handlers will use the proper last pointer rather than writing to the last GenericHandler pointer. Thanks to Joe English for his help and encouragement, and DKF for review. 2004-07-01 Donal K. Fellows * doc/place.n, doc/pack.n: Doc fixes. [Tcl Bug 983146] 2004-06-30 Donal K. Fellows TIP#153 IMPLEMENTATION * generic/tkCmds.c (GetTopHierarchy): Modified from GetToplevel so * doc/winfo.n: that [winfo toplevel] does not assume that it is really working with toplevels. Occasionally this is important. Thanks to Neil McKay for this patch! 2004-06-29 Jeff Hobbs * generic/tkCmds.c (Tk_WinfoObjCmd): refetch interp result obj for 'winfo id' as it can change when making the window exist. 2004-06-26 Joe Mistachkin * generic/tkConsole.c (ConsoleDeleteProc): Set tsdPtr->gStdoutInterp to NULL when the console command is deleted [Bug 756840]. Also, added Tcl_Preserve/Tcl_Release for consoleInterp in InterpreterCmd in case it gets deleted during the calls to Tcl_GlobalEval and Tcl_RecordAndEval. 2004-06-24 Donal K. Fellows * tests/canvPs.test, etc: Use standard tcltest constraint names. 2004-06-19 Daniel Steffen * unix/tcl.m4: autoconf 2.5 fixes in Darwin section. * unix/configure: autoconf-2.57 2004-06-17 Donal K. Fellows * tests/constraints.tcl, tests/*.test: Systematization of test constraints so many common and basic constraints are defined once with a single name. 2004-06-16 Joe English * unix/tkUnixWm.c, win/tkWinWm.c, macosx/tkMacOSXWm.c, tests/wm.test * tests/unixWm.test: Fix for [Bug 742882] "Potential division by zero in gridded wm geometry" 2004-06-15 Anton Kovalenko * win/tkWinButton.c: Add a 3D highlight to disabled *buttons and labels, the same way as it's now done for disabled menu entries. 2004-06-15 Donal K. Fellows * doc/image.n: Enhanced the documentation to take into account the concerns raised in [RFE 803060] * tests/canvas.test: Updated tests affected by the change to ScrollFractions, which is now clean about result generation. * generic/tkCanvas.c: Make tag search subsystem use symbolic names for type flags for easier maintenance. (FIRST_CANVAS_ITEM_MATCHING,FOR_EVERY_CANVAS_ITEM_MATCHING): Factorize out searching idioms into macros to reduce the #ifdef count and make braces match. (ScrollFractions): Really create a list Tcl_Obj. 2004-06-12 Anton Kovalenko * win/tkWinWm.c (UpdateWrapper): Let overrideredirect'ed window's wrapper be the child of desktop window, thus making it to behave more similarly to X11 Override Redirect. Esp. useful for combobox-like megawidgets. 2004-06-09 Vince Darley * generic/tkText.c: * tests/text.test: fix to multi-line regexp search bugs in text widget (reported against Alphatk editor, not on sf). Addded 3 new tests. 2004-06-09 Donal K. Fellows * generic/tkUndo.c (TkUndoSetDepth): Delete the unlinked element and not the next element. Stops a crash in some situations and a memory leak in others. Thanks to Jiang Wu for spotting this. [Bug 969358] 2004-06-08 Mo DeJong * generic/tkCanvText.c (DisplayCanvText): Fix text rendering problem with canvas text items that have a selected region. The previous implementation would render the whole line and then redraw the selected text if it was a different color. This caused problems when the selected text foreground differs from the normal text foreground, the anti-aliasing alpha pixels for the two text strings would blend together resulting in strange looking text. The fix is to draw the normal text and the selected text separately. This problem has only been observed under Windows, with anti-aliased text. [Patch 968725] 2004-06-07 Vince Darley * generic/tkTextDisp.c: * generic/tkTextBTree.c: fix to (Bug 965186) in which the text widget's record of partial-line-height calculations (for very long wrapped lines) was being incorrectly reused. This resulted in confusing scrollbar-text interactions. 2004-06-06 Pat Thoyts * tests/frame.test: Fix frame-2.8 for ![info exists env(DISPLAY)] 2004-06-04 Don Porter * tests/filebox.test: A few typo corrections in dkf's recent * tests/frame.test: style upgrade for the test suite. * tests/select.test: * tests/visual.test: 2004-06-04 Vince Darley * generic/tkTextIndex.c: * generic/tkText.c: * generic/tkTextDisp.c: * doc/text.n: fix to shimmering infinite loop scrolling problem in text widget under some rare circumstances (Bug 965398). Improved comments and documentation. * tests/textDisp.test: corrected rounding from float to int in test, fixing occasional failures * library/text.tcl: corrected mousewheel bindings for TkAqua 2004-05-29 Joe English * doc/messageBox.n: Fix minor markup errors (backslash is \e, not \b). 2004-05-24 Donal K. Fellows * doc/messageBox.n: Added documentation for the -detail option. * tests/msgbox.test: Updated test suite with correct list of options. * win/tkWinDialog.c (Tk_MessageBoxObjCmd): Added "support" for the -detail option by concatenating it onto the end of the message. 2004-05-24 Jim Ingham * tkMacOSXDialog.c (Tk_MessageBoxObjCmd): Turn on the -detail option for Mac OS X. 2004-05-23 Donal K. Fellows * ChangeLog.2002: Split older ChangeLog entries off into a separate file. * doc/bindtags.n: Added example. * tests/*.test: Many minor fixes aiming towards making the Tk test suite have better style. (A very large fraction of test files were modified.) * generic/tkVisual.c (Tk_GetVisual): Minor fix for error message. 2004-05-14 Donal K. Fellows TIP#152 IMPLEMENTATION (Unix only) * library/msgbox.tcl (MessageBox): Added TIP#152's -detail option for Unix/X11 platforms. Also shrank the size of the main -message text which was grossly large. 2004-05-12 Chengye Mao * generic/tkBind.c : Modified to fix wish crash due to incorrectly generate event. This bug was reported in comp.lang.tcl but not logged. 2004-05-07 Chengye Mao * win/tkWinWm.c : handle and destroy old wrapper correctly and fix crash problem in wish exiting [Bug 767176]. 2004-05-05 Jeff Hobbs * win/tkWinFont.c (FindSubFontForChar): corrections to dkf patch to handle subFontPtrPtr in EnumFontFamilies callback. 2004-05-05 Donal K. Fellows * win/tkWinFont.c (Tk_MeasureChars,Tk_DrawChars,etc): Make sure that the lastSubFontPtr remains valid even when the subfont array is reallocated. [Bug 618872] 2004-05-03 Jeff Hobbs * unix/tkUnixButton.c (TkpDrawCheckIndicator): allow radiobuttons to be drawn when disabledforeground and/or selectcolor are NULL. [Bug 826850] (griffin) * win/tkWinMenu.c, unix/tkUnixMenu.c (DrawMenuEntryLabel): place images of compound menu entries in indicator space if not a radio of checkbutton. [Bug 756952] (eserte) * win/tkWinX.c: fix drawing of unicode chars in menu * win/tkWinInt.h (TkWinProcs): titles. [Bug 904371] (riefenstahl) * win/tkWinMenu.c (ReconfigureWindowsMenu): * generic/tkClipboard.c: Move TkClipCleanup from tkClipboard.c * macosx/tkMacOSXXStubs.c: to being implemented in a platform * unix/tkUnixEvent.c: specific manner. The cleanup order was * win/tkWinX.c: bad at least on Windows, where we reset/cleared display info that was still needed for the clipboard to render. [Bug 939389, 822002, 732662] * library/panedwindow.tcl (MarkSash): call DragSash to stop sash jump when B1 is pressed and released without moving. [Bug 932155] * tests/panedwindow.test: panedwindow-25.1 * generic/tkPanedWindow.c (Unlink): clean up -before/-after refs to a slave when removing it. [Bug 928413] (griffin) * generic/tkImgPhoto.c (ImgPhotoConfigureMaster): force -data into ByteArray and -format into String to correctly handle them if they have been shimmered or created as some other object type. 2004-04-24 Daniel Steffen * generic/tkPort.h: * unix/Makefile.in: * win/makefile.bc: * win/Makefile.in: followup on tcl header reform [FR 922727]: removed use of relative #include paths in tkPort.h to allow installation of private headers outside of tk source tree; added tcl plaform source dir to compiler header search path. 2004-04-23 Donal K. Fellows * doc/bind.n: Added examples (in line with the parallel programme for adding examples to Tcl manual pages) and made assorted minor alterations to improve the overall look. 2004-04-21 Donal K. Fellows * tests/textDisp.test: Get rid of windows that are no longer needed so single-proc tests don't have extra windows hanging around unexpectedly. 2004-04-21 Benjamin Riefenstahl Mac OS X: Fix several problems with Icelandic (and Faroese) keyboards reported by Jérôme Gagnon-Voyer maccom> on tcl-mac on 2004-03-22. * macosx/tkMacOSXKeyEvent.c (KLSInit): Add. (GetKeyboardLayout): Add calls to Keyboard Layout Services, if present. Rework classic handling. Use GetKCHREncoding(). Add parameter encodingPtr. (GetKCHREncoding): Add. 2004-04-16 Jeff Hobbs * library/bgerror.tcl (bgerror): rework to only set -topmost bit on Windows if necessary. Also use existing ::tk functions for placing dialog and managing focus/grab. 2004-04-04 Joe English * unix/tkUnixWm.c: Fix for [Bug 915350] "Tk sets min, max size in WM_HINTS when it shouldn't" and [Bug 922336] "Tk apps have no maximize window button under KDE-3.2.1" 2004-03-31 Jim Ingham * tkMacOSXCarbonEvents.c (AppEventHandlerProc): Handle the kEventAppHidden and kEventAppShown events. (TkMacOSXInitCarbonEvents): Register for the above events. * tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): Steal the Command-H menu key event and allow the Application handler to have it. This is currently the only way to get the Hide behavior to work. [Bug 917557] * tkMacOSMenus.c (TkMacOSXHandleMenuSelect): Remove the Quit menu handler - this was for the Quit item in the File menu, but it doesn't belong there. (TkMacOSXInitMenus): Remove the Quit menu item from the File menu. * tkMacOSXMenu.c (EventuallyInvokeMenu): Report errors from invoking menu commands as background errors. [Bug 220871] 2004-03-31 Don Porter * generic/tkImgPhoto.c: Removed outdated #include's of the tclMath.h * generic/tkScale.c: header file. All tk*Port.h files have long had a #include , and other parts of Tk routinely make use of libm-supplied math routines. 2004-03-30 Daniel Steffen * macosx/tclets.r (removed): obsolete holdover from mac classic. 2004-03-26 Donal K. Fellows * generic/tkImgPPM.c (ReadPPMStringHeader): Code to read PPM/PGM data (StringReadPPM, StringMatchPPM): from strings/bytearrays. [FRQ 540375] 2004-03-26 Don Porter * unix/tcl.m4: Replaced -Wno-strict-alias with more portable -fno-strict-alias alternative. * README: Bump version to 8.5a2. * generic/tk.h: * macosx/Wish.pbproj/project.pbxproj: * unix/configure.in: * unix/tk.spec: * win/configure.in: * unix/configure: autoconf-2.57 * win/configure: 2004-03-26 Donal K. Fellows * generic/tkImgPPM.c (StringWritePPM): New function to support converting of images to PPM strings. Other direction not yet done. Rest of file converted to use new image API. * generic/tkImgPhoto.c (ImgPhotoCmd): Restored support for the stringWriteProc of old photo formats. [Bug 923555] 2004-03-25 Donal K. Fellows * doc/winfo.n: Clarified the range of colour intensities returned by [winfo rgb]. [Bug 922610] 2004-03-22 Donal K. Fellows * doc/ConfigWidg.3: Converted malloc/free to Tcl_Alloc/Tcl_Free to help avoid confusion and crashes on Windows. [Bug 920695] 2004-03-20 Jim Ingham * macosx/tkMacOSXSubwindows.c (GenerateConfigureNotify): New function. (XMoveWindow): Generate configure notify events for child widgets on move. (XMoveResizeWindow): Ditto. 2004-03-18 Daniel Steffen Removed support for Mac OS Classic platform [Patch 918139] * doc/console.n: * doc/tk.n: * generic/README: * generic/default.h: * generic/tk.decls: * generic/tk.h: * generic/tkBind.c: * generic/tkCmds.c: * generic/tkConsole.c: * generic/tkFileFilter.h: * generic/tkGrab.c: * generic/tkInitScript.h: * generic/tkInt.decls: * generic/tkIntDecls.h: * generic/tkIntPlatDecls.h: * generic/tkIntXlibDecls.h: * generic/tkMain.c: * generic/tkPlatDecls.h: * generic/tkPointer.c: * generic/tkPort.h: * generic/tkSelect.c: * generic/tkStubInit.c: * generic/tkStubLib.c: * generic/tkTest.c: * generic/tkText.c: * generic/tkWindow.c: * library/bgerror.tcl: * library/button.tcl: * library/console.tcl: * library/dialog.tcl: * library/entry.tcl: * library/msgbox.tcl: * library/spinbox.tcl: * library/tearoff.tcl: * library/text.tcl: * library/tk.tcl: * library/demos/text.tcl: * library/demos/widget: * mac/MW_TkBuildLibHeader.h (removed): * mac/MW_TkBuildLibHeader.pch (removed): * mac/MW_TkHeader.h (removed): * mac/MW_TkHeader.pch (removed): * mac/MW_TkHeaderCommon.h (removed): * mac/MW_TkOldImgHeader.h (removed): * mac/MW_TkOldImgStaticHeader.h (removed): * mac/MW_TkStaticHeader.h (removed): * mac/MW_TkStaticHeader.pch (removed): * mac/MW_TkTestHeader.h (removed): * mac/MW_TkTestHeader.pch (removed): * mac/README (removed): * mac/bugs.doc (removed): * mac/tclets.r (removed): * mac/tclets.tcl (removed): * mac/tkMac.h (removed): * mac/tkMacAppInit.c (removed): * mac/tkMacAppearanceStubs.c (removed): * mac/tkMacApplication.r (removed): * mac/tkMacBitmap.c (removed): * mac/tkMacButton.c (removed): * mac/tkMacClipboard.c (removed): * mac/tkMacColor.c (removed): * mac/tkMacConfig.c (removed): * mac/tkMacCursor.c (removed): * mac/tkMacCursors.r (removed): * mac/tkMacDefault.h (removed): * mac/tkMacDialog.c (removed): * mac/tkMacDraw.c (removed): * mac/tkMacEmbed.c (removed): * mac/tkMacFont.c (removed): * mac/tkMacHLEvents.c (removed): * mac/tkMacInit.c (removed): * mac/tkMacInt.h (removed): * mac/tkMacKeyboard.c (removed): * mac/tkMacLibrary.r (removed): * mac/tkMacMDEF.c (removed): * mac/tkMacMDEF.r (removed): * mac/tkMacMenu.c (removed): * mac/tkMacMenu.r (removed): * mac/tkMacMenubutton.c (removed): * mac/tkMacMenus.c (removed): * mac/tkMacPort.h (removed): * mac/tkMacProjects.sea.hqx (removed): * mac/tkMacRegion.c (removed): * mac/tkMacResource.r (removed): * mac/tkMacScale.c (removed): * mac/tkMacScrlbr.c (removed): * mac/tkMacSend.c (removed): * mac/tkMacSubwindows.c (removed): * mac/tkMacTclCode.r (removed): * mac/tkMacTest.c (removed): * mac/tkMacWindowMgr.c (removed): * mac/tkMacWm.c (removed): * mac/tkMacXCursors.r (removed): * mac/tkMacXStubs.c (removed): * mac/widget.r (removed): * tests/clrpick.test: * tests/cursor.test: * tests/entry.test: * tests/font.test: * tests/macEmbed.test (removed): * tests/macFont.test (removed): * tests/macMenu.test (removed): * tests/macWinMenu.test (removed): * tests/macscrollbar.test (removed): * tests/menuDraw.test: * tests/safe.test: * tests/scrollbar.test: * tests/select.test: * tests/spinbox.test: * tests/text.test: * tests/tk.test: * tests/winfo.test: * tests/wm.test: * unix/Makefile.in: * unix/README: * unix/tk.spec: * unix/tkUnix3d.c: * unix/tkUnixDraw.c: * xlib/xgc.c: * xlib/xutil.c: * xlib/X11/X.h: * xlib/X11/Xlib.h: * xlib/X11/Xutil.h: * xlib/X11/keysym.h: 2004-03-16 Jeff Hobbs * unix/tkUnixButton.c (TkpDrawCheckIndicator): correct crash condition for new radio/checkbuttons when colors are exhausted. [Bug 915330] (griffin) * generic/tkGrid.c (GridRowColumnConfigureCommand): fix lint warning * generic/tkCanvUtil.c: fix cast warnings * generic/tkTextImage.c (EmbImageConfigure): fix casts * unix/tkUnixSelect.c (ConvertSelection, TkSelPropProc): fix casts * unix/configure, unix/tcl.m4: add -Wno-strict-aliasing for GCC to suppress useless type puning warnings. 2004-03-08 David Gravereaux * win/makefile.vc: * win/buildall.vc.bat: Checks MSDevDir, not MSVCDir envar. 2004-03-04 Mo DeJong * win/tkWin32Dll.c: Add variables needed when compiling with mem debug under Mingw. This fixes the checking from 2003-12-25. 2004-03-03 Jeff Hobbs *** 8.5a1 TAGGED FOR RELEASE *** * unix/Makefile.in (dist): don't require win/lamp.bmp copy in dist target (it's already handled by win/rc/*.bmp copy) * changes: updated for 8.5a1 2004-03-01 Jeff Hobbs * README: update to patchlevel 8.5a1 * generic/tk.h: * macosx/Wish.pbproj/project.pbxproj: * unix/configure, unix/configure.in, unix/tk.spec: * win/configure, win/configure.in: * unix/tcl.m4: update HP-11 build libs setup 2004-03-01 Don Porter * unix/tcl.m4 (SC_CONFIG_CFLAGS): Allow 64-bit enabling on IRIX64-6.5* systems. [Bug 218561] * unix/configure: autoconf-2.57 2004-02-28 Vince Darley * generic/tkTextIndex.c: remove use of internal Tcl interface 'TclUtfToUniChar' 2004-02-25 Benjamin Riefenstahl * library/demos/widget (addFormattedText): Correct off-by-one error. 2004-02-23 Daniel Steffen * macosx/Makefile: ensure that xcodebuild will use the Wish.pbproj project even if a .xcode project is also present. * macosx/tkMacOSXMouseEvent.c: fixed modifiers for MouseWheel events. * macosx/Wish.pbproj/project.pbxproj: * macosx/tkAboutDlg.r: changed year in copyright strings to 2004. 2004-02-23 Daniel Steffen * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXXStubs.c: * xlib/ximage.c: fixed MacOSX XGetImage/XPutImage and related functions to deal properly with XImages copied from screen. * generic/tkCanvPs.c (TkImageGetColor): MacOSX fix. [Bug 809157] 2004-02-18 Peter Spjuth * tests/grid.test: * generic/tkGrid.c: Fixed a bug in grid geometry calculations for a shrinking grid. [Bug 899246] 2004-02-17 Benjamin Riefenstahl * macosx/tkMacOSXKeyboard.c (TkpInitKeymapInfo): Don't make and synonyms for and