Catch attempts to make a DCP when all content has been trimmed to zero length.
[dcpomatic.git] / src / wx / controls.cc
index 473ad8cb343e40ab1413f570dfdf3df8172b0185..b173b43ff6c68ac6bc9817414a7cb55baf112eb5 100644 (file)
@@ -52,13 +52,13 @@ using boost::optional;
 using boost::shared_ptr;
 using boost::weak_ptr;
 using boost::dynamic_pointer_cast;
+using namespace dcpomatic;
 
 Controls::Controls (wxWindow* parent, shared_ptr<FilmViewer> viewer, bool editor_controls)
        : wxPanel (parent)
        , _slider (new wxSlider (this, wxID_ANY, 0, 0, 4096))
        , _viewer (viewer)
        , _slider_being_moved (false)
-       , _was_running_before_slider (false)
        , _outline_content (0)
        , _eye (0)
        , _jump_to_selected (0)
@@ -93,8 +93,8 @@ Controls::Controls (wxWindow* parent, shared_ptr<FilmViewer> viewer, bool editor
        time_sizer->Add (_timecode, 0, wxEXPAND);
 
        h_sizer->Add (_rewind_button, 0, wxALL, 2);
-       h_sizer->Add (_back_button, 0, wxALL, 2);
        h_sizer->Add (time_sizer, 0, wxEXPAND);
+       h_sizer->Add (_back_button, 0, wxALL, 2);
        h_sizer->Add (_forward_button, 0, wxALL, 2);
 
        _button_sizer = new wxBoxSizer (wxHORIZONTAL);
@@ -202,7 +202,7 @@ Controls::slider_moved (bool page)
 
        if (!page && !_slider_being_moved) {
                /* This is the first event of a drag; stop playback for the duration of the drag */
-               _was_running_before_slider = _viewer->stop ();
+               _viewer->suspend ();
                _slider_being_moved = true;
        }
 
@@ -229,10 +229,8 @@ Controls::slider_moved (bool page)
 void
 Controls::slider_released ()
 {
-       if (_was_running_before_slider) {
-               /* Restart after a drag */
-               _viewer->start ();
-       }
+       /* Restart after a drag */
+       _viewer->resume ();
        _slider_being_moved = false;
 }