summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2022-08-28 22:56:34 +0200
committerCarl Hetherington <cth@carlh.net>2022-08-28 22:56:43 +0200
commit70605ac958be4b9acee827431fd078a4201b6625 (patch)
tree436c3536c1518e1e3e44d00c4a8379944b2cf461
parent130326a1388ce6f80945aaface04cf979bce9d06 (diff)
Display the rating agency name rather than the URL (if we have it).
-rw-r--r--src/wx/metadata_dialog.cc10
-rw-r--r--src/wx/metadata_dialog.h2
2 files changed, 10 insertions, 2 deletions
diff --git a/src/wx/metadata_dialog.cc b/src/wx/metadata_dialog.cc
index 0028b0cbb..b1c58a27e 100644
--- a/src/wx/metadata_dialog.cc
+++ b/src/wx/metadata_dialog.cc
@@ -45,7 +45,9 @@ MetadataDialog::MetadataDialog (wxWindow* parent, weak_ptr<Film> weak_film)
: wxDialog (parent, wxID_ANY, _("Metadata"))
, WeakFilm (weak_film)
{
-
+ for (auto system: dcp::rating_systems()) {
+ _rating_system_agency_to_name[system.agency] = system.name;
+ }
}
@@ -195,8 +197,12 @@ MetadataDialog::setup_standard (wxPanel* panel, wxSizer* sizer)
columns,
boost::bind(&MetadataDialog::ratings, this),
boost::bind(&MetadataDialog::set_ratings, this, _1),
- [](dcp::Rating r, int c) {
+ [this](dcp::Rating r, int c) {
if (c == 0) {
+ auto iter = _rating_system_agency_to_name.find(r.agency);
+ if (iter != _rating_system_agency_to_name.end()) {
+ return iter->second;
+ }
return r.agency;
}
return r.label;
diff --git a/src/wx/metadata_dialog.h b/src/wx/metadata_dialog.h
index 591ef3db4..ea7233cbb 100644
--- a/src/wx/metadata_dialog.h
+++ b/src/wx/metadata_dialog.h
@@ -31,6 +31,7 @@
LIBDCP_DISABLE_WARNINGS
#include <wx/wx.h>
LIBDCP_ENABLE_WARNINGS
+#include <unordered_map>
class Button;
@@ -53,6 +54,7 @@ protected:
virtual void setup_sensitivity ();
EditableList<dcp::Rating, RatingDialog>* _ratings;
+ std::unordered_map<std::string, std::string> _rating_system_agency_to_name;
private:
void sign_language_video_language_changed ();