X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Fjob_manager_view.cc;h=7cfcf3423ce9d2fdaba23d90290a1920011c32a9;hb=f8678dcae5f90eb946ad6e51d9a62e0c02bc63e3;hp=a95087b02ee27f139e2ff318fe56cfbba358ca23;hpb=478417f4441c50aaebc3870a5e1867f7c41b4afd;p=dcpomatic.git
diff --git a/src/wx/job_manager_view.cc b/src/wx/job_manager_view.cc
index a95087b02..7cfcf3423 100644
--- a/src/wx/job_manager_view.cc
+++ b/src/wx/job_manager_view.cc
@@ -31,6 +31,7 @@
using std::string;
using std::list;
using std::map;
+using std::min;
using std::cout;
using boost::shared_ptr;
using boost::weak_ptr;
@@ -46,8 +47,9 @@ public:
{
int n = 0;
- wxStaticText* m = new wxStaticText (panel, wxID_ANY, std_to_wx (_job->name ()));
- table->Insert (n, m, 0, wxALIGN_CENTER_VERTICAL | wxALL, 6);
+ _name = new wxStaticText (panel, wxID_ANY, "");
+ _name->SetLabelMarkup ("" + _job->name () + "");
+ table->Insert (n, _name, 0, wxALIGN_CENTER_VERTICAL | wxALL, 6);
++n;
_gauge = new wxGauge (panel, wxID_ANY, 100);
@@ -96,10 +98,16 @@ private:
void progress ()
{
- float const p = _job->overall_progress ();
+ float const p = _job->progress ();
if (p >= 0) {
checked_set (_message, _job->status ());
- _gauge->SetValue (p * 100);
+ string const n = "" + _job->name () + "\n" + _job->sub_name ();
+ if (n != _last_name) {
+ _name->SetLabelMarkup (std_to_wx (n));
+ _last_name = n;
+ }
+ int const pp = min (100.0f, p * 100);
+ _gauge->SetValue (pp);
}
_table->Layout ();
@@ -149,11 +157,13 @@ private:
wxScrolledWindow* _window;
wxPanel* _panel;
wxFlexGridSizer* _table;
+ wxStaticText* _name;
wxGauge* _gauge;
wxStaticText* _message;
wxButton* _cancel;
wxButton* _pause;
wxButton* _details;
+ std::string _last_name;
};
/** Must be called in the GUI thread */