better behaviour when JACK fails to start from "within" ardour. still not quite there yet
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@5671 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
bd82dfce94
commit
58c2acc99e
|
@ -2314,7 +2314,10 @@ ARDOUR_UI::get_session_parameters (bool backend_audio_is_running, bool should_be
|
|||
flush_pending ();
|
||||
|
||||
new_session_dialog->set_existing_session (false);
|
||||
new_session_dialog->set_current_page (2);
|
||||
new_session_dialog->set_current_page (0); // new engine page
|
||||
new_session_dialog->engine_control.unset_interface_chosen ();
|
||||
cerr << "go back and show the engine setup tab again , beir = "
|
||||
<< backend_audio_is_running << endl;
|
||||
|
||||
response = Gtk::RESPONSE_NONE;
|
||||
goto try_again;
|
||||
|
|
|
@ -884,15 +884,6 @@ EngineControl::driver_changed ()
|
|||
hw_meter_button.set_sensitive (false);
|
||||
monitor_button.set_sensitive (false);
|
||||
}
|
||||
|
||||
interface_combo.signal_changed().connect (mem_fun (*this, &EngineControl::emit_interface_chosen));
|
||||
}
|
||||
|
||||
void
|
||||
EngineControl::emit_interface_chosen ()
|
||||
{
|
||||
cerr << "interface combo changed\n";
|
||||
InterfaceChosen();
|
||||
}
|
||||
|
||||
uint32_t
|
||||
|
|
|
@ -25,12 +25,11 @@ class EngineControl : public Gtk::VBox {
|
|||
void discover_servers ();
|
||||
|
||||
bool interface_chosen () const { return _interface_chosen; }
|
||||
void unset_interface_chosen() { _interface_chosen = false; }
|
||||
bool was_used() const { return _used; }
|
||||
XMLNode& get_state ();
|
||||
void set_state (const XMLNode&);
|
||||
|
||||
sigc::signal<void> InterfaceChosen;
|
||||
void emit_interface_chosen(); /* grr, need to figure out how to connect signalsl directly */
|
||||
|
||||
private:
|
||||
Gtk::Adjustment periods_adjustment;
|
||||
|
|
|
@ -489,28 +489,32 @@ NewSessionDialog::run ()
|
|||
void
|
||||
NewSessionDialog::set_have_engine (bool yn)
|
||||
{
|
||||
if (yn) {
|
||||
m_notebook->remove_page (engine_control);
|
||||
page_set = Pages (page_set & ~EnginePage);
|
||||
} else {
|
||||
if (!(page_set & EnginePage)) {
|
||||
engine_control.discover_servers ();
|
||||
if (engine_control.interface_chosen()) {
|
||||
m_notebook->append_page (engine_control, _("Audio Setup"));
|
||||
m_notebook->show_all_children();
|
||||
page_set = Pages (page_set | EnginePage);
|
||||
} else {
|
||||
/* no interface ever selected - make it the first and only page */
|
||||
m_notebook->prepend_page (engine_control, _("Audio Setup"));
|
||||
if (page_set & NewPage) {
|
||||
m_notebook->remove_page (*new_session_table);
|
||||
}
|
||||
if (page_set & OpenPage) {
|
||||
m_notebook->remove_page (*open_session_vbox);
|
||||
}
|
||||
m_notebook->show_all_children();
|
||||
page_set = Pages (EnginePage);
|
||||
|
||||
m_notebook->remove_page (engine_control);
|
||||
page_set = Pages (page_set & ~EnginePage);
|
||||
|
||||
if (!yn) {
|
||||
|
||||
engine_control.discover_servers ();
|
||||
|
||||
if (engine_control.interface_chosen()) {
|
||||
m_notebook->append_page (engine_control, _("Audio Setup"));
|
||||
m_notebook->show_all_children();
|
||||
page_set = Pages (page_set | EnginePage);
|
||||
} else {
|
||||
m_notebook->prepend_page (engine_control, _("Audio Setup"));
|
||||
page_set = Pages (page_set | EnginePage);
|
||||
|
||||
/* no interface ever selected - make it the first and only page */
|
||||
if (page_set & NewPage) {
|
||||
m_notebook->remove_page (*new_session_table);
|
||||
page_set = Pages (page_set & ~NewPage);
|
||||
}
|
||||
if (page_set & OpenPage) {
|
||||
m_notebook->remove_page (*open_session_vbox);
|
||||
page_set = Pages (page_set & ~OpenPage);
|
||||
}
|
||||
m_notebook->show_all_children();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -766,6 +770,8 @@ NewSessionDialog::which_page () const
|
|||
{
|
||||
int num = m_notebook->get_current_page();
|
||||
|
||||
cerr << "current page set = " << std::hex << page_set << std::dec << endl;
|
||||
|
||||
if (page_set == NewPage) {
|
||||
return NewPage;
|
||||
|
||||
|
|
Loading…
Reference in New Issue