#include "lib/dcpomatic_assert.h"
#include "lib/examine_content_job.h"
#include "lib/job_manager.h"
-#include "lib/warnings.h"
+#include "lib/util.h"
#include <dcp/exceptions.h>
+#include <dcp/filesystem.h>
+#include <dcp/warnings.h>
#include <boost/filesystem.hpp>
#include <boost/optional.hpp>
-DCPOMATIC_DISABLE_WARNINGS
+LIBDCP_DISABLE_WARNINGS
#include <wx/progdlg.h>
-DCPOMATIC_ENABLE_WARNINGS
+LIBDCP_ENABLE_WARNINGS
using std::cout;
DeleteAllItems ();
_content.clear ();
auto dir = Config::instance()->player_content_directory();
- if (!dir || !boost::filesystem::is_directory(*dir)) {
+ if (!dir || !dcp::filesystem::is_directory(*dir)) {
dir = home_directory ();
}
progress.Pulse ();
shared_ptr<Content> content;
- if (is_directory(i) && (is_regular_file(i / "ASSETMAP") || is_regular_file(i / "ASSETMAP.xml"))) {
- content.reset (new DCPContent(i));
- } else if (i.path().extension() == ".mp4" || i.path().extension() == ".ecinema") {
- content = content_factory(i).front();
+ if (is_directory(i) && contains_assetmap(i)) {
+ content = make_shared<DCPContent>(i);
+ } else if (i.path().extension() == ".mp4") {
+ auto all_content = content_factory(i);
+ if (!all_content.empty()) {
+ content = all_content[0];
+ }
}
if (content) {
if (dcp && dcp->content_kind()) {
it.SetId(N);
it.SetColumn(1);
- it.SetText(std_to_wx(dcp::content_kind_to_string(*dcp->content_kind())));
+ it.SetText(std_to_wx(dcp->content_kind()->name()));
SetItem(it);
}