X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=gui.pl;h=6d3295ee0fa8dcecf48960206d8b38dfdfb74c15;hb=041b40ba9d04693394c1472224cbb4285a0280c3;hp=9311331b995d2ede32c2a5048672f74eb708fda8;hpb=e22f8cbb94df063c77cc9ee5f5bae839e252777d;p=slotcarman.git diff --git a/gui.pl b/gui.pl index 9311331..6d3295e 100755 --- a/gui.pl +++ b/gui.pl @@ -10,19 +10,61 @@ use SCX::GUI; use SCX::Track; use SCX::Reader; -my $no_reader = 0; - -my $gui = SCX::GUI->new; +my $gui = SCX::GUI->new({ img_height => 80 }); my $track = SCX::Track->new({ gui => $gui }); -if (!$no_reader) { - my $reader = SCX::Reader->new({ +my $reader; +eval { + $reader = SCX::Reader->new({ portname => '/dev/ttyUSB0', logfile => 'log', track => $track, }); +}; + +$track->car(0)->set_model('F1 Ferrari'); +$track->car(1)->set_model('F1 McLaren'); +$track->car(2)->set_model('F1 Williams'); +$track->car(3)->set_model('Citroen Xsara'); +$track->car(4)->set_model('Citroen C4'); +$track->car(5)->set_model('Ford Focus'); + +$track->car(0)->set_driver('Ivi'); +$track->car(1)->set_driver('Filípek'); +$track->car(2)->set_driver('Táta'); +if ($reader) { Glib::IO->add_watch(fileno($reader->fh), 'in', \&scx_read, $reader); +} else { + # Just display some random values + + $gui->rounds('5/13'); + $gui->time('53.4'); + $gui->best_lap('12.3'); + + my $now = time; + $track->{race_running_since} = $now; + $track->{race_running} = 1; + + $track->car(0)->finish_line($now + 2.5, 1); +# $track->car(0)->set_lap(13); +# $track->car(1)->set_lap(11); +# $track->car(2)->set_lap(10); +# $track->car(3)->set_lap(undef); +# $track->car(4)->set_lap(undef); +# $track->car(5)->set_lap(undef); + +# $track->car(0)->set_laptime(9.12322); +# $track->car(1)->set_laptime(15.313); +# $track->car(2)->set_laptime(5.989); + + $track->car(0)->set_fuel(6); + $track->car(1)->set_fuel(2); + $track->car(2)->set_fuel(8); + + $track->car(0)->set_throttle(0); + $track->car(1)->set_throttle(8); + $track->car(2)->set_throttle(12); } $gui->show; @@ -37,7 +79,7 @@ sub quit { } sub scx_read { - my ($event, $reader) = @_; + my ($event, $fh, $reader) = @_; $reader->read(); return TRUE;