The Perl Advent Calendar needs more articles for 2022. Submit your idea today!
Within each 'release' time advances down the file, but most recent
release is at the top.

Change.log is generated from perforce database, it is therefore
complete, but short on detail.

Changes in Tk800.022
	Fixes for NoteBook and LabFrame
	Various tweaks for "compile" to flat script (tool not released yet)
	Doc patches
	Slaven's -offset fixes and associated need to change compiled-in defaults.
	Feature suggestions from the list.

Changes in Tk800.021
	Steve's patches for fileevent and -labelXxxxx
	Fixed the 'Delagate' bug introduced trying to make AUTOLOAD clean.
	Tweaks to Optionmenu and BrowseEntry to make them more like each other
	and better tolerate changing the options/choices list.
	Made B::C* work again for perl5.005_03 (perl5.6.0 has problems).
	Use dTHX every where we had dTHR - should build against threaded perl
	Fix name clash in Event for VMS.
	Merge production Img1.2.3
	Fix Tk::Xrm and Tix Style with multiple MainWindows
	Found and fixed the 'Attempt to free unreferenced scalar' issue.

Changes in Tk800.020
	Various tweaks for perl5.6.0
	Fix ->itemconfigure of grouped canvas items.
	Another attempt at Win32 raise/lower and ActiveWindow/focus problems.
	Some other of e-mail backlog issues.

Changes in Tk800.019
	Fix the sporadic core dump problem, lots of other minor malloc irregularities
	fixed during search.
	Add builtin bitmap 'transparent' for the Canvas
	Avoid RepeatId in Animation
	Notice change of -label in Menu::Item
	Various patches (docs and other) from Slaven.

Changes in Tk800.018
	Mainly a bug-fix release
	The "new" honouring of perl context has been added to Photo and fixed
	for derived widgets.
	Added Greg London's TextList
	A gross mess in parsing legacy Tcl-like lists has been fixed - this
	would have been worst on Win32 where that style is used for fonts.
	Patches from Slaven that fixed bugs and finished selection support to HList.
	Patches from Steve for the demos.
	Adopted Ben Pavon's fixes for Tk::CmdLine

Changes in Tk800.017
	Move most of C code to use Tcl/Tk supported Tcl_Obj type calls rather
	than ad hoc Lang calls - should aid future merges.
	Added (experimental) group item to Canvas
	bbox etc. (e.g. Canvas items) return reference [] or list () depending on perl's context.
	Major overhaul of internals to assist in cleaner, non-delayed destruction of
	widget data structures.
	Move Text's menu handling to Widget and renamed it ->menu

Changes in Tk800.016
	Steve's merge of :
	  Andy Duncan's DialogBox fix.
	  David Town's
	Slaven's patches for :
	  defined in HList
	  RGB location
	Merged Jan's Tcl/Tk "dash patch"
	 adds dashed lines to canvas
	 also -tile (background image) to canvas, text and other widgets
	 also validation hook to entry
	Invented the "grid" canvas item

Changes in Tk800.015
	Event Loop is now usable as separate loadable
	Major work on Text, TextUndo by
	Lots of work on Drag&Drop
	  - XDND protocol
	  - KDE/kfm protocol
	  - Sun version window manager independant.
	Support for images as icons (Win32 and Unix)
	Tk::Pane and Tk::ProgressBar bundled.
	Fixes to Photo's ->put
	UNIX filevent overhaul
	Patches from the list as ever.
	Support for perl5.005_57+

Changes in Tk800.014
	A few patches from Steve.
	Merged tk8.0.5 and associated bits of tcl8.0.5
	Semi-automatic tidy-up of .pm files
	Merge img1.2b2 (may have been a mistake it is still a little rough).

Changes in Tk800.013
	Various tweaks to work better with -MO::* 'compile'
	Stephen Kun's Adjuster re-write.
	Many tweaks and fixes from mailing list, Slaven Rezic in particular
	contributed several.
	Added -elide option to text tags.
	New Tk::CmdLine from Ben Pavon
	Workround for callbacks loosing implied widget arg.
	Remove -DBASEEXT from Makefiles (VMS has issues with it)
	Fixed long standing bug in Win32 native getOpenFile/getSaveFile.

