X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fgl_video_view.h;h=964f6f1ab9db2db8469e1fce8a36bd2d93279fa3;hb=HEAD;hp=d7f8429af78c705faff83d831d1cd888be16fa42;hpb=23aa3071850761144798112a5aaea61304de8586;p=dcpomatic.git diff --git a/src/wx/gl_video_view.h b/src/wx/gl_video_view.h index d7f8429af..69de7b76f 100644 --- a/src/wx/gl_video_view.h +++ b/src/wx/gl_video_view.h @@ -18,21 +18,34 @@ */ + +#include +LIBDCP_DISABLE_WARNINGS +#include +#include +LIBDCP_ENABLE_WARNINGS + +#undef None +#undef Success +#undef Status + + +/* The OpenGL API in wxWidgets 3.0.x is sufficiently different to make it awkward to support, + * and I think it may even have things missing that we require (e.g. the attributes parameter + * to wxGLContext). Hence we only support the GLVideoView on wxWidgets 3.1.0 and higher + * (which only excludes the old macOS builds, since wxWidgets 3.1.x does not support macOS + * 10.9 or earlier). + */ +#if wxCHECK_VERSION(3,1,0) + + #include "video_view.h" #include "lib/signaller.h" #include "lib/position.h" -#include "lib/warnings.h" -DCPOMATIC_DISABLE_WARNINGS -#include -#include -DCPOMATIC_ENABLE_WARNINGS #include #include #include #include -#undef None -#undef Success -#undef Status class Texture @@ -80,7 +93,7 @@ public: private: void set_image (std::shared_ptr pv); void set_image_and_draw (); - void draw (Position inter_position, dcp::Size inter_size); + void draw (); void thread (); void thread_playing (); void request_one_shot (); @@ -88,7 +101,8 @@ private: void ensure_context (); void size_changed (wxSizeEvent const &); void setup_shaders (); - void set_border_colour (GLuint program); + void set_outline_content_colour (GLuint program); + void set_crop_guess_colour (GLuint program); wxGLCanvas* _canvas; wxGLContext* _context; @@ -119,8 +133,10 @@ private: Last> _last_inter_position; Last _last_inter_size; Last _last_out_size; + Last>> _last_crop_guess; boost::atomic _canvas_size; + boost::atomic _rec2020; std::unique_ptr _video_texture; std::unique_ptr _subtitle_texture; bool _have_subtitle_to_render = false; @@ -140,3 +156,5 @@ private: std::map _information; }; + +#endif