summaryrefslogtreecommitdiff
path: root/gtk2_ardour/luainstance.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2017-08-22 03:12:07 +0200
committerRobin Gareus <robin@gareus.org>2017-08-22 03:12:07 +0200
commit05247255fe7333808311022918ba8a090fd99ea3 (patch)
tree13d74371207a4f0ef73634f4fc985daa1bfda6dc /gtk2_ardour/luainstance.cc
parent39a3705d3a79563dfd06c40b5cfe335bd44f7273 (diff)
Add Lua bindings for ArdourUI's translate_order()
e.g. calculate the route insert position: print (ArdourUI.translate_order (ArdourUI.InsertAt.BeforeSelection))
Diffstat (limited to 'gtk2_ardour/luainstance.cc')
-rw-r--r--gtk2_ardour/luainstance.cc18
1 files changed, 18 insertions, 0 deletions
diff --git a/gtk2_ardour/luainstance.cc b/gtk2_ardour/luainstance.cc
index fe4276c39a..248e867be9 100644
--- a/gtk2_ardour/luainstance.cc
+++ b/gtk2_ardour/luainstance.cc
@@ -368,6 +368,7 @@ namespace LuaMixer {
}
};
+
////////////////////////////////////////////////////////////////////////////////
static PBD::ScopedConnectionList _luaexecs;
@@ -422,6 +423,14 @@ lua_exec (std::string cmd)
return 0;
}
#endif
+////////////////////////////////////////////////////////////////////////////////
+
+// ARDOUR_UI and instance() are not exposed.
+ARDOUR::PresentationInfo::order_t
+lua_translate_order (RouteDialogs::InsertAt place)
+{
+ return ARDOUR_UI::instance()->translate_order (place);
+}
////////////////////////////////////////////////////////////////////////////////
@@ -908,7 +917,16 @@ LuaInstance::register_classes (lua_State* L)
.addFunction ("set_toggleaction", &PublicEditor::set_toggleaction)
.endClass ()
+ .addFunction ("translate_order", &lua_translate_order)
+
/* ArdourUI enums */
+ .beginNamespace ("InsertAt")
+ .addConst ("BeforeSelection", RouteDialogs::InsertAt(RouteDialogs::BeforeSelection))
+ .addConst ("AfterSelection", RouteDialogs::InsertAt(RouteDialogs::AfterSelection))
+ .addConst ("First", RouteDialogs::InsertAt(RouteDialogs::First))
+ .addConst ("Last", RouteDialogs::InsertAt(RouteDialogs::Last))
+ .endNamespace ()
+
.beginNamespace ("MarkerType")
.addConst ("Mark", ArdourMarker::Type(ArdourMarker::Mark))
.addConst ("Tempo", ArdourMarker::Type(ArdourMarker::Tempo))