diff options
author | Pascal Rigaux <pixel@mandriva.com> | 1999-07-29 15:18:54 +0000 |
---|---|---|
committer | Pascal Rigaux <pixel@mandriva.com> | 1999-07-29 15:18:54 +0000 |
commit | 88a07c82cece62903ae68e1e2c482d810bbf8560 (patch) | |
tree | 5eee08b842d20f111fc82bba2e42425e253e8a50 /perl-install/interactive.pm | |
parent | 5dc2835bfbf1f53ad51ba540f4423c22cc94b26c (diff) | |
download | drakx-88a07c82cece62903ae68e1e2c482d810bbf8560.tar drakx-88a07c82cece62903ae68e1e2c482d810bbf8560.tar.gz drakx-88a07c82cece62903ae68e1e2c482d810bbf8560.tar.bz2 drakx-88a07c82cece62903ae68e1e2c482d810bbf8560.tar.xz drakx-88a07c82cece62903ae68e1e2c482d810bbf8560.zip |
no_comment
Diffstat (limited to 'perl-install/interactive.pm')
-rw-r--r-- | perl-install/interactive.pm | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/perl-install/interactive.pm b/perl-install/interactive.pm new file mode 100644 index 000000000..977adea5a --- /dev/null +++ b/perl-install/interactive.pm @@ -0,0 +1,53 @@ +package interactive; + +use diagnostics; +use strict; + +use common qw(:common); + +1; + +sub new($$) { + my ($type) = @_; + + bless {}, ref $type || $type; +} + + +sub ask_warn($$$) { + my ($o, $title, $message) = @_; + ask_from_list($o, $title, $message, [ _("Ok") ]); +} +sub ask_yesorno($$$) { + my ($o, $title, $message) = @_; + ask_from_list_($o, $title, $message, [ __("Yes"), __("No") ]) eq "Yes"; +} +sub ask_okcancel($$$) { + my ($o, $title, $message) = @_; + ask_from_list_($o, $title, $message, [ __("Ok"), __("Cancel") ]) eq "Ok"; +} +sub ask_from_list_($$$$;$) { + my ($o, $title, $message, $l, $def) = @_; + untranslate( + ask_from_list($o, $title, $message, [ map { translate($_) } @$l ], translate($def)), + @$l); +} +sub ask_from_list($$$$;$) { + my ($o, $title, $message, $l, $def) = @_; + + $message = ref $message ? $message : [ $message ]; + + @$l > 10 and $l = [ sort @$l ]; + + $o->ask_from_listW($title, $message, $l, $def || $l->[0]); +} +sub ask_many_from_list($$$$;$) { + my ($o, $title, $message, $l, $def) = @_; + + $message = ref $message ? $message : [ $message ]; + + $o->ask_many_from_listW($title, $message, $l, $def); +} + + + |