X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=SCX%2FGUI.pm;h=2f1aa5af7b08349f5038afd1c2f59167fb2d3f1f;hb=972687391b212153ee34a6ecf616fd1c1a53d01b;hp=c073560dce160881098a93395c3ba8b7756a6010;hpb=041b40ba9d04693394c1472224cbb4285a0280c3;p=slotcarman.git diff --git a/SCX/GUI.pm b/SCX/GUI.pm index c073560..2f1aa5a 100755 --- a/SCX/GUI.pm +++ b/SCX/GUI.pm @@ -113,9 +113,9 @@ sub load_all_images { $self->{fuel_images} = [ load_image_set('img/fuel%d.svg', 8, int(0.6 * $h)) ]; - $self->{car_images} = load_image_dir('img/SCXCars', $h), - $self->{semaphore_images} => [ - load_image_set('img/semaphore%d.svg', 5, 2 * $h) + $self->{car_images} = load_image_dir('img/SCXCars', $h); + $self->{semaphore_images} = [ + load_image_set('img/semaphore%d.svg', 5, 1.5 * $h) ]; }; @@ -214,9 +214,27 @@ sub set_car_icon { sub set_lap { my ($self, $row, $text) = @_; + $text = '--' if !defined $text; + $self->set_label('label_lap', $row, $text, 'lap'); } +sub set_distance { + my ($self, $row, $time, $lap_diff, $time_diff) = @_; + + my $text = '--'; + + if (defined $time) { + $text = format_race_time($time); + } elsif (defined $time_diff) { + $text = '−' . format_lap_time($time_diff); + } elsif (defined $lap_diff) { + $text = '−' . $lap_diff . ' laps'; + } + + $self->set_label('label_distance', $row, $text); +} + sub set_laptime { my ($self, $row, $text) = @_; @@ -241,6 +259,12 @@ sub set_name { $self->set_label('label_name', $row, $text); } +sub set_car_id { + my ($self, $row, $text) = @_; + + $self->set_label('label_car_id', $row, $text); +} + sub enter_pit_lane { my ($self, $row) = @_; $self->set_label('label_laptime', $row, 'PIT'); @@ -299,8 +323,8 @@ sub format_race_time { $seconds -= 60 * $mins; return $hours - ? sprintf('%d:%02d:%05.2f', $hours, $mins, $seconds) - : sprintf('%d:%05.2f', $mins, $seconds); + ? sprintf('%d:%02d:%04.1f', $hours, $mins, $seconds) + : sprintf('%d:%04.1f', $mins, $seconds); } sub format_lap_time {