Extract method to set forced appearance.
[dcpomatic.git] / 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()));
-
-               /* 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));