summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorLen Ovens <len@ovenwerks.net>2017-04-29 15:37:31 -0700
committerLen Ovens <len@ovenwerks.net>2017-04-29 15:37:31 -0700
commit73e80b4429c0d6c187acaa270659adc44620e53c (patch)
tree923bd997ecadc4d453ca1c736abbe8cdd12aac05 /gtk2_ardour
parenta283784cce0c7666f52d92bbbae5bc1c393fcd05 (diff)
Set -b to open in browser.
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/ardour_ui.cc36
1 files changed, 35 insertions, 1 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index 738898d2ef..c45bc08166 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -694,7 +694,41 @@ ARDOUR_UI::post_engine ()
if (sstr.str().empty()) {
return;
}
- cout << sstr.str().c_str();
+ gchar* file_name;
+ GError *err = NULL;
+ gint fd;
+
+ if ((fd = g_file_open_tmp ("akprintXXXXXX.html", &file_name, &err)) < 0) {
+ if (err) {
+ error << string_compose (_("Could not open temporary file to print bindings (%1)"), err->message) << endmsg;
+ g_error_free (err);
+ }
+ return;
+ }
+
+#ifdef PLATFORM_WINDOWS
+ ::close (fd);
+#endif
+
+ err = NULL;
+
+ if (!g_file_set_contents (file_name, sstr.str().c_str(), sstr.str().size(), &err)) {
+#ifndef PLATFORM_WINDOWS
+ ::close (fd);
+#endif
+ g_unlink (file_name);
+ if (err) {
+ error << string_compose (_("Could not save bindings to file (%1)"), err->message) << endmsg;
+ g_error_free (err);
+ }
+ return;
+ }
+
+#ifndef PLATFORM_WINDOWS
+ ::close (fd);
+#endif
+
+ PBD::open_uri (string_compose ("file:///%1", file_name));
halt_connection.disconnect ();
AudioEngine::instance()->stop ();