+void
+SubtitleContent::set_y_scale (double s)
+{
+ maybe_set (_y_scale, s, SubtitleContentProperty::Y_SCALE);
+}
+
+void
+SubtitleContent::set_language (string language)
+{
+ maybe_set (_language, language, SubtitleContentProperty::LANGUAGE);
+}
+
+void
+SubtitleContent::set_line_spacing (double s)
+{
+ maybe_set (_line_spacing, s, SubtitleContentProperty::LINE_SPACING);
+}
+
+void
+SubtitleContent::set_fade_in (ContentTime t)
+{
+ maybe_set (_fade_in, t, SubtitleContentProperty::FADE_IN);
+}
+
+void
+SubtitleContent::set_fade_out (ContentTime t)
+{
+ maybe_set (_fade_out, t, SubtitleContentProperty::FADE_OUT);
+}
+
+void
+SubtitleContent::set_outline_width (int w)
+{
+ maybe_set (_outline_width, w, SubtitleContentProperty::OUTLINE_WIDTH);
+}
+
+void
+SubtitleContent::take_settings_from (shared_ptr<const SubtitleContent> c)
+{
+ set_use (c->_use);
+ set_burn (c->_burn);
+ set_x_offset (c->_x_offset);
+ set_y_offset (c->_y_offset);
+ set_x_scale (c->_x_scale);
+ set_y_scale (c->_y_scale);
+ maybe_set (_fonts, c->_fonts, SubtitleContentProperty::FONTS);
+ if (c->_colour) {
+ set_colour (*c->_colour);
+ } else {
+ unset_colour ();
+ }
+ set_effect (c->_effect);
+ if (c->_effect_colour) {
+ set_effect_colour (*c->_effect_colour);
+ } else {
+ unset_effect_colour ();
+ }
+ set_line_spacing (c->_line_spacing);
+ set_fade_in (c->_fade_in);
+ set_fade_out (c->_fade_out);
+ set_outline_width (c->_outline_width);