diff options
author | Robin Gareus <robin@gareus.org> | 2017-02-23 22:31:03 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-02-23 22:32:32 +0100 |
commit | 1e4e97019da3e90f89614da51ac537ed2041bb55 (patch) | |
tree | 0f8177b0fa20002f475a614e0d907634dbd71338 /gtk2_ardour/luainstance.cc | |
parent | 71fd94b422574d1efbcce1ab85c6ce3da22ba450 (diff) |
Lua bindings to access editor selection + region selection bindings
Diffstat (limited to 'gtk2_ardour/luainstance.cc')
-rw-r--r-- | gtk2_ardour/luainstance.cc | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/gtk2_ardour/luainstance.cc b/gtk2_ardour/luainstance.cc index 1a8bf12d62..c8a4fe9e3b 100644 --- a/gtk2_ardour/luainstance.cc +++ b/gtk2_ardour/luainstance.cc @@ -37,8 +37,10 @@ #include "luainstance.h" #include "luasignal.h" #include "marker.h" +#include "region_view.h" #include "processor_box.h" #include "time_axis_view.h" +#include "time_axis_view_item.h" #include "selection.h" #include "script_selector.h" #include "timers.h" @@ -582,8 +584,17 @@ LuaInstance::register_classes (lua_State* L) .endClass () #endif + .beginClass <Selectable> ("Selectable") + .endClass () + .deriveClass <TimeAxisViewItem, Selectable> ("TimeAxisViewItem") + .endClass () + .deriveClass <RegionView, TimeAxisViewItem> ("RegionView") + .endClass () + + .beginStdCPtrList <Selectable> ("SelectionList") + .endClass () + .beginClass <RegionSelection> ("RegionSelection") - .addFunction ("clear_all", &RegionSelection::clear_all) .addFunction ("start", &RegionSelection::start) .addFunction ("end_frame", &RegionSelection::end_frame) .addFunction ("n_midi_regions", &RegionSelection::n_midi_regions) @@ -646,6 +657,8 @@ LuaInstance::register_classes (lua_State* L) .addFunction ("get_cut_buffer", &PublicEditor::get_cut_buffer) .addRefFunction ("get_selection_extents", &PublicEditor::get_selection_extents) + .addFunction ("set_selection", &PublicEditor::set_selection) + .addFunction ("play_selection", &PublicEditor::play_selection) .addFunction ("play_with_preroll", &PublicEditor::play_with_preroll) .addFunction ("maybe_locate_with_edit_preroll", &PublicEditor::maybe_locate_with_edit_preroll) @@ -691,6 +704,8 @@ LuaInstance::register_classes (lua_State* L) .addFunction ("set_selected_mixer_strip", &PublicEditor::set_selected_mixer_strip) .addFunction ("hide_track_in_display", &PublicEditor::hide_track_in_display) #endif + + .addFunction ("get_regionview_from_region", &PublicEditor::get_regionview_from_region) .addFunction ("set_stationary_playhead", &PublicEditor::set_stationary_playhead) .addFunction ("stationary_playhead", &PublicEditor::stationary_playhead) .addFunction ("set_follow_playhead", &PublicEditor::set_follow_playhead) @@ -783,6 +798,13 @@ LuaInstance::register_classes (lua_State* L) .addConst ("PunchOut", ArdourMarker::Type(ArdourMarker::PunchOut)) .endNamespace () + .beginNamespace ("SelectionOp") + .addConst ("Toggle", Selection::Operation(Selection::Toggle)) + .addConst ("Set", Selection::Operation(Selection::Set)) + .addConst ("Extend", Selection::Operation(Selection::Extend)) + .addConst ("Add", Selection::Operation(Selection::Add)) + .endNamespace () + .endNamespace (); // end ArdourUI // Editing Symbols |