MCP: somewhat functional (?) full keybinding GUI

git-svn-id: svn://localhost/ardour2/branches/3.0@11999 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Paul Davis
2012-04-17 21:36:48 +00:00
parent 934ad9ab63
commit 6bd6f58dee
4 changed files with 17 additions and 14 deletions

View File

@@ -250,23 +250,29 @@ ActionManager::get_action (const char* path)
return RefPtr<Action>();
}
char copy[strlen(path)+1];
/* Skip <Actions>/ in path */
if (*path == '/') {
const char* cslash = strchr (path, '/');
if (!cslash) {
return RefPtr<Action> ();
}
strcpy (copy, cslash+1);
} else {
strcpy (copy, path);
int len = strlen (path);
if (len < 3) {
/* shortest possible path: "a/b" */
return RefPtr<Action>();
}
if (len > 10 && !strncmp (path, "<Actions>/", 10 )) {
path = path+10;
} else if (path[0] == '/') {
path++;
}
char copy[len+1];
strcpy (copy, path);
char* slash = strchr (copy, '/');
if (!slash) {
return RefPtr<Action> ();
}
*slash = '\0';
return get_action (copy, ++slash);
}

View File

@@ -280,9 +280,7 @@ MackieControlProtocolGUI::refresh_function_key_editor ()
if (action.empty()) {
row[function_key_columns.plain] = defstring;
} else {
std::cerr << "action = " << action << '\n';
act = ActionManager::get_action (action.c_str());
std::cerr << " action = " << act << endl;
if (act) {
row[function_key_columns.plain] = act->get_label();
} else {
@@ -373,6 +371,7 @@ MackieControlProtocolGUI::action_changed (const Glib::ustring &sPath, const Glib
if (act) {
(*row).set_value (col.index(), text);
}
}
}

View File

@@ -199,8 +199,6 @@ Surface::init_strips (uint32_t n)
snprintf (name, sizeof (name), "strip_%d", (8* _number) + i);
std::cerr << "*** Surface " << _number << " Setup strips for index " << i << endl;
Strip* strip = new Strip (*this, name, i, strip_buttons);
groups[name] = strip;

View File

@@ -4,6 +4,6 @@
<MasterOn value="14"/>
<MonitorOn value="15"/>
<Buttons>
<Button name="f1" plain="Editor/goto-visual-view-1"/>
<Button name="f1" plain="Editor/goto-visual-state-1"/>
</Buttons>
</MackieDeviceProfile>