2007-12-30 Donal K. Fellows * doc/canvas.n: Documented exact behaviour of items with respect to when they are the current item. [Bug 1774593] Also documented the clipping behaviour of window items. * library/demos/nl.msg: Corrected following testing "in the field" by Arjen Markus. [Bug 1860802] 2007-12-17 Donal K. Fellows *** 8.5.0 TAGGED FOR RELEASE *** * doc/canvas.n: Documented -outlineoffset item option. [Bug 1836621] 2007-12-14 Don Porter * changes: More updates for 8.5.0 release. 2007-12-14 Joe English * doc/ttk_treeview.n: Fix typo. [Bug 1850713] 2007-12-14 Pat Thoyts * win/tkWinInt.h: Add in missing function definitions * win/tkWinButton.c: to support plain MSVC6 and use INT_PTR * win/tkWinScrlBar.c: rather than LONG_PTR which isn'tr defined * win/tkWinWm.c: in the msvc6 headers. 2007-12-14 Pat Thoyts * win/nmakehlp.c: Support compilation with MSVC9 for AMD64. * win/makefile.vc: 2007-12-13 Jeff Hobbs * generic/tkMenubutton.c (ConfigureMenuButton): trace the -textvariable even if an image exists as it may use -compound. 2007-12-12 Jeff Hobbs * generic/tkText.c (DeleteIndexRange, TextEditCmd, UpdateDirtyFlag): * tests/text.test (text-25.10.1,25.11.[12]): Don't require [update idle] to trigger Modified event [Bug 1809538] Modified virtual event should only fire on state change [Bug 1799782] Make sure we delete chars before triggering <> [Bug 1737288] 2007-12-12 Daniel Steffen * macosx/tkMacOSXWm.c (ApplyMasterOverrideChanges): Revert 2007-10-26 change to window class of transient toplevels that are not also overrideredirect. [Bug 1845899] * macosx/tkMacOSXWm.c (ApplyMasterOverrideChanges): Implement more * macosx/tkMacOSXMouseEvent.c (BringWindowForward): X11-like transient * macosx/tkMacOSXSubwindows.c (XDestroyWindow): behaviour by adding transient windows to a window group owned by the master window, this ensures transients always remain in front of and are collapsed with the master; bring master to front when selecting transient windows; restore default window group of transients if master destroyed. [Bug 1845899] 2007-12-12 Joe English * doc/ttk_intro.n, doc/ttk_style.n, doc/ttk_widget.n: Various minor updates. 2007-12-12 Don Porter * changes: Updated for 8.5.0 release. 2007-12-11 Joe English * generic/ttk/ttkTheme.c (StyleElementOptionsCmd): Use Ttk_GetElement() to find element instead of direct hash table access. 2007-12-11 Donal K. Fellows * generic/tkText.c (TextReplaceCmd): Added code to rebuild the from index after the deletion phase so that the linePtr field is valid for the insertion phase. [Bug 1602537] 2007-12-10 Donal K. Fellows * doc/event.n: Clarify the fact that [event info] only returns the names of virtual events that are bound to physical event sequences. This follows on from comments on comp.lang.tcl. http://groups.google.com/group/comp.lang.tcl/msg/935d2d226ae8a770 2007-12-10 Joe English * doc/AddOption.3, doc/CrtImgType.3, doc/CrtPhImgFmt.3, * doc/InternAtom.3, doc/TextLayout.3, doc/chooseColor.n, * doc/chooseDirectory.n, doc/loadTk.n, doc/palette.n, * doc/ttk_combobox.n: Various markup fixes (mostly: missing quotes on .SH arguments, extraneous .PPs) * doc/ttk_entry.n, doc/ttk_scrollbar.n, doc/ttk_treeview.n: Remove extra .BEs that got added by mistake somewhere. 2007-12-10 Daniel Steffen * generic/tk.decls: use new genstubs 'export' command to * generic/tkInt.decls: mark exported symbols not in stubs table [FR 1716117]; cleanup formatting * generic/tkIntDecls.h: regen with new genStubs.tcl. * generic/tkIntPlatDecls.h: [Tcl Bug 1834288] * generic/tkIntXlibDecls.h: * generic/tkPlatDecls.h: * generic/tkStubInit.c: 2007-12-10 Donal K. Fellows * tests/safe.test: Ensure list of hidden commands is correct. [Bug 1847925] 2007-12-10 Pat Thoyts * win/tkWin.h: We must specify the lowest Windows version we intend to support. In particular the SystemParametersInfo API doesn't like to receive structures that are larger than it expects which affects the font assignements. Set to Win98 support. * win/tkWinFont.c: Handle failure to read the system parameters. This causes ttk/fonts.tcl to set any missing named fonts. * win/ttkWinMonitor.c: Only tkWin.h should include windows.h unless * win/ttkWinTheme.c: we have an explicit override of the WINVER * tin/ttkWinXPTheme.c: macro. * win/rules.vc: Handle MSVC 9 (aka: Visual Studio 2008) * tests/safe.test: Update for 'unload' as a safe command (tcl 8.5b3+) 2007-12-09 Donal K. Fellows * win/configure.in: Adjusted code so that running configure does not generate an error message when the full current directory name contains a space. * win/tkWinWm.c: Added set of #defs to make this file build with my version of the SDK (i.e. with the msys suite we distribute). 2007-12-07 Joe English * library/ttk/altTheme.tcl, library/ttk/classicTheme.tcl: s/style/ttk::style/. 2007-12-07 Don Porter * unix/README: Mention the stub library created by `make` and warn about the effect of embedded paths in the installed binaries. Thanks to Larry Virden. [Tcl Bug 1794084] 2007-12-05 Joe English * macosx/ttkMacOSXTheme.c: Fix TCombobox layout so as not to truncate long text when combobox is wider than requested. [Bug 1845164] 2007-12-05 Jeff Hobbs * library/demos/widget: reduce start size to 70% of screenheight from sh-200 for a more reasonable size. * win/tkWinButton.c, win/tkWinDialog.c: use SetWindowLongPtr and * win/tkWinScrlbr.c, win/tkWinWm.c: GetWindowLongPtr only. * win/ttkWinMonitor.c: * win/tkWinInt.h: remove CS_CLASSDC (not recommended for any apps now) * win/tkWinX.c: and simplify WNDCLASS to one style. * win/tkWinWm.c: Reduce wrapper update for exStyle to toolwindow change only and set WS_EX_LAYERED as sticky (once set on a window, do not remove it) to reduce alpha transition flicker. * win/configure, win/tcl.m4 (LIBS_GUI): mingw needs -lole32 -loleaut32 but not msvc for Tk's [send]. [Bug 1844749] 2007-12-04 Joe English * doc/ttk_style.n: Remove nonsense about "this manpage has not yet been written"; everything supported is documented. 2007-12-04 Donal K. Fellows * library/msgs/en.msg: Added missing messages. [Patch 1800744] * library/msgs/da.msg: Added Danish messages. [Patch 1844143]. Many thanks to Torsten Berg . 2007-12-03 Jeff Hobbs * win/configure, win/tcl.m4 (LIBS_GUI): remove ole32.lib oleaut32.lib (LIBS): add ws2_32.lib for static builds with Tcl. 2007-12-01 Joe English * generic/ttk/ttkTheme.h, generic/ttk/ttkThemeInt.h, * generic/ttk/ttkTheme.c, generic/ttk/ttkLayout.c, * generic/ttk/ttkClamTheme.c, generic/ttk/ttkClassicTheme.c, * generic/ttk/ttkTreeview.c, macosx/ttkMacOSXTheme.c, * win/ttkWinTheme.c, win/ttkWinXPTheme.c: Improved macrology for statically-initialized layout template tables. 2007-11-28 Don Porter * unix/tkUnixPort.h: When unix/configure determines whether the intptr_t type is available, it has the header present. It's only fair that we let Tk have it too. 2007-11-26 Kevin Kenny * generic/tkImgPPM.c (StringReadPPM): Corrected a comparison whose sense was reversed that resulted in reading beyond the end of the input buffer on malformed PPM data. [Bug 1822391] * library/tkfbox.tcl (VerifyFileName): Corrected a couple of typos in handling of bad file names. [Bug 1822076] Thanks to Christoph Bauer (fridolin@users.sf.net) for the patch. * tests/filebox.test (filebox-7.1, filebox-7.2): Added test cases that exercise. [Bug 1822076] * tests/imgPPM.test (imgPPM-4.1): Added test case that exercises. [Bug 1822391] 2007-11-25 Joe English * generic/ttk/ttkManager.h, generic/ttk/ttkManager.c, * generic/ttk/ttkFrame.c, generic/ttk/ttkNotebook.c, * generic/ttk/ttkPanedwindow.c: Internal Ttk_Manager API updates; Fixed [Bug 1343984]; Added [$nb hide] method; [$nb add] on already-managed windows no longer throws an error, can be used to re-add a hidden tab. * doc/ttk_notebook.n, tests/ttk/notebook.test, * tests/ttk/panedwindow.test: Updated docs and test suite. 2007-11-23 Donal K. Fellows * unix/README: General improvements. 2007-11-21 Donal K. Fellows * library/tkfbox.tcl: Better theming in the file list area. 2007-11-19 Don Porter *** 8.5b3 TAGGED FOR RELEASE *** * README: Bump version number to 8.5b3. * generic/tk.h: * library/tk.tcl: * unix/configure.in: * unix/tk.spec: * win/configure.in: * unix/configure: autoconf-2.59 * win/configure: * changes: Update changes for 8.5b3 release. 2007-11-19 Pat Thoyts * generic/ttk/ttkTheme.c: Fix crash when 'style element create' * tests/ttk/ttk.test: called w/ insufficient args; add tests. 2007-11-18 Joe English * generic/ttk/ttkElements.c, macosx/ttkMacOSXTheme.c: Add "fill" element: like "background" but only erases parcel. * generic/ttk/ttkFrame.c: Use fill element in Labelframe Label sublayout. Also improved default labelmargins for -labelanchor w*, e*. * generic/ttk/ttkLabel.c: no longer need Labelframe hack. * library/ttk/aquaTheme.tcl: ImageTextElement no longer needed. TextElement no longer needs '-background' option. * generic/ttk/ttkFrame.c: Use sublayout for ttk::labelframe labels instead of single element. * generic/ttk/ttkLabel.c: Default -anchor for text and label elements is now "w" instead of "center". [Bug 1614540] * library/ttk/defaults.tcl, library/ttk/*Theme.tcl: Button styles now need explicit "-anchor center". * generic/ttk/ttkLayout.c (TTKInitPadding): BUGFIX: Ttk_GetPaddingFromObj() and Ttk_GetBorderFromObj() returned garbage when passed an empty list. * macosx/ttkMacOSXTheme.c: Resynchronize with Tile codebase so that patches can flow back and forth. * library/ttk/aquaTheme.tcl: Extra TButton -padding no longer needed. 2007-11-18 Pat Thoyts * win/ttkWinXPTheme.c: Add support for size information flags for scrollbar and combobox buttons. This handles Tile [Patches 1596647 and 1596657] but a bit more generically. 2007-11-17 Pat Thoyts * generic/(tkArgv.c, tkBind.c, tkCipboard.c, tkEntry.c, tkOption.c, tkScale.c, tkScrollbar.c, tkTextImage.c, tkVisual.c, tkWindow.c): Tidy up some variable types. * generic/tkFont.c: Only check for -displayof if there are * test/font.test: sufficient arguments. This permits checking strings like -d. 2007-11-17 Joe English * library/ttk/scrollbar.tcl: Swap in core scrollbars for [ttk::scrollbar]s on OSX. 2007-11-16 Benjamin Riefenstahl * macosx/tkMacOSXFont.c (TkpMeasureCharsInContext): Correct an oversight in the bug fix from 2007-11-11. [Bug 1824638] 2007-11-15 Daniel Steffen * macosx/Wish.xcodeproj/project.pbxproj: add new chanio.test. * macosx/Wish.xcode/project.pbxproj: 2007-11-14 Donal K. Fellows * library/msgs/sv.msg: Get the locale declared within the message catalog correct! [Bug 1831803] 2007-11-11 Benjamin Riefenstahl * macosx/tkMacOSXFont.c (TkpMeasureCharsInContext): Fix the case when TK_WHOLE_WORDS and TK_AT_LEAST_ONE are both set and maxLength is small. [Bug 1824638] 2007-11-09 Daniel Steffen * macosx/tkMacOSXCarbonEvents.c (InstallStandardApplicationEventHandler): on Mac OS X Leopard, replace the 2005-11-27 approach of installing the standard application handler by calling RAEL and immediately longjmping out of it from an event handler, as that now leads to crashes in -[NSView unlockFocus] whenever HIToolbox uses Cocoa in Leopard (Help menu, Nav Services, Color Picker). Instead call InstallStandardEventHandler() on the application and menubar event targets, as Leopard ISEH finally handles these correctly. Unfortunately need a HIToolbox-internal SPI to retrieve the menubar event target, no public API appears have that functionality. * macosx/tkMacOSXDebug.c: make TkMacOSXInitNamedDebugSymbol() * macosx/tkMacOSXDebug.h: available outside of debug builds as the new Leopard ISAEH needs it. * macosx/tkMacOSXButton.c: replace HiliteControl() by modern API * macosx/tkMacOSXMenubutton.c: for activation and enabling; distinguish inactive and disabled look&feel; correct activation handling to match that of container toplevel. * macosx/tkMacOSXMenubutton.c: correct size computation of bevelbutton variant to match that of buttons; fix crash with bitmap due to NULL GC; delay picParams setup until needed; formatting cleanup. [Bug 1824521] * library/menu.tcl: correct handling of menubutton "active" state on Aqua to match that of buttons. * macosx/tkMacOSXDefault.h: correct button & menubutton active foreground and background colors and menubutton border width. * macosx/tkMacOSXWindowEvent.c: handle kEventWindowExpanding carbon * macosx/tkMacOSXCarbonEvents.c: event instead of kEventWindowExpanded to ensure activate event arrives after window is remapped, also need to process all Tk events generated by remapping in the event handler to ensure children are remapped before activate event is processed. * macosx/tkMacOSXSubwindows.c: add pixmap size field to MacDrawable * macosx/tkMacOSXInt.h: struct; add flag for B&W pixmaps. * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEmbed.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXPrivate.h: correct Leopard HIToolboxVersionNumber. * macosx/ttkMacOSXTheme.c: add error checking; cleanup formatting. * macosx/tkMacOSXFont.c (TkpGetFontAttrsForChar): panic on false return from TkMacOSXSetupDrawingContext(). * macosx/tkMacOSXButton.c: sync formatting, whitespace, copyright * macosx/tkMacOSXDialog.c: with core-8-4-branch. * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXWm.c: * xlib/xgc.c * library/bgerror.tcl: * library/console.tcl: * library/menu.tcl: 2007-11-07 Joe English * generic/ttk/ttkTheme.c (Ttk_ElementSize): Fixed longstanding, subtle bug that caused element padding to sometimes be counted twice in size computations. * generic/ttk/ttkElements.c, generic/ttk/ttkClamTheme.c, * generic/ttk/ttkDefaultTheme.c, generic/ttk/ttkTreeview.c, * generic/ttk/ttkImage.c, macosx/ttkMacOSXTheme.c, * win/ttkWinTheme.c, win/ttkWinXPTheme.c: Fix ElementSizeProcs affected by previous change. 2007-11-06 Andreas Kupries * doc/CrtConsoleChan.3: Fixed markup typo and extended see also section per suggestions by Donal. 2007-11-05 Joe English * library/ttk/combobox.tcl: Set focus to listbox in binding instead of in Post command (see [Bug 1349811] for info). 2007-11-05 Andreas Kupries * doc/CrtConsoleChan.3: New file providing minimal documentation of 'Tk_InitConsoleChannels()'. [Bug 432435] 2007-11-05 Joe English * macosx/ttkMacOSXTheme.c (TreeitemLayout): Remove focus ring from treeview items on OSX (problem reported by Kevin Walzer). 2007-11-04 Joe English * generic/ttk/ttkTreeview.c: Use null "treearea" element for treeview owner-draw area instead of "client", to avoid nameclash with Notebook.client element (this was causing sizing anomalies in XP theme, and introduced extraneous padding). * generic/ttk/ttkDefaultTheme.c: Treeitem.indicator element needs left margin now. 2007-11-04 Daniel Steffen * macosx/tkMacOSXMenus.c: add "Run Widget Demo" menu item to the default Edit menu along with associated carbon event handler enabling the item only if demo files are installed; cleanup handling of "About" and "Source" menu items. * library/bgerror.tcl: fix background of detail text on Aqua. * library/console.tcl: add accelerators and fix Aqua bindings of the new font size menu items. * library/demos/mclist.tcl: Aqua GOOBE. * library/demos/tree.tcl: * library/demos/ttknote.tcl: * library/demos/widget: * doc/chooseDirectory.n: remove/correct obsolete Mac OS 9-era * doc/getOpenFile.n: information. * doc/menu.n: * macosx/tkMacOSXEvent.c (TkMacOSXProcessCommandEvent): fix boolean arg * macosx/Wish.xcodeproj/project.pbxproj: add new demo file. * macosx/Wish.xcode/project.pbxproj: 2007-11-03 Pat Thoyts * library/console.tcl: Add menu item and key binding to adjust font. 2007-11-02 Donal K. Fellows * library/demos/mclist.tcl: Added a demo of how to do a multi-column sortable listbox. * library/msgbox.tcl: Made message dialog use Ttk widgets for better L&F. * library/tkfbox.tcl (::tk::dialog::file::CompleteEnt): Added completion. [FR 805091] * library/tkfbox.tcl: Made file dialog use Ttk widgets for better L&F. * library/demos/sayings.tcl: Better resizing. [Bug 1822410] 2007-11-01 Donal K. Fellows * library/demos/textpeer.tcl: Better resizing. [Bug 1822601] * doc/colors.n: Added list of Windows system colors. [Bug 945409] 2007-11-01 Daniel Steffen * macosx/tkMacOSXColor.c (GetThemeColor): improve translation of RGB pixel values into RGBColor. * library/demos/widget: increase height of main window text widget to use more of the available vertical space. * doc/bind.n: document the Option modifier, clarify meaning and availability of Command & Option. * doc/console.n: clarify availability of [console] in TkAqua. 2007-11-01 Donal K. Fellows * unix/installManPage, doc/*.n: Make documentation use the name that scripts use as much as possible. [Bug 1640073] * doc/text.n: Fixed mistake in [$t tag remove] docs. [Bug 1792191] * doc/bind.n: Documented the Command modifier. [Bug 1232908] * doc/console.n, doc/wish.1: Made it clearer when and why the console command is present. [Bug 1386955] 2007-10-31 Donal K. Fellows * library/demos/entry3.tcl: Improved description/comments so that people better understand what is being validated, following suggestion from Don Porter. * library/demos/image2.tcl (loadImage): Mark non-loadable images as such instead of throwing a nasty dialog, following suggestion from Don Porter. * generic/tkImgPhoto.c (Tk_PhotoPutBlock): More optimization, derived from [Patch 224066]. 2007-10-30 Joe English * library/ttk/combobox.tcl (Unpost): BUGFIX: Unpost can be called with no preceding Post. 2007-10-31 Pat Thoyts * win/rules.vc: Use -fp:strict with msvc8 as -fp:precise fails on * generic/tkObj.c: amd64 builds. Fix the two places in Tk that * generic/tkTrig.c: generate errors with msvc8 when using this flag. 2007-10-30 Jeff Hobbs * library/choosedir.tcl: only enable OK button when valid in conjunction with -mustexist. [Bug 1550528] * library/listbox.tcl (::tk::ListboxBeginSelect): ignore -takefocus when considering focus on <1>, it is for tab focus. 2007-10-30 Don Porter * generic/tk.h: Bump version number to 8.5b2.1 to distinguish * library/tk.tcl: CVS development snapshots from the 8.5b2 * unix/configure.in: release. * unix/tk.spec: * win/configure.in: * unix/configure: autoconf (2.59) * win/configure: 2007-10-30 Jeff Hobbs * doc/text.n: fix spelling of -inactiveselectbackground [Bug 1626415] * library/entry.tcl: don't error with Clear event. [Bug 1509288] * library/ttk/fonts.tcl: use size -12 TkFixedFont (was -10) on X11 2007-10-30 Donal K. Fellows * library/demos/unicodeout.tcl: Fixed Arabic and Hebrew rendering on Windows. [Bug 1803723] * generic/tkImgPhoto.c (ImgPhotoCmd): Rename enumeration for somewhat simpler-to-read code. [Bug 1677613] 2007-10-30 Joe English * generic/ttk/ttkWidget.c: Split up RedisplayWidget() to factor out double-buffering related code. * macosx/ttkMacOSXAquaTheme.c: Use SetThemeBackGround/ kThemeBrushModelessDialogBackground{Active|Inactive} instead of ApplyThemeBackground/kThemeBackgroundWindowHeader (advice from DAS). * library/ttk/aquaTheme.tcl: Use darker shade for inactive and disabled text, to match typical values of most kThemeXXXTextColorInactive values. 2007-10-30 Donal K. Fellows * doc/selection.n: Clarify UTF8_STRING handling. [Bug 1778563] * doc/text.n: Clarify search subccommand docs. [Bug 1622919] 2007-10-29 Jeff Hobbs * macosx/tkMacOSXFont.c (InitSystemFonts): * library/ttk/fonts.tcl: use Monaco 11 (was 9) as Aqua TkFixedFont * tests/listbox.test, tests/panedwindow.test, tests/scrollbar.test: * library/bgerror.tcl, library/dialog.tcl, library/listbox.tcl: * library/msgbox.tcl, library/optMenu.tcl, library/tclIndex: * library/tkfbox.tcl, library/demos/floor.tcl, library/demos/rmt: * library/demos/tcolor, library/demos/text.tcl: * library/demos/twind.tcl, library/demos/widget: Buh-bye Motif look * library/ttk/fonts.tcl: Update of Tk default look in 8.5 * macosx/tkMacOSXDefault.h: Trims border sizes, cleaner X11 look * unix/tkUnixDefault.h: with minor modifications for Win32/Aqua. * win/tkWinDefault.h: Uses Tk*Font definitions throughout for * win/tkWinFont.c: classic widgets. [Bug 1820344] * library/obsolete.tcl (::tk::classic::restore): This restores changes made to defaults in 8.5 using the 'option' command, segmented into logical groups. * tests/winfo.test: winfo-4.5 raise .t to above . for Windows * tests/unixWm.test: note TIP#142 results and remove unnecessary catches. 2007-10-29 Donal K. Fellows * doc/*.1, doc/*.n, doc/*.3: Lots more GOOBE work. 2007-10-28 Joe English * library/ttk/combobox.tcl: Make popdown window [wm resizable 0 0] on OSX, to prevent TkAqua from shrinking the scrollbar to make room for a grow box that isn't there. * macosx/ttkMacOSXTheme.c, library/ttk/aquaTheme.tcl: Reworked combobox layout. 2007-10-26 Don Porter *** 8.5b2 TAGGED FOR RELEASE *** * changes: Update changes for 8.5b2 release. * doc/*.1: Revert doc changes that broke * doc/*.3: `make html` so we can get the release * doc/*.n: out the door. * README: Bump version number to 8.5b2. * generic/tk.h: * library/tk.tcl: * unix/configure.in: * unix/tk.spec: * win/configure.in: * unix/configure: autoconf-2.59 * win/configure: 2007-10-26 Daniel Steffen * macosx/tkMacOSXWm.c (ApplyMasterOverrideChanges): fix window class of transient toplevels that are not also overrideredirect. [Bug 1816252] * macosx/tkMacOSXDialog.c: TIP#242 cleanup. * library/demos/filebox.tcl: demo TIP#242 -typevariable. 2007-10-25 Joe English * generic/ttk/ttkNotebook.c: [Bug 1817596] 2007-10-25 Jeff Hobbs * doc/getOpenFile.n: TIP#242 implementation of -typevariable to * library/tkfbox.tcl: return type of selected file in file dialogs. * library/xmfbox.tcl: [Bug 1156388] * macosx/tkMacOSXDialog.c: * tests/filebox.test: * tests/winDialog.test: * win/tkWinDialog.c: 2007-10-25 Don Porter * generic/tkPlace.c: Prevent segfault in place geometry manager. Thanks to Colin McDonald. [Bug 1818491] 2007-10-24 Joe English * generic/ttk/*.c, win/{ttkWinMonitor,ttkWinTheme,ttkWinXPTheme}.c, * macosx/ttkMacOSXTheme.c: Move widget layout registration from TtkElements_Init() to widget *_Init() routines. Renaming/consistency: s/...ElementGeometry()/...ElementSize()/ 2007-10-24 Donal K. Fellows * doc/*.n, doc/*.3, doc/*.1: Lots of changes to take advantage of the new macros. 2007-10-24 Pat Thoyts * win/tkWinDraw.c: Applied [Patch 1723362] for transparent bitmaps. * generic/tkWindow.c: permit wm manage of any widget (esp: ttk::frame) 2007-10-23 Jeff Hobbs * library/ttk/combobox.tcl (ttk::combobox::PopdownWindow): redo wm transient on each drop to handle reparent-able frames. [Bug 1818441] 2007-10-23 Joe English * library/ttk/combobox.tcl: [namespace import ::ttk::scrollbar] doesn't work, since ttk::scrollbar isn't [namespace export]ed. 2007-10-23 Don Porter * tests/cursor.test: Make tests robust against changes in Tcl's rules for accepting integers in octal format. 2007-10-23 Donal K. Fellows * doc/font.n: Added section on the TIP#145 fonts. 2007-10-23 Pat Thoyts * win/tkWinFont.c: Fixed leak in CreateNamedFont spotted by das. 2007-10-23 Daniel Steffen * library/demos/combo.tcl: Aqua GOOBE. * library/demos/toolbar.tcl: * library/demos/tree.tcl: * library/demos/ttknote.tcl: * library/demos/ttkprogress.tcl: * library/demos/widget: * macosx/Wish.xcodeproj/project.pbxproj: add new demo files. * macosx/Wish.xcode/project.pbxproj: 2007-10-22 Donal K. Fellows * library/demos/widget: Added more demos, reorganized to make Tk and Ttk demos seem to be more coherent whole. Made localization a bit easier by reducing the amount of duplication. * library/demos/{combo,toolbar,tree,ttknote,ttkprogress}.tcl: New demos of new (mostly) Ttk widgets. * library/demos/ttkbut.tcl: Improvements. 2007-10-22 Joe English * library/ttk/combobox.tcl: ttk::combobox overhaul; fixes [Bugs 1814778, 1780286, 1609168, 1349586] * library/ttk/aquaTheme.tcl: Factored out aqua-specific combobox -postposition adjustments. * generic/ttk/ttkTrack.c: Detect [grab]s and unpress pressed element; combobox workaround no longer needed. 2007-10-22 Daniel Steffen * macosx/tkMacOSXFont.c: register named fonts for TIP #145 fonts and all theme font IDs. * generic/tkFont.c (Tk{Create,Delete}NamedFont): allow NULL interp. * library/ttk/fonts.tcl: check for TIP #145 fonts on all platforms; correct aqua font sizes. * library/demos/ttkmenu.tcl: Aqua GOOBE. * library/demos/ttkpane.tcl: * library/demos/widget: * macosx/Wish.xcodeproj/project.pbxproj: add new demo files. * macosx/Wish.xcode/project.pbxproj: 2007-10-18 Donal K. Fellows * library/demos/ttkmenu.tcl: Added more demos of Ttk widgets. These * library/demos/ttkpane.tcl: ones are of menubuttons, panedwindows and a progress bar (indirectly). 2007-10-18 Pat Thoyts * library/ttk/fonts.tcl: Create all the TIP #145 font names on all platforms (mac and unix get handled in script, windows in C) 2007-10-17 David Gravereaux * bitmaps/*.xbm: Changed CVS storage mode from -kb to -kkv as these are really text files, not binaries. * win/makefile.vc: Added $(BITMAPDIR) to the search path for the depend target. 2007-10-18 Daniel Steffen * library/demos/widget: Aqua GOOBE, cleanup icons. * library/demos/ttkbut.tcl: * library/demos/entry3.tcl: * library/demos/msgbox.tcl: * library/demos/button.tcl: restore setting of button highlightbackground on Aqua. * macosx/ttkMacOSXTheme.c: adjust button and separator geometry. * macosx/tkMacOSXWm.c: fix warnings. * macosx/Wish.xcodeproj/project.pbxproj: add new demo files. * macosx/Wish.xcode/project.pbxproj: 2007-10-17 Donal K. Fellows * library/demos/ttkbut.tcl: Added demo of the basic Ttk widgets. 2007-10-16 David Gravereaux * win/makefile.vc: depend target now works and builds a generated dependency list with $(TCLTOOLSDIR)/mkdepend.tcl 2007-10-16 Donal K. Fellows * library/demos/widget: Made the code for generating the contents of the main widget more informative. Added 'new' flagging for wholly new demos. * doc/text.n: Made it clearer what things are text widget invokations and what are not. Also some other clarity improvements. 2007-10-15 Donal K. Fellows * library/demos/widget: Use Ttk widgets for the widget demo core, for vastly improved look-and-feel on at least one platform (Windows). * library/demos/{button,check,style,twind}.tcl: Various tweaks for GOOBE... * library/demos/textpeer.tcl: New demo script to show off peering as a specific feature. 2007-10-15 Jeff Hobbs * generic/tkFocus.c, generic/tkFrame.c, generic/tkInt.h: * macosx/tkMacOSXButton.c, macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXWm.c, unix/tkUnixWm.c, win/tkWinWm.c: * doc/wm.n, tests/wm.test: TIP #125 implementation. [Bug 998125] Adds [wm manage|forget] for dockable frames. Finished X11 and Windows code, needs OS X completion. 2007-10-15 Joe English * generic/ttk/ttkTreeview.c: Store pointer to column table entry instead of column index in columnNames hash table. This avoids the need for the evil PTR2INT and INT2PTR macros, and simplifies things a bit. 2007-10-15 Daniel Steffen * generic/tkArgv.c: Fix gcc warnings about 'cast to/from * generic/tkCanvUtil.c: pointer from/to integer of different * generic/tkCanvas.c: size' on 64-bit platforms by casting * generic/tkCursor.c: to intermediate types * generic/tkInt.h: intptr_t/uintptr_t via new PTR2INT(), * generic/tkListbox.c: INT2PTR(), PTR2UINT() and UINT2PTR() * generic/tkObj.c: macros. * generic/tkStyle.c: * generic/tkTextIndex.c: * generic/tkUtil.c: * generic/ttk/ttkTheme.h: * generic/ttk/ttkTreeview.c: * unix/tkUnixMenu.c: * unix/configure.in: * unix/configure: autoconf-2.59 * unix/tkConfig.h.in: autoheader-2.59 * macosx/Wish-Common.xcconfig: add 'tktest-X11' target. * macosx/Wish.xcode/project.pbxproj: * macosx/Wish.xcode/default.pbxuser: * macosx/Wish.xcodeproj/default.pbxuser: * macosx/Wish.xcodeproj/project.pbxproj: * unix/configure.in (Darwin): add support for 64-bit X11. * unix/configure: autoconf-2.59 2007-10-14 Jeff Hobbs * win/configure, win/configure.in (TK_WIN_VERSION): Make sure the patchlevel doesn't contain extra dotted pairs (eg. interim release) 2007-10-12 Pat Thoyts * win/makefile.vc: Mine all version information from headers. * win/rules.vc: Sync tcl and tk and bring extension versions * win/nmakehlp.c: closer together. Try and avoid using tclsh to do substitutions as we may cross compile. * library/console.tcl: Use TkFixedFont and ttk widgets 2007-10-12 Daniel Steffen * macosx/tkMacOSXDraw.c: replace all (internal) use of QD region * macosx/tkMacOSXSubwindows.c: API by HIShape API, with conversion to * macosx/tkMacOSXWindowEvent.c: QD regions only when required by legacy * macosx/tkMacOSXPrivate.h: Carbon or Tk API. * macosx/tkMacOSXRegion.c: * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXInt.h: replace MacDrawable's QD RgnHandles * macosx/tkMacOSXEmbed.c: clipRgn, aboveClipRgn & drawRgn by * macosx/tkMacOSXMenu.c: HIShapeRefs visRgn & aboveVisRgn and * macosx/tkMacOSXSubwindows.c: CGRect drawRect. * macosx/tkMacOSXWindowEvent.c: remove use of QD port vis rgn in * macosx/tkMacOSXSubwindows.c: window update rgn calculation, * macosx/tkMacOSXWm.c: manually excise growbox from toplevel clip rgn instead. * macosx/tkMacOSXDraw.c: replace use of QD port clip rgn by new * macosx/tkMacOSXPrivate.h: clipRgn fld in TkMacOSXDrawingContext; handle QD/CG drawing mismatches in XCopyArea, XCopyPlane and TkPutImage; cleanup/speedup CGContext setup in TkMacOSXSetupDrawingContext(). * macosx/tkMacOSXDraw.c: change TkMacOSXSetupDrawingContext() * macosx/tkMacOSXEntry.c: to return boolean indicating whether * macosx/tkMacOSXFont.c: drawing is allowed (and was setup) or * macosx/tkMacOSXMenu.c: not (e.g. when clipRgn is empty). * macosx/ttkMacOSXTheme.c: * macosx/tkMacOSXSubwindows.c: signal that drawable is a pixmap via * macosx/tkMacOSXInt.h: new explicit TK_IS_PIXMAP flag instead of a NULL cligRgn field. * macosx/tkMacOSXRegion.c: add wrappers for missing/buggy HIShape * macosx/tkMacOSXPrivate.h: API, and private helpers to operate on HIShapeRefs & convert to/from TkRegion * macosx/tkMacOSXRegion.c: add Tkp{Retain,Release}Region() API * macosx/tkMacOSXInt.h: for TkRegion. * xlib/xgc.c: factor out alloc/free of GC clip_mask; * macosx/tkMacOSXXStubs.c: manage clip rgn lifetime with new Tkp{Retain,Release}Region(). * macosx/tkMacOSXButton.c: delay picParams setup until needed. * generic/tkTextDisp.c (CharUndisplayProc): fix textDisp.test crash. 2007-10-11 David Gravereaux * win/winMain.c: Replaced incorrect comments in main() to descibe why the console widget does not need to be created for this application entry point (if used). Must have been a bad copy/paste of WinMain() from 10 years back. 2007-10-11 Daniel Steffen * macosx/tkMacOSXWm.c (TkMacOSXGrowToplevel): manually constrain resize limitBounds to maxBounds, works around SectRect() mis-feature (return zero rect if input rect has zero height/width). [Bug 1810818] 2007-10-09 Pat Thoyts * generic/tkImage.c: Make Ttk_GetImage safe if called with NULL * tests/ttk/image.test: interp. Added some tests that crash on Windows without this fix. 2007-10-02 Don Porter [core-stabilizer-branch] * README: Bump version number to 8.5.0 * generic/tk.h: * library/tk.tcl: * unix/configure.in: Updated LOCALES. * unix/tk.spec: * win/configure.in: * unix/configure: autoconf (2.59) * win/configure: 2007-09-30 Joe English * library/ttk/entry.tcl (WordBack, WordForward): Fix private routines accidentally defined in global namespace [Bug 1803836] 2007-09-26 Donal K. Fellows * library/msgs/hu.msg: Added Hungarian message set, from Pader Reszo. [Patch 1800742] 2007-09-20 Donal K. Fellows *** 8.5b1 TAGGED FOR RELEASE *** * generic/tkTextDisp.c (LayoutDLine): Only call callbacks that are * tests/textDisp.test (textDisp-32.3): not NULL. [Bug 1791052] 2007-09-20 Don Porter * changes: updates for 8.5b1 release. 2007-09-19 Don Porter * README: Bump version number to 8.5b1. * generic/tk.h: Merge from core-stabilizer-branch. * library/tk.tcl: Stabilizing toward 8.5b1 release now done * unix/configure.in: on the HEAD. core-stabilizer-branch is * unix/tk.spec: now suspended. * win/configure.in: 2007-09-19 Pat Thoyts * generic/tkStubLib.: Replaced isdigit with internal implementation. 2007-09-18 Don Porter * generic/tkStubLib.c: Remove C library calls from Tk_InitStubs() * win/makefile.vc: so that we don't need the C library linked in to libtkStub. 2007-09-18 Donal K. Fellows * generic/tkImgGIF.c (FileReadGIF, StringReadGIF): Rewrite for greater clarity (more comments, saner code arrangement, etc.) 2007-09-18 Pat Thoyts * tests/all.tcl: Made ttk/all.tcl be the same as tk's all.tcl and * tests/ttk/all.tcl: make use of file normalize (bugs noted by mjanssen and GPS with msys) 2007-09-17 Pat Thoyts * win/makefile.vc: Add crt flags for tkStubLib now it uses C-library functions. 2007-09-17 Joe English * unix/tcl.m4: use '${CC} -shared' instead of 'ld -Bshareable' to build shared libraries on current NetBSDs. [Bug 1749251] * unix/configure: regenerated (autoconf-2.59). 2007-09-17 Don Porter * generic/tkConsole.c: Revised callers of Tcl_InitStubs() to account * generic/tkMain.c: for restored compatible support for the call * generic/tkWindow.c: Tcl_InitStubs(interp, TCL_VERSION, 1). Also revised Tcl_PkgRequire() call for Tcl so that, for example, a Tk library built against Tcl 8.5.1 headers will not refuse to [load] into a Tcl 8.5.0 interpreter. [Tcl Bug 1578344] * generic/tk.h: Revised Tk_InitStubs() to restore Tk 8.4 * generic/tkStubLib.c: source compatibility with callers of * generic/tkWindow.c: Tk_InitStubs(interp, TK_VERSION, 1). 2007-09-17 Joe English * library/ttk/combobox.tcl: Try to improve combobox appearance on OSX + Tk 8.5. [Bug 1780286] 2007-09-15 Daniel Steffen * unix/tcl.m4: replace all direct references to compiler by ${CC} to enable CC overriding at configure & make time; run check for visibility "hidden" with all compilers; quoting fixes from TEA tcl.m4. (SunOS-5.1x): replace direct use of '/usr/ccs/bin/ld' in SHLIB_LD by 'cc' compiler driver. * unix/configure: autoconf-2.59 2007-09-14 Daniel Steffen * macosx/Wish-Common.xcconfig: enable Tcl DTrace support. * macosx/Wish.xcodeproj/project.pbxproj: 2007-09-12 Andreas Kupries * win/Makefile.in (install-binaries): Fixed missing brace in the * win/makefile.vc (install-binaries): generated package index file. Note: unix/Makefile.in is good. 2007-09-11 Reinhard Max * generic/tkImgGIF.c: Fixed a buffer overrun that got triggered by multi-frame interlaced GIFs that contain subsequent frames that are smaller than the first one. * tests/imgPhoto.test: Added a test for the above. 2007-09-11 Don Porter * generic/tkConsole.c: Revised calls to Tcl_InitStubs() and * generic/tkMain.c: [package require Tcl] so that Tk Says What It * generic/tkWindow.c: Means using the new facilties of [package] in * library/tk.tcl: Tcl 8.5 about what version(s) of Tcl it is * unix/Makefile.in: willing to work with. [Bug 1578344] * win/Makefile.in: * win/makefile.vc: 2007-09-10 Jeff Hobbs * unix/README: typo corrections [Bug 1788682] 2007-09-10 Don Porter * generic/tkConsole.c: Revise all Tcl_InitStubs() calls to restore * generic/tkMain.c: the traditional practice that a Tk shared * generic/tkWindow.c: library may [load] into a Tcl 8.5 interp at any patchlevel. This practice also matches the compile time checks of TCL_MAJOR_VERSION and TCL_MINOR_VERSION in tk.h. [Bug 1723622] 2007-09-06 Don Porter * generic/tkWindow.c (Initialize): Moved common Tk initialization * generic/tkInitScript.h (removed): script out of tkInitScript.h * macosx/tkMacOSXInit.c: and multiple TkpInit() routines and * unix/Makefile.in: into the common Initialize() routine in * unix/tkUnixInit.c: generic code. Also removed constraint on * win/tkWinInit.c: ability to define a custom [tkInit] before calling Tk_Init(). Until now the custom [tkInit] had to be a proc. Now it can be any command. Removal of tkInitScript.h also fixes [Bug 1656283]. 2007-09-06 Daniel Steffen * macosx/Wish.xcode/project.pbxproj: discontinue unmaintained support * macosx/Wish.xcode/default.pbxuser: for Xcode 1.5; replace by Xcode2 project for use on Tiger (with Wish.xcodeproj to be used on Leopard). * macosx/Wish.xcodeproj/project.pbxproj: updates for Xcode 2.5 and 3.0. * macosx/Wish.xcodeproj/default.pbxuser: * macosx/Wish.xcode/project.pbxproj: * macosx/Wish.xcode/default.pbxuser: * macosx/Wish-Common.xcconfig: * macosx/README: document project changes. 2007-09-04 Joe English * generic/tkTest.c: Fix for [Bug 1788019] "tkTest.c compiler warning". 2007-09-04 Don Porter * unix/Makefile.in: It's unreliable to count on the release manager to remember to `make genstubs` before `make dist`. Let the Makefile remember the dependency for us. * unix/Makefile.in: Corrections to `make dist` dependencies to be sure that macosx/configure gets generated whenever it does not exist. 2007-09-03 Daniel Steffen * generic/ttk/ttkInit.c (Ttk_Init): register ttk in package database to enable extension access to the ttkStubs table. * generic/ttk/ttkDecls.h: correct capitalization of ttk package name. 2007-08-28 Donal K. Fellows Assorted documentation improvements. * doc/button.n: Added examples. * doc/checkbutton.n: Added example. * doc/console.n: Standardized section ordering. * doc/tk.n: Added "See also". * doc/ttk_combobox.n: Added keywords. 2007-08-27 Daniel Steffen * macosx/tkMacOSXDialog.c (Tk_ChooseColorObjCmd): correct setting of interp result [Bug 1782105]; fix -initialcolor overwriting last color selection; style cleanup. 2007-08-21 Pat Thoyts * win/rules.vc: Synchronize with tcl rules.vc * tests/all.tcl: Fix the line-endings. 2007-08-07 Daniel Steffen * unix/Makefile.in: Add support for compile flags specific to object files linked directly into executables. * unix/configure.in (Darwin): Only use -seg1addr flag when prebinding; use -mdynamic-no-pic flag for object files linked directly into exes. * unix/configure: autoconf-2.59 2007-08-01 Pat Thoyts * win/tkWinDialog.c: Fix [Bug 1692927] (buffer length problems) * win/tkWinTest.c: Added 'testfindwindow' and 'testgetwindowinfo' and extended 'testwinevent' for WM_COMMAND support to enable testing native messagebox dialogs. * tests/winMsgbox.test: New Windows native messagebox tests. 2007-07-25 Daniel Steffen * macosx/tkMacOSXDialog.c (NavServicesGetFile): Reset interp result on nav dialog cancel. [Bug 1743786] 2007-07-09 Jeff Hobbs * unix/Makefile.in: clarify what the headers installed are, and add ttkTheme.h and ttkDecls.h to private headers (later public). 2007-07-09 Daniel Steffen * macosx/tkMacOSXWindowEvent.c (Tk_MacOSXIsAppInFront): Use process mgr * macosx/tkMacOSXMouseEvent.c: to determine if app is in front instead of relying on activate/deactivate events (which may arrive after this info is needed, e.g. during window drag/click activation); replace other process mgr use to get this info with calls to Tk_MacOSXIsAppInFront(). * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): Correct window click activation, titlebar click handling and background window dragging/growing in the presence of grabs or window-/app-modal windows; fix window click activation bringing all other app windows to front. * macosx/tkMacOSXDraw.c (TkPutImage): Handle non-native XImage byte and bit orders; reverse bits via xBitReverseTable instead of InvertByte(). 2007-07-06 Joe English * library/ttk/aquaTheme.tcl: Set -anchor w for TMenubuttons. [Bug 1614540] 2007-07-04 Andreas Kupries * macosx/tkMacOSXXStubs.c (DestroyImage): Fixed seg.fault in release of image data for images coming from XGetImage. Change committed by me for Daniel Steffen. See 2007-06-23 for the change which introduced the problem. 2007-07-02 Daniel Steffen * xlib/xgc.c (XCreateGC): Correct black and white pixel values used to initialize GC foregrund and background fields. * macosx/tkMacOSXColor.c: Add debug messages for unknown pixel values. * macosx/tkMacOSXDraw.c (TkMacOSXRestoreDrawingContext): Don't restore port state if it wasn't altered by TkMacOSXSetupDrawingContext(). 2007-06-29 Daniel Steffen * xlib/ximage.c: Bitmaps created from the static .xbm arrays always have LSBFirst bit order. * unix/configure.in: Fix flag used to weak-link libXss. * unix/configure: autoconf-2.59 * macosx/tkMacOSXScrlbr.c: Correct int <-> dobule conversion issues that could lead to Carbon getting confused about scrollbar thumb size. * macosx/tkMacOSXDraw.c (XCopyArea, XCopyPlane, TkPutImage): Use TkMacOSX{Setup,Restore}DrawingContext() to setup/restore clip & colors. (TkMacOSXSetupDrawingContext, TkMacOSXRestoreDrawingContext): Add save and restore of QD port clip region; factor out clip region code common to CG and QD branches; check for port and context validity; handle tkPictureIsOpen flag during QD port setup. (TkScrollWindow): Remove unnecessary scroll region manipulation * macosx/tkMacOSXDraw.c: Remove second global QD temp region * macosx/tkMacOSXInt.h: (no longer necessary) and rename * macosx/tkMacOSXRegion.c: remaining global QD temp region. * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXDraw.c: Make useCGDrawing variable MODULE_SCOPE * macosx/tkMacOSXFont.c: and respect it for ATSUI font drawing. * macosx/tkMacOSXButton.c: Reduce reliance on current QD port * macosx/tkMacOSXColor.c: setting and remove unnecessary * macosx/tkMacOSXDebug.c: references to a drawable's QD port, * macosx/tkMacOSXDebug.h: notably replace GetWindowFromPort( * macosx/tkMacOSXDialog.c: TkMacOSXGetDrawablePort()) idiom by new * macosx/tkMacOSXDraw.c: TkMacOSXDrawableWindow() and change * macosx/tkMacOSXKeyEvent.c: TkMacOSXSetColorInPort() to take a port * macosx/tkMacOSXMenu.c: argument. * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXInt.h: Factor out macros, declarations * macosx/tkMacOSXPrivate.h (new): and prototypes that are purely internal and private to the 'macosx' sources into a new internal header file that does _not_ get installed into Tk.framework/PrivateHeaders. * macosx/tkMacOSXButton.c: #include new tkMacOSXPrivate.h * macosx/tkMacOSXCarbonEvents.c: instead of tkMacOSXInt.h. * macosx/tkMacOSXClipboard.c: * macosx/tkMacOSXColor.c: * macosx/tkMacOSXCursor.c: * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDialog.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXNotify.c: * macosx/tkMacOSXRegion.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c: * macosx/ttkMacOSXTheme.c: * macosx/Wish.xcodeproj/project.pbxproj: Improve support for renamed * macosx/Wish.xcodeproj/default.pbxuser: tcl and tk source dirs; add * macosx/Wish-Common.xcconfig: 10.5 SDK build config; remove tclMathOp.c. * macosx/README: Document Wish.xcodeproj changes. 2007-06-23 Daniel Steffen * generic/tkImgPhoto.c (ImgPhotoConfigureInstance, DisposeInstance): Use XDestroyImage instead of XFree to destroy XImage; replace runtime endianness determination by compile-time check for WORDS_BIGENDIAN. * xlib/ximage.c (XCreateBitmapFromData): Use XCreateImage and XDestroyImage instead of creating XImage structure manually. * macosx/tkMacOSXXStubs.c (XCreateImage, DestroyImage): Correct XImage bytes_per_line/bitmap_pad calculations and endianness setting; free image data and XImage structure at destruction; formatting cleanup. * macosx/tkMacOSXDialog.c (NavServicesGetFile): Disable app-modal sheet variant of nav dialog on OS versions where it causes problems. 2007-06-20 Jeff Hobbs * library/ttk/ttk.tcl: Should require Tk before pseudo-providing tile 0.8.0. 2007-06-09 Joe English * generic/ttk/ttkPanedwindow.c, doc/ttk_panedwindow.n, * tests/ttk/panedwindow.test: Added -width and -height options. Added 'panes' method, return list of managed windows. 'sashpos' method is now documented as part of the public interface, and details clarified. Should be easier to set initial sash positions now. Alleviates [Bug 1659067]. 2007-06-09 Jeff Hobbs * win/tkWinWm.c (WmIconphotoCmd): fix wm iconphoto RGBA issues. [Bug 1467997] (janssen) * win/tkWinMenu.c (TkWinHandleMenuEvent): Improve handling to allow for unicode char menu indices and not use CharUpper on Tcl utf strings. [Bug 1734223] 2007-06-09 Joe English * generic/ttk/ttkManager.h, generic/ttk/ttkManager.c, * generic/ttk/ttkNotebook.c, generic/ttk/ttkPanedwindow.c, * generic/ttk/ttkFrame.c: Ttk_Manager API overhaul: + Ttk_Manager no longer responsible for managing slave records + Ttk_Manager structure now opaque + Ttk_Slave structure now private + Pass Ttk_Manager* to Tk_GeomMgr hooks instead of Ttk_Slave* * generic/ttk/ttkFrame.c: Simplified -labelwidget management. * doc/ttk_panedwindow.n, library/ttk/panedwindow.tcl: Changed documentation of ttk::panedwindow 'identify' command to match implementation. * generic/ttk/ttkNotebook.c, tests/ttk/notebook.test: BUGFIX: ttk::noteboook 'insert' command didn't correctly maintain current tab. 2007-06-09 Daniel Steffen * macosx/tkMacOSXColor.c: Fix issues with TK_{IF,ELSE,ENDIF} macros; * macosx/tkMacOSXDraw.c: implement Jaguar equivalent of unavailable * macosx/tkMacOSXEntry.c: kHIToolboxVersion global; panic at startup * macosx/tkMacOSXEvent.c: if MAC_OS_X_VERSION_MIN_REQUIRED constraint * macosx/tkMacOSXInit.c: is not satisfied. * macosx/tkMacOSXInt.h: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXDraw.c (XCopyArea, XCopyPlane, TkPutImage) (TkMacOSXSetupDrawingContext): Factor out common code and standardize setup/restore of port, context and clipping; formatting cleanup. * macosx/tkMacOSXWindowEvent.c: Add error checking. * macosx/tkMacOSXMenu.c: Fix gcc3 warning. * macosx/tkMacOSXScrlbr.c: Fix testsuite crash. * macosx/tkMacOSXSubwindows.c: Formatting cleanup. * macosx/tkMacOSXRegion.c: Fix typos. * macosx/tkMacOSXScale.c: * macosx/tkMacOSXXStubs.c (Tk_GetUserInactiveTime): Remove superfluous CFRetain/CFRelease. * macosx/Wish-Release.xcconfig: Disable tktest release build stripping. * macosx/Wish.xcodeproj/project.pbxproj: Add new Tclsh-Info.plist.in. 2007-06-06 Daniel Steffen * macosx/tkMacOSXInt.h: Use native debug message API when available. * macosx/Wish-Debug.xcconfig: * macosx/tkMacOSXMouseEvent.c (GenerateMouseWheelEvent): Enable processing of mousewheel events in background windows. * macosx/tkMacOSXScrlbr.c: Modernize checks for active/front window. * macosx/tkMacOSXScale.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXColor.c: Factor out verbose #ifdef checks of * macosx/tkMacOSXDraw.c: MAC_OS_X_VERSION_{MAX_ALLOWED,MIN_REQUIRED} * macosx/tkMacOSXEntry.c: and runtime checks of kHIToolboxVersion into * macosx/tkMacOSXEvent.c: new TK_{IF,ELSE,ENDIF}_MAC_OS_X macros. * macosx/tkMacOSXInit.c: * macosx/tkMacOSXInt.h: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXDraw.c: Factor out clip clearing in QD ports; * macosx/tkMacOSXEntry.c: Formatting cleanup. * macosx/Wish.xcodeproj/project.pbxproj: Add settings for Fix&Continue. * unix/configure.in (Darwin): Link the Tk and Wish plists into their binaries in all cases; fix 64bit arch removal in fat 32&64bit builds. * unix/tcl.m4 (Darwin): Fix CF checks in fat 32&64bit builds. * unix/configure: autoconf-2.59 2007-06-05 Donal K. Fellows * doc/photo.n: Clarified the fact that base64 support for the -data option is not universal. [Bug 1731348] (matzek) 2007-06-03 Daniel Steffen * unix/Makefile.in: Add datarootdir to silence autoconf-2.6x warning. * macosx/Wish.xcodeproj/default.pbxuser: Add ttk tests. * macosx/tkMacOSXMenu.c: Add error checking; whitespace cleanup. * macosx/tkMacOSXDraw.c: Comment formatting fixes for Xcode 3.0 * macosx/tkMacOSXEmbed.c: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXKeyboard.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXSend.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c: 2007-06-02 Daniel Steffen * macosx/tkMacOSXMenu.c (TkpPostMenu): Ensure cascade menus display in posted menus that are not part of the menubar or attached to a menubutton (fixes bug reported on tcl-mac by Linus Nyberg). 2007-05-31 Daniel Steffen * macosx/tkMacOSXWindowEvent.c (GenerateUpdateEvent): Complete all pending idle-time redraws before newly posted Expose events are processed; add bounds of redrawn windows to update region to ensure all child windows overdrawn by parents are redrawn. * macosx/tkMacOSXWindowEvent.c: Centralize clip and window invalidation * macosx/tkMacOSXSubwindows.c: after location/size changes in the * macosx/tkMacOSXWm.c: BoundsChanged carbon event handler; correct/add window invalidation after window attribute changes. * macosx/tkMacOSXSubwindows.c (XResizeWindow, XMoveResizeWindow) (XMoveWindow): Factor out common code dealing with embedded and non-toplevel windows; remove unnecessary clip and window invalidation. * macosx/tkMacOSXButton.c (TkpDisplayButton): Move clip setup closer to native button drawing calls. * macosx/tkMacOSXWm.c (TkMacOSXIsWindowZoomed, TkMacOSXZoomToplevel): Correct handling of gridded windows in max size calculations. * macosx/tkMacOSXEvent.c (TkMacOSXFlushWindows): Use HIWindowFlush API when available. * macosx/tkMacOSXColor.c: Cleanup whitespace and formatting. * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWm.c: * generic/tkFont.c: #ifdef out debug msg printing to stderr. * generic/tkTextDisp.c: 2007-05-30 Don Porter * generic/tk.h: Correct placement of #include . [Bug 1723812] 2007-05-30 Daniel Steffen * library/bgerror.tcl: Standardize dialog option & button size * library/dialog.tcl: modifications done when running on on Aqua. * library/msgbox.tcl: * library/demos/button.tcl: Set button highlightbackground on Aqua. * macosx/tkMacOSXMenu.c (DrawMenuSeparator): Use DrawingContext API. * macosx/tkMacOSXWindowEvent.c (ClearPort): Clip to updateRgn. * macosx/tkMacOSXDebug.c: Factor out debug region flashing. * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXEvent.c: Cleanup whitespace and formatting. * macosx/tkMacOSXFont.c: * macosx/tkMacOSXRegion.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c: * xlib/xgc.c: * macosx/Wish.xcodeproj/project.pbxproj: Delete references to removed * macosx/Wish.xcodeproj/default.pbxuser: ttk files. 2007-05-28 Benjamin Riefenstahl * macosx/tkMacOSXFont.c (TkpMeasureCharsInContext): Fix short measures with flags=TK_WHOLE_WORDS|TK_AT_LEAST_ONE [Bug 1716141]. Make some casts unnecessary by changing variable types. 2007-05-25 Joe English * library/ttk/ttk.tcl: Omit ttk::dialog and dependencies. * library/ttk/dialog.tcl, library/ttk/icons.tcl, * library/ttk/keynav.tcl: Removed. * tests/ttk/misc.test: Removed. * doc/ttk_dialog.tcl: Removed. 2007-05-25 Donal K. Fellows * doc/canvas.n: Fixed documentation of default -joinstyle option values for line and polygon items. [Bug 1725782] 2007-05-22 Don Porter [core-stabilizer-branch] * unix/configure: autoconf-2.59 (FC6 fork) * win/configure: * README: Bump version number to 8.5b1 * generic/tk.h: * library/tk.tcl: * unix/configure.in: * unix/tk.spec: * win/configure.in: 2007-05-18 Joe English * generic/ttk/ttkEntry.c(EntrySetValue): Ensure that widget is in a consistent state before setting the linked -textvariable. Previously, it was possible for [$e index insert] to point past the end of the string, leading to heap corruption. [Bug 1721532] * tests/ttk/entry.test(entry-9.1): Add test case for the above. 2007-05-18 Don Porter * unix/configure: autoconf-2.59 (FC6 fork) * win/configure: * README: Bump version number to 8.5a7 * generic/tk.h: * library/tk.tcl: * unix/configure.in: * unix/tk.spec: * win/configure.in: * tests/ttk/treetags.test: Another bit of test suite SCIM-tolerance. [Bug 1609316] 2007-05-17 Daniel Steffen * generic/tk.decls: Workaround 'make checkstubs' failures from tkStubLib.c MODULE_SCOPE revert. [Bug 1716117] * macosx/Wish.xcodeproj/project.pbxproj: Add tkOldTest.c and remove tkStubImg.c. 2007-05-16 Joe English * generic/tkStubLib.c: Change Tk_InitStubs(), tkStubsPtr, and the auxilliary stubs table pointers back to public visibility. See [Bug 1716117] for details. Removed TCL_STORAGE_CLASS monkey business, as it had no effect. 2007-05-16 Don Porter * library/choosedir.tcl: Removed uses of obsolete {expand} * library/comdlg.tcl: syntax; replaced with the now * library/tk.tcl: approved {*}. [Bug 1710633] * tests/canvImg.test: * tests/imgPhoto.test: * tests/bind.test: Make test suite more SCIM-tolerant. [Bug 1609316] 2007-05-16 Pat Thoyts * win/makefile.vc: Test ttk widgets. 2007-05-15 Joe English * unix/tkUnixRFont.c: Fix crash introduced by previous fix exposed under newer fontconfig libraries [Bug 1717830] again. 2007-05-15 Don Porter * generic/tkGrid.c: Stop crash due to list intrep shimmer [Bug 1677608] 2007-05-15 Joe English * unix/tkUnixRFont.c: Fix various memory leaks. [Bug 1717830], [Bug 800149] 2007-05-14 Don Porter [Tk Bug 1712081] * unix/Makefile.in: Updates to account for new and deleted files * win/Makefile.in: tkStubImg.c and tkOldTest.c. * win/makefile.bc: * win/makefile.vc: * generic/tkOldTest.c (new): New file used to create testing * generic/tkTest.c: commands for testing various Tk * tests/constraints.tcl: legacy interfaces where a separate * tests/image.test: compilation unit is needed in order to #define suitable macros during compilation. Only the effect of USE_OLD_IMAGE on Tk_CreateImageType() is currently tested, but more similar testing commands can be added to this same file. New constraint defined to detect presence of the image type provided by the new testing code, and a few tests added to exercise it. Having USE_OLD_IMAGE support tested by the default test suite should reduce chance of a recurrence of this bug. * doc/CrtImgType.3: Revised docs to better indicate the legacy * doc/CrtPhImgFmt.3: nature of the interfaces supported by USE_OLD_IMAGE. * generic/tkDecls.h: make genstubs * generic/tkStubInit.c: * generic/tk.decls: Reworked USE_OLD_IMAGE support to use * generic/tk.h: the same support mechanisms both with * generic/tkStubImg.c (deleted):and without a stub-enabled build. In each case, route the legacy calls to Tk_CreateImageType and Tk_CreatePhotoImageFormat through the Tk_CreateOldImageType and Tk_CreateOldPhotoImageFormat routines. Add those routines to the public stub table so they're available to a stub-enabled extension. Remove the definition of Tk_InitImageArgs() and use a macro to convert any calls to it in source code into a comment. * generic/tkImage.c: Removed the MODULE_SCOPE declarations that * generic/tkImgPhoto.c: broke USE_OLD_IMAGE support. 2007-05-11 Pat Thoyts * tests/winButton.test: Avoid font dependencies in results. * generic/tkFont.c: propagate error from TkDeleteNamedFont. [Bug 1716613] 2007-05-09 Daniel Steffen * generic/tkFileFilter.c (AddClause): OSType endianness fixes. * library/palette.tcl (tk::RecolorTree): Handle color options with empty value, fixes error due to emtpy -selectforeground (reported on tcl-mac by Russel E. Owen). * macosx/tkMacOSXWindowEvent.c: Ensure window is brought to the front * macosx/tkMacOSXMouseEvent.c: at the start of a window drag (except * macosx/tkMacOSXInt.h: when cmd key is down); formatting and whitespace fixes. * macosx/tkMacOSXDialog.c (Tk_GetSaveFileObjCmd): Add -filetypes option processing (fixes fileDialog-0.1, fileDialog-0.2 failures). * macosx/tkMacOSXEmbed.c (TkpMakeWindow, TkpUseWindow): Fix sending of Visibility event for embedded windows (fixes frame-3.9 hang). * macosx/tkMacOSXScrlbr.c (ScrollbarBindProc): Fix testsuite * macosx/tkMacOSXSubwindows.c (TkMacOSXUpdateClipRgn): crashes by adding sanity checks. * macosx/Wish.xcodeproj/project.pbxproj: Add 'DebugUnthreaded' & * macosx/Wish.xcodeproj/default.pbxuser: 'DebugLeaks' targets and env var settings needed to run the 'leaks' tool. * macosx/tkMacOSXButton.c: Fix debug msg typo. * tests/constraints.tcl: Ensure 'nonUnixUserInteraction' constraint is set for aqua. * tests/choosedir.test: Add 'notAqua' constraints to X11-only tests; * tests/clrpick.test: add 'nonUnixUserInteraction' to 'unix' tests * tests/menuDraw.test: requiring interaction on aqua. * tests/unixMenu.test: * tests/unixWm.test: * tests/winMenu.test: 2007-05-07 Joe English * unix/tkUnixRFont.c: Properly cast sentinel arguments to variadic function (fixes "warning: missing sentinel in function call", [Bug 1712001]) 2007-05-04 Pat Thoyts * generic/tkFont.c: TIP #145 implementation - * generic/tkFont.h: Enhanced font handling. * win/tkWinDefault.h: * win/tkWinFont.c: * win/tkWinInt.h: * win/tkWinWm.c: * library/demos/widget: * library/ttk/fonts.tcl: 2007-05-04 Donal K. Fellows * doc/ttk_treeview.n, doc/ttk_panedwindow.n, doc/ttk_dialog.n: * doc/ttk_checkbutton.n, doc/tk.n, doc/menu.n, doc/font.n: * doc/canvas.n: Spelling fixes. [Bug 1686210] 2007-05-03 Donal K. Fellows * generic/tkStubLib.c (Tk_InitStubs): * generic/ttk/ttkLabel.c (LabelSetup): * unix/tkUnixSelect.c (ConvertSelection): * unix/tkUnixEvent.c (TkUnixDoOneXEvent): * generic/tkConfig.c (Tk_RestoreSavedOptions): * generic/tkCanvPs.c (TkCanvPostscriptCmd): * generic/tkOption.c (GetDefaultOptions): * unix/tkUnixRFont.c (TkpGetFontAttrsForChar, InitFont) (TkpGetFontFamilies, TkpGetSubFonts): * unix/tkUnixSend.c (TkpTestsendCmd, RegOpen): Squelch warnings from GCC type aliasing. [Bug 1711985 and others] 2007-04-29 Daniel Steffen * unix/configure.in: Fix for default case in tk debug build detection. * unix/configure: autoconf-2.59 2007-04-27 Joe English * generic/ttk/ttkTreeview.c(TagOptionSpecs): Use TK_OPTION_STRING instead of TK_OPTION_FONT to avoid resource leak in tag management. 2007-04-26 Joe English * macosx/ttkMacOSXTheme.c: Merged OFFSET_RECT processing into BoxToRect(); factored out PatternOrigin; resynchronized with Tile codebase. 2007-04-26 Jeff Hobbs *** 8.5a6 TAGGED FOR RELEASE *** * unix/Makefile.in (dist): Correct tests/ttk glob inclusion 2007-04-25 Jeff Hobbs * unix/Makefile.in (dist): Add tests/ttk dir to src dist * unix/tkUnixMenubu.c (TkpDisplayMenuButton): Init width/height to 0 2007-04-25 Daniel Steffen * unix/Makefile.in (dist): Add macosx/*.xcconfig files to src dist; copy license.terms to dist macosx dir; fix autoheader bits. 2007-04-24 Jeff Hobbs * unix/Makefile.in (dist): Add ttk bits to src dist * tests/font.test (font-46.[12]): Correct listification of result 2007-04-23 Daniel Steffen * generic/tkCanvas.c: Allow -selectforeground option to be None; add * generic/tkCanvText.c: fallback to fgColor when selFgColor is None * generic/tkEntry.c: (new default on aqua to match native L&F). * generic/tkListbox.c: * generic/tkText.c: * generic/tkCanvas.c: Add support for bypassing all of Tk's double * generic/tkEntry.c: buffered drawing into intermediate pixmaps * generic/tkFrame.c: (via TK_NO_DOUBLE_BUFFERING #define), it is * generic/tkListbox.c: unnecessary & wasteful on aqua where all * generic/tkPanedWindow.c: drawing is already double-buffered by the * generic/tkTextDisp.c: window server. (Use of this on other * generic/ttk/ttkWidget.c: platforms would only require implementation * unix/tkUnixScale.c: of TkpClipDrawableToRect()). * macosx/tkMacOSXPort.h: * library/bgerror.tcl: On aqua, use moveable alert resp. modal dialog * library/dialog.tcl: window class and corresponding system background pattern; fix button padding. * library/tearoff.tcl: Correct aqua menu bar height; vertically offset * library/tk.tcl: aqua tearoff floating window to match menu. * library/demos/goldberg.tcl: Fix overwriting of widget demo global. * library/demos/menu.tcl: On aqua, use custom MDEF and tearoffs; * library/demos/menubu.tcl: correct menubutton toplevel name. * library/demos/puzzle.tcl: Fix button size & padding for aqua. * library/demos/radio.tcl: * macosx/tkMacOSXCarbonEvents.c: Add window event target carbon event * macosx/tkMacOSXEvent.c: handler for all kEventClassWindow and * macosx/tkMacOSXEvent.h: kEventClassMouse events; move all * macosx/tkMacOSXNotify.c: remaining events except for * macosx/tkMacOSXWindowEvent.c: kEventClassKeyboard from dispatcher to application event handler; pass event handler callRef downstream; fix debug event tracing; process all tcl event types in carbon event timer; delay carbon event timer first fire; add TkMacOSXTrackingLoop() to mark enter/exit of event tracking loop during which all tcl events but only carbon update events should be processed by the timer (replaces various calls to Tcl_SetServiceMode()); rename TkMacOSXReceiveAndProcessEvent() to TkMacOSXReceiveAndDispatchEvent(), move it from tkMacOSXEvent.c to tkMacOSXCarbonEvents.c and modify it to dequeue only update events during a tracking loop; add TkMacOSXRunTclEventLoop() to standardize the various ways in use to run the tcl event loop; add handling of kEventClassAppearance events (for ScrollBarVariantChanged event). * macosx/tkMacOSXDialog.c: Use new TkMacOSXTrackingLoop() around * macosx/tkMacOSXEvent.c: blocking API that puts up modal dialogs * macosx/tkMacOSXMenu.c: or when entering/exiting menu/control * macosx/tkMacOSXMouseEvent.c: tracking, window dragging and other * macosx/tkMacOSXScale.c: mouse tracking loops. * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXDialog.c: Use new TkMacOSXRunTclEventLoop() * macosx/tkMacOSXScale.c: instead of Tcl_DoOneEvent(), * macosx/tkMacOSXScrlbr.c: Tcl_ServiceAll(), TclServiceIdle() * macosx/tkMacOSXWindowEvent.c: and Tcl_GlobalEval("update idletasks"). * macosx/tkMacOSXColor.c: Make available as Tk system colors all * macosx/tkMacOSXPort.h: appearance manager brushes, text colors and backgrounds with new and legacy names, as well as the fully transparent color "systemTransparent"; add TkMacOSXSetColorIn{Port,Context}() to directly set an X pixel color value in the current QD port resp. the given CG context without requiring passage through rgb representation (lossy for most system colors); modernize/remove Classic-era code; replace crufty strcmp() elseifs by Tcl_GetIndexFromObjStruct(). * macosx/tkMacOSXButton.c: Use new TkMacOSXSetColorInPort() * macosx/tkMacOSXDraw.c: instead of setting rgb color directly * macosx/tkMacOSXMenubutton.c: to allow for non-rgb system colors. * macosx/tkMacOSXCursor.c: Implement "none" cursor as on other platforms [Patch 1615427]; add all missing appearance manager cursors. * macosx/tkMacOSXDefault.h: Set SELECT_FG_COLORs to None to match aqua L&F; use standard system color names; use new 'menu' system font; correct default scrollbar width. * macosx/tkMacOSXDraw.c: Standardize initialization, use and * macosx/tkMacOSXInt.h: emptying of various static temp rgns * macosx/tkMacOSXRegion.c: onto two global RgnHandles; in debug * macosx/tkMacOSXSubwindows.c: builds, verify emptiness of these temp * macosx/tkMacOSXWindowEvent.c: rgns before use. * macosx/tkMacOSXDraw.c: Add TkMacOSX{Setup,Restore}DrawingContext() to * macosx/tkMacOSXInt.h: abstract common setup & teardown of drawing environment (for both CG and QD); save/restore QD theme drawing state; handle GC clip region; add TkpClipDrawableToRect() to allow clipped drawing into drawable regardless of GC used; use new system color "systemWindowHeaderBackground" to setup background in themed toplevels; correct implementation of TkMacOSXMakeStippleMap(). * macosx/tkMacOSXEntry.c: Use new TkMacOSXSetupDrawingContext() and * macosx/tkMacOSXFont.c: TkMacOSXRestoreDrawingContext() instead of * macosx/ttkMacOSXTheme.c: various setup/teardown procs like TkMacOSX{SetUp,Release}CGContext(), TkMacOSXQuarz{Start,End}Draw(), TkMacOSXSetUpGraphicsPort() etc. * macosx/tkMacOSXEmbed.c: Add CG context and drawable clip rgn fields * macosx/tkMacOSXInt.h: to MacDrawable struct. * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXDialog.c: Make -parent option of tk_getOpenFile et al. use the sheet version of NavServices dialogs; ensure native parent win exists before using StandardSheet API for tk_messageBox [Bug 1677611]; force sheets to behave like app-modal dialogs via WindowModality() API; use more modern ColorPicker API. * macosx/tkAboutDlg.r: Use themed movable modal dialog, fix (c) year. * macosx/tkMacOSXEntry.c: Take xOff/yOff of MacDrawable into account * macosx/ttkMacOSXTheme.c: when computing locations/bounds to ensure correct posititioning when not drawing into intermediate pixmap. * macosx/tkMacOSXFont.c: Use appearance manager API to map system font * macosx/tkMacOSXFont.h: names to TkFonts; add "menu" system font for menu item text drawing from MDEF; always draw with CG; remove QD dependent stippling algorithm; move most header declarations into the source file (as they were not used anywhere else). * macosx/tkMacOSXMenu.c: Large-scale rewrite of custom * macosx/tkMacOSXMenu.r (removed): MDEF and related code that * macosx/Wish.xcode/project.pbxproj: restores many longtime-MIA * macosx/Wish.xcodeproj/project.pbxproj: features to working order * unix/Makefile.in: (e.g. images, custom colors & fonts in menus etc); implement compound menu items; use Appearance Mgr and ThemeText APIs to mimic native MDEF as closely as possible when default "menu" system font is used; remove now obsolete SICN drawing code and resources. * macosx/tkMacOSXCarbonEvents.c: Handle additional menu carbon events * macosx/tkMacOSXEvent.c: in order to support <> in * macosx/tkMacOSXMenu.c: the menubar and in menus that are not * macosx/tkMacOSXMenus.c: using the custom MDEF [Bug 1620826]; fix early and missing clearing of current Tk active menu entry; fix extraneous sending of <> during active menu entry clearing. * macosx/tkMacOSXMouseEvent.c: Add support for async window dragging by the window server; set the corresponding window attribute by default. * macosx/tkMacOSXMouseEvent.c: Rationalized handling order of non-mousedown events; add TkMacOSXModifierState() to retrieve the current key modifiers in carbon format. * macosx/tkMacOSXScrlbr.c: Use appearance manager API to retrieve scrollbar component metrics; add awareness of multiple possibilites for scrollbar arrow position in aqua and handle user changes to arrow position pref; handle difference in metrics of small & large scrollbar variants; handle aqua "jump to here" scrollbar behaviour; correct computation of scroll view size and position; enforce min scrollbar height to avoid scrollbar component overlap; erase scrollbar area outside of standard width; remove broken auto-adjust code; account for window class when leaving space for grow box; remove code to manually draw grow box; use modern API for thumb scroll proc; replace HiliteControl() by modern API; replace control mgr constants with appearance mgr equivalents. * macosx/tkMacOSXSubwindows.c: Use SetWindowBounds() API instead of SizeWindow(); invalidate clip regions after X{Map,Unmap}Window as fix for [Bug 940117] made them dependent on mapping state; remove unneeded calls to TkMacOSXInvalClipRgns() and unnecessary setting of QD port; use native-endian pixmap on intel; remove obsolete pixmap pix locking. * macosx/tkMacOSXWindowEvent.c: Handle only the first of a batch of kEventAppAvailableWindowBoundsChanged events sent per transaction; handle kEventWindowBoundsChanged event to support live window resizing and centralized sending of location/size changed ConfigureNotify events; ensure HIGrowBox is redrawn after bounds change; constrain window after dragging to ensure titlebar is not inacessible offscreen or under dock/menubar; handle kEventWindowGetRegion and kEventWindowDrawContent for transparent windows to mark resp. paint content region as transparent; handle kEventWindowConstrain for fullscreen windows to ensure bounds match new screen size; enter/exit fullscreen UIMode upon activation/deactivation of fullscreen window. * macosx/tkMacOSXWm.c: Use live-resize and async-drag carbon window * macosx/tkMacOSXWm.h: attributes for toplevels by default; implement new [wm attributes] -topmost, -transparent and -fullscreen; refactor WmAttributesCmd() parallelling the tkUnixWm.c implementation, use thus factored proc to set proxy icon from [wm iconbitmap]; dynamically determine default values for toplevel min and max sizes (similar to tkWinWm.c impl): min sizes depend on window class & attributes to ensure visibility of all titlebar widgets and grow box, max sizes depend on maximal window bounds for all active displays; factor out code that puts into effect changes to master or override_redirect; use RepositionWindow() API to determine staggered initial window bounds; correct resize limit calculations, handle gridding and use modern resize API in TkMacOSXGrowToplevel(); remove sending of ConfigureNotify after resize or zoom (now handled by BoundsChanged handler); correct composite carbon window attribute handling, remove currently unusable attributes and add new attributes in [tk::unsupported::MacWindowStyle]; ensure validity of window class and attributes before use; apply changes to window class when handling carbon window attribute changes (if HIWindowChangeClass() API available); add debug build warning message when deprecated window style is used instead of window class; use transparent HIGrowBox for resizable windows; avoid unnecessary calls to window structure width API; use tcl time API in TkpGetMS(); add TkMacOSXEnterExitFullscreen() to enter/exit UIMode with dock and menubar hidden; restrict wmTracing output to debug builds; remove unneeded calls to TkMacOSXInvalClipRgns() and unnecessary setting of QD port; workaround GetWindowStructureWidths() Carbon bug (bogus results for never-mapped floating windows). * macosx/tkMacOSXXStubs.c (TkMacOSXDisplayChanged): Add maximal window bounds field to Screen record (in ext_data), computed as the union of available window positioning bounds of all graphics devices (displays). * macosx/tkMacOSXBitmap.c: Fix macRoman encoding leak. * macosx/tkMacOSXCursor.c: * macosx/tkMacOSXDebug.c (TkMacOSXCarbonEventToAscii): Use static * macosx/tkMacOSXDebug.h: buffer to simplify callers; const fixes. * macosx/tkMacOSXBitmap.c: Use more efficient QDSwapPort() instead of * macosx/tkMacOSXButton.c: GetPort()/SetPort()/GetGWorld()/SetGWorld(). * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXXStubs.c: * macosx/tkMacOSXColor.c: Use kHIToolboxVersionNumber for runtime OS * macosx/tkMacOSXEntry.c: version check rather than Gestalt() etc. * macosx/tkMacOSXInt.h: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXDraw.c: Remove obsolete and now incorrect * macosx/tkMacOSXInt.h: tkMenuCascadeRgn clipping code. * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXHLEvents.c: Replace Tcl_GlobalEval() resp. Tcl_Eval() * macosx/tkMacOSXScrlbr.c: by Tcl_EvalEx(). * macosx/tkMacOSXInit.c: * macosx/tkMacOSXInit.c (TkpInit): Reorder initialization steps. * macosx/tkMacOSXKeyEvent.c: Remove pre-10.2 support. * macosx/tkMacOSXMenus.c: Remove now useless call to TkMacOSXHandleTearoffMenu(); use \x.. quoting for non-latin1 macroman literar chars to allow file to be edited as utf-8. * macosx/tkMacOSXScale.c: Replace TrackControl() by modern * macosx/tkMacOSXScrlbr.c: HandleControlClick() API (using new TkMacOSXModifierState()). * macosx/tkMacOSXInt.h: Move all constant #defines needed to * macosx/tkMacOSXColor.c: support building on older OS X releases * macosx/tkMacOSXEvent.h: to a central location in tkMacOSXInt.h. * macosx/tkMacOSXFont.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXWm.c: * macosx/ttkMacOSXTheme.c: * macosx/tkMacOSXInt.h: Add ChkErr() macro to factor out * macosx/tkMacOSXButton.c: Carbon OSStatus return value checking * macosx/tkMacOSXCarbonEvents.c: and TkMacOSXDbgMsg() macro to factour * macosx/tkMacOSXClipboard.c: out debug message output; use these * macosx/tkMacOSXColor.c: macros to replace #ifdef TK_MAC_DEBUG * macosx/tkMacOSXCursor.c: blocks & direct printing to stderr, * macosx/tkMacOSXDebug.c: and to do additional OSStatus return * macosx/tkMacOSXDialog.c: checking, and to standardize OSStatus * macosx/tkMacOSXDraw.c: usage. * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c: * macosx/tkMacOSXSend.c: Remove duplicate/unused declarations. * macosx/tkMacOSXXStubs.c: * macosx/tkMacOSXDebug.c: Const fixes. * macosx/tkMacOSXInit.c: * macosx/tkMacOSXTest.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c: * macosx/Wish-Info.plist.in: Add tcl document extensions/mime types and LSMinimumSystemVersion, LSRequiresCarbon & NSAppleScriptEnabled keys. * macosx/Wish-Common.xcconfig: Add Wish's Info.plist as __info_plist section to tktest; enable more warnings. * macosx/Wish.xcodeproj/project.pbxproj: Add 'DebugMemCompile' build configuration that calls configure with --enable-symbols=all; disable configure check for __attribute__((__visibility__("hidden"))) in Debug configuration to restore availability of ZeroLink. * macosx/Wish-Common.xcconfig: Fix whitespace. * macosx/Wish-Debug.xcconfig: * macosx/Wish-Release.xcconfig: * macosx/tkMacOSXAETE.r: * macosx/tkMacOSXConfig.c: * macosx/tkMacOSXCursors.r: * macosx/tkMacOSXKeyboard.c: * macosx/tkMacOSXSend.c: * macosx/ttkMacOSXTheme.c: * macosx/tkMacOSXXCursors.r: * macosx/README: * macosx/GNUmakefile: Fix/add copyright and license refs. * macosx/Tk-Info.plist.in: * macosx/Wish-Info.plist.in: * macosx/Wish.xcode/project.pbxproj: * macosx/Wish.xcodeproj/project.pbxproj: * macosx/tkMacOSX.h: * unix/configure.in: Install license.terms into Tk.framework; fix tk debug build detection. * unix/configure: autoconf-2.59 * doc/colors.n: Document new Mac OS X system colors. * doc/cursors.n: Document new Mac OS X native cursors. * doc/font.n: Document new Mac OS X 'menu' system font. * doc/wm.n: Document new Mac OS X [wm attributes]. * doc/ttk_image.n: Fix 'make html' warning. * doc/canvas.n: Fix nroff typo. 2007-04-21 Jeff Hobbs * macosx/tkMacOSXBitmap.c, macosx/tkMacOSXButton.c: * macosx/tkMacOSXCarbonEvents.c, macosx/tkMacOSXClipboard.c: * macosx/tkMacOSXCursor.c, macosx/tkMacOSXDialog.c: * macosx/tkMacOSXDraw.c, macosx/tkMacOSXEvent.c: * macosx/tkMacOSXFont.c, macosx/tkMacOSXInit.c, macosx/tkMacOSXInt.h: * macosx/tkMacOSXKeyEvent.c, macosx/tkMacOSXMenu.c: * macosx/tkMacOSXMenubutton.c, macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScale.c, macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.c: Revert of commits from 2007-04-13 which broke the OS X build. 2007-04-17 Donal K. Fellows * generic/tkFont.c, generic/tkListbox.c, unix/tkUnixSelect.c: * win/ttkWinMonitor.c, win/ttkWinTheme.c, win/ttkWinXPTheme.c: Make the format of declarations much more standardized (removing K&R-isms and other things like that). 2007-04-13 Donal K. Fellows * macosx/tkMacOSXInt.h (LOG_MSG, LOG_ON_ERROR): Added macros to make the OSX code much less #ifdef-full. 2007-04-12 Jeff Hobbs * library/ttk/panedwindow.tcl (ttk::panedwindow::Press): handle Press triggering outside sash element boundaries. 2007-04-10 Joe English * win/ttkWinMonitor.c, win/ttkWinXPTheme.c: Re-sync with Tile codebase so patches can flow back and forth. * win/ttkWinXPTheme.c: Skip OS version test, should work on Vista/Aero now as well as XP. Fixes [Bug 1687299], thanks to George Petasis for tracking this down. 2007-03-21 Joe English * generic/ttk/ttkLayout.c(Ttk_BuildLayoutTemplate): BUGFIX: Nested TTK_GROUP nodes did not work unless they appeared at the end of the layout (and only by accident then). 2007-03-08 Joe English * tests/grid.test(grid-21.7): Reset wm geometry . and pack propagate . at end of test. 'pack propagate . 0' was causing cascading failures in subsequent tests. [Bug 1676770] 2007-03-07 Daniel Steffen * generic/tkMain.c (Tk_MainEx): Replicate macosx-specific code from TkpInit() that ensures the console window appears when wish is started from the OS X Finder (i.e. with stdin == /dev/null), jeffh's 2006-11-24 change rendered the corresponding code in TkpInit() ineffective in wish because Tk_MainEx() sets tcl_interactive before calling TkpInit(). * generic/ttk/ttkGenStubs.tcl (new): Add ttk-specific genstubs.tcl from * unix/Makefile.in (genstubs): tile and run it from 'genstubs' target, restores ability to generate all of Tk's stub sources. * generic/ttk/ttkTreeview.c: #ifdef out unused declaration. * macosx/tkMacOSXDebug.c (TkMacOSXGetNamedDebugSymbol): Add fix for libraries loaded with a DYLD_IMAGE_SUFFIX. * macosx/Wish.xcodeproj/project.pbxproj: Ensure gcc version used by * macosx/Wish.xcodeproj/default.pbxuser: Xcode and configure/make are * macosx/Wish-Common.xcconfig: consistent and independent of gcc_select default and CC env var; fixes for Xcode 3.0. * unix/tcl.m4 (Darwin): s/CFLAGS/CPPFLAGS/ in macosx-version-min check. * unix/configure: autoconf-2.59 2007-02-25 Peter Spjuth * generic/tkUtil.c: Fixed grid anchor center problem in labelframes. * tests/grid.test: [Bug 1545765] 2007-02-23 Jeff Hobbs * library/ttk/notebook.tcl (ttk::notebook::enableTraversal): OS X needs Option instead of Alt binding 2007-02-19 Jeff Hobbs * unix/tcl.m4: use SHLIB_SUFFIX=".so" on HP-UX ia64 arch. * unix/configure: autoconf-2.59 * library/tkfbox.tcl (::tk::IconList_Goto): avoid goto issues in empty dirs. [Bug 1662959] 2007-02-09 Joe Mistachkin * win/nmakehlp.c: Properly cleanup after nmakehlp, including the * win/makefile.vc: vcX0.pch file. Sync up fixed nmakehlp usage from Tcl. 2007-02-06 Joe English * library/ttk/ttk.tcl: Add no-op [package ifneeded] script for tile 0.8.0, so that existing applications that use "package require tile" won't fail when run under Tk 8.5. 2007-02-04 Daniel Steffen * unix/tcl.m4: Use gcc4's __attribute__((__visibility__("hidden"))) if available to define MODULE_SCOPE effective on all platforms. * unix/configure.in: add caching to -pipe check. * unix/configure: autoconf-2.59 * unix/tkConfig.h.in: autoheader-2.59 2007-02-03 Joe Mistachkin * win/rules.vc: Fix platform specific file copy macros for downlevel Windows. * win/ttkWinMonitor.c: Windows portability support. Fix "noxp" build * win/ttkWinXPTheme.c: option handling and use GetWindowLongPtr and SetWindowLongPtr only when needed. 2007-02-02 Pat Thoyts * win/ttkWinXPTheme.c: Support IsAppThemed() call. This is what is used when theming is turned off just for an individual application. 2007-01-28 Daniel Steffen * macosx/Wish.xcodeproj/project.pbxproj: Extract build settings that * macosx/Wish.xcodeproj/default.pbxuser: were common to multiple * macosx/Wish-Common.xcconfig (new file): configurations into external * macosx/Wish-Debug.xcconfig (new file): xcconfig files; add extra * macosx/Wish-Release.xcconfig (new file): configurations for building with SDKs; convert legacy jam-based 'Tk' target to native target with single script phase; correct syntax of build setting references to use $() throughout; remove unused tcltest sources from 'tktest' target. * macosx/README: Document new Wish.xcodeproj configurations; other minor updates/corrections. * generic/tk.h: Update location of version numbers in macosx files. * macosx/Wish.xcode/project.pbxproj: Restore 'tktest' target to working * macosx/Wish.xcode/default.pbxuser: order by replicating applicable changes to Wish.xcodeproj since 2006-07-20. 2007-01-25 Daniel Steffen * unix/tcl.m4: Integrate CPPFLAGS into CFLAGS as late as possible and move (rather than duplicate) -isysroot flags from CFLAGS to CPPFLAGS to avoid errors about multiple -isysroot flags from some older gcc builds. * unix/configure: autoconf-2.59 2007-01-19 Joe Mistachkin * win/makefile.vc: Properly build man2tcl.c for MSVC8. 2007-01-19 Daniel Steffen * macosx/Wish.xcodeproj/project.pbxproj: Remove libtommath defines. * unix/tcl.m4: Ensure CPPFLAGS env var is used when set. [Bug 1586861] (Darwin): add -isysroot and -mmacosx-version-min flags to CPPFLAGS when present in CFLAGS to avoid discrepancies between what headers configure sees during preprocessing tests and compiling tests. * unix/configure: autoconf-2.59 2007-01-11 Jeff Hobbs * unix/tkUnixEvent.c, library/msgs/es.msg: s/CRLF/LF/g 2007-01-11 Joe English * win/tcl.m4 (CFLAGS_WARNING): Remove "-Wconversion". This was removed from unix/tcl.m4 2004-07-16 but not from here. * win/configure: Regenerated. 2007-01-11 Joe English * generic/ttk/ttkManager.h, generic/ttk/ttk*.c: Revert addition of contravariant 'const' qualifiers, to keep in sync with Tile codebase (which must remain compatible with Tk 8.4). 2007-01-03 Jan Nijtmans * doc/ManageGeom.3, * generic/tk.decls, * generic/tk.h: Add const to 2nd parameter of Tk_ManageGeometry * generic/tkDecls.h: regenerated * generic/tkInt.h, * generic/tk*.c, * generic/ttk/ttk*.c: Added many "const" specifiers in implementation. 2007-01-02 Donal K. Fellows * xlib/*: Made the generic fake-X11 glue layer abide by the formatting rules of the core. 2006-12-31 Benjamin Riefenstahl * macosx/tkMacOSXFont.c: Fill-in TkpGetFontAttrsForChar (TIP #300). * macosx/ttkMacOSXTheme.c: Define a constant to make it compile on Mac OS X 10.3. 2006-12-28 Mo DeJong * tests/wm.test: Update wm attributes output so that tests pass after addition of -transparentcolor for Win32. 2006-12-26 Joe English * generic/ttk/ttkLabel.c: ImageElement clientData no longer needed. 2006-12-22 Donal K. Fellows * unix/tkUnixEvent.c (TkUnixDoOneXEvent): Made correct on AMD64 and other similar 64-bit systems where fd_mask is not 'unsigned int' in effect. [Bug 1522467] * library/msgs/es_ES.msg (removed): * library/msgs/es.msg: Fixed translation fault that was present in all Spanish-speaking locales. [Bug 1111213] 2006-12-19 Jeff Hobbs * win/tkWinButton.c (TkpDisplayButton): lint init. [Bug 1618604] 2006-12-19 Daniel Steffen * unix/tcl.m4 (Darwin): --enable-64bit: verify linking with 64bit -arch flag succeeds before enabling 64bit build. * unix/configure: autoconf-2.59 2006-12-18 Joe English * generic/ttk/ttkTreeview.c, library/ttk/treeview.tcl, doc/treeview.n: Added column '-stretch' and '-minwidth' options. Improved column drag and resize behavior. Added horizontal scrolling [Bug 1518650]. Row height and child indent specifiable on Treeview style. Decreased default row height, no default -padding. Use correct heading height [Bug 1163349]. Apply tag settings to tree item as well as to data columns [NOTE: 'tag configure' still buggy]. Fix off-by-one condition when moving nodes forward [Bug 1618142] * generic/ttk/ttkScroll.c (TtkScrollTo): Prevent overscroll [Bug 1173434] * library/ttk/altTheme.tcl, library/ttk/aquaTheme.tcl, * library/ttk/clamTheme.tcl, library/ttk/classicTheme.tcl, * library/ttk/defaults.tcl, library/ttk/winTheme.tcl, * library/ttk/xpTheme.tcl: Per-theme treeview settings. * macosx/ttkMacOSXTheme.c: Added disclosure triangle element. 2006-12-17 Joe English * library/ttk/combobox.tcl, generic/ttk/ttkEntry.c, * doc/ttk_combobox.n: Add combobox -height option; only show scrollbar if the listbox needs to scroll. [Bug 1032869] 2006-12-16 Mo DeJong * doc/cursors.n: Mention "none" in supported cursor list. Fix comment that incorrectly claims that the Win32 "no" cursor hides the cursor. * tests/cursor.test: Test "none" cursor. * unix/tkUnixCursor.c (CreateCursorFromTableOrFile) (TkGetCursorByName): Define a table of Tk cursors that is searched in addition to the X cursor table. A Tk cursor is loaded from a data string and works with the same options as the built in X cursors. This code makes it possible to use "none" as a cursor name under Unix. * win/rc/cursor9a.cur: Added none Win32 cursor. * win/rc/tk_base.rc: Define a built-in Win32 cursor named "none". [Patch 1615427] 2006-12-14 Joe English * generic/ttk/ttkButton.c, generic/ttk/ttkElements.c, * generic/ttk/ttkEntry.c, generic/ttk/ttkFrame.c, * generic/ttk/ttkImage.c, generic/ttk/ttkInit.c, * generic/ttk/ttkLabel.c, generic/ttk/ttkNotebook.c, * generic/ttk/ttkPanedwindow.c, generic/ttk/ttkProgress.c, * generic/ttk/ttkScale.c, generic/ttk/ttkScrollbar.c, * generic/ttk/ttkSeparator.c, generic/ttk/ttkTheme.h, * generic/ttk/ttkTreeview.c, generic/ttk/ttkWidget.h: Global reduction: use per-file *_Init() routines to reduce the number of globally-visible initialization records. 2006-12-13 Jeff Hobbs * unix/Makefile.in (install-doc): intentionally skip ttk_dialog.n installation (not for public consumption) * doc/scrollbar.n, doc/button.n, doc/checkbutton.n: * doc/entry.n, doc/frame.n, doc/label.n, doc/labelframe.n: * doc/menu.n, doc/menubutton.n, doc/panedwindow.n: * doc/radiobutton.n, doc/scrollbar.n, doc/ttk_*: revamp ttk docs to use consist nroff format (not 100% consistent with classic widget docs). Add more man page cross-linking "SEE ALSO". * generic/ttk/ttkInit.c: * generic/ttk/ttkTreeview.c: make treeview exist by default * generic/ttk/ttkPanedwindow.c: s/TtkPaned_Init/TtkPanedwindow_Init/ * win/Makefile.in, unix/Makefile.in (demo): add 'demo' target 2006-12-13 Joe English * library/ttk/ttk.tcl: Try to straighten out theme loading and selection logic. * generic/ttk/ttkElements.c, library/ttk/defaults.tcl, * generic/ttk/ttkClamTheme.c, library/ttk/clamTheme.tcl: Provide package in C part instead of Tcl part. 2006-12-12 Joe English * library/ttk/ttk.tcl, generic/ttkTheme.c: Remove nonfunctional code. 2006-12-12 Mo DeJong * win/tkWinButton.c (InitBoxes): Call Tcl_Panic() if loading of bitmap resources fails. This change generates an error if Tk is unable to find button widget resources instead of silently failing and then drawing widgets incorrectly. * win/rc/tk_base.rc: If the user defines BASE_NO_TK_ICON then compile the base resources file without a "tk" icon. This change makes it easier to replace the default tk icon with a custom icon. [Patch 1614362] 2006-12-11 Donal K. Fellows * unix/tkUnixWm.c (TkWmMapWindow, WmClientCmd): Added support for _NET_WM_PID property from the EWMH spec. This is only installed when the client machine is set. (WmProtocolCmd, UpdateWmProtocols, TkWmProtocolEventProc): Added support for the _NET_WM_PING protocol from the EWMH spec. Note that the support for this is not exposed to the script level as that would prevent correct handling. 2006-12-10 Joe English * generic/ttk/ttkTheme.h, generic/ttk/ttkThemeInt.h, * generic/ttk/ttk.decls, generic/ttk/ttkTheme.c, * generic/ttk/ttkLayout.c, generic/ttk/ttkDecls.h: Rename typedef Ttk_Element => Ttk_ElementImpl. 2006-12-09 Joe English * generic/ttk/ttkButton.c, generic/ttk/ttkImage.c, * generic/ttk/ttkLabel.c, generic/ttk/ttkWidget.h, * generic/ttk/ttkTheme.h, generic/ttk/ttkNotebook.c, * generic/ttk/ttkTreeview.c, doc/ttk_image.n: Merged duplicate functionality between image element factory, image element, and -image option processing. Image element factory now takes an imageSpec argument instead of a separate image name and -map option * tests/ttk/image.test(image-1.1): Can catch this error earlier now. 2006-12-06 Kevin Kenny * unix/configure.in: Further changes to avoid attempting to link * unix/configure: against Xft libraries in a non-Xft build [Bug 1609616] (dgp) 2006-12-04 Jeff Hobbs * generic/tkListbox.c (ConfigureListboxItem): ListboxWorldChanged not needed - just call EventuallyRedrawRange. [Bug 1608046] (rezic) 2006-12-04 Donal K. Fellows TIP #286 IMPLEMENTATION * generic/tkMenu.c (MenuWidgetObjCmd, MenuDoXPosition): * doc/menu.n, tests/menu.test: Added an [$menu xposition] subcommand which is useful in menubars and when menus use multiple columns. Many thanks to Schelte Bron for the implementation. 2006-12-01 Kevin Kenny TIP #300 IMPLEMENTATION * doc/font.n: Added a [font actual $font $char] * generic/tkFont.c: variant that introspects the font that * generic/tkFont.h: is chosen to render a given character * macosx/tkMacOSXFont.c: in a given nominal font. Added * tests/font.test: documentation and test cases for the * unix/tkUnixFont.c: new command syntax. * unix/tkUnixRFont.c: * win/tkWinFont.c: 2006-12-01 Jeff Hobbs * doc/wm.n, tests/winWm.test: * win/tkWinWm.c: add -transparentcolor attribute for Windows. 2006-12-01 Joe English * generic/ttk/ttkTheme.h, generic/ttk/ttkLayout.c: Dead code removal. 2006-11-30 Daniel Steffen * macosx/tkMacOSXDialog.c (Tk_MessageBoxObjCmd): fix inability to use buttons with standard Escape key binding as -default button (reported on tcl-mac by Hans-Christoph Steiner). * macosx/tkMacOSXWm.c (WmAttributesCmd): fix getting [wm attr -alpha]. [Bug 1581932] 2006-11-28 Joe English * library/ttk/fonts.tcl: Clean up temporary variables. 2006-11-27 Kevin Kenny * unix/configure.in: Corrected Xft configuration so that Xft actually does get turned on when available. * unix/configure: autoconf 2006-11-26 Joe English * generic/ttk/ttkWidget.c, generic/ttk/ttkPaned.c: Fix [Bug 1603506] * library/ttk/button.tcl, library/ttk/combobox.tcl, * library/ttk/utils.tcl: Rename ttk::CopyBindings to ttk::copyBindings * generic/ttk/ttkTreeview.c, doc/ttk_treeview.n: -displaycolumns {} now means "no columns" instead of "all columns". Use -displaycolumns #all for "all columns". [Bug 1547622] 2006-11-26 Daniel Steffen * unix/tcl.m4 (Linux): --enable-64bit support. [Patch 1597389] * unix/configure: autoconf-2.59 [Bug 1230558] 2006-11-24 Jeff Hobbs * macosx/tkMacOSXInit.c (TkpInit): only set tcl_interactive 1 if it isn't already defined. Allows embedders to set it to 0 to prevent the console appearing on OS X. [Bug 1487701] * unix/tkUnixMenu.c (DrawMenuUnderline): bound Tcl_UtfAtIndex usage * tests/menu.test (menu-36.1): [Bug 1599877] 2006-11-24 Joe English * library/ttk/altTheme.tcl, library/ttk/clamTheme.tcl, * library/ttk/defaults.tcl, library/ttk/winTheme.tcl, * library/ttk/xpTheme.tcl: explicitly specify -anchor w on TMenubutton * tests/ttk/entry.test: Fixed font dependency; test entry-3.2 should work on all platforms now. * library/classicTheme.tcl: Don't define or use TkClassicDefaultFont. * generic/ttk/ttkTreeview.c, generic/ttk/ttkPanedwindow.c: Handle missing layouts. 2006-11-23 Jeff Hobbs * win/tkWinMenu.c (TkWinHandleMenuEvent, DrawMenuUnderline): Handle unichar underlining correctly and safely. [Bug 1599877] 2006-11-20 Joe English * win/ttkWinXPTheme.c: Add support for alternate/indeterminate checkbutton state. Fix various spacing parameters [Bug 1596020, patch from Tim Baker]. Remove unused uxtheme hooks. 2006-11-16 Donal K. Fellows * doc/colors.n, doc/wm.n: Minor fixes, added See Also. * doc/labelframe.n: Added an example. 2006-11-15 Donal K. Fellows * doc/label.n: Added an example and some See Also refs. * doc/ConfigWidg.3, doc/bind.n, doc/grid.n, doc/panedwindow.n: * doc/text.n, doc/ttk_Geometry.3, doc/ttk_button.n: * doc/ttk_checkbutton.n, doc/ttk_combobox.n, doc/ttk_dialog.n: * doc/ttk_entry.n, doc/ttk_frame.n, doc/ttk_image.n, doc/ttk_intro.n: * doc/ttk_label.n, doc/ttk_labelframe.n, doc/ttk_menubutton.n: * doc/ttk_notebook.n, doc/ttk_panedwindow.n, doc/ttk_progressbar.n: * doc/ttk_radiobutton.n, doc/ttk_scrollbar.n, doc/ttk_separator.n: * doc/ttk_sizegrip.n, doc/ttk_style.n, doc/ttk_widget.n, doc/wm.n: Convert \fP to \fR so that man-page scrapers have an easier time. 2006-11-14 Joe English * generic/ttk/ttkDefaultTheme.c: Fix off-by-one bug in tree indicator size computation [Bug 1596021, patch from Tim Baker]. Increased default size from 7 to 9 pixels. 2006-11-12 Joe English * generic/ttkScroll.c: *correct* fix for [Bug 1588251]. 2006-11-12 Joe English * tests/ttk/ttk.test(ttk-6.9): Workaround for [Bug 1583038] 2006-11-12 Joe English * generic/ttkScroll.c: Reworked cleanup procedure; "self-cancelling" idle call is not robust, call Tcl_CancelIdleCall() in TtkFreeScrollHandle instead. Fixes [Bug 1588251] 2006-11-10 Daniel Steffen * macosx/Wish.xcodeproj/project.pbxproj: remove tclParseExpr.c and bwidget.test. * unix/tcl.m4 (Darwin): suppress linker arch warnings when building universal for both 32 & 64 bit and no 64bit CoreFoundation is available; sync with tcl tcl.m4 change. * unix/configure: autoconf-2.59 * unix/tkConfig.h.in: autoheader-2.59 2006-11-08 Kevin Kenny * unix/configure.in: Silenced warnings about missing Xft configuration unless --enable-xft is requested explicitly. Also added a few basic checks that we can actually compile and link against Xft headers and libraries. [Bug 1592667] * unix/configure: Regen. 2006-11-07 Kevin Kenny * unix/configure.in: Made --enable-xft the default. * unix/configure: Regen. 2006-11-06 Joe English * generic/ttk/ttkClassicTheme.c, generic/ttk/ttkPanedwindow.c, * generic/ttk/ttkTheme.c, generic/ttk/ttkTreeview.c, * win/ttkWinXPTheme.c, library/ttk/entry.tcl, * library/ttk/notebook.tcl, library/ttk/panedwindow.tcl, * library/ttk/utils.tcl, tests/ttk/entry.test, tests/ttk/bwidget.test: Miscellaneous minor changes to re-sync Ttk codebase with Tile CVS: fix comments damaged by overzealous search-and-destroy; removed obsolete [style default] synonym for [ttk::style configure]; removed other dead code. 2006-11-03 Pat Thoyts * library/safetk.tcl (::safe::tkTopLevel): Theme it. * generic/ttk/ttkLayout.c: We do not want to require tkInt in all * generic/ttk/ttkMananager.h: the ttk files so added the definition * generic/ttk/ttkTheme.h: of MODULE_SCOPE to ttkTheme.h. Ensures * generic/ttk/ttkWinMonitor.c: everyone gets to see the definition from someplace. * library/ttk/fonts.tcl: In a safe interp there is no osVersion field in tcl_platform so work around it. 2006-11-02 Daniel Steffen * generic/ttk/ttkBlink.c, generic/ttk/ttkButton.c: * generic/ttk/ttkClamTheme.c, generic/ttk/ttkClassicTheme.c: * generic/ttk/ttkDecls.h, generic/ttk/ttkDefaultTheme.c: * generic/ttk/ttkElements.c, generic/ttk/ttkEntry.c: * generic/ttk/ttkFrame.c, generic/ttk/ttkImage.c: * generic/ttk/ttkInit.c, generic/ttk/ttkLabel.c: * generic/ttk/ttkLayout.c, generic/ttk/ttkManager.h: * generic/ttk/ttkNotebook.c, generic/ttk/ttkPanedwindow.c: * generic/ttk/ttkProgress.c, generic/ttk/ttkScale.c: * generic/ttk/ttkScroll.c, generic/ttk/ttkScrollbar.c: * generic/ttk/ttkSeparator.c, generic/ttk/ttkSquare.c: * generic/ttk/ttkStubInit.c, generic/ttk/ttkStubLib.c: * generic/ttk/ttkTheme.c, generic/ttk/ttkTheme.h: * generic/ttk/ttkThemeInt.h, generic/ttk/ttkTrack.c: * generic/ttk/ttkTreeview.c, generic/ttk/ttkWidget.c: * generic/ttk/ttkWidget.h, macosx/ttkMacOSXTheme.c: * win/ttkWinMonitor.c, win/ttkWinTheme.c, win/ttkWinXPTheme.c: ensure all global Ttk symbols have Ttk or ttk prefix; declare all externally visible Ttk symbols not contained in stubs table as MODULE_SCOPE (or as static when possible); so that 'make check{exports,stubs}' once again complete without errors. * macosx/tkMacOSXColor.c (TkMacOSXCompareColors): ifdef out when unused * macosx/Wish.xcodeproj/project.pbxproj: check autoconf/autoheader exit status and stop build if they fail. * macosx/tkMacOSXWindowEvent.c (GenerateUpdateEvent): fix handling of Carbon Update events: the QuickDraw window update region was being ignored and all child TkWindows were sent an Expose XEvent even when they did not need to be redrawn. [Patch 1589226] 2006-11-01 Daniel Steffen * macosx/tkMacOSXDebug.c: add TkMacOSX prefix to leftover * macosx/tkMacOSXDebug.h: macosx-private global symbols without Tk * macosx/tkMacOSXEmbed.c: prefix; ifdef out currently unused debug * macosx/tkMacOSXEvent.c: procs. * macosx/tkMacOSXInt.h: * macosx/tkMacOSXCarbonEvents.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWm.c: 2006-10-31 Pat Thoyts * win/makefile.vc: Added ttk files to msvc build and add manifest * win/rules.vc: files to binaries with MSVC8. 2006-10-31 Daniel Steffen * macosx/Wish.xcodeproj/project.pbxproj: add new Ttk files. * macosx/ttkMacOSXTheme.c: standardize header #includes. * unix/Makefile (checkstubs, checkexports): check ttk.decls, allow export of Ttk prefixed symbols. * generic/ttk/tkDefaultTheme.c: fix warnings. 2006-10-30 Jeff Hobbs * doc/ttk_Geometry.3, doc/ttk_Theme.3, doc/ttk_button.n: * doc/ttk_checkbutton.n, doc/ttk_combobox.n, doc/ttk_dialog.n: * doc/ttk_entry.n, doc/ttk_frame.n, doc/ttk_image.n: * doc/ttk_intro.n, doc/ttk_label.n, doc/ttk_labelframe.n: * doc/ttk_menubutton.n, doc/ttk_notebook.n, doc/ttk_panedwindow.n: * doc/ttk_progressbar.n, doc/ttk_radiobutton.n, doc/ttk_scrollbar.n: * doc/ttk_separator.n, doc/ttk_sizegrip.n, doc/ttk_style.n: * doc/ttk_treeview.n, doc/ttk_widget.n,: * generic/ttk/ttk.decls, generic/ttk/ttkBlink.c: * generic/ttk/ttkButton.c, generic/ttk/ttkCache.c: * generic/ttk/ttkClamTheme.c, generic/ttk/ttkClassicTheme.c: * generic/ttk/ttkDecls.h, generic/ttk/ttkDefaultTheme.c: * generic/ttk/ttkElements.c, generic/ttk/ttkEntry.c: * generic/ttk/ttkFrame.c, generic/ttk/ttkImage.c: * generic/ttk/ttkInit.c, generic/ttk/ttkLabel.c: * generic/ttk/ttkLayout.c, generic/ttk/ttkManager.c: * generic/ttk/ttkManager.h, generic/ttk/ttkNotebook.c: * generic/ttk/ttkPanedwindow.c, generic/ttk/ttkProgress.c: * generic/ttk/ttkScale.c, generic/ttk/ttkScroll.c: * generic/ttk/ttkScrollbar.c, generic/ttk/ttkSeparator.c: * generic/ttk/ttkSquare.c, generic/ttk/ttkState.c: * generic/ttk/ttkStubInit.c, generic/ttk/ttkStubLib.c: * generic/ttk/ttkTagSet.c, generic/ttk/ttkTheme.c: * generic/ttk/ttkTheme.h, generic/ttk/ttkThemeInt.h: * generic/ttk/ttkTrace.c, generic/ttk/ttkTrack.c: * generic/ttk/ttkTreeview.c, generic/ttk/ttkWidget.c: * generic/ttk/ttkWidget.h: * library/demos/ttk_demo.tcl, library/demos/ttk_iconlib.tcl: * library/demos/ttk_repeater.tcl: * library/ttk/altTheme.tcl, library/ttk/aquaTheme.tcl: * library/ttk/button.tcl, library/ttk/clamTheme.tcl: * library/ttk/classicTheme.tcl, library/ttk/combobox.tcl: * library/ttk/cursors.tcl, library/ttk/defaults.tcl: * library/ttk/dialog.tcl, library/ttk/entry.tcl: * library/ttk/fonts.tcl, library/ttk/icons.tcl: * library/ttk/keynav.tcl, library/ttk/menubutton.tcl: * library/ttk/notebook.tcl, library/ttk/panedwindow.tcl: * library/ttk/progress.tcl, library/ttk/scale.tcl: * library/ttk/scrollbar.tcl, library/ttk/sizegrip.tcl: * library/ttk/treeview.tcl, library/ttk/ttk.tcl: * library/ttk/utils.tcl, library/ttk/winTheme.tcl: * library/ttk/xpTheme.tcl: * macosx/ttkMacOSXTheme.c: * tests/ttk/all.tcl, tests/ttk/bwidget.test, tests/ttk/combobox.test: * tests/ttk/entry.test, tests/ttk/image.test: * tests/ttk/labelframe.test, tests/ttk/layout.test: * tests/ttk/misc.test, tests/ttk/notebook.test: * tests/ttk/panedwindow.test, tests/ttk/progressbar.test: * tests/ttk/scrollbar.test, tests/ttk/treetags.test: * tests/ttk/treeview.test, tests/ttk/ttk.test, tests/ttk/validate.test: * win/ttkWinMonitor.c, win/ttkWinTheme.c, win/ttkWinXPTheme.c: First import of Ttk themed Tk widgets as branched from tile 0.7.8 * generic/tkInt.h, generic/tkWindow.c: add Ttk_Init call, copy tk classic widgets to ::tk namespace. * library/tk.tcl: add source of ttk/ttk.tcl, define $::ttk::library. * unix/Makefile.in, win/Makefile.in: add Ttk build bits * win/configure, win/configure.in: check for uxtheme.h (XP theme). 2006-10-23 Don Porter * README: Bump version number to 8.5a6 * generic/tk.h: * library/tk.tcl: * unix/configure.in: * unix/tk.spec: * win/configure.in: * unix/configure: autoconf-2.59 * win/configure: 2006-10-19 Pat Thoyts *** 8.5a5 TAGGED FOR RELEASE *** * generic/tkImgBmap.c: Fixed line endings. * win/makefile.vc: Patched up build system to manage * win/rules.vc: AMD64 with MSVC8 * win/nmakehlp.c: Ensure operation without Platform SDK. 2006-10-18 Don Porter * changes: 8.5a5 release date set. 2006-10-17 Jeff Hobbs * doc/text.n: fix docs to not correct -tabs usage case. * generic/tkTextDisp.c (SizeOfTab): fix -tabstyle wordprocessor tab alignment to correct tab edge case. [Bug 1578858] 2006-10-17 Pat Thoyts * generic/tkText.c: Applied suggested patch from [Bug 1536735] * tests/text.test: Update test for above patch. * tests/textWind.test: Corrected test to catch all messages * tests/safe.test: Silence spurious win32 failure awaiting TIP150 * tests/winDialog.test: Updated test for file name length check. * test/winWm.test: Corrected test expectation for menu wrapping. 2006-10-16 Andreas Kupries * doc/WindowId.3: Pat's commit on 2006-10-08 broke the .SH NAME information across several lines, breaking the cross-linking of manpages during installation for this one. Put everything back on a single line, unbreaking it. 2006-10-16 Daniel Steffen * changes: updates for 8.5a5 release. * macosx/tkMacOSXDraw.c: fix numerous issues in CG and QD drawing procs so that they now match X11 drawing much more closely [Bug 1558051]; use Tiger ellipse drawing API when available; fix comments & whitespace. * macosx/tkMacOSXInit.c: set default linewidth limit for CG antialiasing to 0 as thin horizontal/vertical lines look good now. * macosx/README: document CG antialiasing limit changes. * generic/tkCanvLine.c (ConfigureLine): on TkAqua, pass outline * generic/tkCanvPoly.c (ConfigurePolygon): linewidth in gc even for * generic/tkRectOval.c (ConfigureRectOval): fills (as it controls AA). * macosx/GNUmakefile: don't redo prebinding of non-prebound binaires. * library/demos/pendulum.tcl: fix incorrect setting of toplevel title. 2006-10-10 Don Porter * changes: Updates for 8.5a5 release 2006-10-08 Pat Thoyts * generic/tkWindow.c: Implemented TIP #264 - Tk_Interp function. * doc/WindowId.3: Documented Tk_Interp. * generic/tk.decls: Added to the stubs interface and * generic/tkDecls.h: regenerated. * generic/tkStubsInit.c: 2006-10-05 Jeff Hobbs * unix/tkUnixFont.c (Ucs2beToUtfProc, UtfToUcs2beProc): (TkpFontPkgInit, encodingAliases): Correct alignment issues in encoding conversion. Call ucs-2be "unicode" on big-endian systems. [Bug 1122671] 2006-09-27 Andreas Kupries * unix/Makefile.in (install-binaries): Added a second guard to the * win/Makefile.in: package index file to prevent older versions of Tcl * win/makefile.vc: from seeing version numbers which may contain a/b information, and then balking on them. This could otherwise happen when Tcl/Tk 8.4 and 8.5 are installed in the same directory, seeing each other. [Bug 1566418] 2006-09-22 Andreas Kupries * generic/tkConsole.c: TIP #268 update regarding registered package * generic/tkMain.c: version, now using full patchlevel instead of * generic/tkWindow.c: major.minor * library/tk.tcl: * unix/configure: * unix/Makefile.in: * unix/tcl.m4: * win/configure: * win/Makefile.in: * win/makefile.vc: * win/rules.vc: * win/tcl.m4: 2006-09-20 Jeff Hobbs * win/tkWinMenu.c (TkpPostMenu): disable menu animation in menus with images to avoid clipping bug. [Bug 1329198] 2006-09-21 Donal K. Fellows * generic/tkImgBmap.c (ImgBmapPostscript): Change 0 to NULL, since they are not interchangable on all platforms in all circumstances. [Tcl Bug 1562528] 2006-09-11 Daniel Steffen * macosx/tkMacOSXWm.c (TkMacOSXMakeRealWindowExist): revert part of 2006-05-16 change that had set overrideredirect windows to not become activated by the window manager, as this prevented interaction with native widgets in such windows [Bug 1472624]; apply changes to carbon window attributes even if native window has already been created. * macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): fix app * macosx/tkMacOSXMenu.c (DrawMenuBarWhenIdle): menu item key shortcuts * macosx/tkMacOSXInt.h: when custom ".apple" menu is installed. * library/demos/widget: on TkAqua, don't install file menu with single quit menu item, as the application menu already has a quit item. * macosx/tkMacOSXColor.c: fix building on Mac OS X 10.2. 2006-09-10 Daniel Steffen * macosx/tkMacOSXColor.c (TkSetMacColor,TkpGetColor): use AppearanceMgr * macosx/tkMacOSXDefault.h: to retrieve platform std colors for text * macosx/tkMacOSXPort.h: selections, add "systemHighlightSecondary" color name for standard color of inactive selections, use this color as default for text widget -inactiveselectbackground to implement platform standard look for inactive text selections. * library/text.tcl (aqua): remove focus bindings to set selection color * generic/tkTextBTree.c (TkTextIsElided): on TkAqua, don't show * generic/tkTextDisp.c (GetStyle): inactive text selection when text widget is disabled. * generic/tkEntry.c (DisplayEntry): change default TkAqua selection * macosx/tkMacOSXDefault.h: relief to "flat" (platform std). * generic/tkText.c (CreateWidget): fix bug leading to default text selection relief string DEF_TEXT_SELECT_RELIEF being ignored. * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): allow mouse event delivery to background windows with kWindowNoActivatesAttribute (e.g. overrideredirect windows), as these never come to the foreground they would never receive any mouse events otherwise. [Bug 1472624] * macosx/tkMacOSXWindowEvent.c (TkMacOSXGenerateFocusEvent): do not send focus events to any windows with kWindowNoActivatesAttribute. * macosx/tkMacOSXXStubs.c (XQueryColor, XQueryColors): implement basic XColor computation from pixel values, enough to make tkImg's window.c happy, fixes img::window failures reported on tcl-mac. * macosx/tkMacOSXMenu.c (DrawMenuEntryLabel): fix leak. [Bug 1554672] * macosx/GNUmakefile: workaround bug in 'cp -pRH' on Darwin 6 and earlier, fixes 'make embedded' failure reported on tcl-mac; fix error from 'make deploy' with same build tree as previous 'make embedded'. * macosx/Wish.xcodeproj/project.pbxproj: add new tclUnixCompat.c file. * macosx/tkMacOSXEntry.c (TkpDrawEntryBorderAndFocus): fix typo. * unix/tcl.m4: sync with tcl/unix/tcl.m4. * unix/configure: autoconf-2.59 2006-09-06 Jeff Hobbs * generic/tkEntry.c: move hard-coded ALWAYS_SHOW_SELECTION control * generic/tkInt.h: of entry/text selection display based on focus * generic/tkText.c: to the Tcl level, controlled by * generic/tkWindow.c: ::tk::AlwaysShowSelection (boolean, private). * library/tk.tcl: [Bug 1553691] * macosx/tkMacOSXDefault.h: * unix/tkUnixDefault.h: * unix/tkUnixPort.h: * win/tkWinDefault.h: 2006-08-30 Jeff Hobbs * win/tkWinKey.c: Add WM_UNICHAR window message support (used by * win/tkWinX.c: virtual keyboard apps). [Bug 1518677] (petasis) 2006-08-24 Daniel Steffen * macosx/tkMacOSXScrlbr.c (UpdateControlValues): set native scrollbar control bounds only once all size adjustments have been computed. Fixes issue with grow icon obscuring scrollbar reported on tcl-mac. 2006-08-21 Daniel Steffen * macosx/tkMacOSXCarbonEvents.c (CarbonTimerProc): avoid starving main event loop: limit the number of tcl events processed per invocation. Fixes bug reported on tcl-mac by Kevan Hashemi. 2006-08-18 Donal K. Fellows * tests/text.test (text-25.15): Added test suggested by Sam on comp.lang.tcl * generic/tk.h, generic/tkInt.h: Stylistic improvements. No API change. 2006-08-18 Daniel Steffen * unix/tcl.m4 (Darwin): add support for --enable-64bit on x86_64, for universal builds including x86_64, for 64-bit CoreFoundation on Leopard and for use of -mmacosx-version-min instead of MACOSX_DEPLOYMENT_TARGET * unix/configure.in (Darwin): remove 64-bit arch flags from CFLAGS for combined 32-bit and 64-bit universal builds, as neither TkAqua nor TkX11 can be built for 64-bit at present. * unix/configure: autoconf-2.59 * unix/tkConfig.h.in: autoheader-2.59 * macosx/Wish.xcodeproj/project.pbxproj: switch native release targets to use DWARF with dSYM, Xcode 3.0 changes. * macosx/README: updates for x86_64 support in Tcl. * macosx/tkMacOSXInit.c (TkpInit): when available, use public TransformProcessType() API instead of CPSEnableForegroundOperation() SPI to notify the window server that we are a GUI application. * macosx/tkMacOSXWm.c (WmAttrGetTitlePath): use HIWindow API on >=Tiger * macosx/tkMacOSXMouseEvent.c (GenerateToolbarButtonEvent): * macosx/tkMacOSXMenus.c (GenerateEditEvent): * macosx/tkMacOSXMenu.c (MenuSelectEvent): bzero() the XVirtualEvent structure before use to ensure all fields are initialized. [Bug 1542205] 2006-08-16 Jeff Hobbs * macosx/tkMacOSXWm.c (WmAttributesCmd): correct OS X result for [wm attributes $top]. 2006-07-25 Daniel Steffen * macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): handle key shortcut for kHICommandQuit in the same way as other application menu item key shortcuts. [Bug 1516950] 2006-07-24 Daniel Steffen * macosx/tkMacOSXWm.c (TkWmMapWindow): fix incorrect values of wmInfo parentWidth/Height for toplevels by recalculating them once the window is mapped (i.e once the window&structure sizes are known). [Bug 1358663] (ParseGeometry): sync with ParseGeometry in tkUnixWm.c/tkWinWm.c. 2006-07-21 Daniel Steffen * generic/tkBind.c (TkBindInit): for REDO_KEYSYM_LOOKUP, change keysym-to-string mapping hash to use first name in ks_names.h instead of last (if there are multiple possibilities), e.g. "F11" instead of "L1". * macosx/tkMacOSXKeyboard.c (TkpGetKeySym): correct keysyms for pure modifier key presses [Bugs 700311, 1525905]; correct keysym for Enter key; add keysyms for new NumLock and Fn modifiers (added 2005-08-09). 2006-07-20 Daniel Steffen * macosx/tkMacOSXWm.c (WmAttributesCmd, WmIconbitmapCmd): add support * unix/tkUnixSend.c (Tk_GetUserInactiveTime): for weakly importing symbols not available on OSX 10.2 or 10.3, enables binaires built on later OSX versions to run on earlier ones. * macosx/Wish.xcodeproj/project.pbxproj: enable weak-linking; turn on extra warnings. * macosx/README: document how to enable weak-linking; cleanup. * unix/configure.in: add check on Darwin-X11 for ld support of -weak-l * unix/tcl.m4: flag and weak-link libXss if possible as it is not available before OSX 10.4; enforce requirement of OSX 10.2 for TkAqua; move Darwin specific checks & defines that are only relevant to the tcl build out of tcl.m4; restrict framework option to Darwin; clean up quoting and help messages. * unix/configure: autoconf-2.59 * unix/tkConfig.h.in: autoheader-2.59 * macosx/GNUmakefile: enable xft for TkX11 build. * macosx/tkMacOSXFont.c (TkMacOSXQuarzStartDraw, TkMacOSXQuarzEndDraw): verify validity of context returned from QDBeginCGContext() before use. * macosx/tkMacOSXKeyEvent.c: ifdef out diagnostic messages to stderr. * macosx/tkMacOSXEvent.h: standardize MAC_OS_X_VERSION_MAX_ALLOWED * macosx/tkMacOSXMenu.c: checks per QA1316, ensure define can be * macosx/tkMacOSXMenubutton.c: overridden on command line (from default * macosx/tkMacOSXMenus.c: of current OS version). * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXWm.c: * generic/tkImgGIF.c (ReadImage): * macosx/tkMacOSXCursor.c (TkMacOSXCursor): * macosx/tkMacOSXDebug.c (TkMacOSXGetNamedDebugSymbol): * macosx/tkMacOSXFont.c (TkpMeasureCharsInContext): * macosx/tkMacOSXInit.c (Map): * xlib/xgc.c (XCreateGC): fix signed-with-unsigned comparison and other warnings from gcc4 -Wextra. 2006-07-14 Andreas Kupries * generic/tkWindow.c (Initialize): Modify change of 2006-05-25 (jeffh). Release mutex a bit earlier, to prevent lock when OS X creates its console windows (recursively enters Tk_Init). Patch by JeffH. 2006-07-06 Jeff Hobbs * library/tkfbox.tcl: catch scrollbar use of highlightthickness 2006-06-21 Jeff Hobbs * library/bgerror.tcl (::tk::dialog::error::bgerror): remove a couple of unnecessary hardcoded options 2006-06-14 Don Porter * generic/tkScale.c: Revised variable writing logic to account for [scale]'s design that it deals with its value as a formatted string, and not as a double. [Bug 891141] 2006-06-14 Daniel Steffen * macosx/tkMacOSXSubwindows.c (TkMacOSXInvalidateWindow): ensure invalid clip regions are recreated via TkMacOSXUpdateClipRgn() before they are used; correct call order of TkMacOSXInvalidateWindow() and TkMacOSXInvalClipRgns() throughout. [Bug 1501922] * macosx/tkMacOSXDraw.c (TkPutImage): implement drawing of very wide images in slices of less than 4096 pixels to workaround CopyBits limitation. [Bug 950121] 2006-06-09 Don Porter * generic/tkMain.c: Added Tcl_Preserve() call on the master interp as crash protection against any Tcl_DeleteInterp() call that might happen. 2006-06-01 Don Porter * generic/tkConsole.c: Added Tcl_RegisterChannel() calls to bump the refcount of channels passed to Tcl_SetStdChannel(). This prevents early free-ing of the channels that leads to crashes. [Bug 912571] 2006-05-29 Jeff Hobbs * win/tkWinEmbed.c (TkpGetOtherWindow): Do not panic if no window is * unix/tkUnixEmbed.c (TkpGetOtherWindow): found; caller handles. [Bug * unix/tkUnixWm.c (Tk_CoordsToWindow, UpdateGeometryInfo): 1212056] * tests/entry.test (entry-22.1): * tests/listbox.test (listbox-6.15): * generic/tkListbox.c (ListboxInsertSubCmd, ListboxDeleteSubCmd): Ignore Tcl_SetVar2Ex failure of listVarName, similar to entry widget handling. [Bug 1424513] 2006-05-26 Jeff Hobbs * macosx/tkMacOSXButton.c (TkMacOSXDrawControl): correct redraw for direct transition from disabled to active state. [Bug 706446] 2006-05-25 Jeff Hobbs * win/tkWinMenu.c (TkWinMenuKeyObjCmd): get eventPtr after we know the window is still alive. [AS bug 45987] [Bug 1236306] * generic/tkMenu.c (DeleteMenuCloneEntries): Modify entry index changes to work around VC6 optimization bug. [Bug 1224330] * generic/tkMessage.c (MessageWidgetObjCmd): Correct msgPtr preserve/release pairing. [Bug 1485750] (afredd) * generic/tkWindow.c (Initialize): Correct mutex (un)lock pairing. [Bug 1479587] (loewis) * generic/tkBind.c (Tk_BindEvent, TkCopyAndGlobalEval): use Tcl_EvalEx instead of Tcl_GlobalEval. 2006-05-16 Daniel Steffen * macosx/tkMacOSXWindowEvent.c (TkMacOSXGenerateFocusEvent): don't send focus events to windows of class help or to overrideredirect windows. [Bug 1472624] * macosx/tkMacOSXWm.c: set overrideredirect windows to not become activated by the window manager and to not receive OS activate events (should make them behave more like on other platforms); use modern window class API for overrideredirect and transient windows; set the default class of overrideredirect windows to 'simple' rather than 'plain' (i.e. no window frame); add missing Panther and Tiger window attributes to [::tk::unsupported::MacWindowStyle]. 2006-05-12 Jeff Hobbs * generic/tkImgPhoto.c (Tk_PhotoPutBlock, Tk_PhotoPutZoomedBlock): Fix opt added 2006-03 that caused slowdown for some common cases. [Bug 1409140] 2006-05-13 Daniel Steffen * generic/tkCanvWind.c (DisplayWinItem, WinItemRequestProc): ensure canvas window items are unmapped when canvas is unmapped. [Bug 940117] * macosx/tkMacOSXSubwindows.c (TkMacOSXUpdateClipRgn): empty clip region of unmapped windows to prevent any drawing into them or into their children from becoming visible. [Bug 940117] * macosx/tkMacOSXInt.h: revert Jim's attempt of 2005-03-14 to * macosx/tkMacOSXSubwindows.c: fix Bug 940117 as it disables Map/Unmap event propagation to children. [Bug 1480105] * macosx/tkMacOSXDraw.c (TkPutImage): handle tkPictureIsOpen flag, fixes incorrect positioning of images with complex alpha on native buttons; actual alpha blending is still broken in this situation. [Bug 1155596] * macosx/tkMacOSXEvent.c (TkMacOSXProcessCommandEvent): * macosx/tkMacOSXMenus.c (TkMacOSXInitMenus): workaround carbon bug with key shortcut for 'Preferences' app menu item. [Bug 1481503] * macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): only check for HICommand menu item shortcuts in the application menu. * macosx/tkMacOSXInt.h: initialize keyboard layout setup in * macosx/tkMacOSXInit.c: TkpInit() rather than during handling of * macosx/tkMacOSXKeyEvent.c: first key down event. * macosx/tkMacOSXDraw.c: add optional debug code to flash clip * macosx/tkMacOSXSubwindows.c: regions during update or draw. 2006-05-04 Don Porter * README: Bump version number to 8.5a5 * generic/tk.h: * unix/configure.in: * unix/tk.spec: * win/configure.in: * unix/configure: autoconf-2.59 * win/configure: 2006-04-28 Daniel Steffen * macosx/tkMacOSXWm.c (TkWmMapWindow, InitialWindowBounds): fix use of potentially stale window position in initial configure event on first map of a window. [Bug 1476443] (TkMacOSXWindowOffset): use modern GetWindowStructureWidths API. * macosx/tkMacOSXInt.h: * macosx/tkMacOSXMouseEvent.c (TkGenerateButtonEventForXPointer): new internal function to generate button events for current pointer directly, without requiring prior call to XQueryPointer(). * macosx/tkMacOSXMouseEvent.c (XQueryPointer): implement return of window-local pointer position. * macosx/tkMacOSXInt.h: use improvements above to avoid calls to * macosx/tkMacOSXKeyEvent.c: GlobalToLocal() when the current port * macosx/tkMacOSXMenu.c: might not be set correctly. May fix [Bug * macosx/tkMacOSXMenus.c: 1243318] * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * tkAboutDlg.r: update copyright. * macosx/tkMacOSXDebug.h: sync #includes with core-8-4-branch. * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXFont.h: 2006-04-26 Don Porter *** 8.5a4 TAGGED FOR RELEASE *** * changes: Updates for next RC 2006-04-25 Donal K. Fellows * unix/tkUnixFont.c (TkpGetFontFamilies): Fix crash caused when the XServer returns invalid font names. [Bug 1475865] 2006-04-23 Vince Darley * tests/scrollbar.test: fix to tkAqua test failures 2006-04-18 Vince Darley * macosx/tkMacOSXEmbed.c: fix to [Bug 1088814] test failures in embed.test * macosx/tkMacOSXWm.c: * tests/constraints.tcl: * tests/wm.test: fix to 'wm attributes' test for TkAqua 2006-04-11 Peter Spjuth * generic/tkWindow.c (Tk_NameToWindow): Allow NULL interp to Tk_NameToWindow. This fixes TkGetWindowFromObj which promises to handle NULL but didn't. * generic/tkGrid.c: Fixed handling of out of bounds row or column. * tests/grid.test: [Bug 1432666] 2006-04-11 Don Porter * unix/Makefile.in: Updated `make dist` target to be sure the message catalogs for the widget demo get packaged into the source code distribution. [Bug 1466509] 2006-04-11 Daniel Steffen * changes: added latest aqua bug fixes. * macosx/tkMacOSXDialog.c (Tk_MessageBoxObjCmd): added standard Escape key binding for msgbox cancel buttons [Patch 1193614], whitespace. * macosx/tkMacOSXCarbonEvents.c: handle kEventCommandUpdateStatus * macosx/tkMacOSXEvent.c: carbon event to dynamically enable the 'Preferences' app menu item when proc [::tk::mac::ShowPreferences] is defined. [Bug 700316] * macosx/tkMacOSXHLEvents.c: call ::tk::mac::* procs for all * macosx/tkMacOSXWindowEvent.c: registered appleevents [FR 1105284], implement print applevent handling, style/whitespace cleanup. * macosx/tkMacOSXDraw.c (TkMacOSXInitCGDrawing): prevent multiple init * macosx/tkMacOSXFont.c: remove #ifdef'd text measuring codepaths now * macosx/tkMacOSXInit.c: known to be incorrect, cleanup obsolete text * macosx/README: antialiasing control code, document ATSUI text antialiasing changes. * macosx/tkMacOSXInt.h: Implemented 'zoomed' window state * macosx/tkMacOSXWindowEvent.c: handling for TkAqua, via titlebar * macosx/tkMacOSXWm.c: widget clicks as well as [wm state]. * doc/wm.n: [Bug 1073456] 2006-04-10 Donal K. Fellows * library/tkfbox.tcl (::tk::IconList_Goto): Fix prefix searching so that the start location is reasonable, and the prefix matching is using the correct Tcl command for this. [Bug 1467938] 2006-04-10 Benjamin Riefenstahl * macosx/tkMacOSXFont.c (MeasureStringWidth): Use implementation based on ATSUGetGlyphBounds (TK_MAC_USE_GETGLYPHBOUNDS), so we can use kATSUseFractionalOrigins. This in turn corrects [Bug 1461650]. (InitFont): Use "." and "W" instead of "i" and "w" to determine the "-fixed" attribute. This prevents "Apple Chancery" from being classified as fixed. (InitFontFamilies): Only get the font families once. 2006-04-09 Daniel Steffen * macosx/tkMacOSXWm.c (WmResizableCmd): propagate window attribute changes to Carbon window manager. [FR 1467004] (TkSetWMName, TkMacOSXMakeRealWindowExist): allow empty name for toplevels, remove bogus initial window name. [Bug 1450800] 2006-04-07 Daniel Steffen * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): fix return values, implement window dragging & growing in background (with Command key down) and by fronting clicks [Bug 934524], use correct button & modifier state API when application is in background (also in TkMacOSXButtonKeyState). * macosx/tkMacOSXWm.c (TkMacOSXGrowToplevel): ensure QD port is set correctly before using API relying on it. 2006-04-06 Vince Darley * macosx/tkMacOSXMouseEvent.c: Now that [wm attributes -titlepath] works correctly, add OS support for dragging proxy icons and using the titlepath menu. 2006-04-06 Daniel Steffen * macosx/tkMacOSXWm.c (WmAttributesCmd, WmIconbitmapCmd): fix errors in setting/removing window proxy icons via [wm attributes -titlepath] and [wm iconbitmap], use HIWindow API on Tiger or later. [Bug 1455241] * unix/tcl.m4: remove TCL_IO_TRACK_OS_FOR_DRIVER_WITH_BAD_BLOCKING define on Darwin. [Tcl Bug 1457515] * unix/configure: autoconf-2.59 * unix/tkConfig.h.in: autoheader-2.59 2006-04-05 Jeff Hobbs * generic/tkWindow.c (Initialize): remove impotent use of DeleteWindowsExitProc as a global exit handler. * generic/tkMenu.c (TkSetWindowMenuBar): remove extra TkMenuInit call that caused finalization panic. [Bug 1456851] * win/tkWinMenu.c (FreeID, TkpNewMenu, MenuExitHandler) (MenuThreadExitHandler, TkpMenuInit, TkpMenuThreadInit): rework Windows menu init/finalization to better respect per-process and per-thread boundaries. [Bug 1456851] (TkWinMenuKeyObjCmd): Do not error when unknown window is passed in. [Bug 1236306] * win/tkWinX.c (TkWinXInit): init default keyboard charset correctly. [Bug 1374119] (pajas) * win/tkWinWm.c (WmProc): pass WM_QUERYENDSESSION message to Tk as WM_SAVE_YOURSELF wm protocol callback. * tests/textWind.test (textWind-10.6.1): prevent infinite update loop in case of test failure. * tests/wm.test (wm-attributes-1.2.4): correct expected result. * tests/grid.test: fix segfault on empty or "all" index list * generic/tkGrid.c (GridRowColumnConfigureCommand): [Bug 1422430] 2006-04-05 Vince Darley * generic/tkText.c: fix to crash caused on some platforms by new tests introduced to check for [Bug 1414171], which destroy the text widget in the dump callback script. 2006-03-29 Jeff Hobbs * generic/tkOption.c (TkOptionDeadWindow): handle OptionThreadExitProc being called before DeleteWindowsExitProc. * win/Makefile.in: convert _NATIVE paths to use / to avoid ".\" path-as-escape issue. 2006-03-29 Don Porter * changes: Updates for next RC * unix/tkUnixDefault.h: Changed "Black" to "#000000" and "White" to "#ffffff" to work around the (broken?) X servers that do not accept those color names. [Bug 917433] 2006-03-28 Jeff Hobbs * unix/tcl.m4, win/tcl.m4: []-quote AC_DEFUN functions. 2006-03-26 Vince Darley * generic/tkText.c: * tests/text.test: Fix for elaborations of [Bug 1414171] for '$text dump -command