Example
====== Set Playback's Shape Spread ======
^ by: | Florian Engelmohr |
^ published: | January 2019 |
^ description: | change some playback's shape spread |
^ remarks: | |
{{tag>playback shape spread include blind}}
**This is work in progress and may need some improvements.**
See http://forum.avolites.com/viewtopic.php?f=20&t=6068&p=21840 for the problem and the current solution.
==== functions ====
* [[:macros:function:ActionScript.SetProperty.Boolean]]
* [[:macros:function:Programmer.SetBlindMode]]
* [[:macros:function:Include.SelectPlaybackHandle]]
* [[:macros:function:ActionScript.SetProperty.Integer]]
* [[:macros:function:Playbacks.MergePlaybackCue]]
* [[:macros:function:Programmer.Editor.Clear]]
==== affected properties ====
* [[:macros:property:Programmer.BlindActive]]
* [[:macros:property:Editor.Shapes.Spread]]
A longer file, with entries for more playbacks, is available here: {{ :macros:example:fx-move-spread-1.xml |}}. **Know that this is not running flawlessly - see http://forum.avolites.com/viewtopic.php?f=20&t=6068&p=21840 for details.**
===== Code =====
set effect spread to 1
ActionScript.SetProperty.Boolean("Programmer.BlindActive", true)
Programmer.SetBlindMode(false, 0)
Include.SelectPlaybackHandle("Location=PlaybackWindow,1,1")
ActionScript.SetProperty.Integer('Editor.Shapes.Spread',1)
Playbacks.MergePlaybackCue("Location=PlaybackWindow,1,1", true)
Programmer.Editor.Clear(128, true, false, 0)
Include.SelectPlaybackHandle("Location=PlaybackWindow,1,2")
ActionScript.SetProperty.Integer('Editor.Shapes.Spread',1)
Playbacks.MergePlaybackCue("Location=PlaybackWindow,1,2", true)
Programmer.Editor.Clear(128, true, false, 0)
ActionScript.SetProperty.Boolean("Programmer.BlindActive", false)
Programmer.SetBlindMode(false, 0)
===== 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 whole workload is done in blind mode, thus the first and last two steps enter and exit blind mode, as outlined in [[macros:example:blindmodeonoff|]]. Once in blind mode, the playback is included, the shape spread set, and the programmer merged into the playback:
* ''Include.SelectPlaybackHandle("Location=PlaybackWindow,1,1")'' includes a playback selected by its location
* ''ActionScript.SetProperty.Integer('Editor.Shapes.Spread',1)'' sets the spread value (here: 1)
* ''Playbacks.MergePlaybackCue("Location=PlaybackWindow,1,1", true)'' merges the programmer back into the playback
* ''Programmer.Editor.Clear(128, true, false, 0)'' clears the programmer using a mask (128 is the FX attribte bank)
===== How to use it =====
* [[:macros:deploying|make this macro available]]
* stick to a scheme of always using particular playback handles, as only these handles will be affected by this macro
* call the macro to quickly set a shape spread
~~DISCUSSION~~