projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix macOS build.
[dcpomatic.git]
/
src
/
wx
/
film_viewer.cc
diff --git
a/src/wx/film_viewer.cc
b/src/wx/film_viewer.cc
index cd5b6e2eafd47d1576fa08584683d3e3b0c61fcf..0e6e908b3245c88fb8e9851e4e898a452c8d64bb 100644
(file)
--- a/
src/wx/film_viewer.cc
+++ b/
src/wx/film_viewer.cc
@@
-32,36
+32,37
@@
#include "playhead_to_timecode_dialog.h"
#include "simple_video_view.h"
#include "wx_util.h"
#include "playhead_to_timecode_dialog.h"
#include "simple_video_view.h"
#include "wx_util.h"
-#include "lib/film.h"
-#include "lib/ratio.h"
-#include "lib/util.h"
-#include "lib/job_manager.h"
-#include "lib/image.h"
-#include "lib/exceptions.h"
+#include "lib/butler.h"
+#include "lib/compose.hpp"
+#include "lib/config.h"
+#include "lib/dcpomatic_log.h"
#include "lib/examine_content_job.h"
#include "lib/examine_content_job.h"
+#include "lib/exceptions.h"
+#include "lib/film.h"
#include "lib/filter.h"
#include "lib/filter.h"
+#include "lib/image.h"
+#include "lib/job_manager.h"
+#include "lib/log.h"
#include "lib/player.h"
#include "lib/player_video.h"
#include "lib/player.h"
#include "lib/player_video.h"
+#include "lib/ratio.h"
+#include "lib/text_content.h"
+#include "lib/timer.h"
+#include "lib/util.h"
#include "lib/video_content.h"
#include "lib/video_decoder.h"
#include "lib/video_content.h"
#include "lib/video_decoder.h"
-#include "lib/timer.h"
-#include "lib/butler.h"
-#include "lib/log.h"
-#include "lib/config.h"
-#include "lib/compose.hpp"
-#include "lib/dcpomatic_log.h"
-#include "lib/text_content.h"
+#include <dcp/exceptions.h>
+#include <dcp/warnings.h>
extern "C" {
#include <libavutil/pixfmt.h>
}
extern "C" {
#include <libavutil/pixfmt.h>
}
-#include <dcp/exceptions.h>
+LIBDCP_DISABLE_WARNINGS
#include <wx/tglbtn.h>
#include <wx/tglbtn.h>
-#include <iostream>
+LIBDCP_ENABLE_WARNINGS
#include <iomanip>
using std::bad_alloc;
#include <iomanip>
using std::bad_alloc;
-using std::cout;
using std::dynamic_pointer_cast;
using std::make_shared;
using std::max;
using std::dynamic_pointer_cast;
using std::make_shared;
using std::max;
@@
-117,7
+118,7
@@
FilmViewer::~FilmViewer ()
}
}
-/** Ask for ::
get
() to be called next time we are idle */
+/** Ask for ::
idle_handler
() to be called next time we are idle */
void
FilmViewer::request_idle_display_next_frame ()
{
void
FilmViewer::request_idle_display_next_frame ()
{
@@
-711,6
+712,13
@@
FilmViewer::dcp_decode_reduction () const
}
}
+optional<ContentTime>
+FilmViewer::position_in_content (shared_ptr<const Content> content) const
+{
+ return _player->dcp_to_content_time (content, position());
+}
+
+
DCPTime
FilmViewer::one_video_frame () const
{
DCPTime
FilmViewer::one_video_frame () const
{
@@
-794,3
+802,21
@@
FilmViewer::set_optimise_for_j2k (bool o)
_video_view->set_optimise_for_j2k (o);
}
_video_view->set_optimise_for_j2k (o);
}
+
+void
+FilmViewer::set_crop_guess (dcpomatic::Rect<float> crop)
+{
+ if (crop != _crop_guess) {
+ _crop_guess = crop;
+ _video_view->update ();
+ }
+}
+
+
+void
+FilmViewer::unset_crop_guess ()
+{
+ _crop_guess = {};
+ _video_view->update ();
+}
+