Example ====== Inhibit selected fixtures ====== ^ by: | Sebastian Beutel | ^ published: | here, October 2022 | ^ description: | inhibits selected fixtures: sets them @0% and freezes | ^ remarks: | idea by John Richardson, see https://www.facebook.com/groups/Avolites/posts/2641102656021952/ | See [[macros:example:inhibitselectedfixtures_v2|]] - that freezes only the fixtures' dimer while here we freeze the entire fixtures. {{tag>inhibit set dimmer selected freeze clear}} > The inhibit is just a quick way of dousing a lamp or lamps and then reinstating them without affecting anything in the programmer or within any cues. So I may be running an effect on some lamps and I just need to kill it for a second and then turn it back on without messing about with the programmer or cues. The 'without messing with the programmer' part isn't possible: you need to select the fixtures which you want to inhibit before calling the macro -- and selecting fixtures brings them into the programmer. There is no way to avoid this. ==== functions ==== * [[:macros:function:Programmer.Editor.Fixtures.IncrementDimmer]] * [[:macros:function:Programmer.Editor.Selection.GetSelectedHandles]] * [[:macros:function:Fixtures.Patch.FreezeFixtures]] * [[:macros:function:Programmer.Editor.ClearAll]] ===== Code ===== Inhibit On. Programmer.Editor.Fixtures.IncrementDimmer(-10000, 1.0, true) Programmer.Editor.Selection.GetSelectedHandles("Windows.PatchView.Handles") Programmer.Editor.Fixtures.Patch.FreezeFixtures(Windows.PatchView.Handles, True) Programmer.Editor.ClearAll(false, false) Inhibit Off Programmer.Editor.Selection.GetSelectedHandles("Windows.PatchView.Handles") Programmer.Editor.Fixtures.Patch.FreezeFixtures(Windows.PatchView.Handles, False) Programmer.Editor.ClearAll(false, false) ===== Explanation ===== This explains the functional steps within the sequence. For all the other XML details please refer to [[:macros:formats_and_syntax#xml_format|Formats and syntax]] The first macro ''Inhibit Selected Fixtures'' sets the currently selected fixtures' dimmer at 0% and freezes them: * ''Programmer.Editor.Fixtures.IncrementDimmer'' sets the dimmer at 0 * ''Programmer.Editor.Selection.GetSelectedHandles("Windows.PatchView.Handles")'' puts the current selection into a property * ''Programmer.Editor.Fixtures.Patch.FreezeFixtures(Windows.PatchView.Handles, True)'' freezes the fixtures which are in this property * ''Programmer.Editor.ClearAll(false, false)'' clears the programmer The second macro ''Uninhibit Selected Fixtures'' unfreezes the currently selected fixtures: * ''Programmer.Editor.Selection.GetSelectedHandles("Windows.PatchView.Handles")'' puts the current selection into a property * ''Programmer.Editor.Fixtures.Patch.FreezeFixtures(Windows.PatchView.Handles, False)'' unfreezes the fixtures which are in this property * ''Programmer.Editor.ClearAll(false, false)'' clears the programmer ===== How to use it ===== - [[:macros:deploying|make this macro available]] - in order to inhibit fixtures select them and fire the first macro - in order to uninhibit fixtures select them and fire the second macro ~~DISCUSSION~~