Example ====== Playback - Set release time ====== ^ by: | Sebastian Beutel | ^ published: | August 2018 | ^ description: | Set a playback's release time | ^ remarks: | | This is also an example how ''time:x'' is parsed into a time value. {{tag> playback release time }} ==== functions ==== * [[:macros:function:Handles.ClearSelection]] * [[:macros:function:ActionScript.SetProperty]] ==== affected properties ==== * [[:macros:property:Playbacks.Editor.SelectedPlayback]] * [[:macros:property:Handles.SourceHandle]] * [[:macros:property:Playbacks.Editor.Times.PlaybackReleaseTime]] ==== control structures ==== * [[macros:control_structures|step condition]] ===== Code ===== Handles.ClearSelection() ActionScript.SetProperty("Playbacks.Editor.SelectedPlayback", null) Handles.SetSourceHandle("PlaybackWindow", 0) ActionScript.SetProperty("Playbacks.Editor.SelectedPlayback", Handles.SourceHandle) ActionScript.SetProperty("Playbacks.Editor.Times.PlaybackReleaseTime", time:0) Handles.SetSourceHandle("PlaybackWindow", 1) ActionScript.SetProperty("Playbacks.Editor.SelectedPlayback", Handles.SourceHandle) ActionScript.SetProperty("Playbacks.Editor.Times.PlaybackReleaseTime", time:0) Handles.ClearSelection() ActionScript.SetProperty("Playbacks.Editor.SelectedPlayback", null) ===== 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 and last two lines ''Handles.ClearSelection()'' and ''ActionScript.SetProperty("Playbacks.Editor.SelectedPlayback", null)'' make handle and playback selection empty so that no other handle/playback is affected by accident. * ''Handles.SetSourceHandle("PlaybackWindow", 0)'' selects a playback as source handle * '''': only if this is a cue playback handle (and not maybe a macro or group handle which would break the macro)... * ... ''ActionScript.SetProperty("Playbacks.Editor.SelectedPlayback", Handles.SourceHandle)'' derive the playback from the given handle (the playback holds the time, not the handle) * ''ActionScript.SetProperty("Playbacks.Editor.Times.PlaybackReleaseTime", time:0)'' finally sets the releaseTime to the value. ''time:0'' tells the parser what to do with the number 0, i.e. parse it as time value. ===== How to use it ===== * [[:macros:deploying|make this macro available]] * while it's well possible to create some macros to set some playbacks to a given release time, it does make more sense to integrate this into a bigger context like [[macros:example:createworkspaces|]] in order to setup a known show environment. ~~DISCUSSION~~