Extract method to set forced appearance.
authorCarl Hetherington <cth@carlh.net>
Wed, 1 Jun 2022 10:26:15 +0000 (12:26 +0200)
committerCarl Hetherington <cth@carlh.net>
Tue, 7 Jun 2022 15:01:06 +0000 (17:01 +0200)
src/lib/text_decoder.cc

index c6563a260fe238656a2c65889c13f8cdb06d1298..2fdcab89e0451eb2464552a260daad24fc2169a2 100644 (file)
@@ -81,28 +81,34 @@ escape_text (string text)
 }
 
 
 }
 
 
+static
+void
+set_forced_appearance(shared_ptr<const TextContent> content, dcp::SubtitleString& subtitle)
+{
+       if (content->colour()) {
+               subtitle.set_colour(*content->colour());
+       }
+       if (content->effect_colour()) {
+               subtitle.set_effect_colour(*content->effect_colour());
+       }
+       if (content->effect()) {
+               subtitle.set_effect(*content->effect());
+       }
+       if (content->fade_in()) {
+               subtitle.set_fade_up_time(dcp::Time(content->fade_in()->seconds(), 1000));
+       }
+       if (content->fade_out()) {
+               subtitle.set_fade_down_time (dcp::Time(content->fade_out()->seconds(), 1000));
+       }
+}
+
+
 void
 TextDecoder::emit_plain_start (ContentTime from, vector<dcp::SubtitleString> subtitles)
 {
        for (auto& subtitle: subtitles) {
                subtitle.set_text(escape_text(subtitle.text()));
 void
 TextDecoder::emit_plain_start (ContentTime from, vector<dcp::SubtitleString> subtitles)
 {
        for (auto& subtitle: subtitles) {
                subtitle.set_text(escape_text(subtitle.text()));
-
-               /* Set any forced appearance */
-               if (content()->colour()) {
-                       subtitle.set_colour(*content()->colour());
-               }
-               if (content()->effect_colour()) {
-                       subtitle.set_effect_colour(*content()->effect_colour());
-               }
-               if (content()->effect()) {
-                       subtitle.set_effect(*content()->effect());
-               }
-               if (content()->fade_in()) {
-                       subtitle.set_fade_up_time(dcp::Time(content()->fade_in()->seconds(), 1000));
-               }
-               if (content()->fade_out()) {
-                       subtitle.set_fade_down_time (dcp::Time(content()->fade_out()->seconds(), 1000));
-               }
+               set_forced_appearance(content(), subtitle);
        }
 
        PlainStart(ContentStringText(from, subtitles));
        }
 
        PlainStart(ContentStringText(from, subtitles));