NOP: Trim whitespace and convert tabs to spaces
authorNikolaus Gullotta <nik@harrisonconsoles.com>
Thu, 9 Jan 2020 20:01:37 +0000 (14:01 -0600)
committerNikolaus Gullotta <nik@harrisonconsoles.com>
Thu, 9 Jan 2020 20:01:37 +0000 (14:01 -0600)
scripts/reset_mixer.lua

index d3b3717d4d8bb0569345531c63ebd127f1ea1a9b..79545af0c584d24da5e653cc518f75de76bbc18e 100644 (file)
 ardour {\r
-       ["type"]    = "EditorAction",\r
-       name        = "Reset Mixer",\r
-       license     = "MIT",\r
-       author      = "Ben Loftis, Nikolaus Gullotta, Maxime Lecoq",\r
-       description = [[Resets key Mixer settings after user-prompt (warning: this cannot be undone)]]\r
+    ["type"]    = "EditorAction",\r
+    name        = "Reset Mixer",\r
+    license     = "MIT",\r
+    author      = "Ben Loftis, Nikolaus Gullotta, Maxime Lecoq",\r
+    description = [[Resets key Mixer settings after user-prompt (warning: this cannot be undone)]]\r
 }\r
 \r
 function factory() return function()\r
-       local sp_radio_buttons = {Bypass="bypass", Remove="remove", Nothing=false}\r
-       local dlg = {\r
-               {type="label", align="left", colspan="3", title="Please select below the items you want to reset:" },\r
-               {type="label", align="left", colspan="3", title="(Warning: this cannot be undone!)\n" },\r
-\r
-               {type="heading", align ="center", colspan="3", title = "Common Controls:" },\r
-               {type="checkbox", key="fader", default=true, title="Fader"      },\r
-               {type="checkbox", key="mute",  default=true, title="Mute"       },\r
-               {type="checkbox", key="solo",  default=true, title="Solo"       },\r
-               {type="checkbox", key="trim",  default=true, title="Trim"       },\r
-               {type="checkbox", key="pan",   default=true, title="Pan (All)"  },\r
-               {type="checkbox", key="phase", default=true, title="Phase"      },\r
-               {type="checkbox", key="sends", default=true, title="Sends"      },\r
-               {type="checkbox", key="eq",    default=true, title="EQ"         },\r
-               {type="checkbox", key="comp",  default=true, title="Compressor" },\r
-               \r
-               {type="heading", align="center", colspan="3", title="Processors:" },\r
-               {type="radio", key="plugins", title="Plug-ins",      values=sp_radio_buttons, default="Bypass" },\r
-               {type="radio", key="io",      title="Sends/Inserts", values=sp_radio_buttons, default="Bypass" },\r
-\r
-               {type="hseparator", title=""},\r
-               \r
-               {type="heading", align="center", colspan="3", title="Misc." },\r
-               {type="checkbox", key="auto",    colspan="3", title = "Automation (switch to manual mode)" },\r
-               {type="checkbox", key="groups",  colspan="3", title = "Groups"                             },\r
-       }\r
-\r
-       function reset(ctrl, disp, auto)\r
-               local disp = disp or PBD.GroupControlDisposition.NoGroup\r
-\r
-               if not(ctrl:isnil()) then\r
-                       local pd = ctrl:desc()\r
-                       ctrl:set_value(pd.normal, disp)\r
-\r
-                       if auto then\r
-                               ctrl:set_automation_state(auto)\r
-                       end\r
-               end\r
-       end\r
-\r
-       function reset_eq_controls(route, disp, auto)\r
-               if route:isnil() then\r
-                       return\r
-               end\r
-               \r
-               local disp = disp or PBD.GroupControlDisposition.NoGroup\r
-\r
-               reset(route:eq_enable_controllable(), disp, auto)\r
-\r
-               local i = 0\r
-               repeat\r
-                       for _,ctrl in pairs({\r
-                               route:eq_freq_controllable(i),\r
-                               route:eq_gain_controllable(i),\r
-                               route:eq_q_controllable(i),\r
-                       }) do\r
-                               reset(ctrl, disp, auto)\r
-                       end\r
-                       i = i + 1\r
-               until route:eq_freq_controllable(i):isnil()\r
-       end\r
-\r
-       function reset_comp_controls(route, disp, auto)\r
-               if route:isnil() then\r
-                       return\r
-               end\r
-\r
-               local disp = disp or PBD.GroupControlDisposition.NoGroup\r
-\r
-               for _,ctrl in pairs({\r
-                       route:comp_enable_controllable(),\r
-                       route:comp_makeup_controllable(),\r
-                       route:comp_mode_controllable(),\r
-                       route:comp_speed_controllable(),\r
-                       route:comp_threshold_controllable(),\r
-               }) do\r
-                       reset(ctrl, disp, auto)\r
-               end\r
-       end\r
-\r
-       function reset_send_controls(route, disp, auto)\r
-               if route:isnil() then\r
-                       return\r
-               end\r
-\r
-               local disp = disp or PBD.GroupControlDisposition.NoGroup\r
-\r
-               local i = 0\r
-               repeat\r
-                       for _,ctrl in pairs({\r
-                               route:send_level_controllable(i),\r
-                               route:send_enable_controllable(i),\r
-                               route:send_pan_azimuth_controllable(i),\r
-                               route:send_pan_azimuth_enable_controllable(i),\r
-                       }) do\r
-                               reset(ctrl, disp, auto)\r
-                       end\r
-                       i = i + 1\r
-               until route:send_enable_controllable(i):isnil()\r
-       end\r
-\r
-       function reset_plugins(route, prefs)\r
-               if route:isnil() then\r
-                       return\r
-               end\r
-\r
-               local i = 0\r
-               repeat \r
-                       local proc = route:nth_processor(i)\r
-                       if not(proc:isnil()) then\r
-                               \r
-                               if prefs["plugins"] then\r
-                                       local insert = proc:to_insert()\r
-                                       if not(insert:isnil()) then\r
-                                               if insert:is_channelstrip() or not(insert:display_to_user()) then\r
-                                                       ARDOUR.LuaAPI.reset_processor_to_default(insert)\r
-                                               else\r
-                                                       if prefs["plugins"] == "remove" then\r
-                                                               route:remove_processor(proc, nil, true)\r
-                                                       else\r
-                                                               insert:deactivate()\r
-                                                       end\r
-                                               end\r
-                                       end\r
-                               end\r
-\r
-                               if prefs["io"] then\r
-                                       local io_proc = proc:to_ioprocessor()\r
-                                       if not(io_proc:isnil()) then\r
-                                               if prefs["io"] == "remove" then\r
-                                                       route:remove_processor(proc, nil, true)\r
-                                               else\r
-                                                       io_proc:deactivate()\r
-                                               end\r
-                                       end\r
-                               end\r
-                       end\r
-                       i = i + 1\r
-               until proc:isnil()\r
-       end\r
-\r
-       local pref = LuaDialog.Dialog("Reset Mixer", dlg):run()\r
-       \r
-       if not(pref) then goto pass_script end\r
+    local sp_radio_buttons = {Bypass="bypass", Remove="remove", Nothing=false}\r
+    local dlg = {\r
+        {type="label", align="left", colspan="3", title="Please select below the items you want to reset:" },\r
+        {type="label", align="left", colspan="3", title="(Warning: this cannot be undone!)\n" },\r
+\r
+        {type="heading", align ="center", colspan="3", title = "Common Controls:" },\r
+        {type="checkbox", key="fader", default=true, title="Fader"      },\r
+        {type="checkbox", key="mute",  default=true, title="Mute"       },\r
+        {type="checkbox", key="solo",  default=true, title="Solo"       },\r
+        {type="checkbox", key="trim",  default=true, title="Trim"       },\r
+        {type="checkbox", key="pan",   default=true, title="Pan (All)"  },\r
+        {type="checkbox", key="phase", default=true, title="Phase"      },\r
+        {type="checkbox", key="sends", default=true, title="Sends"      },\r
+        {type="checkbox", key="eq",    default=true, title="EQ"         },\r
+        {type="checkbox", key="comp",  default=true, title="Compressor" },\r
+\r
+        {type="heading", align="center", colspan="3", title="Processors:" },\r
+        {type="radio", key="plugins", title="Plug-ins",      values=sp_radio_buttons, default="Bypass" },\r
+        {type="radio", key="io",      title="Sends/Inserts", values=sp_radio_buttons, default="Bypass" },\r
+\r
+        {type="hseparator", title=""},\r
+\r
+        {type="heading", align="center", colspan="3", title="Misc." },\r
+        {type="checkbox", key="auto",    colspan="3", title = "Automation (switch to manual mode)" },\r
+        {type="checkbox", key="groups",  colspan="3", title = "Groups"                             },\r
+    }\r
+\r
+    function reset(ctrl, disp, auto)\r
+        local disp = disp or PBD.GroupControlDisposition.NoGroup\r
+\r
+        if not(ctrl:isnil()) then\r
+            local pd = ctrl:desc()\r
+            ctrl:set_value(pd.normal, disp)\r
+\r
+            if auto then\r
+                ctrl:set_automation_state(auto)\r
+            end\r
+        end\r
+    end\r
+\r
+    function reset_eq_controls(route, disp, auto)\r
+        if route:isnil() then\r
+            return\r
+        end\r
+\r
+        local disp = disp or PBD.GroupControlDisposition.NoGroup\r
+\r
+        reset(route:eq_enable_controllable(), disp, auto)\r
+\r
+        local i = 0\r
+        repeat\r
+            for _,ctrl in pairs({\r
+                route:eq_freq_controllable(i),\r
+                route:eq_gain_controllable(i),\r
+                route:eq_q_controllable(i),\r
+            }) do\r
+                reset(ctrl, disp, auto)\r
+            end\r
+            i = i + 1\r
+        until route:eq_freq_controllable(i):isnil()\r
+    end\r
+\r
+    function reset_comp_controls(route, disp, auto)\r
+        if route:isnil() then\r
+            return\r
+        end\r
+\r
+        local disp = disp or PBD.GroupControlDisposition.NoGroup\r
+\r
+        for _,ctrl in pairs({\r
+            route:comp_enable_controllable(),\r
+            route:comp_makeup_controllable(),\r
+            route:comp_mode_controllable(),\r
+            route:comp_speed_controllable(),\r
+            route:comp_threshold_controllable(),\r
+        }) do\r
+            reset(ctrl, disp, auto)\r
+        end\r
+    end\r
+\r
+    function reset_send_controls(route, disp, auto)\r
+        if route:isnil() then\r
+            return\r
+        end\r
+\r
+        local disp = disp or PBD.GroupControlDisposition.NoGroup\r
+\r
+        local i = 0\r
+        repeat\r
+            for _,ctrl in pairs({\r
+                route:send_level_controllable(i),\r
+                route:send_enable_controllable(i),\r
+                route:send_pan_azimuth_controllable(i),\r
+                route:send_pan_azimuth_enable_controllable(i),\r
+            }) do\r
+                reset(ctrl, disp, auto)\r
+            end\r
+            i = i + 1\r
+        until route:send_enable_controllable(i):isnil()\r
+    end\r
+\r
+    function reset_plugins(route, prefs)\r
+        if route:isnil() then\r
+            return\r
+        end\r
+\r
+        local i = 0\r
+        repeat\r
+            local proc = route:nth_processor(i)\r
+            if not(proc:isnil()) then\r
+\r
+                if prefs["plugins"] then\r
+                    local insert = proc:to_insert()\r
+                    if not(insert:isnil()) then\r
+                        if insert:is_channelstrip() or not(insert:display_to_user()) then\r
+                            ARDOUR.LuaAPI.reset_processor_to_default(insert)\r
+                        else\r
+                            if prefs["plugins"] == "remove" then\r
+                                route:remove_processor(proc, nil, true)\r
+                            else\r
+                                insert:deactivate()\r
+                            end\r
+                        end\r
+                    end\r
+                end\r
+\r
+                if prefs["io"] then\r
+                    local io_proc = proc:to_ioprocessor()\r
+                    if not(io_proc:isnil()) then\r
+                        if prefs["io"] == "remove" then\r
+                            route:remove_processor(proc, nil, true)\r
+                        else\r
+                            io_proc:deactivate()\r
+                        end\r
+                    end\r
+                end\r
+            end\r
+            i = i + 1\r
+        until proc:isnil()\r
+    end\r
+\r
+    local pref = LuaDialog.Dialog("Reset Mixer", dlg):run()\r
+\r
+    if not(pref) then goto pass_script end\r
     assert(pref, "Dialog box was cancelled or is nil")\r
 \r
