ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/kgsueme/kgsueme/game.pl
(Generate patch)

Comparing kgsueme/kgsueme/game.pl (file contents):
Revision 1.23 by pcg, Sun Jun 1 10:10:21 2003 UTC vs.
Revision 1.24 by pcg, Sun Jun 1 10:13:28 2003 UTC

75sub refresh { 75sub refresh {
76 my ($self, $timestamp) = @_; 76 my ($self, $timestamp) = @_;
77 my $timer = $self->{time} + $self->{start} - $timestamp; 77 my $timer = $self->{time} + $self->{start} - $timestamp;
78 $self->{widget}->set_text ($self->{format}->($timer)); 78 $self->{widget}->set_text ($self->{format}->($timer));
79 79
80 warn "Timer $timer\n";
81 $timer - int $timer; 80 $timer - int $timer;
82} 81}
83 82
84sub set_time { 83sub set_time {
85 my ($self, $time) = @_; 84 my ($self, $time) = @_;
95 94
96 return if $self->{timeout}; 95 return if $self->{timeout};
97 96
98 my $timeout; $timeout = sub { 97 my $timeout; $timeout = sub {
99 my $next = int ($self->refresh (Time::HiRes::time) * 1000); 98 my $next = int ($self->refresh (Time::HiRes::time) * 1000);
100 warn "next $next\n";
101 $self->{timeout} = add Glib::Timeout $next, $timeout; 99 $self->{timeout} = add Glib::Timeout $next, $timeout;
102 0; 100 0;
103 }; 101 };
104 102
105 $timeout->(); 103 $timeout->();
107 105
108sub stop { 106sub stop {
109 my ($self) = @_; 107 my ($self) = @_;
110 108
111 remove Glib::Source delete $self->{timeout} if $self->{timeout}; 109 remove Glib::Source delete $self->{timeout} if $self->{timeout};
110}
111
112sub destroy {
113 my ($self) = @_;
114 $self->stop;
115 $self->SUPER::destroy;
112} 116}
113 117
114package game::userpanel; 118package game::userpanel;
115 119
116use base gtk::widget; 120use base gtk::widget;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines