summaryrefslogtreecommitdiff
path: root/src/wx/film_viewer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/wx/film_viewer.cc')
-rw-r--r--src/wx/film_viewer.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/wx/film_viewer.cc b/src/wx/film_viewer.cc
index 5a3e58724..b116c0245 100644
--- a/src/wx/film_viewer.cc
+++ b/src/wx/film_viewer.cc
@@ -101,6 +101,7 @@ FilmViewer::FilmViewer (wxWindow* p)
_config_changed_connection = Config::instance()->Changed.connect (bind (&FilmViewer::config_changed, this, _1));
config_changed (Config::SOUND_OUTPUT);
+ config_changed (Config::PLAYER_WATERMARK);
}
FilmViewer::~FilmViewer ()
@@ -327,6 +328,14 @@ FilmViewer::paint_panel ()
wxBitmap frame_bitmap (frame);
dc.DrawBitmap (frame_bitmap, 0, max(0, (_panel_size.height - _out_size.height) / 2));
+#ifdef DCPOMATIC_VARIANT_SWAROOP
+ if (_watermark && (_video_position.get() % 960000) == 0) {
+ int x = rand() % (_panel_size.width - _watermark->GetWidth());
+ int y = rand() % (_panel_size.height - _watermark->GetHeight());
+ dc.DrawBitmap (*_watermark, x, y);
+ }
+#endif
+
if (_out_size.width < _panel_size.width) {
wxPen p (_panel->GetParent()->GetBackgroundColour());
wxBrush b (_panel->GetParent()->GetBackgroundColour());
@@ -571,6 +580,16 @@ void
FilmViewer::config_changed (Config::Property p)
{
#ifdef DCPOMATIC_VARIANT_SWAROOP
+ if (p == Config::PLAYER_WATERMARK) {
+ optional<boost::filesystem::path> f = Config::instance()->player_watermark();
+ if (f) {
+ _watermark = wxBitmap(wxImage(std_to_wx(f->string())));
+ } else {
+ _watermark = boost::none;
+ }
+ return;
+ }
+
if (p == Config::PLAYER_BACKGROUND_IMAGE) {
refresh_panel ();
return;