-       for route in Session:get_routes():iter() do\r
-               local disp = PBD.GroupControlDisposition.NoGroup\r
-               local auto = nil\r
-               \r
-               if pref["auto"] then\r
-                       auto = ARDOUR.AutoState.Off\r
-               end\r
-               \r
-               if pref["eq"]    then reset_eq_controls(route, disp, auto) end\r
-               if pref["comp"]  then reset_comp_controls(route, disp, auto) end\r
-               if pref["sends"] then reset_send_controls(route, disp, auto) end\r
-               reset_plugins(route, pref)\r
-\r
-               if pref["fader"] then\r
-                       reset(route:gain_control(), disp, auto)\r
-               end\r
-               \r
-               if pref["phase"] then\r
-                       reset(route:phase_control(), disp, auto)\r
-               end\r
-\r
-               if pref["trim"] then\r
-                       reset(route:trim_control(), disp, auto)\r
-               end\r
-\r
-               if pref["mute"] then\r
-                       reset(route:mute_control(), disp, auto)\r
-               end\r
-\r
-               if pref["solo"] then\r
-                       reset(route:solo_control(), disp, auto)\r
-               end\r
-\r
-               if pref["pan"] then\r
-                       reset(route:pan_azimuth_control(), disp, auto)\r
-                       reset(route:pan_elevation_control(), disp, auto)\r
-                       reset(route:pan_frontback_control(), disp, auto)\r
-                       reset(route:pan_lfe_control(), disp, auto)\r
-                       reset(route:pan_width_control(), disp, auto)\r
-               end\r
-       end\r
-\r
-       if pref["groups"] then\r
-               for group in Session:route_groups():iter() do\r
-                       Session:remove_route_group(group)\r
-               end\r
-       end\r
-       ::pass_script::\r
-       collectgarbage()\r
+    for route in Session:get_routes():iter() do\r
+        local disp = PBD.GroupControlDisposition.NoGroup\r
+        local auto = nil\r
+\r
+        if pref["auto"] then\r
+            auto = ARDOUR.AutoState.Off\r
+        end\r
+\r
+        if pref["eq"]    then reset_eq_controls(route, disp, auto) end\r
+        if pref["comp"]  then reset_comp_controls(route, disp, auto) end\r
+        if pref["sends"] then reset_send_controls(route, disp, auto) end\r
+        reset_plugins(route, pref)\r
+\r
+        if pref["fader"] then\r
+            reset(route:gain_control(), disp, auto)\r
+        end\r
+\r
+        if pref["phase"] then\r
+            reset(route:phase_control(), disp, auto)\r
+        end\r
+\r
+        if pref["trim"] then\r
+            reset(route:trim_control(), disp, auto)\r
+        end\r
+\r
+        if pref["mute"] then\r
+            reset(route:mute_control(), disp, auto)\r
+        end\r
+\r
+        if pref["solo"] then\r
+            reset(route:solo_control(), disp, auto)\r
+        end\r
+\r
+        if pref["pan"] then\r
+            reset(route:pan_azimuth_control(), disp, auto)\r
+            reset(route:pan_elevation_control(), disp, auto)\r
+            reset(route:pan_frontback_control(), disp, auto)\r
+            reset(route:pan_lfe_control(), disp, auto)\r
+            reset(route:pan_width_control(), disp, auto)\r
+        end\r
+    end\r
+\r
+    if pref["groups"] then\r
+        for group in Session:route_groups():iter() do\r
+            Session:remove_route_group(group)\r
+        end\r
+    end\r
+    ::pass_script::\r
+    collectgarbage()\r
 end end
\ No newline at end of file