Changeset 12396
- Timestamp:
- 08/29/10 15:30:20 (18 months ago)
- File:
-
- 1 edited
-
trunk/Padre/lib/Padre/Wx/Dialog/KeyBindings.pm (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Padre/lib/Padre/Wx/Dialog/KeyBindings.pm
r12395 r12396 6 6 use Padre::Constant (); 7 7 use Padre::Config (); 8 use Padre::Util ('_T'); 8 9 use Padre::Wx (); 9 10 use Padre::Wx::Role::Main (); … … 88 89 89 90 # key choice list 90 $self->{keys} = [ 91 qw(None Backspace Tab Space Up Down Left Right Insert Delete Home 92 End PageUp PageDown Enter Escape F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 93 ), 'A' .. 'Z', '0' .. '9', '~', '-', '=', '[', ']', ';', '\'', ',', '.', '/' 94 ]; 95 91 my @keys = ( 92 _T('None'), _T('Backspace'), _T('Tab'), _T('Space'), _T('Up'), _T('Down'), 93 _T('Left'), _T('Right'), _T('Insert'), _T('Delete'), _T('Home'), _T('End'), 94 _T('PageUp'), _T('PageDown'), _T('Enter'), _T('Escape'), 95 'F1', 'F2', 'F3', 'F4', 'F5', 'F6', 'F7', 'F8', 'F9', 'F10', 'F11', 'F12', 96 'A' .. 'Z', '0' .. '9', '~', '-', '=', '[', ']', ';', '\'', ',', '.', '/' 97 ); 98 $self->{keys} = \@keys; 99 100 my @translated_keys = map { Wx::gettext($_) } @keys; 96 101 $self->{key} = Wx::Choice->new( 97 102 $self, -1, 98 103 Wx::wxDefaultPosition, 99 104 Wx::wxDefaultSize, 100 $self->{keys}, # TODO translate105 \@translated_keys, 101 106 ); 102 107 $self->{key}->SetSelection(0); … … 271 276 } 272 277 278 sub translate_shortcut { 279 my ($shortcut) = @_; 280 281 my @parts = split /-/, $shortcut; 282 my $regular_key = @parts ? $parts[-1] : ''; 283 284 return join '-', map { Wx::gettext($_) } @parts; 285 } 286 273 287 # Private method to handle the selection of a key binding item 274 288 sub _on_list_item_selected { … … 288 302 $self->{button_delete}->Enable( $shortcut ne '' ); 289 303 290 # Get the regular (i.e. non-modifier) key in the shortcut291 304 my @parts = split /-/, $shortcut; 292 305 my $regular_key = @parts ? $parts[-1] : ''; … … 327 340 push @key_list, $regular_key if $self->{ lc $regular_key }->GetValue; 328 341 } 329 my $regular_key = $self->{keys}->[ $self->{key}->GetSelection ]; 342 my $key_index = $self->{key}->GetSelection; 343 my $regular_key = $self->{keys}->[$key_index]; 330 344 push @key_list, $regular_key if not $regular_key eq 'None'; 331 345 my $shortcut = join '-', @key_list; … … 403 417 my $index = $self->{list}->GetFirstSelected; 404 418 my $action_name = $self->{list}->GetItemText($index); 405 my $action = Padre->ide->actions($action_name); 406 407 $self->try_to_set_binding( $action_name, $self->config->default( $action->shortcut_setting ) ); 419 my $action = Padre->ide->actions->{$action_name}; 420 421 $self->try_to_set_binding( 422 $action_name, 423 $self->config->default( $action->shortcut_setting ) 424 ); 408 425 409 426 return; … … 450 467 $list->InsertStringItem( $index, $action_name ); 451 468 $list->SetItem( $index, 1, $action->label_text ); 452 $list->SetItem( $index, 2, $shortcut);469 $list->SetItem( $index, 2, translate_shortcut($shortcut) ); 453 470 454 471 # Alternating table colors
Note: See TracChangeset
for help on using the changeset viewer.