Changes in Tk800.012
	Various patches from the list
	Support "Explorer" Drops on Win32 (preliminary)
	Use KeySyms in Alt- Menu bindings
	Build WinPhoto by default on UNIX. (Does not work on Win32 yet.)
	Tolerate perl5.005_53 names of perl's variables.
	Made Tk::Font be objects based on fontCreate's 'named' fonts.
	Expand ~/.Xdefaults so Win32 actually has such a thing.
	Re-worked Busy to (optionaly) recursively change cursor.
	Arrow keys in Entry clear selection in Win32 too.
	Changes for ->raise on Win32
	Integrated Scriptic's tk8.0.3 and needed bits of associated tcl8.0.3
	Make last 'separator' on a menubar move following items to right

Changes in Tk800.011
	Various tweaks to make Conference demo cleaner,
	in particular :
	  * native-look dialog boxes.
	  * Normal Callbacks for NoteBook.
	Comprehend that $0 is tainted.
	Deprecate TixGrid until I/we decide where we are going.

Changes in Tk800.010
	Fix -variable stuff on PERL_OBJECT
	Achim's new tests and fixes for most of them.
	Fix for UNIX Drag&Drop when window has Menubar
	Virtual event for <<LeftTab>>
	Patches to make testsuite non-interactive
	Jason's latest Balloon
	Re-enable Alt-x stuff for UNIX.

Changes in Tk800.009
	A few tweaks to options documentation
	Perl5.005 tolerance, remove excessive groping in perl's internals.
	PERL_OBJECT awareness.

Changes in Tk800.008
	Fixed up some L<> problems in the pods, merged Achim's pod edits.
	Fixed up some Copy/Paste issues.
	Fixed some Tk::IO and fileevent problems
	Prepared for compiler by 'use base' rather than @ISA assign.
	Ev('s') and $event->s now have a string form usable in bind.
	Various build fixes.

Changes in Tk800.007
	Mingw32 build-ability (Still needs a little more work)

	Ilya's OS2 patches
	Doc updates from Achim
	Test updates from Achim
	Slaven's Balloon & Canvas stuff
	Another try at cleaning up __FUNCTION__ snags.
	Steve's prototype MsgBox (this will change)
	Re-work tainting stuff again.

Changes in Tk800.006
	New hook in new for "managing parents"

	Sorted out Drag&Drop
	Added wmRelease to Win32 port

	More Pod tweaks from Achim

	form geometry manager restored and improved
	-initialfile in FileSelect fixed.

	Seems to work tainted again.

	Some cleanup to TList

	Build cleanup

	Patches from the list.

Changes in Tk800.005

	Reworked MainLoop and did "sneaky" things to demo and tkpsh
	to make embedding demos easier.
	Cleaned up the tests, making interactive tests into demos.

	Text 'dump' now returns object for widgets and images.

	More documentaion changes - mainly by Achim - thanks as ever.

	ItemStyle is supported for HList & co.

	Drag & Drop code now works as well as it ever did, even on Win32
	still needs integrating with mainstream widgets like HList that expect
	it and more "native" support.

	Photo image type is now more modular - unbundled JPEG and PNG
	modules will be released to match.

Changes in Tk800.004

	Revert ConfigSpecs to Tk402 style
	Fix Balloon on Win32
	Re-work Photo C API
	Various fixed to tixGrid
	Moved all POD to pod directory
	Fixed Achim's failing testcases
	Various pod tweaks

Changes in Tk800.003

	Various fixes for build of outside Tk extensions
	Steve's demo patch
	Jason's Balloon enhancement.
	Change to pod as primary documentation.
	   Achim Bohnet <> has helped a lot here.
	   HTML build not done yet.
	Fix to HList scrollbar handling

Changes in Tk800.0_02

	Added generic dialog support. See toyedit for example use.
	Tested on Win32, and implemented more-or-less for UNIX/X,
	based on our existing widgets.

	Fixed ->Icon to allow for new wrapper window

	Implemented font command - hardly tested doc's still tcl-ish.

	Changed default value handling of ConfigSpecs to ask default
	widget for value(s).

	Added LangIO.h.PL

	Patches from the list.

	Handle Name => stuff better in menus.

Changes in Tk800.0_01

	Various fixes - many thanks to Slaven Rezic <>
	in particular.

	Found systematic bug in returning lists - this was setPalette bug, and tab focus

	Documentaion updates from Achim Bohnet <>

	Implemented use of virtual events e.g. <<Copy>>

	Tk::Menubar now uses new menubar features.

	Tk::Photo now handles overlay in (e.g.) animated GIFs again.

	Some testing of embedding hooks - seem to work.

	fileevent works again on UNIX, and after a fashion on Win32.

