X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fsimple_video_view.h;h=26d1299b1d84fda12c4acad8b7c4a545820227ee;hb=f802565830bed9ec9e7ad6c16ccaa7b0700625d9;hp=2eb62ab5f57dc1730e74a6f73c5a7a7143d122ff;hpb=a8e31120a793f09ab56cc2847d76944ba698ba95;p=dcpomatic.git diff --git a/src/wx/simple_video_view.h b/src/wx/simple_video_view.h index 2eb62ab5f..26d1299b1 100644 --- a/src/wx/simple_video_view.h +++ b/src/wx/simple_video_view.h @@ -18,17 +18,41 @@ */ +#include "video_view.h" +#include "lib/position.h" +#include "lib/warnings.h" +#include +DCPOMATIC_DISABLE_WARNINGS +#include +DCPOMATIC_ENABLE_WARNINGS + +class FilmViewer; + class SimpleVideoView : public VideoView { public: - SimpleVideoView (wxWindow* parent); + SimpleVideoView (FilmViewer* viewer, wxWindow* parent); - void set_image (boost::shared_ptr image); - - wxWindow* get () const { + wxWindow* get () const override { return _panel; } + void update () override; + void start () override; + NextFrameResult display_next_frame (bool non_blocking) override; + private: + void set_image (std::shared_ptr image) { + _image = image; + } + + void refresh_panel (); + void paint (); + void timer (); + wxPanel* _panel; + std::shared_ptr _image; + wxTimer _timer; + Position _inter_position; + dcp::Size _inter_size; };