Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Fetching contributors…
Cannot retrieve contributors at this time
5284 lines (3840 sloc) 201 KB
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/
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 <<Modified>> [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.
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
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/ 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/ 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:
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 <inttypes.h> 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
( 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
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/
* unix/tk.spec:
* win/
* 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
* 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 <Map> 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
* 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
* library/tkfbox.tcl (::tk::dialog::file::CompleteEnt): Added <Tab>
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
* 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/ 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/ release.
* unix/tk.spec:
* win/
* 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
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/
* unix/tk.spec:
* win/
* 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
* 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:
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
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/ 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/ 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
* 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
* 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
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/
* unix/configure: autoconf-2.59
* unix/ 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/ (Darwin): add support for 64-bit X11.
* unix/configure: autoconf-2.59
2007-10-14 Jeff Hobbs <>
* win/configure, win/ (TK_WIN_VERSION): Make sure the
patchlevel doesn't contain extra dotted pairs (eg. interim release)
2007-10-12 Pat Thoyts <>
* win/ Mine all version information from headers.
* win/ 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
* 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
* 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 <>
* README: Bump version number to 8.5.0
* generic/tk.h:
* library/tk.tcl:
* unix/ Updated LOCALES.
* unix/tk.spec:
* win/
* 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/ on the HEAD. core-stabilizer-branch is
* unix/tk.spec: now suspended.
* win/
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/ 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/ Add crt flags for tkStubLib now it uses C-library
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/ (install-binaries): Fixed missing brace in the
* win/ (install-binaries): generated package index file.
Note: unix/ 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/ willing to work with. [Bug 1578344]
* win/
* win/
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/ 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
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/ 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/ 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/ Synchronize with tcl
* tests/all.tcl: Fix the line-endings.
2007-08-07 Daniel Steffen <>
* unix/ Add support for compile flags specific to
object files linked directly into executables.
* unix/ (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/ 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
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/ 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
* 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
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
* 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
* macosx/Wish-Release.xcconfig: Disable tktest release build stripping.
* macosx/Wish.xcodeproj/project.pbxproj: Add new
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/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/ (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/ 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 <tcl.h>. [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 <>
* unix/configure: autoconf-2.59 (FC6 fork)
* win/configure:
* README: Bump version number to 8.5b1
* generic/tk.h:
* library/tk.tcl:
* unix/
* unix/tk.spec:
* win/
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/
* unix/tk.spec:
* win/
* 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
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/ 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
2007-05-14 Don Porter <>
[Tk Bug 1712081]
* unix/ Updates to account for new and deleted files
* win/ tkStubImg.c and tkOldTest.c.
* win/makefile.bc:
* win/
* 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
* 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
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
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/ 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
2007-04-26 Jeff Hobbs <>
*** 8.5a6 TAGGED FOR RELEASE ***
* unix/ (dist): Correct tests/ttk glob inclusion
2007-04-25 Jeff Hobbs <>
* unix/ (dist): Add tests/ttk dir to src dist
* unix/tkUnixMenubu.c (TkpDisplayMenuButton): Init width/height to 0
2007-04-25 Daniel Steffen <>
* unix/ (dist): Add macosx/*.xcconfig files to src dist;
copy license.terms to dist macosx dir; fix autoheader bits.
2007-04-24 Jeff Hobbs <>
* unix/ (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/ (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 <<MenuSelect>> 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 <<MenuSelect>> 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
* 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/ 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/
* macosx/
* macosx/Wish.xcode/project.pbxproj:
* macosx/Wish.xcodeproj/project.pbxproj:
* macosx/tkMacOSX.h:
* unix/ 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/ (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/ vcX0.pch file. Sync up fixed nmakehlp usage from
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/ add caching to -pipe check.
* unix/configure: autoconf-2.59
* unix/ autoheader-2.59
2007-02-03 Joe Mistachkin <>
* win/ Fix platform specific file copy macros for downlevel
* 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/ 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
* 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/ (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/, unix/ (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
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/ 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 <>
* 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 <>
* 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/ 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
* 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/ autoheader-2.59
2006-11-08 Kevin Kenny <>
* unix/ 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/ 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
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/ Added ttk files to msvc build and add manifest
* win/ 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/, win/ add Ttk build bits
* win/configure, win/ 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/
* unix/tk.spec:
* win/
* unix/configure: autoconf-2.59
* win/configure:
2006-10-19 Pat Thoyts <>
*** 8.5a5 TAGGED FOR RELEASE ***
* generic/tkImgBmap.c: Fixed line endings.
* win/ Patched up build system to manage
* win/ 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 &
* 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/ (install-binaries): Added a second guard to the
* win/ package index file to prevent older versions of Tcl
* win/ 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/
* unix/tcl.m4:
* win/configure:
* win/
* win/
* win/
* 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/ (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/ 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
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
(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
* 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/ 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/ 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
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
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
* 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/
* unix/tk.spec:
* win/
* 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
* 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/ 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
* 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]
define on Darwin. [Tcl Bug 1457515]
* unix/configure: autoconf-2.59
* unix/ 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/ 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 <script>' where script deletes large portions of the
text widget, or even destroys the widget.
2006-03-28 Daniel Steffen <>
* macosx/Wish.xcode/default.pbxuser: add '-singleproc 1' cli arg to
* macosx/Wish.xcodeproj/default.pbxuser: tktest to ease test debugging.
* macosx/Wish.xcode/project.pbxproj: removed $prefix/share from
* macosx/Wish.xcodeproj/project.pbxproj: TCL_PACKAGE_PATH as per change
to tcl/unix/ of 2006-03-13.
* macosx/tkMacOSXDraw.c: sync whitespace & minor changes with
* macosx/tkMacOSXEvent.h: core-8-4-branch.
* macosx/tkMacOSXFont.h:
* macosx/tkMacOSXMenu.c:
* macosx/tkMacOSXNotify.c:
2006-03-27 Don Porter <>
* changes: Updates for next RC
2006-03-27 Benjamin Riefenstahl <>
* generic/tkTextDisp.c (MeasureChars): Fix calculations of start and
end of string. [Bugs 1325998, 1456157]
2006-03-27 Donal K. Fellows <>
* generic/tkImgGIF.c (FileReadGIF): Stop crashes when the first GIF
frame does not define the overall size of the image. [Bug 1458234]
2006-03-26 Vince Darley <>
* generic/tkText.c:
* generic/tkText.h:
* generic/tkTextBTree.c:
* tests/text.test: Fix for [Bug 1414171] for '$text dump -command
<script>' where 'script' actually modifies the widget during the
2006-03-25 Daniel Steffen <>
* macosx/tkMacOSXDraw.c (TkMacOSXSetUpCGContext):
* macosx/tkMacOSXFont.c (TkMacOSXQuarzStartDraw, TkMacOSXQuarzEndDraw):
performance improvements, sync similar code, formatting & whitespace.
2006-03-24 Daniel Steffen <>
* generic/tkTextDisp.c: Moved #ifdef MAC_OSX_TK code added by
* macosx/tkMacOSXColor.c: [Patch 638966] into platform specific files.
* macosx/tkMacOSXInt.h:
* macosx/tkMacOSX.h: Cleaned up & rationalized order of
* macosx/tkMacOSXBitmap.c: #includes of tk and carbon headers.
* macosx/tkMacOSXButton.c:
* macosx/tkMacOSXCarbonEvents.c:
* macosx/tkMacOSXClipboard.c:
* macosx/tkMacOSXColor.c:
* macosx/tkMacOSXConfig.c:
* macosx/tkMacOSXCursor.c:
* macosx/tkMacOSXDialog.c:
* macosx/tkMacOSXDraw.c:
* macosx/tkMacOSXEmbed.c:
* macosx/tkMacOSXEntry.c:
* macosx/tkMacOSXEvent.c:
* macosx/tkMacOSXEvent.h:
* macosx/tkMacOSXFont.h:
* macosx/tkMacOSXHLEvents.c:
* macosx/tkMacOSXInit.c:
* macosx/tkMacOSXInt.h:
* macosx/tkMacOSXKeyEvent.c:
* macosx/tkMacOSXKeyboard.c:
* macosx/tkMacOSXMenu.c:
* macosx/tkMacOSXMenubutton.c:
* macosx/tkMacOSXMenus.c:
* macosx/tkMacOSXMouseEvent.c:
* macosx/tkMacOSXRegion.c:
* macosx/tkMacOSXScale.c:
* macosx/tkMacOSXScrlbr.c:
* macosx/tkMacOSXSend.c:
* macosx/tkMacOSXSubwindows.c:
* macosx/tkMacOSXWindowEvent.c:
* macosx/tkMacOSXWm.c:
* macosx/tkMacOSXWm.h:
* macosx/tkMacOSXXStubs.c:
2006-03-23 Reinhard Max <>
* unix/tkUnixRFont.c (TkpMeasureCharsInContext): Copied over from
tkUnixFont.c to fix compiling with --enable-xft .
* unix/tk.spec: Cleaned up and completed. An RPM can now be built from
the tk source distribution with "rpmbuild -tb <tarball>".
2006-03-23 Don Porter <>
* tests/textDisp.test: Updated expected error messages to match the
standardized formats established on 2005-11-17. [Bug 1370296]
2006-03-22 Don Porter <>
* changes: Updates for next RC
2006-03-21 Daniel Steffen <>
* generic/tkFont.c: implementation of ATSUI text rendering
* generic/tkInt.h: in TkAqua provided by Benjamin
* generic/tkTextDisp.c: Riefenstahl. [Patch 638966]
* library/demos/unicodeout.tcl:
* macosx/tkMacOSXFont.h (new file):
* macosx/tkMacOSXFont.c:
* tests/font.test:
* unix/tkUnixFont.c:
* win/tkWinFont.c:
* generic/tkFont.c: moved MODULE_SCOPE declarations of font
* generic/tkFont.h: helper procs into header files.
* macosx/tkMacOSXButton.c:
* macosx/tkMacOSXFont.h:
* macosx/tkMacOSXMenubutton.c:
* macosx/Wish.xcode/project.pbxproj: add new tkMacOSXFont.h file,
* macosx/Wish.xcodeproj/project.pbxproj: turn off dead code stripping
as it interferes with -sectcreate (rdar://4486223).
* macosx/Wish.xcode/default.pbxuser: add TCLLIBPATH=/Library/Tcl
* macosx/Wish.xcodeproj/default.pbxuser: env var setting to tktest.
* unix/ fix detection of symbols build when enabling
TkAqua debug code; filter nm output of libtclstub better to avoid
error on intel macs. [Bug 1415789]
* unix/configure: autoconf-2.59
2006-03-20 Don Porter <>
* generic/tkConsole.c: Added exit handler to clean up the interp where
the console window lives. Also added code to handle multiple calls to
Tk_CreateConsoleWindow so that the console channels connect to the last
console window opened, in compatibility with the previous
2006-03-18 Vince Darley <>
* generic/tkText.c: Fix for undo/modified status of text widgets when
empty strings are inserted and undone.
2006-03-17 Pat Thoyts <>
* library/clrpick.tcl: Avoid using abbreviated sub-commands in core
* library/palette.tcl: scripts as this can cause problems with
* library/scale.tcl: mega-widget libraries like snit.
* library/scrlbar.tcl: [Bug 1451587]
* library/tkfbox.tcl:
* library/xmfbox.tcl:
2006-03-16 Don Porter <>
* generic/tkConsole.c: Substantial rewrite of [console] support.
* generic/tkInt.h: Included Obj-ification of the [console] and
[consoleinterp] commands, and reworking of all the supporting data
structures for cleaner sharing and lifetime management especially in
multi-threaded configurations.
2006-03-16 Donal K. Fellows <>
* library/msgs/pt.msg: Messages for Portuguese (strictly just for
Brazilian Portuguese, but they'll do until we get other Portuguese
speakers localize) from Ricardo Jorge <> and Silas
Justiano <>. Many thanks! [Bug 1405069]
* generic/tkImgPhoto.c (ImgPhotoCmd, Tk_PhotoPutBlock)
(Tk_PhotoPutZoomedBlock): Added hack to detect copying of a photo with
a simple alpha channel and skip calling ToggleComplexAlphaIfNeeded.
This should speed up many photo-to-photo copies, keeping the cost of
the alpha channel down.
2006-03-15 Donal K. Fellows <>
* generic/tkImgPhoto.c (Tk_PhotoPutBlock, Tk_PhotoPutZoomedBlock): Try
to squelch performance issue with code that writes to large images by
single pixels. Masses of thanks to George Staplin for helping to trace
this down to the COMPLEX_ALPHA flag handling code. [Bug 1409140]
2006-03-13 Don Porter <>
* tests/scrollbar.test: Corrected several broken calls to [testmetrics]
that were crashing the test suite.
* tests/constraints.tcl: Added notAqua constraint to canvPs-3.1
* tests/canvPs.test: to stop test suite crash on Mac OSX.
[Bug 1088807]
* generic/tkCmds.c: Purged remaining references to errno,
* macosx/tkMacOSXPort.h: and errno.h. Standardized the logic
* macosx/tkMacOSXWm.c: for using header files from the compat
* macosx/tkMacOSXWm.h: directory. Thanks Joe English for the
* unix/tkUnixPort.h: patch. [Patch 1445404]
2006-03-08 Don Porter <>
* unix/ Update `make dist` to copy the image files needed
by the test suite into the source distro. This was overlooked in the
2005-10-12 commit.
* changes: Update in prep. for 8.5a4 release.
2006-03-07 Joe English <>
* unix/tcl.m4: Set SHLIB_LD_FLAGS='${LIBS}' on NetBSD, as per the other
*BSD variants. [Bug 1334613]
* unix/configure: Regenerated.
2006-03-07 Donal K. Fellows <>
* doc/canvas.n: Added note that stipples are not well-supported on
non-X11 platforms. [Bug 220787] It's not a great solution, but it does
indicate the state of affairs that has existed for years anyway; not
much modern software uses stipples anyway.
2006-03-02 Jeff Hobbs <>
* macosx/tkMacOSXDraw.c (TkPutImage): Fix endian issue on OS X x86
displaying images. Bitmap images still have a black/white reversal
issue, appears to be a general OS X issue (as seen in frogger demo).
2006-02-27 Donal K. Fellows <>
* generic/tkBitmap.c (Tk_GetBitmapFromData): Improve thread-safety.
[Bug 470322]
* generic/tkImgBmap.c (ImgBmapConfigureInstance): Force creation of new
Pixmaps before deletion of old ones to prevent stupid caching problems.
[Bug 480862]
2006-02-09 Daniel Steffen <>
* generic/tk.decls: fix signature of TkMacOSXInvalClipRgns
* generic/tkPlatDecls.h: to use Tk_Window instead of internal
* macosx/tkMacOSXSubwindows.c: type TkWindow (which led to any include
* macosx/tkMacOSXWindowEvent.c: of public header tkMacOSX.h requiring
* macosx/tkMacOSXWm.c: prior include of tkInt.h).
* generic/tk.h: move TkAqua specific REDO_KEYSYM_LOOKUP define
* macosx/tkMacOSXPort.h: out of tk.h into platform header.
2006-01-31 Donal K. Fellows <>
* library/bgerror.tcl (::tk::dialog::error::bgerror): Finish the
internationalization of the error dialog. [Bug 1409264]
2006-01-25 Don Porter <>
* library/bgerror.tcl: Updates to use Tcl 8.4 features. [Patch 1237759]
* library/choosedir.tcl:
* library/comdlg.tcl:
* library/console.tcl:
* library/dialog.tcl:
* library/focus.tcl:
* library/msgbox.tcl:
* library/palette.tcl:
* library/tk.tcl:
* library/tkfbox.tcl:
* library/xmfbox.tcl:
2006-01-23 Daniel Steffen <>
* unix/configure: minor fix to Darwin specific code removing
* unix/ 64bit flags from CFLAGS for Tk build.
2006-01-20 Joe English <>
* generic/tkEvent.c, unix/tkUnixEvent.c: XIM fixes [See 905830, patch
tk84-xim-fixes.patch], and revert 2005-12-05 patch disabling XIM when
SCIM in use, and make sure all X events get passed to XFilterEvent,
including those without a corresponding Tk window.
2006-01-13 Anton Kovalenko <>
* generic/tkUndo.c (TkUndoSetDepth): Don't free TkUndoSubAtoms for
separator entries that are deleted: there is some unpredictable garbage
instead of subatoms.
Free both 'apply' and 'revert' action chains for non-separator entries.
2006-01-12 Donal K. Fellows <>
* generic/tkCanvText.c (TextItem, CreateText, DisplayCanvText):
* doc/canvas.n: Code, docs and tests to implement an -underline
* tests/canvText.test: option for canvases' text items.
2006-01-11 Peter Spjuth <>
* generic/tkGrid.c: Removed a lingering error message from TIP#147
2006-01-10 Daniel Steffen <>
* macosx/tkMacOSXDebug.c: add TkMacOSXGetNamedDebugSymbol() function
* macosx/tkMacOSXDebug.h: that finds unexported symbols in loaded
libraries by manually walking their symbol table; only to be used for
debugging purposes, may break unexpectedly in the future. Needed to get
access to private_extern internal debugging functions in HIToolbox.
* macosx/tkMacOSXCarbonEvents.c: fix debug event tracing on Tiger.
* macosx/tkMacOSXMenu.c: add debug menu printing during reconfigure.
* macosx/tkMacOSXInit.c: conditionalize 64bit-unsafe dyld code.
* macosx/GNUmakefile: add 'wish8.x' symlink to SYMROOT.
* macosx/Wish.xcode/project.pbxproj: fix copy to tktest resource
* macosx/Wish.xcodeproj/project.pbxproj: fork when zerolinked.
* macosx/Wish.xcode/default.pbxuser: add widget demo as argument to
* macosx/Wish.xcodeproj/default.pbxuser: executables (on by default).
* unix/configure: add caching, use AC_CACHE_CHECK instead of
* unix/ AC_CACHE_VAL where possible, consistent message
* unix/tcl.m4: quoting, sync relevant tclconfig/tcl.m4 changes
and gratuitous formatting differences, fix SC_CONFIG_MANPAGES with
default argument, Darwin improvements to SC_LOAD_*CONFIG.
2005-12-28 Donal K. Fellows <>
* generic/tkUndo.c (TkUndoSetDepth): Apply [Patch 1391939] from Ludwig
Callewaert to fix [Bug 1380427].
2005-12-14 Daniel Steffen <>
* macosx/Wish.xcode/project.pbxproj:
* macosx/Wish.xcodeproj/project.pbxproj: add new tclTomMath* files.
2005-12-13 Daniel Steffen <>
* library/demos/cscroll.tcl: add MouseWheel bindings for aqua.
* macosx/tkMacOSXCarbonEvents.c (TkMacOSXInitCarbonEvents):
* macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent)
(GenerateMouseWheelEvent): add support for kEventMouseScroll events
(smooth mouse wheel scrolling from mighty mouse or scrolling trackpad)
by handling kEventMouseWheelMoved on application target as well as on
dispatcher, in order to pick up synthesized MouseWheel events from
HIObject handler (c.f. QA1453); add support for horizontal scrolling
events by generating MouseWheel XEvent with Shift modifier.
2005-12-12 Jeff Hobbs <>
* unix/tcl.m4, unix/configure: Fix sh quoting error reported in
bash-3.1+ [Bug 1377619] (schafer)
2005-12-09 Mo DeJong <>
* win/tkWinWm.c (WinSetIcon): Don't check result of SetClassLong() or
SetClassLongPtr() since it was generating an incorrect error and the
MSDN docs indicate that the result need not be checked.
2005-12-09 Mo DeJong <>
* win/configure: Regen.
* win/tcl.m4 (SC_CONFIG_CFLAGS): Define MACHINE for gcc builds. The
lack of a definition of this variable in the manifest file was causing
a runtime error in wish built with gcc.
2005-12-09 Daniel Steffen <>
* generic/tkInt.decls: Move all platform test sources from tk lib into
* generic/tkTest.c: tktest directly, removes requirement to export
* macosx/tkMacOSXTest.c:TkplatformtestInit from internal stubs table.
* unix/
* win/
* win/
* win/tkWinTest.c:
* generic/tkIntPlatDecls.h:
* generic/tkStubInit.c: regen.
2005-12-08 Jeff Hobbs <>
* win/tcl.m4: Add build support for Windows-x64 builds.
* win/configure: --enable-64bit now accepts =amd64|ia64 for
* win/ Windows 64-bit build variants (default: amd64)
* win/ [Bug 1369597]
(TKOBJS): add tkWinTest.obj to regular Tk obj for TkplatformtestInit
* win/ Add CE build support (some C code fixes needed)
* win/ (new): manifest must map in MACHINE and
* win/rc/wish.exe.manifest (removed): VERSION to be correct.
* unix/ fix dist target for manifest dir change
* generic/tkTextTag.c (TkTextTagCmd): use correct arraySize for peered
text widgets in [$text tag names]. [Bugs 1375069, 1374935]
2005-12-08 Daniel Steffen <>
* macosx/tkMacOSXDraw.c: Remove inclusion of tclInt.h and use of tcl
* macosx/tkMacOSXFont.c: internals wherever possible in tk/macosx, the
* macosx/tkMacOSXInit.c: only remaining tcl internals in TkAqua are
* macosx/tkMacOSXNotify.c:TclServiceIdle() in tkMacOSXScrlbr.c and
* macosx/tkMacOSXScrlbr.c:Tcl_Get/SetStartupScript() in tkMacOSXInit.c
[RFE 1336531]
* macosx/tkMacOSXInt.h: sync comments with core-8-4-branch.
2005-12-07 Jeff Hobbs <>
* unix/tkUnixEvent.c (OpenIM): remove extraneous const
2005-12-06 Donal K. Fellows <>
* doc/ConfigWidg.3 (TK_CONFIG_OPTION_SPECIFIED): Mentioned that the
flag is deprecated because it is not thread-safe.
2005-12-05 Reinhard Max <>
* unix/tkUnixEvent.c (OpenIM): Added a workaround to allow at least
ASCII and the Compose key when typing into text and entry widgets on a
system that uses SCIM. This has to be taken out again once the SCIM
problems have been fixed.
2005-12-01 Daniel Steffen <>
* unix/tcl.m4 (Darwin): fixed error when MACOSX_DEPLOYMENT_TARGET unset
* unix/configure: regen.
2005-11-30 Jeff Hobbs <>
* win/tkWinWm.c (WmAttributesCmd): set (no)topmost window aspect before
rewrapping. [Bug 1086049]
* macosx/tkMacOSXXStubs.c (TkpOpenDisplay, TkMacOSXDisplayChanged):
* macosx/tkMacOSXWindowEvent.c (TkMacOSXProcessApplicationEvent):
* macosx/tkMacOSXCarbonEvents.c (TkMacOSXInitCarbonEvents):
* macosx/tkMacOSXEvent.h: Trap kEventAppAvailableWindowBoundsChanged
* macosx/tkMacOSXInt.h: event to watch for change in display size and
adjust internal state appropriately.
* doc/checkbutton.n: fix -selectcolor docs. [Bug 1083838]
* generic/tkImgGIF.c: cast calls to blockOut
* win/ place TCL_BIN_DIR first in PATH for targets to get
Tcl built dll first.
Add tkWinTest.obj to tk84.dll to handle some needed test functions
being defined in stubs (TkplatformtestInit).
* tests/scrollbar.test (6.22): fix rounding-error sensitive test
2005-11-29 Jeff Hobbs <>
* library/console.tcl (::tk::ConsoleInit): improve work-around to avoid
'% ' from tclMain.c. [Bug 1252259]
2005-11-27 Daniel Steffen <>
* unix/tcl.m4 (Darwin): add 64bit support, check for Tiger copyfile(),
add CFLAGS to SHLIB_LD to support passing -isysroot in env(CFLAGS) to
configure (flag can't be present twice, so can't be in both CFLAGS and
LDFLAGS during configure), don't use -prebind when deploying on 10.4,
(SC_ENABLE_LANGINFO, SC_TIME_HANDLER): add/fix caching, fix obsolete
autoconf macros. Sync with tcl/unix/tcl.m4.
* unix/ fix obsolete autoconf macros, sync gratuitous
formatting/ordering differences with tcl/unix/
* unix/ add CFLAGS to wish/tktest link to make executable
linking the same as during configure (needed to avoid loosing any
linker relevant flags in CFLAGS, in particular flags that can't be in
LDFLAGS). Avoid concurrent linking of wish and compiling of
tkTestInit.o during parallel make, fix dependencies and flags for
building tkMacOSXInit.o
(checkstubs, checkexports): dependency and Darwin fixes
(dist): add new macosx files.
* macosx/tkMacOSXEvent.c (TkMacOSXProcessEvent):
* macosx/tkMacOSXEvent.h:
* macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent):
* macosx/tkMacOSXCarbonEvents.c: install standard application event
handler, add & call functions to start and stop carbon even timer that
runs the tcl event loop periodically during a nested carbon event loop
in the toolbox (e.g. during menutracking) to ensure tcl timers etc.
continue to fire, register app event handler for menu tracking and HI
command carbon events, move menu event handling to new handlers for
those carbon events, no longer register for/handle appleevent carbon
event (now dealt with by standard application event handler), event
debugging code dynamically acquires carbon event debugging functions to
allow use on Tiger where they are no longer exported from HIToolbox.
* macosx/tkMacOSXFont.c (TkMacOSXUseAntialiasedText):
* macosx/tkMacOSXKeyEvent.c (GetKeyboardLayout):
* macosx/tkMacOSXCarbonEvents.c (TkMacOSXInitCarbonEvents):
* macosx/tkMacOSXInit.c:
* macosx/tkMacOSXInt.h: abstract common code to dynamically acquire