diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/tools/dcpomatic.cc | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/tools/dcpomatic.cc b/src/tools/dcpomatic.cc index a70d243d9..7b5696a1c 100644 --- a/src/tools/dcpomatic.cc +++ b/src/tools/dcpomatic.cc @@ -590,6 +590,26 @@ private: void file_close () { + if (_film && _film->dirty ()) { + + FilmChangedClosingDialog* dialog = new FilmChangedClosingDialog (_film->name ()); + int const r = dialog->run (); + delete dialog; + + switch (r) { + case wxID_NO: + /* Don't save and carry on to close */ + break; + case wxID_YES: + /* Save and carry on to close */ + _film->write_metadata (); + break; + case wxID_CANCEL: + /* Stop */ + return; + } + } + set_film (shared_ptr<Film>()); } |
