X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fjob_manager_view.h;h=e960bc2f667a33e2c291fd79dffb3fbe9ac0ce18;hb=7f641936b00ec87b6eea2ef0a5daa1b1710cf9f4;hp=3d1ad30c07f60e60a53d4473b374fe7d82c13f39;hpb=996b0c06e23bcb6b300d7b8799df94993692e07d;p=dcpomatic.git diff --git a/src/wx/job_manager_view.h b/src/wx/job_manager_view.h index 3d1ad30c0..e960bc2f6 100644 --- a/src/wx/job_manager_view.h +++ b/src/wx/job_manager_view.h @@ -1,31 +1,40 @@ /* - Copyright (C) 2012 Carl Hetherington + 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 . */ + /** @file src/job_manager_view.h * @brief Class which is a wxPanel for showing the progress of jobs. */ -#include -#include + +#include "lib/warnings.h" +DCPOMATIC_DISABLE_WARNINGS #include +DCPOMATIC_ENABLE_WARNINGS +#include +#include + class Job; +class JobView; + /** @class JobManagerView * @brief Class which is a wxPanel for showing the progress of jobs. @@ -33,33 +42,18 @@ class Job; class JobManagerView : public wxScrolledWindow { public: - enum Buttons { - PAUSE = 0x1, - }; - - JobManagerView (wxWindow *, Buttons); - - void update (); + JobManagerView (wxWindow *, bool batch); private: - void periodic (wxTimerEvent &); - void cancel_clicked (wxCommandEvent &); - void pause_clicked (wxCommandEvent &); - void details_clicked (wxCommandEvent &); + void job_added (std::weak_ptr); + void periodic (); + void replace (); + void job_list_changed (); - boost::shared_ptr _timer; wxPanel* _panel; wxFlexGridSizer* _table; - struct JobRecord { - wxGauge* gauge; - wxStaticText* message; - wxButton* cancel; - wxButton* pause; - wxButton* details; - bool finalised; - bool scroll_nudged; - }; - - std::map, JobRecord> _job_records; - Buttons _buttons; + std::shared_ptr _timer; + bool _batch; + + std::list> _job_records; };