]> www.fi.muni.cz Git - slotcarman.git/blobdiff - SCX/GUI.pm
Race state images; misc fixes.
[slotcarman.git] / SCX / GUI.pm
index 2f1aa5af7b08349f5038afd1c2f59167fb2d3f1f..da3f9f45eb6a9256625fe9dc37ae2191d0bce495 100755 (executable)
@@ -113,7 +113,8 @@ 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->{car_images} = load_images_glob('img/SCXCars/*', $h);
+       $self->{state_images} = load_images_glob('img/state*.svg', $h);
        $self->{semaphore_images} = [
                        load_image_set('img/semaphore%d.svg', 5, 1.5 * $h)
        ];
@@ -135,11 +136,11 @@ sub load_image_set {
        return @rv;
 }
 
-sub load_image_dir {
-       my ($dir, $height) = @_;
+sub load_images_glob {
+       my ($glob, $height) = @_;
 
        my %rv;
-       for my $file (<$dir/*>) {
+       for my $file (glob($glob)) {
                $file = Encode::decode('utf-8', $file);
                my $name = $file;
                $name =~ s/.*\///;
@@ -265,17 +266,6 @@ sub set_car_id {
        $self->set_label('label_car_id', $row, $text);
 }
 
-sub enter_pit_lane {
-       my ($self, $row) = @_;
-       $self->set_label('label_laptime', $row, 'PIT');
-}
-
-sub leave_pit_lane {
-       my ($self, $row) = @_;
-
-       $self->set_label('label_laptime', $row, 'GO!');
-}
-
 sub show_semaphore {
        my ($self, $num) = @_;
 
@@ -335,5 +325,11 @@ sub format_lap_time {
                : '--';
 }
 
+sub set_state {
+       my ($self, $num, $name) = @_;
+
+       $self->set_image('image_status', $num, 'state', 'state '.$name);
+}
+
 1;