1 |
package user; |
2 |
|
3 |
use KGS::Constants; |
4 |
|
5 |
use base KGS::Listener::User; |
6 |
use base gtk::widget; |
7 |
|
8 |
sub new { |
9 |
my $self = shift; |
10 |
$self = $self->SUPER::new(@_); |
11 |
|
12 |
$self->listen($self->{conn}); |
13 |
|
14 |
$self->send (notify_add => name => $self->{name}); |
15 |
|
16 |
$self->{window} = new Gtk2::Window 'toplevel'; |
17 |
$self->{window}->set_title("KGS User $self->{name}"); |
18 |
gtk::state $self->{window}, "user::window", undef, window_size => [400, 300]; |
19 |
|
20 |
$self->{window}->signal_connect(delete_event => sub { $self->destroy; 1 }); |
21 |
|
22 |
$self; |
23 |
} |
24 |
|
25 |
sub destroy { |
26 |
my ($self) = @_; |
27 |
|
28 |
$self->send (notify_del => name => $self->{name}); |
29 |
|
30 |
$self->SUPER::destroy; |
31 |
} |
32 |
|
33 |
1; |
34 |
|