projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add FilmViewer::time_until_next_frame.
[dcpomatic.git]
/
src
/
wx
/
content_view.cc
diff --git
a/src/wx/content_view.cc
b/src/wx/content_view.cc
index b7f05020b5dbdd0f13dcd305599a5221c870f3ff..1cdfbc00f8f4fb49d95a9594330404195d34695d 100644
(file)
--- a/
src/wx/content_view.cc
+++ b/
src/wx/content_view.cc
@@
-39,10
+39,10
@@
using boost::shared_ptr;
using boost::weak_ptr;
using boost::optional;
using boost::dynamic_pointer_cast;
using boost::weak_ptr;
using boost::optional;
using boost::dynamic_pointer_cast;
+using namespace dcpomatic;
-ContentView::ContentView (wxWindow* parent
, weak_ptr<Film> film
)
+ContentView::ContentView (wxWindow* parent)
: wxListCtrl (parent, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_REPORT | wxLC_NO_HEADER)
: wxListCtrl (parent, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_REPORT | wxLC_NO_HEADER)
- , _film (film)
{
AppendColumn (wxT(""), wxLIST_FORMAT_LEFT, 80);
/* type */
{
AppendColumn (wxT(""), wxLIST_FORMAT_LEFT, 80);
/* type */
@@
-66,18
+66,13
@@
ContentView::selected () const
void
ContentView::update ()
{
void
ContentView::update ()
{
- shared_ptr<Film> film = _film.lock ();
- if (!film) {
- return;
- }
-
using namespace boost::filesystem;
DeleteAllItems ();
_content.clear ();
optional<path> dir = Config::instance()->player_content_directory();
using namespace boost::filesystem;
DeleteAllItems ();
_content.clear ();
optional<path> dir = Config::instance()->player_content_directory();
- if (!dir) {
-
return
;
+ if (!dir
|| !boost::filesystem::is_directory(*dir)
) {
+
dir = home_directory ()
;
}
wxProgressDialog progress (_("DCP-o-matic"), _("Reading content directory"));
}
wxProgressDialog progress (_("DCP-o-matic"), _("Reading content directory"));
@@
-89,13
+84,13
@@
ContentView::update ()
try {
shared_ptr<Content> content;
if (is_directory(*i) && (is_regular_file(*i / "ASSETMAP") || is_regular_file(*i / "ASSETMAP.xml"))) {
try {
shared_ptr<Content> content;
if (is_directory(*i) && (is_regular_file(*i / "ASSETMAP") || is_regular_file(*i / "ASSETMAP.xml"))) {
- content.reset (new DCPContent(
film,
*i));
+ content.reset (new DCPContent(*i));
} else if (i->path().extension() == ".mp4" || i->path().extension() == ".ecinema") {
} else if (i->path().extension() == ".mp4" || i->path().extension() == ".ecinema") {
- content = content_factory(
film,
*i).front();
+ content = content_factory(*i).front();
}
if (content) {
}
if (content) {
- shared_ptr<ExamineContentJob> job(new ExamineContentJob(
film
, content));
+ shared_ptr<ExamineContentJob> job(new ExamineContentJob(
shared_ptr<Film>()
, content));
jm->add (job);
jobs.push_back (job);
}
jm->add (job);
jobs.push_back (job);
}
@@
-114,7
+109,7
@@
ContentView::update ()
}
return;
}
}
return;
}
- dcpomatic_sleep (1);
+ dcpomatic_sleep
_seconds
(1);
}
/* Add content from successful jobs and report errors */
}
/* Add content from successful jobs and report errors */
@@
-123,6
+118,7
@@
ContentView::update ()
error_dialog(this, std_to_wx(i->error_summary()) + ".\n", std_to_wx(i->error_details()));
} else {
add (i->content());
error_dialog(this, std_to_wx(i->error_summary()) + ".\n", std_to_wx(i->error_details()));
} else {
add (i->content());
+ _content.push_back (i->content());
}
}
}
}
}
}
@@
-135,7
+131,7
@@
ContentView::add (shared_ptr<Content> content)
wxListItem it;
it.SetId(N);
it.SetColumn(0);
wxListItem it;
it.SetId(N);
it.SetColumn(0);
- DCPTime length = content->
length_after_trim
();
+ DCPTime length = content->
approximate_length
();
int h, m, s, f;
length.split (24, h, m, s, f);
it.SetText(wxString::Format("%02d:%02d:%02d", h, m, s));
int h, m, s, f;
length.split (24, h, m, s, f);
it.SetText(wxString::Format("%02d:%02d:%02d", h, m, s));
@@
-166,9
+162,3
@@
ContentView::get (string digest) const
return shared_ptr<Content>();
}
return shared_ptr<Content>();
}
-
-void
-ContentView::set_film (weak_ptr<Film> film)
-{
- _film = film;
-}