+ void edit_copy ()
+ {
+ ContentList const sel = _film_editor->content_panel()->selected();
+ DCPOMATIC_ASSERT (sel.size() == 1);
+ _clipboard = sel.front()->clone();
+ }
+
+ void edit_paste ()
+ {
+ DCPOMATIC_ASSERT (_clipboard);
+
+ PasteDialog* d = new PasteDialog (this, static_cast<bool>(_clipboard->video), static_cast<bool>(_clipboard->audio), static_cast<bool>(_clipboard->subtitle));
+ if (d->ShowModal() == wxID_OK) {
+ BOOST_FOREACH (shared_ptr<Content> i, _film_editor->content_panel()->selected()) {
+ if (d->video() && i->video) {
+ DCPOMATIC_ASSERT (_clipboard->video);
+ i->video->take_settings_from (_clipboard->video);
+ }
+ if (d->audio() && i->audio) {
+ DCPOMATIC_ASSERT (_clipboard->audio);
+ i->audio->take_settings_from (_clipboard->audio);
+ }
+ if (d->subtitle() && i->subtitle) {
+ DCPOMATIC_ASSERT (_clipboard->subtitle);
+ i->subtitle->take_settings_from (_clipboard->subtitle);
+ }
+ }
+ }
+ d->Destroy ();
+ }
+