#include "wx/export_dialog.h"
#include "wx/paste_dialog.h"
#include "wx/focus_manager.h"
+#include "wx/initial_setup_dialog.h"
#include "lib/film.h"
#include "lib/config.h"
#include "lib/util.h"
#include "lib/transcode_job.h"
#include "lib/dkdm_wrapper.h"
#include "lib/audio_content.h"
+#include "lib/check_content_change_job.h"
#include "lib/text_content.h"
#include <dcp/exceptions.h>
#include <dcp/raw_convert.h>
}
set_film (film);
+
+ JobManager::instance()->add(shared_ptr<Job>(new CheckContentChangeJob(film)));
}
catch (std::exception& e) {
wxString p = std_to_wx (file.string ());
if (_film->directory()) {
Config::instance()->add_to_history (_film->directory().get());
}
- _film->Changed.connect (boost::bind (&DOMFrame::set_menu_sensitivity, this));
+ _film->Change.connect (boost::bind (&DOMFrame::film_change, this, _1));
}
shared_ptr<Film> film () const {
private:
+ void film_change (ChangeType type)
+ {
+ if (type == CHANGE_TYPE_DONE) {
+ set_menu_sensitivity ();
+ }
+ }
+
void file_changed (boost::filesystem::path f)
{
string s = wx_to_std (_("DCP-o-matic"));
}
}
- if (!get_hints(_film).empty() && Config::instance()->show_hints_before_make_dcp()) {
+ if (Config::instance()->show_hints_before_make_dcp()) {
HintsDialog* hints = new HintsDialog (this, _film, false);
int const r = hints->ShowModal();
hints->Destroy ();
return;
}
- if (!get_hints(_film).empty() && Config::instance()->show_hints_before_make_dcp()) {
+ if (Config::instance()->show_hints_before_make_dcp()) {
HintsDialog* hints = new HintsDialog (this, _film, false);
int const r = hints->ShowModal();
hints->Destroy ();
ExportDialog* d = new ExportDialog (this);
if (d->ShowModal() == wxID_OK) {
shared_ptr<TranscodeJob> job (new TranscodeJob (_film));
- job->set_encoder (shared_ptr<FFmpegEncoder> (new FFmpegEncoder (_film, job, d->path(), d->format(), d->mixdown_to_stereo())));
+ job->set_encoder (
+ shared_ptr<FFmpegEncoder> (
+ new FFmpegEncoder (_film, job, d->path(), d->format(), d->mixdown_to_stereo(), d->split_reels(), d->x264_crf())
+ )
+ );
JobManager::instance()->add (job);
}
d->Destroy ();
if (splash) {
splash->Destroy ();
}
+
+ if (!Config::instance()->nagged(Config::NAG_INITIAL_SETUP)) {
+ InitialSetupDialog* d = new InitialSetupDialog ();
+ d->ShowModal ();
+ d->Destroy ();
+ Config::instance()->set_nagged(Config::NAG_INITIAL_SETUP, true);
+ }
+
_frame->Show ();
if (!_film_to_load.empty() && boost::filesystem::is_directory (_film_to_load)) {