use SDL::App;
use SDL::Surface;
use SDL::Rect;
+use SDL::Tool::Font;
use Data::Dump qw/dump/;
}
sub show {
- my ( $self, $t ) = @_;
+ my $self = shift;
+ my $t = shift;
+ my @subtitles = @_;
- my @subtitles =
+ my @slide_paths =
sort {
my $n_a = $1 if $a =~ m{(\d+)};
my $n_b = $1 if $b =~ m{(\d+)};
} glob("media/_editing/s/1/*")
;
- my $slide = SDL::Surface->new( -name => $subtitles[0] );
+ my $slide = SDL::Surface->new( -name => $slide_paths[0] );
my $w = $slide->width;
my $h = $slide->height;
my ( $x, $y ) = ( 0, 0 );
my $background = SDL::Color->new( -r => 0, -g => 0, -b => 0 );
+ my $overlay_color = SDL::Color->new( -r => 0xff, -g => 0xff, -b => 0x88 );
+
+ my $font = SDL::Tool::Font->new(
+ -normal => 1,
+ -ttfont => 'media/tvtimeSansBold.ttf', # FIXME
+ -size => 20,
+ -fg => $overlay_color,
+ -bg => $background,
+ );
foreach my $i ( 0 .. $#factors ) {
);
my $pos = $self->current_slide($t) + $i - 5;
- my $path = $subtitles[ $pos ];
+ my $path = $slide_paths[ $pos ];
if ( $pos < 0 || ! $path ) {
} else {
- $path =~ s{/s/[124]/}{/s/$factor/};
+ $path =~ s{/s/[124]/(\D*(\d+))}{/s/$factor/$1};
+ my $nr = $2;
my $slide = SDL::Surface->new( -name => $path );
+ $font->print( $slide, 5, 5, $subtitles[$nr - 1]->[2] || $nr );
+
my $rect = SDL::Rect->new(
-width => $slide->width(),
-height => $slide->height(),
}
$slide->blit( $rect, $self->{app}, $to );
-
+
}
$self->{app}->update( $to ) if $self->{app};