projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make video view type configurable.
[dcpomatic.git]
/
src
/
wx
/
film_viewer.cc
diff --git
a/src/wx/film_viewer.cc
b/src/wx/film_viewer.cc
index 5af2d7462b76dd7820c28a683bf3905d2b92f84d..4066710e7e90936c5dbd86ca9d74293c4fc11c64 100644
(file)
--- a/
src/wx/film_viewer.cc
+++ b/
src/wx/film_viewer.cc
@@
-28,6
+28,7
@@
#include "wx_util.h"
#include "closed_captions_dialog.h"
#include "gl_video_view.h"
#include "wx_util.h"
#include "closed_captions_dialog.h"
#include "gl_video_view.h"
+#include "simple_video_view.h"
#include "lib/film.h"
#include "lib/ratio.h"
#include "lib/util.h"
#include "lib/film.h"
#include "lib/ratio.h"
#include "lib/util.h"
@@
-78,9
+79,7
@@
rtaudio_callback (void* out, void *, unsigned int frames, double, RtAudioStreamS
}
FilmViewer::FilmViewer (wxWindow* p)
}
FilmViewer::FilmViewer (wxWindow* p)
- /* XXX: make this configurable */
- : _video_view (new GLVideoView(p))
- , _coalesce_player_changes (false)
+ : _coalesce_player_changes (false)
, _audio (DCPOMATIC_RTAUDIO_API)
, _audio_channels (0)
, _audio_block_size (1024)
, _audio (DCPOMATIC_RTAUDIO_API)
, _audio_channels (0)
, _audio_block_size (1024)
@@
-98,6
+97,15
@@
FilmViewer::FilmViewer (wxWindow* p)
, _state_timer ("viewer")
, _gets (0)
{
, _state_timer ("viewer")
, _gets (0)
{
+ switch (Config::instance()->video_view_type()) {
+ case Config::VIDEO_VIEW_OPENGL:
+ _video_view = new GLVideoView (p);
+ break;
+ case Config::VIDEO_VIEW_SIMPLE:
+ _video_view = new SimpleVideoView (this, p);
+ break;
+ }
+
/* XXX: maybe this should be proxied through the VideoView */
_video_view->get()->Bind (wxEVT_SIZE, boost::bind (&FilmViewer::video_view_sized, this));
_timer.Bind (wxEVT_TIMER, boost::bind (&FilmViewer::timer, this));
/* XXX: maybe this should be proxied through the VideoView */
_video_view->get()->Bind (wxEVT_SIZE, boost::bind (&FilmViewer::video_view_sized, this));
_timer.Bind (wxEVT_TIMER, boost::bind (&FilmViewer::timer, this));
@@
-132,7
+140,7
@@
FilmViewer::set_film (shared_ptr<Film> film)
_player.reset ();
recreate_butler ();
_frame.reset ();
_player.reset ();
recreate_butler ();
_frame.reset ();
- refresh_
panel
();
+ refresh_
view
();
return;
}
return;
}
@@
-207,16
+215,12
@@
FilmViewer::recreate_butler ()
}
void
}
void
-FilmViewer::refresh_
panel
()
+FilmViewer::refresh_
view
()
{
{
- /* XXX */
-
- /*
- _state_timer.set ("refresh-panel");
- _panel->Refresh ();
- _panel->Update ();
+ _state_timer.set ("refresh-view");
+ _video_view->get()->Refresh ();
+ _video_view->get()->Update ();
_state_timer.unset ();
_state_timer.unset ();
- */
}
void
}
void
@@
-249,7
+253,7
@@
FilmViewer::display_player_video ()
{
if (!_player_video.first) {
_frame.reset ();
{
if (!_player_video.first) {
_frame.reset ();
- refresh_
panel
();
+ refresh_
view
();
return;
}
return;
}
@@
-294,7
+298,7
@@
FilmViewer::display_player_video ()
_inter_position = _player_video.first->inter_position ();
_inter_size = _player_video.first->inter_size ();
_inter_position = _player_video.first->inter_position ();
_inter_size = _player_video.first->inter_size ();
- refresh_
panel
();
+ refresh_
view
();
_closed_captions_dialog->update (time());
}
_closed_captions_dialog->update (time());
}
@@
-350,7
+354,7
@@
void
FilmViewer::set_outline_content (bool o)
{
_outline_content = o;
FilmViewer::set_outline_content (bool o)
{
_outline_content = o;
- refresh_
panel
();
+ refresh_
view
();
}
void
}
void
@@
-565,7
+569,7
@@
FilmViewer::config_changed (Config::Property p)
{
#ifdef DCPOMATIC_VARIANT_SWAROOP
if (p == Config::PLAYER_BACKGROUND_IMAGE) {
{
#ifdef DCPOMATIC_VARIANT_SWAROOP
if (p == Config::PLAYER_BACKGROUND_IMAGE) {
- refresh_
panel
();
+ refresh_
view
();
return;
}
#endif
return;
}
#endif