X-Git-Url: https://main.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=src%2Fwx%2Fkdm_dialog.h;h=a240ec1b6bb85040cf854b62cf9fd05a99546e65;hp=0fc95db8443dee447023e7170b3ee964c0daef85;hb=0a3f387f5d39da2ca38ec90a9593c1b598040dd7;hpb=05654d0e1799746a9df3ccab040c92e0ed825cac diff --git a/src/wx/kdm_dialog.h b/src/wx/kdm_dialog.h index 0fc95db84..a240ec1b6 100644 --- a/src/wx/kdm_dialog.h +++ b/src/wx/kdm_dialog.h @@ -1,100 +1,56 @@ /* - Copyright (C) 2012 Carl Hetherington + Copyright (C) 2012-2016 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 . */ -#include +#include "wx_util.h" +#include +#include #include #include -#include -#include -#include "wx_util.h" +#include -class wxTreeCtrl; -class wxDatePickerCtrl; -class wxTimePickerCtrl; -class wxDirPickerCtrl; -class DirPickerCtrl; +namespace dcpomatic { + class Screen; +} class Cinema; -class Screen; +class Film; +class ScreensPanel; +class KDMTimingPanel; +class KDMOutputPanel; +class KDMCPLPanel; +struct CPLSummary; class KDMDialog : public wxDialog { public: - KDMDialog (wxWindow *, boost::shared_ptr); - - std::list > screens () const; - - /** @return KDM from time in local time */ - boost::posix_time::ptime from () const; - /** @return KDM until time in local time */ - boost::posix_time::ptime until () const; - - boost::filesystem::path cpl () const; - boost::filesystem::path directory () const; - bool write_to () const; - dcp::Formulation formulation () const; + KDMDialog (wxWindow *, boost::shared_ptr film); private: - void add_cinema (boost::shared_ptr); - void add_screen (boost::shared_ptr, boost::shared_ptr); - void add_cinema_clicked (); - void edit_cinema_clicked (); - void remove_cinema_clicked (); - void add_screen_clicked (); - void edit_screen_clicked (); - void remove_screen_clicked (); - std::list > > selected_cinemas () const; - std::list > > selected_screens () const; void setup_sensitivity (); - void update_cpl_choice (); - void update_cpl_summary (); - void cpl_browse_clicked (); - - static boost::posix_time::ptime posix_time (wxDatePickerCtrl *, wxTimePickerCtrl *); - - wxTreeCtrl* _targets; - wxButton* _add_cinema; - wxButton* _edit_cinema; - wxButton* _remove_cinema; - wxButton* _add_screen; - wxButton* _edit_screen; - wxButton* _remove_screen; - wxDatePickerCtrl* _from_date; - wxDatePickerCtrl* _until_date; - wxTimePickerCtrl* _from_time; - wxTimePickerCtrl* _until_time; - wxChoice* _cpl; - wxButton* _cpl_browse; - wxStaticText* _dcp_directory; - wxStaticText* _cpl_id; - wxStaticText* _cpl_annotation_text; - wxChoice* _type; - wxRadioButton* _write_to; -#ifdef DCPOMATIC_USE_OWN_DIR_PICKER - DirPickerCtrl* _folder; -#else - wxDirPickerCtrl* _folder; -#endif - wxRadioButton* _email; - - wxTreeItemId _root; - std::map > _cinemas; - std::map > _screens; - std::vector _cpls; + void make_clicked (); + bool confirm_overwrite (boost::filesystem::path path); + + boost::weak_ptr _film; + ScreensPanel* _screens; + KDMTimingPanel* _timing; + KDMCPLPanel* _cpl; + KDMOutputPanel* _output; + wxButton* _make; };