X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Ffilm_editor.h;h=61557ce1c53c7231f753fb4c429f17bcdfa17448;hb=78ca79cde19db630b1abfe8f00f49e87bb7e4068;hp=48e944fc6a7c020643d568bc76f8745f11dbe435;hpb=23583dfb56181c76126e652042e9d1940367aa27;p=dcpomatic.git diff --git a/src/wx/film_editor.h b/src/wx/film_editor.h index 48e944fc6..61557ce1c 100644 --- a/src/wx/film_editor.h +++ b/src/wx/film_editor.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2012-2015 Carl Hetherington + Copyright (C) 2012-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,19 +18,26 @@ */ + /** @file src/wx/film_editor.h * @brief FilmEditor class. */ + #include "lib/film.h" +#include +LIBDCP_DISABLE_WARNINGS #include +LIBDCP_ENABLE_WARNINGS #include + class wxNotebook; class Film; class ContentPanel; class DCPPanel; -class ControlFilmViewer; +class FilmViewer; + /** @class FilmEditor * @brief A wx widget to edit a film's metadata, and perform various functions. @@ -38,9 +45,10 @@ class ControlFilmViewer; class FilmEditor : public wxPanel { public: - FilmEditor (wxWindow *, ControlFilmViewer* viewer); + FilmEditor (wxWindow *, std::weak_ptr viewer); - void set_film (boost::shared_ptr); + void set_film (std::shared_ptr); + void first_shown (); boost::signals2::signal FileChanged; boost::signals2::signal SelectionChanged; @@ -51,10 +59,12 @@ public: return _content_panel; } - boost::shared_ptr film () const { + std::shared_ptr film () const { return _film; } +private: + /* Handle changes to the model */ void film_change (ChangeType, Film::Property); void film_content_change (ChangeType type, int); @@ -67,5 +77,5 @@ public: DCPPanel* _dcp_panel; /** The film we are editing */ - boost::shared_ptr _film; + std::shared_ptr _film; };