Add Lua bindings to set toggle-actions
authorRobin Gareus <robin@gareus.org>
Wed, 9 Aug 2017 12:04:05 +0000 (14:04 +0200)
committerRobin Gareus <robin@gareus.org>
Wed, 9 Aug 2017 14:29:24 +0000 (16:29 +0200)
gtk2_ardour/editor.cc
gtk2_ardour/editor.h
gtk2_ardour/luainstance.cc
gtk2_ardour/public_editor.h

index 38fad22ddf9cc2f6e297562d49120e1ea9d80f11..9b7f112edaebd9cca4b7f1b8c4a0edbef533ff9a 100644 (file)
@@ -1132,7 +1132,7 @@ Editor::deferred_control_scroll (framepos_t /*target*/)
 }
 
 void
-Editor::access_action (std::string action_group, std::string action_item)
+Editor::access_action (const std::string& action_group, const std::string& action_item)
 {
        if (!_session) {
                return;
@@ -1148,6 +1148,12 @@ Editor::access_action (std::string action_group, std::string action_item)
        }
 }
 
+void
+Editor::set_toggleaction (const std::string& action_group, const std::string& action_item, bool s)
+{
+       ActionManager::set_toggleaction_state (action_group.c_str(), action_item.c_str(), s);
+}
+
 void
 Editor::on_realize ()
 {
index dfc0ab2cb5e3ef280a8c134be6b63d911427860e..1e3f4c9a990273e4fcb66c2d43edb78b55652c6e 100644 (file)
@@ -1114,7 +1114,8 @@ private:
        void control_scroll (float);
        void control_select (boost::shared_ptr<ARDOUR::Stripable>, Selection::Operation);
        void control_unselect ();
-       void access_action (std::string,std::string);
+       void access_action (const std::string&, const std::string&);
+       void set_toggleaction (const std::string&, const std::string&, bool);
        bool deferred_control_scroll (framepos_t);
        sigc::connection control_scroll_connection;
 
index 6b89f7ccedd3c9872c1494fc3cf9761587bac601..86acba54ddc5bb268c450451724db7a8771b0022 100644 (file)
@@ -847,6 +847,7 @@ LuaInstance::register_classes (lua_State* L)
 #endif
 
                .addFunction ("access_action", &PublicEditor::access_action)
+               .addFunction ("set_toggleaction", &PublicEditor::set_toggleaction)
                .endClass ()
 
                /* ArdourUI enums */
index f7c20ea9835a5d6ed5d695d17a0f23bbb13319dd..375594f2bc746920403ee26495aab3821f856f53 100644 (file)
@@ -448,7 +448,8 @@ public:
        virtual void abort_reversible_command () = 0;
        virtual void commit_reversible_command () = 0;
 
-       virtual void access_action (std::string,std::string) = 0;
+       virtual void access_action (const std::string&, const std::string&) = 0;
+       virtual void set_toggleaction (const std::string&, const std::string&, bool) = 0;
 
        virtual MouseCursors const * cursors () const = 0;
        virtual VerboseCursor * verbose_cursor () const = 0;