and a few more Editor lua bindings
authorRobin Gareus <robin@gareus.org>
Sat, 9 Apr 2016 13:42:48 +0000 (15:42 +0200)
committerRobin Gareus <robin@gareus.org>
Sat, 9 Apr 2016 13:45:30 +0000 (15:45 +0200)
gtk2_ardour/luainstance.cc
gtk2_ardour/public_editor.h

index 8197284e69801d425fe6219026a242cb402a30e7..9e29d59602d59632870bc824f1ca3b5a1a3a4421 100644 (file)
@@ -33,6 +33,8 @@
 #include "region_selection.h"
 #include "luainstance.h"
 #include "luasignal.h"
+#include "time_axis_view.h"
+#include "selection.h"
 #include "script_selector.h"
 
 #include "i18n.h"
@@ -223,6 +225,24 @@ LuaInstance::register_classes (lua_State* L)
                .addFunction ("n_midi_regions", &RegionSelection::n_midi_regions)
                .endClass ()
 
+               .beginClass <AxisView> ("AxisView")
+               .endClass ()
+               .deriveClass <TimeAxisView, AxisView> ("TimeAxisView")
+               .endClass ()
+               .deriveClass <RouteTimeAxisView, TimeAxisView> ("RouteTimeAxisView")
+               .endClass ()
+
+               .beginClass <Selection> ("Selection")
+               .addFunction ("clear", &Selection::clear)
+               .addFunction ("clear_all", &Selection::clear_all)
+               .endClass ()
+
+               .beginClass <TrackViewList> ("TrackViewList")
+               .endClass ()
+
+               .deriveClass <TrackSelection, TrackViewList> ("TrackSelection")
+               .endClass ()
+
                .beginClass <ArdourMarker> ("ArdourMarker")
                .endClass ()
 
@@ -245,12 +265,9 @@ LuaInstance::register_classes (lua_State* L)
                .addFunction ("pixel_to_sample", &PublicEditor::pixel_to_sample)
                .addFunction ("sample_to_pixel", &PublicEditor::sample_to_pixel)
 
-#if 0 // Selection is not yet exposed
                .addFunction ("get_selection", &PublicEditor::get_selection)
                .addFunction ("get_cut_buffer", &PublicEditor::get_cut_buffer)
-               .addFunction ("track_mixer_selection", &PublicEditor::track_mixer_selection)
-               .addFunction ("extend_selection_to_track", &PublicEditor::extend_selection_to_track)
-#endif
+               .addRefFunction ("get_selection_extents", &PublicEditor::get_selection_extents)
 
                .addFunction ("play_selection", &PublicEditor::play_selection)
                .addFunction ("play_with_preroll", &PublicEditor::play_with_preroll)
@@ -264,6 +281,9 @@ LuaInstance::register_classes (lua_State* L)
                .addFunction ("show_measures", &PublicEditor::show_measures)
                .addFunction ("remove_tracks", &PublicEditor::remove_tracks)
 
+               .addFunction ("set_loop_range", &PublicEditor::set_loop_range)
+               .addFunction ("set_punch_range", &PublicEditor::set_punch_range)
+
                .addFunction ("effective_mouse_mode", &PublicEditor::effective_mouse_mode)
 
                .addRefFunction ("do_import", &PublicEditor::do_import)
index 1c997b53fad4e5bdd29e71c83a7597c5a94503e8..6c2e5c6f0ab4c176cae498ed36b6f687b5c8eb06 100644 (file)
@@ -212,6 +212,8 @@ class PublicEditor : public Gtkmm2ext::Tabbable {
        virtual void set_show_measures (bool yn) = 0;
        virtual bool show_measures () const = 0;
        virtual void remove_tracks () = 0;
+       virtual void set_loop_range (framepos_t start, framepos_t end, std::string cmd) = 0;
+       virtual void set_punch_range (framepos_t start, framepos_t end, std::string cmd) = 0;
 
        virtual Editing::MouseMode effective_mouse_mode () const = 0;