diff options
-rw-r--r-- | perl-install/interactive.pm | 2 | ||||
-rw-r--r-- | perl-install/interactive_gtk.pm | 2 | ||||
-rw-r--r-- | perl-install/my_gtk.pm | 3 |
3 files changed, 4 insertions, 3 deletions
diff --git a/perl-install/interactive.pm b/perl-install/interactive.pm index 6ffe776ab..48353c8a8 100644 --- a/perl-install/interactive.pm +++ b/perl-install/interactive.pm @@ -124,7 +124,7 @@ sub ask_from_listf { sub ask_from_listf_no_check { my ($o, $title, $message, $f, $l, $def, $help) = @_; - if (@$l <= 2) { + if (@$l <= 2 && !$::isWizard) { ask_from_entries_refH_powered_no_check($o, { title => $title, messages => $message, ok => $l->[0] && may_apply($f, $l->[0]), if_($l->[1], cancel => may_apply($f, $l->[1]), focus_cancel => $def eq $l->[1]) }, [] diff --git a/perl-install/interactive_gtk.pm b/perl-install/interactive_gtk.pm index b96a7d48c..8485d34ea 100644 --- a/perl-install/interactive_gtk.pm +++ b/perl-install/interactive_gtk.pm @@ -267,7 +267,7 @@ sub ask_from_entries_refW { $w->add($e->{icon}); $e->{icon}->show; }; - $w->signal_connect(clicked => sub { + $w->signal_connect(clicked => sub { $set->(${$e->{val}} = next_val_in_array(${$e->{val}}, $e->{list})); $changed->(); }); diff --git a/perl-install/my_gtk.pm b/perl-install/my_gtk.pm index b3f96eb36..deb490716 100644 --- a/perl-install/my_gtk.pm +++ b/perl-install/my_gtk.pm @@ -284,7 +284,8 @@ sub create_okcancel { $::isWizard and $ok = _("Next ->"); my $b1 = gtksignal_connect($w->{ok} = new Gtk::Button($ok), clicked => $w->{ok_clicked} || sub { $w->{retval} = 1; Gtk->main_quit }); my $b2 = !$one && gtksignal_connect($w->{cancel} = new Gtk::Button($cancel || _("Cancel")), clicked => $w->{cancel_clicked} || sub { log::l("default cancel_clicked"); undef $w->{retval}; Gtk->main_quit }); - my @l = grep { $_ } ($b1, $b2); + $::isWizard and my $b3 = gtksignal_connect($w->{previous} = new Gtk::Button(_("<- Previous")), clicked => $w->{previous_clicked} || sub { log::l("default previous_clicked"); $w->{retval} = -1; Gtk->main_quit }); + my @l = grep { $_ } $::isWizard ? ($b2, $b3, $b1): ($b1, $b2); push @l, map { gtksignal_connect(new Gtk::Button($_->[0]), clicked => $_->[1]) } @other; $_->can_default($::isWizard) foreach @l; |