X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Ffilm_editor.h;h=a5232d2e54681bfb330f32c68c1694d6cec316ec;hb=d31674ec14bb533fe2b195601e9ee2fe03848487;hp=e19fcabdf81cd45db2fe0fd0ac8551a08b7c33d5;hpb=d2bd0c628fd0616fe3b7dd02bd955b2c07ab48d5;p=dcpomatic.git diff --git a/src/wx/film_editor.h b/src/wx/film_editor.h index e19fcabdf..a5232d2e5 100644 --- a/src/wx/film_editor.h +++ b/src/wx/film_editor.h @@ -1,19 +1,20 @@ /* Copyright (C) 2012-2015 Carl Hetherington - This program is free software; you can redistribute it and/or modify + This file is part of DCP-o-matic. + + DCP-o-matic is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. - This program is distributed in the hope that it will be useful, + DCP-o-matic is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + along with DCP-o-matic. If not, see . */ @@ -22,7 +23,10 @@ */ #include "lib/film.h" +#include "lib/warnings.h" +DCPOMATIC_DISABLE_WARNINGS #include +DCPOMATIC_ENABLE_WARNINGS #include class wxNotebook; @@ -37,11 +41,13 @@ class FilmViewer; class FilmEditor : public wxPanel { public: - FilmEditor (wxWindow *, FilmViewer* 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; /* Stuff for panels */ @@ -49,13 +55,15 @@ public: return _content_panel; } - boost::shared_ptr film () const { + std::shared_ptr film () const { return _film; } +private: + /* Handle changes to the model */ - void film_changed (Film::Property); - void film_content_changed (int); + void film_change (ChangeType, Film::Property); + void film_content_change (ChangeType type, int); void set_general_sensitivity (bool); void active_jobs_changed (boost::optional); @@ -65,5 +73,5 @@ public: DCPPanel* _dcp_panel; /** The film we are editing */ - boost::shared_ptr _film; + std::shared_ptr _film; };