X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Ftimeline_content_view.h;h=27cfed53eef989373eee4db604886d4890c3facb;hb=HEAD;hp=b5b000bdb9cc14ece8451c1506cd8ff6d0bfdabb;hpb=a44d87088c380e2e282b1df65d6bd55795091c72;p=dcpomatic.git diff --git a/src/wx/timeline_content_view.h b/src/wx/timeline_content_view.h index b5b000bdb..7794120cd 100644 --- a/src/wx/timeline_content_view.h +++ b/src/wx/timeline_content_view.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2013-2016 Carl Hetherington + Copyright (C) 2013-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,28 +18,35 @@ */ + #ifndef DCPOMATIC_TIMELINE_CONTENT_VIEW_H #define DCPOMATIC_TIMELINE_CONTENT_VIEW_H + #include "timeline_view.h" +#include "lib/change_signaller.h" +#include +LIBDCP_DISABLE_WARNINGS #include +LIBDCP_ENABLE_WARNINGS #include class Content; + /** @class TimelineContentView * @brief Parent class for views of pieces of content. */ class TimelineContentView : public TimelineView { public: - TimelineContentView (Timeline& tl, boost::shared_ptr c); + TimelineContentView (Timeline& tl, std::shared_ptr c); - dcpomatic::Rect bbox () const; + dcpomatic::Rect bbox () const override; void set_selected (bool s); bool selected () const; - boost::shared_ptr content () const; + std::shared_ptr content () const; void set_track (int t); void unset_track (); boost::optional track () const; @@ -51,20 +58,21 @@ public: protected: - boost::weak_ptr _content; + std::weak_ptr _content; private: - void do_paint (wxGraphicsContext* gc, std::list > overlaps); - int y_pos (int t) const; - void content_changed (int p); + void do_paint (wxGraphicsContext* gc, std::list> overlaps) override; + void content_change (ChangeType type, int p); boost::optional _track; - bool _selected; + bool _selected = false; boost::signals2::scoped_connection _content_connection; }; -typedef std::vector > TimelineContentViewList; + +typedef std::vector> TimelineContentViewList; + #endif