1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
#!/usr/bin/perl -w
=head1 NAME
Debconf::Element::Noninteractive::Select - dummy select Element
=cut
package Debconf::Element::Noninteractive::Select;
use strict;
use base qw(Debconf::Element::Noninteractive);
=head1 DESCRIPTION
This is dummy select element.
=head1 METHODS
=over 4
=item show
The show method does not display anything. However, if the value of the
Question associated with it is not set, or is not one of the available
choices, then it will be set to the first item in the select list. This is
for consistency with the behavior of other select Elements.
=cut
sub show {
my $this=shift;
# Make sure the choices list is in the C locale, not localized.
$this->question->template->i18n('');
my @choices=$this->question->choices_split;
$this->question->template->i18n(1);
my $value=$this->question->value;
$value='' unless defined $value;
my $inlist=0;
map { $inlist=1 if $_ eq $value } @choices;
if (! $inlist) {
if (@choices) {
$this->value($choices[0]);
}
else {
$this->value('');
}
}
else {
$this->value($value);
}
}
=back
=head1 AUTHOR
Joey Hess <joeyh@debian.org>
=cut
1
|