… | |
… | |
60 | |
60 | |
61 | sub clr_commands { |
61 | sub clr_commands { |
62 | my ($self) = @_; |
62 | my ($self) = @_; |
63 | |
63 | |
64 | %{$self->{completer}{command}} = (); |
64 | %{$self->{completer}{command}} = (); |
|
|
65 | |
|
|
66 | $self->{completer}->hide |
|
|
67 | if $self->{completer}; |
65 | } |
68 | } |
66 | |
69 | |
67 | sub invoke_button_down { |
70 | sub invoke_button_down { |
68 | my ($self, $ev, $x, $y) = @_; |
71 | my ($self, $ev, $x, $y) = @_; |
69 | |
72 | |
… | |
… | |
98 | $self->update; |
101 | $self->update; |
99 | }; |
102 | }; |
100 | } elsif ($ev->{button} == 3) { |
103 | } elsif ($ev->{button} == 3) { |
101 | (new CFClient::UI::Menu |
104 | (new CFClient::UI::Menu |
102 | items => [ |
105 | items => [ |
103 | ["Help Browser… (F1)", sub { $::HELP_WINDOW->toggle_visibility }], |
106 | ["Help Browser…\tF1", sub { $::HELP_WINDOW->toggle_visibility }], |
104 | ["Stats & Skills… (F2)", sub { ::toggle_player_page ($::STATS_PAGE) }], |
107 | ["Statistics\tF2", sub { ::toggle_player_page ($::STATS_PAGE) }], |
|
|
108 | ["Skills\tF3", sub { ::toggle_player_page ($::SKILL_PAGE) }], |
|
|
109 | ["Spells…\tF4", sub { ::toggle_player_page ($::SPELL_PAGE) }], |
105 | ["Inventory… (F3)", sub { ::toggle_player_page ($::INVENTORY_PAGE) }], |
110 | ["Inventory…\tF5", sub { ::toggle_player_page ($::INVENTORY_PAGE) }], |
106 | ["Spells… (F4)", sub { ::toggle_player_page ($::SPELL_PAGE) }], |
|
|
107 | ["Setup… (F5)", sub { $::SETUP_DIALOG->toggle_visibility }], |
111 | ["Setup… \tF9", sub { $::SETUP_DIALOG->toggle_visibility }], |
108 | ["Server Messages…", sub { $::MESSAGE_WINDOW->toggle_visibility }], |
112 | ["Server Messages…", sub { $::MESSAGE_WINDOW->toggle_visibility }], |
109 | [ |
113 | [ |
110 | $::PICKUP_ENABLE->{state} |
114 | $::PICKUP_ENABLE->{state} |
111 | ? "Disable automatic pickup" |
115 | ? "Disable automatic pickup" |
112 | : "Enable automatic pickup", |
116 | : "Enable automatic pickup", |
113 | sub { $::PICKUP_ENABLE->toggle } |
117 | sub { $::PICKUP_ENABLE->toggle } |
… | |
… | |
183 | } elsif ($sym == CFClient::SDLK_F1 && !$mod) { |
187 | } elsif ($sym == CFClient::SDLK_F1 && !$mod) { |
184 | $::HELP_WINDOW->toggle_visibility; |
188 | $::HELP_WINDOW->toggle_visibility; |
185 | } elsif ($sym == CFClient::SDLK_F2 && !$mod) { |
189 | } elsif ($sym == CFClient::SDLK_F2 && !$mod) { |
186 | ::toggle_player_page ($::STATS_PAGE); |
190 | ::toggle_player_page ($::STATS_PAGE); |
187 | } elsif ($sym == CFClient::SDLK_F3 && !$mod) { |
191 | } elsif ($sym == CFClient::SDLK_F3 && !$mod) { |
188 | ::toggle_player_page ($::INVENTORY_PAGE); |
192 | ::toggle_player_page ($::SKILL_PAGE); |
189 | } elsif ($sym == CFClient::SDLK_F4 && !$mod) { |
193 | } elsif ($sym == CFClient::SDLK_F4 && !$mod) { |
190 | ::toggle_player_page ($::SPELL_PAGE); |
194 | ::toggle_player_page ($::SPELL_PAGE); |
191 | } elsif ($sym == CFClient::SDLK_F5 && !$mod) { |
195 | } elsif ($sym == CFClient::SDLK_F5 && !$mod) { |
|
|
196 | ::toggle_player_page ($::INVENTORY_PAGE); |
|
|
197 | } elsif ($sym == CFClient::SDLK_F9 && !$mod) { |
192 | $::SETUP_DIALOG->toggle_visibility; |
198 | $::SETUP_DIALOG->toggle_visibility; |
193 | } elsif ($sym == CFClient::SDLK_INSERT && $mod & CFClient::KMOD_CTRL) { |
199 | } elsif ($sym == CFClient::SDLK_INSERT && $mod & CFClient::KMOD_CTRL) { |
194 | $::BIND_EDITOR->set_binding (undef, undef, [], |
200 | $::BIND_EDITOR->set_binding (undef, undef, [], |
195 | sub { |
201 | sub { |
196 | my ($mod, $sym, $cmds) = @_; |
202 | my ($mod, $sym, $cmds) = @_; |
… | |
… | |
613 | } |
619 | } |
614 | |
620 | |
615 | sub hide { |
621 | sub hide { |
616 | my ($self) = @_; |
622 | my ($self) = @_; |
617 | |
623 | |
|
|
624 | $self->{hist_ptr} = 0; |
|
|
625 | |
618 | $self->SUPER::hide; |
626 | $self->SUPER::hide; |
619 | $self->{entry}->set_text (""); |
627 | $self->{entry}->set_text (""); |
620 | } |
628 | } |
621 | |
629 | |
622 | sub invoke_key_down { |
630 | sub invoke_key_down { |