Changes in Tk800.000

Adopt tk8.0p2 and associated tcl8.0p2 where required.
Fix to build and run as much as possible on Solaris and Win32.

Menus and Fonts have changed radically in the core.

Tcl/Tk's menu.tcl has been hand converted (mostly) to and
Menus mostly work - there will typo's in all that hand conversion.

No attempt has been made to make Font stuff visible to perl, indeed
existing Tk::Font is ideal candiate API (very close to what Tcl has), but probably
does not work at the moment.

Other big snag is fileevent is now completely broken on all platforms.
I need to re-implement enough of Tcl_Channel API on top of perl's file handles
to re-introduce it. This will be main focus of Tk800.001 ...

Changes in 402.005

 Un-bundle Tk::Pod
 Un-bundle Tk::Contrib
 Un-bundle Tk::HTML

 Fix "Class" of Mainwindow

 Various mailed patches

 Fix FileSelect with -create to validate non-existant files correctly

 Use output of xmkmf rather than file itself.

Changes in 402.003

	Update VERSION numbers in all .pm files - semi-automatic
        from perforce depot.

	Tweaks for tkmail (Perl conference demo app.)

	Retro-fit HTML parse tweaks used in conference foil viewer

	Fix Tk::Text selection by keyboard <Shift-Down> etc.

	New image code - including  animated GIFs

	Fix -pack problem in Menbar, and Tcl_DeleteCommand issue in ImgCmp

Changes in 402.002

* More <stdio.h> detection in pTk/LangIO.h

* Ilya's OS2 patches

* Patches to doc/tkman2pod for back-conversion on machines without 'man'.

* Merged Tix4.1.0.005

Changes in 402.001

* Should now build with VC4.0, VC5.0 or Borland

* Right version of Tcl documentation merged.

* Scrollbars and Scales have default widths specified in physical units rather than
  pixels - so should not get over-large on low-resolution screens.

* Various build fixes.

* Tix4.1.0 (003) C code merged.

* Tixish updates from Rajappa Iyer.

* Changed to use Tix's Pixmap code rather than one using libxpm.
  (Libxpm has been a portability problem.
  (When Tk::Pixmap is loaded Tix's additional "builtin" Bitmaps and
   Pixmap id's are loaded too.)

* 'grid' can now be used "procedurally" :
    Tk::grid('-', $a, 'x', $b);

* New syntax supported to allow ConfigSpecs to cause configure option
  to configure a subwidget with a different named option.

* DefineBitmap interface added - Bitmaps can now be defined from perl code.
  Perl's 'pack' is very useful.

* Should build on top of sfio enabled perl.

* Tab traversal of Table's children permitted if Table does not take focus.

* Re-structured MainWindow moving 'CmdLine' into Tk::CmdLine.
  All perl/Tk apps now accept and honour command line switches described
  in X11R5 man page.  Some support of 'WM_SAVEYOURSELF' protocol.
  May need $mw->client setting.

* New demos from Steve Lidie - thanks as always.

* fixed ->wmCapture - NOTE Ioi has dropped "capture" from Tix4.1
  so we have the "orphan" implementation from Tix4.0.*

Changes in 402.000

* Put perl/Tk under perforce management 400.200 .. 400.202+

* Merged perl stuff from Tk400.201

* Merged tk4.2 sources

* Rearranged pTk/mTk to make tcl vs tk naming more symetric

* Merged perl stuff from Tk400.202+

* Merged tk4.2p2 sources

* Win32 port.

* Added FontAscent/FontDescent methods to Tk::,
  and used them for ascent/descent methods of Tk::Font

* Moved things around in Derived to allow Derived to be
  used for non-widgets.

* Moved Component and Advertise from Tk::Frame to Tk::Derived

Changes in 401.000

* Merged perl stuff from Tk400.200

* Imaginary release - Ilya had something "like" this for OS/2.

Changes in Tk4.1a

* Abstract "basis" was Tkb11+

* Merged tk4.1 sources.

* Merged Event loop stuff from tcl7.5

* Rearranged pTk/mTk to mirror tk4.1+'s multi-platform structure
  - munge from 'platform' source to pTk/*/[ch]

* Pseudo release with non-standard name "Tk4.1a"