From cba622cdcecdba2fd88556c4364646c96f4451c6 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Wed, 9 Aug 2017 14:04:05 +0200 Subject: [PATCH] Add Lua bindings to set toggle-actions --- gtk2_ardour/editor.cc | 8 +++++++- gtk2_ardour/editor.h | 3 ++- gtk2_ardour/luainstance.cc | 1 + gtk2_ardour/public_editor.h | 3 ++- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index 38fad22ddf..9b7f112eda 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -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 () { diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h index dfc0ab2cb5..1e3f4c9a99 100644 --- a/gtk2_ardour/editor.h +++ b/gtk2_ardour/editor.h @@ -1114,7 +1114,8 @@ private: void control_scroll (float); void control_select (boost::shared_ptr, 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; diff --git a/gtk2_ardour/luainstance.cc b/gtk2_ardour/luainstance.cc index 6b89f7cced..86acba54dd 100644 --- a/gtk2_ardour/luainstance.cc +++ b/gtk2_ardour/luainstance.cc @@ -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 */ diff --git a/gtk2_ardour/public_editor.h b/gtk2_ardour/public_editor.h index f7c20ea983..375594f2bc 100644 --- a/gtk2_ardour/public_editor.h +++ b/gtk2_ardour/public_editor.h @@ -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; -- 2.30.2