diff options
| author | Carl Hetherington <cth@carlh.net> | 2016-09-30 10:42:30 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2016-09-30 10:42:30 +0100 |
| commit | a5e041b46b675c1f42fc83920be45345662e0376 (patch) | |
| tree | 65c9728693ed5f22028e5eeceeefad239f027919 /src | |
| parent | 0ef231d6ef3c483edc5d13affd31367acfecd320 (diff) | |
Reverse order of jobs in the batch converter view.
Diffstat (limited to 'src')
| -rw-r--r-- | src/tools/dcpomatic.cc | 2 | ||||
| -rw-r--r-- | src/tools/dcpomatic_batch.cc | 2 | ||||
| -rw-r--r-- | src/wx/job_manager_view.cc | 12 | ||||
| -rw-r--r-- | src/wx/job_manager_view.h | 3 | ||||
| -rw-r--r-- | src/wx/job_view.cc | 5 | ||||
| -rw-r--r-- | src/wx/job_view.h | 2 | ||||
| -rw-r--r-- | src/wx/job_view_dialog.cc | 2 |
7 files changed, 18 insertions, 10 deletions
diff --git a/src/tools/dcpomatic.cc b/src/tools/dcpomatic.cc index 6c16457af..cb4927ad0 100644 --- a/src/tools/dcpomatic.cc +++ b/src/tools/dcpomatic.cc @@ -245,7 +245,7 @@ public: _film_viewer = new FilmViewer (overall_panel); _film_editor = new FilmEditor (overall_panel, _film_viewer); - JobManagerView* job_manager_view = new JobManagerView (overall_panel); + JobManagerView* job_manager_view = new JobManagerView (overall_panel, false); wxBoxSizer* right_sizer = new wxBoxSizer (wxVERTICAL); right_sizer->Add (_film_viewer, 2, wxEXPAND | wxALL, 6); diff --git a/src/tools/dcpomatic_batch.cc b/src/tools/dcpomatic_batch.cc index 9e2d6969d..64eb46af2 100644 --- a/src/tools/dcpomatic_batch.cc +++ b/src/tools/dcpomatic_batch.cc @@ -109,7 +109,7 @@ public: s->Add (panel, 1, wxEXPAND); SetSizer (s); - JobManagerView* job_manager_view = new JobManagerView (panel); + JobManagerView* job_manager_view = new JobManagerView (panel, false); _sizer->Add (job_manager_view, 1, wxALL | wxEXPAND, 6); wxSizer* buttons = new wxBoxSizer (wxHORIZONTAL); diff --git a/src/wx/job_manager_view.cc b/src/wx/job_manager_view.cc index cd6918b72..dcef5f4fd 100644 --- a/src/wx/job_manager_view.cc +++ b/src/wx/job_manager_view.cc @@ -40,9 +40,15 @@ using std::cout; using boost::shared_ptr; using boost::weak_ptr; -/** Must be called in the GUI thread */ -JobManagerView::JobManagerView (wxWindow* parent) +/** @param parent Parent window. + * @param latest_at_top true to put the last-added job at the top of the view, + * false to put it at the bottom. + * + * Must be called in the GUI thread. + */ +JobManagerView::JobManagerView (wxWindow* parent, bool latest_at_top) : wxScrolledWindow (parent) + , _latest_at_top (latest_at_top) { _panel = new wxPanel (this); wxSizer* sizer = new wxBoxSizer (wxVERTICAL); @@ -68,7 +74,7 @@ JobManagerView::job_added (weak_ptr<Job> j) { shared_ptr<Job> job = j.lock (); if (job) { - _job_records.push_back (shared_ptr<JobView> (new JobView (job, this, _panel, _table))); + _job_records.push_back (shared_ptr<JobView> (new JobView (job, this, _panel, _table, _latest_at_top))); } } diff --git a/src/wx/job_manager_view.h b/src/wx/job_manager_view.h index 7624678c2..d887718d3 100644 --- a/src/wx/job_manager_view.h +++ b/src/wx/job_manager_view.h @@ -35,7 +35,7 @@ class JobView; class JobManagerView : public wxScrolledWindow { public: - JobManagerView (wxWindow *); + JobManagerView (wxWindow *, bool latest_at_top); private: void job_added (boost::weak_ptr<Job>); @@ -44,6 +44,7 @@ private: wxPanel* _panel; wxFlexGridSizer* _table; boost::shared_ptr<wxTimer> _timer; + bool _latest_at_top; std::list<boost::shared_ptr<JobView> > _job_records; }; diff --git a/src/wx/job_view.cc b/src/wx/job_view.cc index 136b18ed3..83d3159b0 100644 --- a/src/wx/job_view.cc +++ b/src/wx/job_view.cc @@ -28,11 +28,12 @@ using std::string; using std::min; using boost::shared_ptr; -JobView::JobView (shared_ptr<Job> job, wxWindow* parent, wxWindow* container, wxFlexGridSizer* table) +/** @param top Put this view at the top of table, otherwise put it at the bottom */ +JobView::JobView (shared_ptr<Job> job, wxWindow* parent, wxWindow* container, wxFlexGridSizer* table, bool top) : _job (job) , _parent (parent) { - int n = 0; + int n = top ? 0 : (table->GetEffectiveRowsCount() * table->GetEffectiveColsCount()); _gauge_message = new wxBoxSizer (wxVERTICAL); _gauge = new wxGauge (container, wxID_ANY, 100); diff --git a/src/wx/job_view.h b/src/wx/job_view.h index ee254f2a4..96233f732 100644 --- a/src/wx/job_view.h +++ b/src/wx/job_view.h @@ -35,7 +35,7 @@ class wxButton; class JobView : public boost::noncopyable { public: - JobView (boost::shared_ptr<Job> job, wxWindow* parent, wxWindow* container, wxFlexGridSizer* table); + JobView (boost::shared_ptr<Job> job, wxWindow* parent, wxWindow* container, wxFlexGridSizer* table, bool top); void maybe_pulse (); diff --git a/src/wx/job_view_dialog.cc b/src/wx/job_view_dialog.cc index b4dcd271f..e629cce62 100644 --- a/src/wx/job_view_dialog.cc +++ b/src/wx/job_view_dialog.cc @@ -26,7 +26,7 @@ using boost::shared_ptr; JobViewDialog::JobViewDialog (wxWindow* parent, wxString title, shared_ptr<Job> job) : TableDialog (parent, title, 4, 0, false) { - _view = new JobView (job, this, this, _table); + _view = new JobView (job, this, this, _table, true); layout (); SetMinSize (wxSize (960, -1)); |
