diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2007-10-11 22:07:47 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2007-10-11 22:07:47 +0000 |
commit | f7f9d6fdc40248b190ec9c6e1a886261d55777ae (patch) | |
tree | 080723e9dc35a66013b37acbafc67a6afa929302 /gtk2_ardour/ardour_ui_dialogs.cc | |
parent | aa1f736a651376534acaa2268b65d42a3786fff7 (diff) |
merge from 2.0-ongoing by hand, minus key binding editor
git-svn-id: svn://localhost/ardour2/trunk@2539 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/ardour_ui_dialogs.cc')
-rw-r--r-- | gtk2_ardour/ardour_ui_dialogs.cc | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/gtk2_ardour/ardour_ui_dialogs.cc b/gtk2_ardour/ardour_ui_dialogs.cc index c6353df782..9a71443489 100644 --- a/gtk2_ardour/ardour_ui_dialogs.cc +++ b/gtk2_ardour/ardour_ui_dialogs.cc @@ -162,21 +162,26 @@ ARDOUR_UI::connect_to_session (Session *s) point_zero_one_second_connection = Glib::signal_timeout().connect (mem_fun(*this, &ARDOUR_UI::every_point_zero_one_seconds), 40); } -bool -ARDOUR_UI::unload_session () +int +ARDOUR_UI::unload_session (bool hide_stuff) { if (session && session->dirty()) { switch (ask_about_saving_session (_("close"))) { case -1: // cancel - return false; + return 1; case 1: session->save_state (""); break; } } - editor->hide (); + + if (hide_stuff) { + editor->hide (); + mixer->hide (); + } + second_connection.disconnect (); point_one_second_connection.disconnect (); point_oh_five_second_connection.disconnect (); @@ -204,16 +209,12 @@ ARDOUR_UI::unload_session () option_editor->set_session (0); } - if (mixer) { - mixer->hide (); - } - delete session; session = 0; update_buffer_load (); - return true; + return 0; } int |