Use an enum for the effect in SubtitleContent.
[dcpomatic.git] / src / wx / subtitle_appearance_dialog.cc
index 5cb668e7ba69b6466aef4981346b2a39d3fc8c60..929bc6006b6c7e8dc2bec3d4ee3ece33f508d38b 100644 (file)
@@ -157,12 +157,16 @@ SubtitleAppearanceDialog::SubtitleAppearanceDialog (wxWindow* parent, shared_ptr
                _colour->SetColour (wxColour (255, 255, 255));
        }
 
-       if (_content->subtitle->outline()) {
+       switch (_content->subtitle->effect()) {
+       case dcp::NONE:
+               _effect->SetSelection (NONE);
+               break;
+       case dcp::BORDER:
                _effect->SetSelection (OUTLINE);
-       } else if (_content->subtitle->shadow()) {
+               break;
+       case dcp::SHADOW:
                _effect->SetSelection (SHADOW);
-       } else {
-               _effect->SetSelection (NONE);
+               break;
        }
 
        optional<dcp::Colour> effect_colour = _content->subtitle->effect_colour();
@@ -195,8 +199,17 @@ SubtitleAppearanceDialog::apply ()
        } else {
                _content->subtitle->unset_colour ();
        }
-       _content->subtitle->set_outline (_effect->GetSelection() == OUTLINE);
-       _content->subtitle->set_shadow (_effect->GetSelection() == SHADOW);
+       switch (_effect->GetSelection()) {
+       case NONE:
+               _content->subtitle->set_effect (dcp::NONE);
+               break;
+       case OUTLINE:
+               _content->subtitle->set_effect (dcp::BORDER);
+               break;
+       case SHADOW:
+               _content->subtitle->set_effect (dcp::SHADOW);
+               break;
+       }
        if (_force_effect_colour->GetValue ()) {
                wxColour const ec = _effect_colour->GetColour ();
                _content->subtitle->set_effect_colour (dcp::Colour (ec.Red(), ec.Green(), ec.Blue()));