public static void MoveElement(ElementStep elementStep) { if (!elementStep.Selector.IsValid() || elementStep.Selector.ElementType == ElementType.None || elementStep.Selector.ElementType == ElementType.Track) { return; } TrackEvent eventToMove = SelectorService.GetEvent(elementStep.Selector); Timecode timecode = Timecode.FromString(elementStep.DataPropertyList[DataPropertyHolder.TIMECODE].Value); eventToMove.Start = timecode; }
public static void RemoveElement(ElementStep elementStep) { if (!elementStep.Selector.IsValid() || elementStep.Selector.ElementType == ElementType.None) { return; } if (elementStep.Selector.ElementType == ElementType.Event) { TrackEvent eventToRemove = SelectorService.GetEvent(elementStep.Selector); if (eventToRemove != null) { eventToRemove.Track.Events.Remove(eventToRemove); } } if (elementStep.Selector.ElementType == ElementType.Track) { Track track = SelectorService.GetTrack(elementStep.Selector); track.Project.Tracks.Remove(track); } }
public static void SetEffectToElement(ElementStep elementStep) { if (!elementStep.Selector.IsValid() || elementStep.Selector.ElementType == ElementType.None) { return; } if (elementStep.Selector.ElementType == ElementType.Event) { TrackEvent trackEvent = SelectorService.GetEvent(elementStep.Selector); PlugInNode pin = SelectorService.GetPlugIn(elementStep.DataPropertyList[DataPropertyHolder.EFFECT_NAME].Value); string effectPrest = string.IsNullOrEmpty(elementStep.DataPropertyList[DataPropertyHolder.EFFECT_PRESET_NAME].Value) ? SelectorService.GetPresets(pin)[0] : elementStep.DataPropertyList[DataPropertyHolder.EFFECT_PRESET_NAME].Value; Effect effect = new Effect(pin); if (elementStep.Selector.IsAudio()) { (trackEvent as AudioEvent).Effects.Add(effect); } if (elementStep.Selector.IsVideo()) { (trackEvent as VideoEvent).Effects.Add(effect); } effect.Preset = effectPrest; } if (elementStep.Selector.ElementType == ElementType.Track) { Track track = SelectorService.GetTrack(elementStep.Selector); PlugInNode pin = SelectorService.GetPlugIn(elementStep.DataPropertyList[DataPropertyHolder.EFFECT_NAME].Value); string effectPrest = string.IsNullOrEmpty(elementStep.DataPropertyList[DataPropertyHolder.EFFECT_PRESET_NAME].Value) ? SelectorService.GetPresets(pin)[0] : elementStep.DataPropertyList[DataPropertyHolder.EFFECT_PRESET_NAME].Value; Effect effect = new Effect(pin); track.Effects.Add(effect); effect.Preset = effectPrest; } }