summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2017-12-05 01:53:54 +0100
committerRobin Gareus <robin@gareus.org>2017-12-05 01:55:38 +0100
commita499c7139ff577666c01acb4464f794622f751ac (patch)
tree9cbc4b7a86f67db4d01c7d67ae6d4cc082b70f31 /scripts
parentb6124f0189269ba65ecd4e99fe52264f14d767d9 (diff)
Add an action script to call access actions..
Diffstat (limited to 'scripts')
-rw-r--r--scripts/_access_action.lua37
1 files changed, 37 insertions, 0 deletions
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