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 64 65 66 67 68 69 70 71 72 73 74
|
#!/usr/bin/perl -w
=head1 NAME
Debconf::Element::Kde::Select - select list widget
=cut
package Debconf::Element::Kde::Select;
use strict;
use Qt;
use base qw(Debconf::Element::Kde Debconf::Element::Select);
use Debconf::Encoding qw(to_Unicode);
=head1 DESCRIPTION
A drop down select list widget.
=head1 METHODS
=over 4
=item create
Creates and sets up the widget.
=cut
sub create {
my $this=shift;
my $default=$this->translate_default;
my @choices=map { to_Unicode($_) } $this->question->choices_split;
$this->SUPER::create(@_);
$this->startsect;
$this->widget(Qt::ComboBox($this->cur->top));
$this->widget->show;
$this->widget->insertStringList(\@choices, 0);
if (defined($default) and length($default) != 0) {
$this->widget->setCurrentText(to_Unicode($default));
}
$this->addhelp;
my $b = $this->addhbox;
$b->addWidget($this->description);
$b->addWidget($this->widget);
$this->endsect;
}
=item value
The value is the currently selected list item.
=cut
sub value {
my $this=shift;
my @choices=$this->question->choices_split;
return $this->translate_to_C_uni($this->widget->currentText());
}
# Multiple inheritance means we get Debconf::Element::visible by default.
*visible = \&Debconf::Element::Select::visible;
=back
=head1 AUTHOR
Peter Rockai <mornfall@logisys.dyndns.org>
=cut
1
|