summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mainsbridge <beatroute@iprimus.com.au>2008-11-14 16:42:39 +0000
committerNick Mainsbridge <beatroute@iprimus.com.au>2008-11-14 16:42:39 +0000
commit461d6f8283c03ac37052fe6adc23a59e5a5ca709 (patch)
treecbfce1ecc1af2faf42f87b79d8c09b8c8ff09212
parenta24495d3b799a42515716b8b4c425d7e57148a87 (diff)
Ensure treeview checkmarks always drawn on osx, session load failure dialogs only have cancel as an option, allow open to be clicked if the engine tab is the only one present, always quit jackd.. even when it shouldnt really be running.
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@4175 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r--gtk2_ardour/ardour_ui.cc13
-rw-r--r--gtk2_ardour/editor_edit_groups.cc9
-rw-r--r--gtk2_ardour/mixer_ui.cc12
-rw-r--r--gtk2_ardour/new_session_dialog.cc4
4 files changed, 32 insertions, 6 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index 7dd94304c2..bc6e496608 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -2250,6 +2250,9 @@ ARDOUR_UI::get_session_parameters (bool backend_audio_is_running, bool should_be
case Gtk::RESPONSE_CANCEL:
case Gtk::RESPONSE_DELETE_EVENT:
if (!session) {
+ if (engine && engine->running()) {
+ engine->stop (true);
+ }
quit();
}
new_session_dialog->hide ();
@@ -2440,10 +2443,10 @@ ARDOUR_UI::load_session (const Glib::ustring& path, const Glib::ustring& snap_na
MessageDialog msg (err.what(),
true,
Gtk::MESSAGE_INFO,
- Gtk::BUTTONS_OK_CANCEL);
+ Gtk::BUTTONS_CLOSE);
- msg.set_title (_("Loading Error"));
- msg.set_secondary_text (_("Click the OK button to try again."));
+ msg.set_title (_("Port Registration Error"));
+ msg.set_secondary_text (_("Click the Close button to try again."));
msg.set_position (Gtk::WIN_POS_CENTER);
pop_back_splash ();
msg.present ();
@@ -2466,10 +2469,10 @@ ARDOUR_UI::load_session (const Glib::ustring& path, const Glib::ustring& snap_na
MessageDialog msg (string_compose(_("Session \"%1 (snapshot %2)\" did not load successfully"), path, snap_name),
true,
Gtk::MESSAGE_INFO,
- Gtk::BUTTONS_OK_CANCEL);
+ Gtk::BUTTONS_CLOSE);
msg.set_title (_("Loading Error"));
- msg.set_secondary_text (_("Click the OK button to try again."));
+ msg.set_secondary_text (_("Click the Close button to try again."));
msg.set_position (Gtk::WIN_POS_CENTER);
pop_back_splash ();
msg.present ();
diff --git a/gtk2_ardour/editor_edit_groups.cc b/gtk2_ardour/editor_edit_groups.cc
index 20179f84c6..371b13ed0c 100644
--- a/gtk2_ardour/editor_edit_groups.cc
+++ b/gtk2_ardour/editor_edit_groups.cc
@@ -140,6 +140,9 @@ Editor::edit_group_list_button_press_event (GdkEventButton* ev)
if ((iter = group_model->get_iter (path))) {
if ((group = (*iter)[group_columns.routegroup]) != 0) {
// edit_route_group (group);
+#ifdef GTKOSX
+ edit_group_display.queue_draw();
+#endif
return true;
}
}
@@ -151,6 +154,9 @@ Editor::edit_group_list_button_press_event (GdkEventButton* ev)
if ((iter = group_model->get_iter (path))) {
bool active = (*iter)[group_columns.is_active];
(*iter)[group_columns.is_active] = !active;
+#ifdef GTKOSX
+ edit_group_display.queue_draw();
+#endif
return true;
}
break;
@@ -159,6 +165,9 @@ Editor::edit_group_list_button_press_event (GdkEventButton* ev)
if ((iter = group_model->get_iter (path))) {
bool visible = (*iter)[group_columns.is_visible];
(*iter)[group_columns.is_visible] = !visible;
+#ifdef GTKOSX
+ edit_group_display.queue_draw();
+#endif
return true;
}
break;
diff --git a/gtk2_ardour/mixer_ui.cc b/gtk2_ardour/mixer_ui.cc
index 558a7469ab..45d868bf1e 100644
--- a/gtk2_ardour/mixer_ui.cc
+++ b/gtk2_ardour/mixer_ui.cc
@@ -922,6 +922,9 @@ Mixer_UI::track_display_button_press (GdkEventButton* ev)
bool visible = (*iter)[track_columns.visible];
(*iter)[track_columns.visible] = !visible;
}
+#ifdef GTKOSX
+ track_display.queue_draw();
+#endif
}
}
return true;
@@ -1017,6 +1020,9 @@ Mixer_UI::group_display_button_press (GdkEventButton* ev)
if ((iter = group_model->get_iter (path))) {
if ((group = (*iter)[group_columns.group]) != 0) {
// edit_mix_group (group);
+#ifdef GTKOSX
+ group_display.queue_draw();
+#endif
return true;
}
}
@@ -1028,6 +1034,9 @@ Mixer_UI::group_display_button_press (GdkEventButton* ev)
if ((iter = group_model->get_iter (path))) {
bool active = (*iter)[group_columns.active];
(*iter)[group_columns.active] = !active;
+#ifdef GTKOSX
+ group_display.queue_draw();
+#endif
return true;
}
break;
@@ -1036,6 +1045,9 @@ Mixer_UI::group_display_button_press (GdkEventButton* ev)
if ((iter = group_model->get_iter (path))) {
bool visible = (*iter)[group_columns.visible];
(*iter)[group_columns.visible] = !visible;
+#ifdef GTKOSX
+ group_display.queue_draw();
+#endif
return true;
}
break;
diff --git a/gtk2_ardour/new_session_dialog.cc b/gtk2_ardour/new_session_dialog.cc
index 1dd07c51e1..38b2160f78 100644
--- a/gtk2_ardour/new_session_dialog.cc
+++ b/gtk2_ardour/new_session_dialog.cc
@@ -478,7 +478,9 @@ NewSessionDialog::run ()
/* nothing to display */
return Gtk::RESPONSE_OK;
}
-
+ if (!(page_set & NewPage) && !(page_set & OpenPage)) {
+ set_response_sensitive (Gtk::RESPONSE_OK, true);
+ }
return ArdourDialog::run ();
}