summaryrefslogtreecommitdiff
path: root/libs/surfaces
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2008-04-17 05:58:43 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2008-04-17 05:58:43 +0000
commit803b502bf176c417a70498a98173fb09691a80b7 (patch)
tree0678e953e5739758b86988c4340cbc3406927a7c /libs/surfaces
parent9aeccd52c83bf020df490f64e8716ff8ddd2ee76 (diff)
AccessAction() OSC patch from Ryan Scott
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@3258 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/surfaces')
-rw-r--r--libs/surfaces/control_protocol/basic_ui.cc13
-rw-r--r--libs/surfaces/control_protocol/control_protocol/basic_ui.h2
2 files changed, 15 insertions, 0 deletions
diff --git a/libs/surfaces/control_protocol/basic_ui.cc b/libs/surfaces/control_protocol/basic_ui.cc
index 2f5a4efada..7c032524f9 100644
--- a/libs/surfaces/control_protocol/basic_ui.cc
+++ b/libs/surfaces/control_protocol/basic_ui.cc
@@ -29,6 +29,8 @@
using namespace ARDOUR;
+sigc::signal<void,std::string,std::string> BasicUI::AccessAction;
+
BasicUI::BasicUI (Session& s)
: session (&s)
{
@@ -50,6 +52,17 @@ BasicUI::register_thread (std::string name)
PBD::ThreadCreated (pthread_self(), name);
}
+
+void
+BasicUI::access_action ( std::string action_path )
+{
+ int split_at = action_path.find( "/" );
+ std::string group = action_path.substr( 0, split_at );
+ std::string item = action_path.substr( split_at + 1 );
+
+ AccessAction( group, item );
+}
+
void
BasicUI::loop_toggle ()
{
diff --git a/libs/surfaces/control_protocol/control_protocol/basic_ui.h b/libs/surfaces/control_protocol/control_protocol/basic_ui.h
index 7bc6b25c32..c8b5a2a0b6 100644
--- a/libs/surfaces/control_protocol/control_protocol/basic_ui.h
+++ b/libs/surfaces/control_protocol/control_protocol/basic_ui.h
@@ -42,6 +42,8 @@ class BasicUI {
/* transport control */
void loop_toggle ();
+ void access_action ( std::string action_path );
+ static sigc::signal<void,std::string,std::string> AccessAction;
void goto_start ();
void goto_end ();
void rewind ();