X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fengine_dialog.cc;h=a32ccf146e81a8486721af2e2ba9be1f14f879dd;hb=736038556fa41607d54a57fd3339d4fd1782bddf;hp=88f7892906c8feac6a46abde9586ad434191462b;hpb=611073790be6ca3a6c407378eb1e499f77377968;p=ardour.git diff --git a/gtk2_ardour/engine_dialog.cc b/gtk2_ardour/engine_dialog.cc index 88f7892906..a32ccf146e 100644 --- a/gtk2_ardour/engine_dialog.cc +++ b/gtk2_ardour/engine_dialog.cc @@ -68,6 +68,7 @@ static const char* results_markup = X_("%1 EngineControl::EngineControl () : ArdourDialog (_("Audio/MIDI Setup")) + , engine_status ("") , basic_packer (9, 4) , input_latency_adjustment (0, 0, 99999, 1) , input_latency (input_latency_adjustment) @@ -248,6 +249,9 @@ EngineControl::EngineControl () get_vbox()->set_border_width (12); get_vbox()->pack_start (notebook); + get_action_area()->pack_start (engine_status); + engine_status.show(); + /* need a special function to print "all available channels" when the * channel counts hit zero. */ @@ -263,9 +267,9 @@ EngineControl::EngineControl () control_app_button.signal_clicked().connect (mem_fun (*this, &EngineControl::control_app_button_clicked)); manage_control_app_sensitivity (); - cancel_button = add_button (Gtk::Stock::CANCEL, Gtk::RESPONSE_CANCEL); - ok_button = add_button (Gtk::Stock::OK, Gtk::RESPONSE_OK); + cancel_button = add_button (Gtk::Stock::CLOSE, Gtk::RESPONSE_CANCEL); apply_button = add_button (Gtk::Stock::APPLY, Gtk::RESPONSE_APPLY); + ok_button = add_button (Gtk::Stock::OK, Gtk::RESPONSE_OK); /* Pick up any existing audio setup configuration, if appropriate */ @@ -894,6 +898,9 @@ EngineControl::device_changed () assert (backend); string device_name = device_combo.get_active_text (); vector s; + + //the device name must be set FIRST so ASIO can populate buffersizes and the control panel button + backend->set_device_name(device_name); { PBD::Unwinder protect_ignore_changes (ignore_changes, ignore_changes + 1); @@ -1967,6 +1974,8 @@ EngineControl::check_audio_latency_measurement () solid = false; } + lm_results.set_markup (string_compose (results_markup, buf)); + if (solid) { have_lm_results = true; end_latency_detection (); @@ -1974,8 +1983,6 @@ EngineControl::check_audio_latency_measurement () return false; } - lm_results.set_markup (string_compose (results_markup, buf)); - return true; } @@ -2027,6 +2034,7 @@ EngineControl::check_midi_latency_measurement () have_lm_results = true; end_latency_detection (); lm_use_button.set_sensitive (true); + lm_results.set_markup (string_compose (results_markup, buf)); return false; } else if (mididm->processed () > 400) { have_lm_results = false; @@ -2145,6 +2153,7 @@ EngineControl::engine_running () connect_disconnect_button.show(); started_at_least_once = true; + engine_status.set_markup(string_compose ("%1", _("Active"))); } void @@ -2159,6 +2168,7 @@ EngineControl::engine_stopped () sample_rate_combo.set_sensitive (true); buffer_size_combo.set_sensitive (true); + engine_status.set_markup(string_compose ("%1", _("Inactive"))); } void