summaryrefslogtreecommitdiff
path: root/gtk2_ardour/keyeditor.cc
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-01-10 21:20:59 +0000
committerDavid Robillard <d@drobilla.net>2008-01-10 21:20:59 +0000
commitbb457bb960c5bd7ed538f9d31477293415739f68 (patch)
tree84324a63b87c03589cd165b9e474296eaebb4772 /gtk2_ardour/keyeditor.cc
parent73dd9d37e7d715e0d78c0e51569968f9494dac7f (diff)
Merge libs/ardour and gtk2_ardour with 2.0-ongoing R2837.
git-svn-id: svn://localhost/ardour2/trunk@2883 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/keyeditor.cc')
-rw-r--r--gtk2_ardour/keyeditor.cc21
1 files changed, 17 insertions, 4 deletions
diff --git a/gtk2_ardour/keyeditor.cc b/gtk2_ardour/keyeditor.cc
index f3ae77865d..4f378d2dbc 100644
--- a/gtk2_ardour/keyeditor.cc
+++ b/gtk2_ardour/keyeditor.cc
@@ -1,11 +1,14 @@
#include <map>
+#include <ardour/profile.h>
+
#include <gtkmm/stock.h>
#include <gtkmm/accelkey.h>
#include <gtkmm/accelmap.h>
#include <gtkmm/uimanager.h>
#include <pbd/strsplit.h>
+#include <pbd/replace_all.h>
#include "actions.h"
#include "keyboard.h"
@@ -16,6 +19,7 @@
using namespace std;
using namespace Gtk;
using namespace Gdk;
+using namespace PBD;
KeyEditor::KeyEditor ()
: ArdourDialog (_("Keybinding Editor"), false)
@@ -31,11 +35,11 @@ KeyEditor::KeyEditor ()
view.set_headers_visible (true);
view.get_selection()->set_mode (SELECTION_SINGLE);
view.set_reorderable (false);
- view.set_size_request (300,200);
+ view.set_size_request (500,300);
view.set_enable_search (false);
view.set_rules_hint (true);
view.set_name (X_("KeyEditorTree"));
-
+
view.get_selection()->signal_changed().connect (mem_fun (*this, &KeyEditor::action_selected));
scroller.add (view);
@@ -78,7 +82,7 @@ KeyEditor::on_key_press_event (GdkEventKey* ev)
bool
KeyEditor::on_key_release_event (GdkEventKey* ev)
{
- if (!can_bind || ev->state != last_state) {
+ if (ARDOUR::Profile->get_sae() || !can_bind || ev->state != last_state) {
return false;
}
@@ -137,7 +141,7 @@ KeyEditor::populate ()
model->clear ();
for (l = labels.begin(), k = keys.begin(), p = paths.begin(); l != labels.end(); ++k, ++p, ++l) {
-
+
TreeModel::Row row;
vector<string> parts;
@@ -178,7 +182,16 @@ KeyEditor::populate ()
if (*k == ActionManager::unbound_string) {
row[columns.binding] = string();
} else {
+
+#ifdef GTKOSX
+ string label = (*k);
+ replace_all (label, "<Mod5>", _("Command-"));
+ replace_all (label, "<Alt>", _("Option-"));
+ replace_all (label, "<Shift>", _("Shift-"));
+ row[columns.binding] = label;
+#else
row[columns.binding] = (*k);
+#endif
}
}
}