13
0

allow to set/change loop-range via OSC

This commit is contained in:
Robin Gareus 2015-04-13 16:20:40 +02:00
parent aef6805114
commit d00ab0221a
4 changed files with 17 additions and 0 deletions

View File

@ -79,6 +79,20 @@ BasicUI::loop_toggle ()
}
}
void
BasicUI::loop_location (framepos_t start, framepos_t end)
{
Location* tll;
if ((tll = session->locations()->auto_loop_location()) == 0) {
Location* loc = new Location (*session, start, end, _("Loop"), Location::IsAutoLoop);
session->locations()->add (loc, true);
session->set_auto_loop_location (loc);
} else {
tll->set_hidden (false, this);
tll->set (start, end);
}
}
void
BasicUI::goto_start ()
{

View File

@ -49,6 +49,7 @@ class LIBCONTROLCP_API BasicUI {
/* transport control */
void loop_toggle ();
void loop_location (framepos_t start, framepos_t end);
void access_action ( std::string action_path );
static PBD::Signal2<void,std::string,std::string> AccessAction;
void goto_start ();

View File

@ -344,6 +344,7 @@ OSC::register_callbacks()
REGISTER_CALLBACK (serv, "/ardour/add_marker", "", add_marker);
REGISTER_CALLBACK (serv, "/ardour/access_action", "s", access_action);
REGISTER_CALLBACK (serv, "/ardour/loop_toggle", "", loop_toggle);
REGISTER_CALLBACK (serv, "/ardour/loop_location", "ii", loop_location);
REGISTER_CALLBACK (serv, "/ardour/goto_start", "", goto_start);
REGISTER_CALLBACK (serv, "/ardour/goto_end", "", goto_end);
REGISTER_CALLBACK (serv, "/ardour/rewind", "", rewind);

View File

@ -208,6 +208,7 @@ class OSC : public ARDOUR::ControlProtocol, public AbstractUI<OSCUIRequest>
}
PATH_CALLBACK2(locate,i,i);
PATH_CALLBACK2(loop_location,i,i);
PATH_CALLBACK2(route_mute,i,i);
PATH_CALLBACK2(route_solo,i,i);
PATH_CALLBACK2(route_recenable,i,i);