From bb949ec65adf95f4a2c7dd5ee7e97b9daaaf3d3f Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Tue, 16 Feb 2021 10:40:12 +0100 Subject: C++11 tidying. --- src/wx/content_widget.h | 5 ++++- src/wx/timeline_view.cc | 16 +++++++++++----- src/wx/timeline_view.h | 16 ++++++++++++---- src/wx/video_view.cc | 16 +++++++++------- src/wx/video_view.h | 25 ++++++++++++++++--------- 5 files changed, 52 insertions(+), 26 deletions(-) (limited to 'src/wx') diff --git a/src/wx/content_widget.h b/src/wx/content_widget.h index 1a9c85dde..2a2bc9cf7 100644 --- a/src/wx/content_widget.h +++ b/src/wx/content_widget.h @@ -43,7 +43,7 @@ * @param V Data type of state as used by the view. */ template -class ContentWidget : public boost::noncopyable +class ContentWidget { public: /** @param parent Parent window. @@ -84,6 +84,9 @@ public: _button->Bind (wxEVT_COMMAND_BUTTON_CLICKED, boost::bind (&ContentWidget::button_clicked, this)); } + ContentWidget (ContentWidget const&) = delete; + ContentWidget& operator= (ContentWidget const&) = delete; + /** @return the widget that we are wrapping */ T* wrapped () const { diff --git a/src/wx/timeline_view.cc b/src/wx/timeline_view.cc index fb23fa7b1..10d6dc5be 100644 --- a/src/wx/timeline_view.cc +++ b/src/wx/timeline_view.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2013-2015 Carl Hetherington + Copyright (C) 2013-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,12 +18,15 @@ */ + #include "timeline_view.h" #include "timeline.h" + using std::list; using namespace dcpomatic; + /** @class TimelineView * @brief Parent class for components of the timeline (e.g. a piece of content or an axis). */ @@ -33,22 +36,25 @@ TimelineView::TimelineView (Timeline& t) } + void -TimelineView::paint (wxGraphicsContext* g, list > overlaps) +TimelineView::paint (wxGraphicsContext* g, list> overlaps) { _last_paint_bbox = bbox (); do_paint (g, overlaps); } + void TimelineView::force_redraw () { - _timeline.force_redraw (_last_paint_bbox.extended (4)); - _timeline.force_redraw (bbox().extended (4)); + _timeline.force_redraw (_last_paint_bbox.extended(4)); + _timeline.force_redraw (bbox().extended(4)); } + int TimelineView::time_x (DCPTime t) const { - return t.seconds() * _timeline.pixels_per_second().get_value_or (0); + return t.seconds() * _timeline.pixels_per_second().get_value_or(0); } diff --git a/src/wx/timeline_view.h b/src/wx/timeline_view.h index bfd1de8b7..c40cf78ff 100644 --- a/src/wx/timeline_view.h +++ b/src/wx/timeline_view.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2013-2015 Carl Hetherington + Copyright (C) 2013-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,25 +18,31 @@ */ + #ifndef DCPOMATIC_TIMELINE_VIEW_H #define DCPOMATIC_TIMELINE_VIEW_H + #include "lib/rect.h" #include "lib/dcpomatic_time.h" -#include + class wxGraphicsContext; class Timeline; + /** @class TimelineView * @brief Parent class for components of the timeline (e.g. a piece of content or an axis). */ -class TimelineView : public boost::noncopyable +class TimelineView { public: explicit TimelineView (Timeline& t); virtual ~TimelineView () {} + TimelineView (TimelineView const&) = delete; + TimelineView& operator= (TimelineView const&) = delete; + void paint (wxGraphicsContext* g, std::list > overlaps); void force_redraw (); @@ -53,6 +59,8 @@ private: dcpomatic::Rect _last_paint_bbox; }; -typedef std::vector > TimelineViewList; + +typedef std::vector> TimelineViewList; + #endif diff --git a/src/wx/video_view.cc b/src/wx/video_view.cc index 68a15e2e0..5f44c37d6 100644 --- a/src/wx/video_view.cc +++ b/src/wx/video_view.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2019 Carl Hetherington + Copyright (C) 2019-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,6 +18,7 @@ */ + #include "video_view.h" #include "wx_util.h" #include "film_viewer.h" @@ -29,19 +30,15 @@ using std::pair; using std::shared_ptr; using boost::optional; + VideoView::VideoView (FilmViewer* viewer) : _viewer (viewer) , _state_timer ("viewer") - , _video_frame_rate (0) - , _eyes (Eyes::LEFT) - , _three_d (false) - , _dropped (0) - , _errored (0) - , _gets (0) { } + void VideoView::clear () { @@ -50,6 +47,7 @@ VideoView::clear () _player_video.second = dcpomatic::DCPTime (); } + /** Could be called from any thread. * @param non_blocking true to return false quickly if no video is available quickly. * @return FAIL if there's no frame, AGAIN if the method should be called again, or SUCCESS @@ -94,12 +92,14 @@ VideoView::get_next_frame (bool non_blocking) return SUCCESS; } + dcpomatic::DCPTime VideoView::one_video_frame () const { return dcpomatic::DCPTime::from_frames (1, video_frame_rate()); } + /** @return Time in ms until the next frame is due, or empty if nothing is due */ optional VideoView::time_until_next_frame () const @@ -117,6 +117,7 @@ VideoView::time_until_next_frame () const return (next.seconds() - time.seconds()) * 1000; } + void VideoView::start () { @@ -125,6 +126,7 @@ VideoView::start () _errored = 0; } + bool VideoView::reset_metadata (shared_ptr film, dcp::Size player_video_container_size) { diff --git a/src/wx/video_view.h b/src/wx/video_view.h index 3b596197e..d3a15d38c 100644 --- a/src/wx/video_view.h +++ b/src/wx/video_view.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2019 Carl Hetherington + Copyright (C) 2019-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,16 +18,18 @@ */ + #ifndef DCPOMATIC_VIDEO_VIEW_H #define DCPOMATIC_VIDEO_VIEW_H + #include "lib/dcpomatic_time.h" #include "lib/timer.h" #include "lib/types.h" #include "lib/exception_store.h" #include #include -#include + class Image; class wxWindow; @@ -35,12 +37,16 @@ class FilmViewer; class Player; class PlayerVideo; -class VideoView : public ExceptionStore, public boost::noncopyable + +class VideoView : public ExceptionStore { public: VideoView (FilmViewer* viewer); virtual ~VideoView () {} + VideoView (VideoView const&) = delete; + VideoView& operator= (VideoView const&) = delete; + /** @return the thing displaying the image */ virtual wxWindow* get () const = 0; /** Re-make and display the image from the current _player_video */ @@ -156,15 +162,16 @@ private: mutable boost::mutex _mutex; std::pair, dcpomatic::DCPTime> _player_video; - int _video_frame_rate; + int _video_frame_rate = 0; /** length of the film we are playing, or 0 if there is none */ dcpomatic::DCPTime _length; - Eyes _eyes; - bool _three_d; + Eyes _eyes = Eyes::LEFT; + bool _three_d = false; - int _dropped; - int _errored; - int _gets; + int _dropped = 0; + int _errored = 0; + int _gets = 0; }; + #endif -- cgit v1.2.3