From a499c7139ff577666c01acb4464f794622f751ac Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Tue, 5 Dec 2017 01:53:54 +0100 Subject: [PATCH] Add an action script to call access actions.. --- scripts/_access_action.lua | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 scripts/_access_action.lua diff --git a/scripts/_access_action.lua b/scripts/_access_action.lua new file mode 100644 index 0000000000..11b7ec716e --- /dev/null +++ b/scripts/_access_action.lua @@ -0,0 +1,37 @@ +ardour { + ["type"] = "EditorAction", + name = "Shortcut", + license = "MIT", + author = "me", + description = [[Shortcut call any action]] +} + +function action_params () + local actionlist = { + { + type = "dropdown", key = "action", title = "Action", values = ArdourUI:actionlist(), + default = "Save" + } + } + + local rv = LuaDialog.Dialog ("Select Action", actionlist):run () + if not rv then -- user cancelled + return { ["x-script-abort"] = { title = "", preseeded = true} } + end + + local action = rv["action"] + local name = "Shortcut - " .. action + return { + ["action"] = { title = "Action to trigger", default = action, preseeded = true}, + ["x-script-name"] = { title = "Unique Script name", default = name, preseeded = true}, + } +end + +function factory (params) return function () + local p = params or { } + local as = assert (p["action"]) + local sp = assert (as:find('/')) + local group = assert (as:sub(0, sp - 1)) + local item = assert (as:sub(1 + sp)) + Editor:access_action (group, item) +end end -- 2.30.2