X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fhints_dialog.h;h=37d36459cab6a734af0755f8e7bec4e9a6d463f3;hb=9f4cb3b340376d93be39dc97c2e0c631e9cf73c4;hp=810791453522472cb99ac0a084e970a2ec0b84bc;hpb=ce835adf99ec81ea182ac151f6e0d1cc3376d175;p=dcpomatic.git diff --git a/src/wx/hints_dialog.h b/src/wx/hints_dialog.h index 810791453..37d36459c 100644 --- a/src/wx/hints_dialog.h +++ b/src/wx/hints_dialog.h @@ -1,36 +1,63 @@ /* - Copyright (C) 2012-2013 Carl Hetherington + Copyright (C) 2012-2018 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 "lib/change_signaller.h" +#include "lib/warnings.h" +DCPOMATIC_DISABLE_WARNINGS #include +DCPOMATIC_ENABLE_WARNINGS +#include + class wxRichTextCtrl; class Film; +class Hints; class HintsDialog : public wxDialog { public: - HintsDialog (wxWindow* parent, boost::weak_ptr); + HintsDialog (wxWindow* parent, std::weak_ptr, bool ok); private: - void film_changed (); - - boost::weak_ptr _film; + void film_change (ChangeType); + void film_content_change (ChangeType type); + void shut_up (wxCommandEvent& ev); + void update (); + void hint (std::string text); + void pulse (); + void finished (); + void progress (std::string m); + + std::weak_ptr _film; + wxGauge* _gauge; + wxStaticText* _gauge_message; wxRichTextCtrl* _text; + boost::scoped_ptr _hints; + std::list _current; + bool _finished; + + boost::signals2::scoped_connection _film_change_connection; + boost::signals2::scoped_connection _film_content_change_connection; + boost::signals2::scoped_connection _hints_hint_connection; + boost::signals2::scoped_connection _hints_progress_connection; + boost::signals2::scoped_connection _hints_pulse_connection; + boost::signals2::scoped_connection _hints_finished_connection; };