private void OpenBlock(IStoryboardItem item) { blocks.Push(currentBlock); if (item.Block == null) { throw new InvalidOperationException(); } Add(item); currentBlock = item.Block; }
private void StoreContextChangingItem(IStoryboardItem item) { var type = item.GetType(); for (var n = 0; n < contextItems.Count; n++) { if (contextItems[n].GetType() == type) { contextItems[n] = item; return; } } contextItems.Add(item); }
private void Add(IStoryboardItem item) => currentBlock.ForwardQueue.Enqueue(item);
public static T GetSingle <T>(this IStoryboardItem item) where T : IStoryboardItem => Get <T>(item.Block, true);
public static T Get <T>(this IStoryboardItem item) where T : IStoryboardItem => Get <T>(item.Block, false);