ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra-Client/DC/MapWidget.pm
(Generate patch)

Comparing deliantra/Deliantra-Client/DC/MapWidget.pm (file contents):
Revision 1.46 by elmex, Fri Jun 2 09:02:49 2006 UTC vs.
Revision 1.47 by root, Fri Jun 2 22:13:47 2006 UTC

71 $::CFG->{map_shift_y} = $bh + $y - $oy; 71 $::CFG->{map_shift_y} = $bh + $y - $oy;
72 72
73 $self->update; 73 $self->update;
74 }; 74 };
75 } 75 }
76
77 1
76} 78}
77 79
78sub button_up { 80sub button_up {
79 my ($self, $ev, $x, $y) = @_; 81 my ($self, $ev, $x, $y) = @_;
80 82
81 delete $self->{motion}; 83 delete $self->{motion};
84
85 1
82} 86}
83 87
84sub mouse_motion { 88sub mouse_motion {
85 my ($self, $ev, $x, $y) = @_; 89 my ($self, $ev, $x, $y) = @_;
86 90
91 if ($self->{motion}) {
87 $self->{motion}->($ev, $x, $y) if $self->{motion}; 92 $self->{motion}->($ev, $x, $y);
93 } else {
94 return 0;
95 }
96
97 1
88} 98}
89 99
90sub size_request { 100sub size_request {
91 ( 101 (
92 1 + 32 * int $::WIDTH / 32, 102 1 + 32 * int $::WIDTH / 32,
118); 128);
119 129
120sub key_down { 130sub key_down {
121 my ($self, $ev) = @_; 131 my ($self, $ev) = @_;
122 132
123 return unless $::CONN; 133 return 0 unless $::CONN;
124 134
125 my $mod = $ev->{mod}; 135 my $mod = $ev->{mod};
126 my $sym = $ev->{sym}; 136 my $sym = $ev->{sym};
127 my $uni = $ev->{unicode}; 137 my $uni = $ev->{unicode};
128 138
172 } elsif (my $bind_cmd = $::CFG->{bindings}->{$mod}->{$sym}) { 182 } elsif (my $bind_cmd = $::CFG->{bindings}->{$mod}->{$sym}) {
173 $::CONN->user_send ($_) for @$bind_cmd; 183 $::CONN->user_send ($_) for @$bind_cmd;
174 } elsif ((ord 'a') <= $uni && $uni <= (ord 'z')) { 184 } elsif ((ord 'a') <= $uni && $uni <= (ord 'z')) {
175 $self->{completer}->key_down ($ev); 185 $self->{completer}->key_down ($ev);
176 $self->{completer}->show; 186 $self->{completer}->show;
187 } else {
188 return 0;
189 }
190
177 } 191 1
178} 192}
179 193
180sub key_up { 194sub key_up {
181 my ($self, $ev) = @_; 195 my ($self, $ev) = @_;
182 196
197 my $res = 0;
183 my $mod = $ev->{mod}; 198 my $mod = $ev->{mod};
184 my $sym = $ev->{sym}; 199 my $sym = $ev->{sym};
185 200
186 if (!($mod & CFClient::KMOD_SHIFT) && delete $self->{shft}) { 201 if (!($mod & CFClient::KMOD_SHIFT) && delete $self->{shft}) {
187 $::CONN->user_send ("fire_stop"); 202 $::CONN->user_send ("fire_stop");
203 $res = 1;
188 } 204 }
205
189 if (!($mod & CFClient::KMOD_CTRL ) && delete $self->{ctrl}) { 206 if (!($mod & CFClient::KMOD_CTRL ) && delete $self->{ctrl}) {
190 $::CONN->user_send ("run_stop"); 207 $::CONN->user_send ("run_stop");
208 $res = 1;
191 } 209 }
210
211 $res
192} 212}
193 213
194sub draw { 214sub draw {
195 my ($self) = @_; 215 my ($self) = @_;
196 216
490} 510}
491 511
492sub key_down { 512sub key_down {
493 my ($self, $ev) = @_; 513 my ($self, $ev) = @_;
494 514
495 $self->{entry}->key_down ($ev); 515 $self->{entry}->key_down ($ev)
496} 516}
497 517
498sub update_labels { 518sub update_labels {
499 my ($self) = @_; 519 my ($self) = @_;
500 520

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines