- _stream->Bind (wxEVT_COMMAND_CHOICE_SELECTED, boost::bind (&AudioPanel::stream_changed, this));
- _show->Bind (wxEVT_COMMAND_BUTTON_CLICKED, boost::bind (&AudioPanel::show_clicked, this));
- _gain_calculate_button->Bind (wxEVT_COMMAND_BUTTON_CLICKED, boost::bind (&AudioPanel::gain_calculate_button_clicked, this));
- _processor->Bind (wxEVT_COMMAND_CHOICE_SELECTED, boost::bind (&AudioPanel::processor_changed, this));
+ content_selection_changed ();
+ film_changed (Film::AUDIO_CHANNELS);
+ film_changed (Film::VIDEO_FRAME_RATE);
+ film_changed (Film::REEL_TYPE);
+
+ _reference->Bind (wxEVT_CHECKBOX, boost::bind (&AudioPanel::reference_clicked, this));
+ _show->Bind (wxEVT_BUTTON, boost::bind (&AudioPanel::show_clicked, this));
+ _gain_calculate_button->Bind (wxEVT_BUTTON, boost::bind (&AudioPanel::gain_calculate_button_clicked, this));
+
+ _mapping_connection = _mapping->Changed.connect (boost::bind (&AudioPanel::mapping_changed, this, _1));
+ _active_jobs_connection = JobManager::instance()->ActiveJobsChanged.connect (boost::bind (&AudioPanel::active_jobs_changed, this, _1, _2));
+
+ add_to_grid ();
+}
+
+void
+AudioPanel::add_to_grid ()
+{
+ bool const full = Config::instance()->interface_complexity() == Config::INTERFACE_FULL;
+
+ int r = 0;
+
+ _reference->Show (full);
+ _reference_note->Show (full);
+
+ if (full) {
+ wxBoxSizer* reference_sizer = new wxBoxSizer (wxVERTICAL);
+ reference_sizer->Add (_reference, 0);
+ reference_sizer->Add (_reference_note, 0);
+ _grid->Add (reference_sizer, wxGBPosition(r, 0), wxGBSpan(1, 4));
+ ++r;
+ }
+
+ _grid->Add (_show, wxGBPosition (r, 0), wxGBSpan (1, 2));
+ _grid->Add (_peak, wxGBPosition (r, 2), wxGBSpan (1, 2), wxALIGN_CENTER_VERTICAL);
+ ++r;
+
+ add_label_to_sizer (_grid, _gain_label, true, wxGBPosition(r, 0));
+ {
+ wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
+ s->Add (_gain->wrapped(), 1, wxALIGN_CENTER_VERTICAL | wxTOP | wxBOTTOM | wxRIGHT, 6);
+ s->Add (_gain_db_label, 0, wxALIGN_CENTER_VERTICAL);
+ _grid->Add (s, wxGBPosition(r, 1));
+ }
+
+ _gain_calculate_button->Show (full);
+
+ if (full) {
+ _grid->Add (_gain_calculate_button, wxGBPosition(r, 2), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
+ ++r;
+ }