# Copyright (c) 1995-1999 Nick Ing-Simmons. All rights reserved.
# This program is free software; you can redistribute it and/or
# modify it under the same terms as Perl itself.
$VERSION = '3.015'; # $Id: //depot/Tk8/Tk/After.pm#15 $
my $h = delete $w->{_After_};
foreach my $obj (values %$h)
# carp "Auto cancel ".$obj->[1]." for ".$obj->[0]->PathName;
delete($w->{_After_}{$id}) if (defined $id);
$id = $w->Tk::after($t,[$method => $obj]);
unless (exists $w->{_After_})
$w->OnDestroy([\&_cancelAll, $w]);
$w->{_After_}{$id} = $obj;
my ($class,$w,$t,$method,@cb) = @_;
my $cb = (@cb == 1) ? shift(@cb) : [@cb];
my $obj = bless [$w,undef,$t,$method,Tk::Callback->new($cb)],$class;
$w->Tk::after('cancel'=> $id);
delete $w->{_After_}{$id} if exists $w->{_After_};
local $Tk::widget = $obj->[0];
delete $w->{_After_}{$id};