X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fmain.cc;h=67e59d4b80749336bc35bd1b3303598b46cc245e;hb=e0b7de13b7e704fcdd401dc0a109c499dda70d73;hp=a3ea0ca4b48ace53192923bbbcace281728a8380;hpb=62a96205de07d80ffa45fd31075dd9c98f0169ea;p=ardour.git diff --git a/gtk2_ardour/main.cc b/gtk2_ardour/main.cc index a3ea0ca4b4..67e59d4b80 100644 --- a/gtk2_ardour/main.cc +++ b/gtk2_ardour/main.cc @@ -32,6 +32,7 @@ #include #include #include +#include #include #include @@ -57,29 +58,6 @@ extern int curvetest (string); static ARDOUR_UI *ui = 0; -string -which_ui_rcfile () -{ - string rcfile; - char* env; - - if ((env = getenv ("ARDOUR2_UI_RC")) != 0 && strlen (env)) { - rcfile = env; - } else { - rcfile = "ardour2_ui.rc"; - } - - rcfile = find_config_file (rcfile); - - if (rcfile.empty()) { - warning << _("Without a UI style file, ardour will look strange.\n Please set ARDOUR2_UI_RC to point to a valid UI style file") << endmsg; - } else { - cerr << "Loading ui configuration file " << rcfile << endl; - } - - return rcfile; -} - gint show_ui_callback (void *arg) { @@ -127,7 +105,9 @@ maybe_load_session () if (!session_name.length()) { ui->hide_splash (); if (!Config->get_no_new_session_dialog()) { - ui->new_session (); + if (!ui->new_session ()) { + return false; + } } return true; @@ -138,7 +118,7 @@ maybe_load_session () bool isnew; - if (Session::find_session (session_name, path, name, isnew)) { + if (find_session (session_name, path, name, isnew)) { error << string_compose(_("could not load command line session \"%1\""), session_name) << endmsg; return false; } @@ -168,7 +148,9 @@ maybe_load_session () /* Show the NSD */ ui->hide_splash (); if (!Config->get_no_new_session_dialog()) { - ui->new_session (); + if (!ui->new_session ()) { + return false; + } } } @@ -187,10 +169,10 @@ int main (int argc, char *argv[]) #endif { - ARDOUR::AudioEngine *engine; + ARDOUR::AudioEngine *engine = NULL; vector null_file_list; - Glib::thread_init(); + Glib::thread_init(); gtk_set_locale (); (void) bindtextdomain (PACKAGE, LOCALEDIR); @@ -247,8 +229,8 @@ int main (int argc, char *argv[]) PBD::ID::init (); - try { - ui = new ARDOUR_UI (&argc, &argv, which_ui_rcfile()); + try { + ui = new ARDOUR_UI (&argc, &argv); } catch (failed_constructor& err) { error << _("could not create ARDOUR GUI") << endmsg; exit (1); @@ -265,10 +247,11 @@ int main (int argc, char *argv[]) } } - try { + try { ARDOUR::init (use_vst, try_hw_optimization); setup_gtk_ardour_enums (); Config->set_current_owner (ConfigVariableBase::Interface); + ui->setup_profile (); try { engine = new ARDOUR::AudioEngine (jack_client_name); @@ -277,6 +260,8 @@ int main (int argc, char *argv[]) error << string_compose (_("Could not connect to JACK server as \"%1\""), jack_client_name) << endmsg; return -1; } + + ARDOUR::setup_midi(*engine); ui->set_engine (*engine);