summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorBen Loftis <ben@harrisonconsoles.com>2016-01-15 17:11:19 -0600
committerRobin Gareus <robin@gareus.org>2016-01-18 18:24:14 +0100
commit36e1ff48bc93dbc52ed0388eba15e5b0a3ea3eea (patch)
treea97d134cb604ec4cb5215109c0a816e5e29fce2c /libs
parentf0d9295dd65731bcf4eda2a9999cca4859377a42 (diff)
implement mark_in, mark_out, toggle_click
Diffstat (limited to 'libs')
-rw-r--r--libs/surfaces/control_protocol/basic_ui.cc18
-rw-r--r--libs/surfaces/control_protocol/control_protocol/basic_ui.h5
-rw-r--r--libs/surfaces/osc/osc.cc10
-rw-r--r--libs/surfaces/osc/osc.h3
4 files changed, 32 insertions, 4 deletions
diff --git a/libs/surfaces/control_protocol/basic_ui.cc b/libs/surfaces/control_protocol/basic_ui.cc
index 100b925ecd..10ed322e8e 100644
--- a/libs/surfaces/control_protocol/basic_ui.cc
+++ b/libs/surfaces/control_protocol/basic_ui.cc
@@ -345,6 +345,24 @@ BasicUI::jump_by_bars (double bars)
session->request_locate ( session->convert_to_frames (any) );
}
+void
+BasicUI::mark_in ()
+{
+ access_action("Editor/start-range");
+}
+
+void
+BasicUI::mark_out ()
+{
+ access_action("Editor/finish-range");
+}
+
+void
+BasicUI::toggle_click ()
+{
+ access_action("Transport/ToggleClick");
+}
+
bool
BasicUI::locating ()
{
diff --git a/libs/surfaces/control_protocol/control_protocol/basic_ui.h b/libs/surfaces/control_protocol/control_protocol/basic_ui.h
index 2f30c9929e..8469acde3a 100644
--- a/libs/surfaces/control_protocol/control_protocol/basic_ui.h
+++ b/libs/surfaces/control_protocol/control_protocol/basic_ui.h
@@ -81,6 +81,11 @@ class LIBCONTROLCP_API BasicUI {
void redo ();
void toggle_punch_in ();
void toggle_punch_out ();
+
+ void mark_in();
+ void mark_out();
+
+ void toggle_click();
void set_record_enable (bool yn);
bool get_record_enabled ();
diff --git a/libs/surfaces/osc/osc.cc b/libs/surfaces/osc/osc.cc
index c91d0b4206..7dc9de6541 100644
--- a/libs/surfaces/osc/osc.cc
+++ b/libs/surfaces/osc/osc.cc
@@ -362,6 +362,9 @@ OSC::register_callbacks()
REGISTER_CALLBACK (serv, "/ardour/toggle_all_rec_enables", "", toggle_all_rec_enables);
REGISTER_CALLBACK (serv, "/ardour/jump_bars", "f", jump_by_bars);
REGISTER_CALLBACK (serv, "/ardour/jump_seconds", "f", jump_by_seconds);
+ REGISTER_CALLBACK (serv, "/ardour/mark_in", "", mark_in);
+ REGISTER_CALLBACK (serv, "/ardour/mark_out", "", mark_out);
+ REGISTER_CALLBACK (serv, "/ardour/toggle_click", "", toggle_click);
/*
@@ -392,10 +395,9 @@ OSC::register_callbacks()
REGISTER_CALLBACK (serv, "/ardour/pushbutton/toggle_punch_out", "f", toggle_punch_out);
REGISTER_CALLBACK (serv, "/ardour/pushbutton/rec_enable_toggle", "f", rec_enable_toggle);
REGISTER_CALLBACK (serv, "/ardour/pushbutton/toggle_all_rec_enables", "f", toggle_all_rec_enables);
-
- //ToDo
-// REGISTER_CALLBACK (serv, "/ardour/pushbutton/mark_in", "f", mark_in);
-// REGISTER_CALLBACK (serv, "/ardour/pushbutton/mark_out", "f", mark_out);
+ REGISTER_CALLBACK (serv, "/ardour/pushbutton/mark_in", "f", mark_in);
+ REGISTER_CALLBACK (serv, "/ardour/pushbutton/mark_out", "f", mark_out);
+ REGISTER_CALLBACK (serv, "/ardour/pushbutton/toggle_click", "f", toggle_click);
REGISTER_CALLBACK (serv, "/ardour/routes/mute", "ii", route_mute);
REGISTER_CALLBACK (serv, "/ardour/routes/solo", "ii", route_solo);
diff --git a/libs/surfaces/osc/osc.h b/libs/surfaces/osc/osc.h
index 72e6b3ef3e..77d5c42cb1 100644
--- a/libs/surfaces/osc/osc.h
+++ b/libs/surfaces/osc/osc.h
@@ -192,6 +192,9 @@ class OSC : public ARDOUR::ControlProtocol, public AbstractUI<OSCUIRequest>
PATH_CALLBACK(toggle_punch_out);
PATH_CALLBACK(rec_enable_toggle);
PATH_CALLBACK(toggle_all_rec_enables);
+ PATH_CALLBACK(mark_in);
+ PATH_CALLBACK(mark_out);
+ PATH_CALLBACK(toggle_click);
#define PATH_CALLBACK1(name,type,optional) \
static int _ ## name (const char *path, const char *types, lo_arg **argv, int argc, void *data, void *user_data) { \