BOOST_FOREACH.
[dcpomatic.git] / src / wx / verify_dcp_dialog.cc
index a61d9bf11a959f19eb37e6ee1520c8d5e3347271..55360dc39353f8cfe61cc3ff62178b6aaf390cdc 100644 (file)
 #include "verify_dcp_dialog.h"
 #include "wx_util.h"
 #include "lib/verify_dcp_job.h"
+#include "lib/warnings.h"
 #include <dcp/verify.h>
+DCPOMATIC_DISABLE_WARNINGS
 #include <wx/richtext/richtextctrl.h>
-#include <boost/foreach.hpp>
+DCPOMATIC_ENABLE_WARNINGS
 
 using std::list;
-using boost::shared_ptr;
+using std::shared_ptr;
 
 VerifyDCPDialog::VerifyDCPDialog (wxWindow* parent, shared_ptr<VerifyDCPJob> job)
        : wxDialog (parent, wxID_ANY, _("DCP verification"))
@@ -60,7 +62,7 @@ VerifyDCPDialog::VerifyDCPDialog (wxWindow* parent, shared_ptr<VerifyDCPJob> job
                _text->Newline();
        }
 
-       BOOST_FOREACH (dcp::VerificationNote i, job->notes()) {
+       for (auto i: job->notes()) {
                switch (i.type()) {
                case dcp::VerificationNote::VERIFY_WARNING:
                        _text->BeginStandardBullet (N_("standard/diamond"), 1, 50);
@@ -84,7 +86,7 @@ VerifyDCPDialog::VerifyDCPDialog (wxWindow* parent, shared_ptr<VerifyDCPJob> job
                case dcp::VerificationNote::PICTURE_HASH_INCORRECT:
                        text = wxString::Format(
                                _("The hash of the picture asset %s does not agree with the PKL file.  This probably means that the asset file is corrupt."),
-                               std_to_wx(i.file()->filename().string()).data()
+                               std_to_wx(i.file()->filename().string())
                                );
                        break;
                case dcp::VerificationNote::PKL_CPL_PICTURE_HASHES_DISAGREE:
@@ -93,7 +95,7 @@ VerifyDCPDialog::VerifyDCPDialog (wxWindow* parent, shared_ptr<VerifyDCPJob> job
                case dcp::VerificationNote::SOUND_HASH_INCORRECT:
                        text = wxString::Format(
                                _("The hash of the sound asset %s does not agree with the PKL file.  This probably means that the asset file is corrupt."),
-                               std_to_wx(i.file()->filename().string()).data()
+                               std_to_wx(i.file()->filename().string())
                                );
                        break;
                case dcp::VerificationNote::PKL_CPL_SOUND_HASHES_DISAGREE:
@@ -111,17 +113,35 @@ VerifyDCPDialog::VerifyDCPDialog (wxWindow* parent, shared_ptr<VerifyDCPJob> job
                case dcp::VerificationNote::XML_VALIDATION_ERROR:
                        if (i.line()) {
                                text = wxString::Format(
-                                       _("The XML in %s is malformed on line %d."),
-                                       std_to_wx(i.file()->filename().string()).data(),
+                                       _("The XML in %s is malformed on line %" PRIu64 "."),
+                                       std_to_wx(i.file()->filename().string()),
                                        i.line().get()
                                        );
                        } else {
                                text = wxString::Format(
                                        _("The XML in %s is malformed."),
-                                       std_to_wx(i.file()->filename().string()).data()
+                                       std_to_wx(i.file()->filename().string())
                                        );
                        }
                        break;
+               case dcp::VerificationNote::MISSING_ASSETMAP:
+                       text = _("No ASSETMAP or ASSETMAP.xml file was found.");
+                       break;
+               case dcp::VerificationNote::INTRINSIC_DURATION_TOO_SMALL:
+                       text = _("An asset has an instrinsic duration of less than 1 second, which is invalid.");
+                       break;
+               case dcp::VerificationNote::DURATION_TOO_SMALL:
+                       text = _("An asset has a duration of less than 1 second, which is invalid.");
+                       break;
+               case dcp::VerificationNote::PICTURE_FRAME_TOO_LARGE:
+                       text = _("At least one frame of the video data is over the limit of 250Mbit/s.");
+                       break;
+               case dcp::VerificationNote::PICTURE_FRAME_NEARLY_TOO_LARGE:
+                       text = _("At least one frame of the video data is close to the limit of 250MBit/s.");
+                       break;
+               case dcp::VerificationNote::EXTERNAL_ASSET:
+                       text = _("This DCP refers to at least one asset in another DCP, so it is a \"version file\" (VF)");
+                       break;
                }
 
                _text->WriteText (text);