+
+void
+FilmEditor::setup_streams ()
+{
+ _audio_stream->Clear ();
+ vector<AudioStream> a = _film->audio_streams ();
+ for (vector<AudioStream>::iterator i = a.begin(); i != a.end(); ++i) {
+ _audio_stream->Append (std_to_wx (i->name()));
+ }
+ _audio_stream->SetSelection (_film->audio_stream_index ());
+
+ _subtitle_stream->Clear ();
+ vector<SubtitleStream> s = _film->subtitle_streams ();
+ for (vector<SubtitleStream>::iterator i = s.begin(); i != s.end(); ++i) {
+ _subtitle_stream->Append (std_to_wx (i->name()));
+ }
+ _subtitle_stream->SetSelection (_film->subtitle_stream_index ());
+}
+
+void
+FilmEditor::audio_stream_changed (wxCommandEvent &)
+{
+ if (!_film) {
+ return;
+ }
+
+ _film->set_audio_stream (_audio_stream->GetSelection ());
+}
+
+void
+FilmEditor::subtitle_stream_changed (wxCommandEvent &)
+{
+ if (!_film) {
+ return;
+ }
+
+ _film->set_subtitle_stream (_subtitle_stream->GetSelection ());
+}
+
+void
+FilmEditor::setup_audio_details ()
+{
+ if (_film->audio_channels() == 0 && _film->audio_sample_rate() == 0) {
+ _audio->SetLabel (wxT (""));
+ } else {
+ stringstream s;
+ s << _film->audio_channels () << " channels, " << _film->audio_sample_rate() << "Hz";
+ _audio->SetLabel (std_to_wx (s.str ()));
+ }
+}
+
+void
+FilmEditor::active_jobs_changed (bool a)
+{
+ set_things_sensitive (!a);
+}