private void PreviewPlay() { if (_previewContext == null) { _previewContext = VixenSystem.Contexts.CreatePreviewContext("Effect Preview"); _previewContext.Sequence = _sequenceEditorForm.Sequence; _previewContext.Start(); } else if (!_previewContext.IsRunning) { Logging.Warn("Preview context was not running!"); _previewContext.Start(); } IEnumerable <EffectNode> orderedNodes = Elements.Select(x => x.EffectNode).OrderBy(x => x.StartTime).ToList(); if (orderedNodes.Any()) { TimeSpan startOffset = orderedNodes.First().StartTime; TimeSpan duration = orderedNodes.Last().EndTime - startOffset; List <EffectNode> nodesToPlay = orderedNodes.Select(effectNode => new EffectNode(effectNode.Effect, effectNode.StartTime - startOffset)).ToList(); _previewContext.Execute(nodesToPlay); _previewLoopTimer.Interval = duration.TotalMilliseconds; _previewLoopTimer.Start(); } }
/// <summary> /// 初始化预览 /// </summary> void InitPreview() { _previewContext = new PreviewContext(this, lv); lv.FocusedItemChanged += (s, e) => { _previewContext.UpdatePreview(lv.FocusedItem?.Resource); }; }
public PreviewContext CreatePreviewContext(string name) { if (string.IsNullOrEmpty(name)) { throw new ArgumentNullException("name"); } var context = new PreviewContext(name); _AddContext(context); return(context); }
public static UserAssetPreviewModel Preview(byte[] doc) { XDocument document = new MemoryStream(doc).Using(XDocument.Load); PreviewContext ctx = new PreviewContext(document); foreach (var item in ctx.elements) { ctx.GetEntity(item.Key); } return(new UserAssetPreviewModel { Lines = ctx.previews.Values.ToMList() }); }
protected virtual Object EvaluatePreview(PreviewContext previewContext) { return(EvaluateObject()); }
protected override object EvaluatePreview(PreviewContext previewContext) { return(base.EvaluatePreview(previewContext)); }