… | |
… | |
25 | $self = $self->SUPER::new(@_); |
25 | $self = $self->SUPER::new(@_); |
26 | |
26 | |
27 | $appwin::self = $self; # singleton |
27 | $appwin::self = $self; # singleton |
28 | Scalar::Util::weaken $appwin::self; |
28 | Scalar::Util::weaken $appwin::self; |
29 | |
29 | |
30 | $self->{conn} = new KGS::Protocol; |
30 | $self->{conn} = new KGS::Protocol::Client; |
31 | |
31 | |
32 | KGS::Listener::Debug->new->listen($self->{conn}, "any"); #d# debug only :) |
32 | KGS::Listener::Debug->new->listen($self->{conn}, "any"); #d# debug only :) |
33 | |
33 | |
34 | $self->listen($self->{conn}, qw(login userpic idle_warn)); |
34 | $self->listen($self->{conn}, qw(login userpic idle_warn)); |
35 | |
35 | |
36 | $self->{roomlist} = new roomlist conn => $self->{conn}; |
36 | $self->{roomlist} = new roomlist conn => $self->{conn}, appwin => $self; |
37 | |
37 | |
38 | $self->{window} = new Gtk2::Window 'toplevel'; |
38 | $self->{window} = new Gtk2::Window 'toplevel'; |
39 | $self->{window}->set_title('kgsueme'); |
39 | $self->{window}->set_title('kgsueme'); |
40 | gtk::state $self->{window}, "main::window", undef, window_size => [400, 400]; |
40 | gtk::state $self->{window}, "main::window", undef, window_size => [400, 400]; |
41 | $self->{window}->signal_connect(delete_event => sub { main_quit Gtk2; 1 }); |
41 | $self->{window}->signal_connect(delete_event => sub { main_quit Gtk2; 1 }); |