… | |
… | |
2801 | valign => 0, |
2801 | valign => 0, |
2802 | align => 0, |
2802 | align => 0, |
2803 | can_events => 1, |
2803 | can_events => 1, |
2804 | ellipsise => 1, |
2804 | ellipsise => 1, |
2805 | %arg, |
2805 | %arg, |
2806 | text => "-", |
|
|
2807 | value => -1, |
|
|
2808 | ); |
2806 | ); |
2809 | |
2807 | |
2810 | $self->set_value ($arg{value}) if exists $arg{value}; |
2808 | $self->set_value ($arg{value} || -1); |
2811 | |
2809 | |
2812 | $self |
2810 | $self |
2813 | } |
2811 | } |
2814 | |
2812 | |
2815 | sub set_value { |
2813 | sub set_value { |
2816 | my ($self, $value) = @_; |
2814 | my ($self, $value) = @_; |
2817 | |
2815 | |
2818 | if ($self->{value} != $value) { |
2816 | if ($self->{value} != $value) { |
2819 | $self->{value} = $value; |
2817 | $self->{value} = $value; |
|
|
2818 | |
|
|
2819 | if ($value < 0) { |
|
|
2820 | $self->set_text ("-"); |
|
|
2821 | } else { |
2820 | $self->set_text (sprintf "%d%%", $value * 100); |
2822 | $self->set_text (sprintf "%d%%", $value * 100); |
|
|
2823 | } |
2821 | $self->update; |
2824 | $self->update; |
2822 | } |
2825 | } |
2823 | } |
2826 | } |
2824 | |
2827 | |
2825 | sub _draw { |
2828 | sub _draw { |
… | |
… | |
2877 | } |
2880 | } |
2878 | |
2881 | |
2879 | sub set_value { |
2882 | sub set_value { |
2880 | my ($self, $lvl, $exp) = @_; |
2883 | my ($self, $lvl, $exp) = @_; |
2881 | |
2884 | |
2882 | my $v = 0; |
2885 | my $v = -1; |
2883 | |
2886 | |
2884 | if ($::CONN && (my $table = $::CONN->{exp_table})) { |
2887 | if ($::CONN && (my $table = $::CONN->{exp_table})) { |
2885 | my $l0 = $table->[$lvl - 1]; |
2888 | my $l0 = $table->[$lvl - 1]; |
2886 | my $l1 = $table->[$lvl]; |
2889 | my $l1 = $table->[$lvl]; |
2887 | |
2890 | |