From 7962e6cfd5fbd97e1e44aebe3fc190c62da027e9 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Thu, 23 Aug 2018 11:19:06 +0100 Subject: Remove TextType from various places as (I believe) it can be inferred from the content. --- src/lib/player.cc | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) (limited to 'src/lib/player.cc') diff --git a/src/lib/player.cc b/src/lib/player.cc index 5dfc4e66d..cf9bc2e63 100644 --- a/src/lib/player.cc +++ b/src/lib/player.cc @@ -199,7 +199,7 @@ Player::setup_pieces_unlocked () bind(&Player::plain_text_start, this, weak_ptr(piece), weak_ptr((*j)->content()), _1) ); (*j)->Stop.connect ( - bind(&Player::subtitle_stop, this, weak_ptr(piece), weak_ptr((*j)->content()), _1, _2) + bind(&Player::subtitle_stop, this, weak_ptr(piece), weak_ptr((*j)->content()), _1) ); ++j; @@ -917,7 +917,7 @@ Player::bitmap_text_start (weak_ptr wp, weak_ptr wc, C ps.bitmap.push_back (subtitle.sub); DCPTime from (content_time_to_dcp (piece, subtitle.from())); - _active_texts[subtitle.type()].add_from (wc, ps, from); + _active_texts[text->type()].add_from (wc, ps, from); } void @@ -961,19 +961,23 @@ Player::plain_text_start (weak_ptr wp, weak_ptr wc, Co ps.add_fonts (text->fonts ()); } - _active_texts[subtitle.type()].add_from (wc, ps, from); + _active_texts[text->type()].add_from (wc, ps, from); } void -Player::subtitle_stop (weak_ptr wp, weak_ptr wc, ContentTime to, TextType type) +Player::subtitle_stop (weak_ptr wp, weak_ptr wc, ContentTime to) { - if (!_active_texts[type].have (wc)) { + shared_ptr text = wc.lock (); + if (!text) { + return; + } + + if (!_active_texts[text->type()].have(wc)) { return; } shared_ptr piece = wp.lock (); - shared_ptr text = wc.lock (); - if (!piece || !text) { + if (!piece) { return; } @@ -983,11 +987,11 @@ Player::subtitle_stop (weak_ptr wp, weak_ptr wc, Conte return; } - pair from = _active_texts[type].add_to (wc, dcp_to); + pair from = _active_texts[text->type()].add_to (wc, dcp_to); - bool const always = (type == TEXT_OPEN_SUBTITLE && _always_burn_open_subtitles); + bool const always = (text->type() == TEXT_OPEN_SUBTITLE && _always_burn_open_subtitles); if (text->use() && !always && !text->burn()) { - Text (from.first, type, DCPTimePeriod (from.second, dcp_to)); + Text (from.first, text->type(), DCPTimePeriod (from.second, dcp_to)); } } -- cgit v1.2.3