ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/ext/item-worldmap.ext
(Generate patch)

Comparing deliantra/server/ext/item-worldmap.ext (file contents):
Revision 1.8 by root, Mon Jul 23 21:02:50 2007 UTC vs.
Revision 1.10 by root, Mon Jul 23 23:46:03 2007 UTC

23 while (my ($k, $v) = each %PLAYERINFO) { 23 while (my ($k, $v) = each %PLAYERINFO) {
24 my $label = (delete $old->{$k}) || do { 24 my $label = (delete $old->{$k}) || do {
25 my $label = $ws->new (Label => 25 my $label = $ws->new (Label =>
26 text => $k, 26 text => $k,
27 fontsize => 0.2, 27 fontsize => 0.2,
28 );
29
30 my $marker = $ws->new (Face =>
31 size_w => undef,
32 size_h => undef,
33 face => $ws->{ns}->find_face ("res/map-arrow.png"),
34 );
35 my $children = [$label, $marker];
36
37 $ws->{canvas}->add (my $vbox = $ws->new (VBox =>
38 children => $children,
28 c_halign => -.5, 39 c_halign => -.5,
29 c_valign => -1, 40 c_valign => -1,
30 ); 41 ));
31 $ws->{canvas}->add ($label); 42 $vbox->{children} = $children;
43
32 $label 44 $vbox
33 }; 45 };
34 46
35 $new->{$k} = $label; 47 $new->{$k} = $label;
36 48
37 if ($v != $label->{prevpos}) { 49 if ($v != $label->{prevpos}) {
41 if $k eq $name; 53 if $k eq $name;
42 } 54 }
43 } 55 }
44 56
45 $ws->{labels} = $new; 57 $ws->{labels} = $new;
46
47 #$_->destroy for values %$old;#d#
48} 58}
49 59
50sub create_widgets { 60sub create_widgets {
51 my ($ns) = @_; 61 my ($ns) = @_;
52 62
60 x => "center", 70 x => "center",
61 y => "center", 71 y => "center",
62 has_close_button => 1, 72 has_close_button => 1,
63 on_delete => sub { shift->hide }, 73 on_delete => sub { shift->hide },
64 on_visibility_change => sub { 74 on_visibility_change => sub {
75 warn "VCHANGE <@_>\n";#d#
65 $_[0]{visibility} = $_[1]; 76 $_[0]{visibility} = $_[1];
66 update_worldmap $_[0]{ws} if $_[1]; 77 update_worldmap $_[0]{ws} if $_[1];
67 }, 78 },
68 ); 79 );
69
70 my $face = cf::face::find "res/worldmap.jpg";
71 $ns->send_face ($face);
72 $ns->flush_fx;
73 80
74 $w->add (my $sw = $ws->{window} = $ws->new (ScrolledWindow => scroll_x => 1, scroll_y => 1)); 81 $w->add (my $sw = $ws->{window} = $ws->new (ScrolledWindow => scroll_x => 1, scroll_y => 1));
75 $sw->add (my $canvas = $ws->{canvas} = $ws->new (Canvas => expand => 1)); 82 $sw->add (my $canvas = $ws->{canvas} = $ws->new (Canvas => expand => 1));
76 83
77 $ws->{mapface} = $ws->new (Face => 84 $ws->{mapface} = $ws->new (Face =>
78 expand => 1, 85 expand => 1,
79 size_w => undef, 86 size_w => undef,
80 size_h => undef, 87 size_h => undef,
81 face => $face, 88 face => $ws->{ns}->find_face ("res/worldmap.jpg"),
82 ); 89 );
83 90
84 $ws->{canvas}->add ($ws->{mapface}); 91 $ws->{canvas}->add ($ws->{mapface});
85 92
86 $ws 93 $ws

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines