public void AddBlocks(IEnumerable <SectionBlock.Data> blocks, bool noStack = false) { if (!noStack) { _stack.Push(blocks); } _mainBlock = null; _linksBlock = null; _allBlocks.Clear(); _normalBlocks.Clear(); foreach (var block in blocks) { AddBlock(block); } ArrangeBlocks(); }
private void AddBlock(SectionBlock.Data data) { var block = new SectionBlock(data); if (block.Type == BlockType.Main) { _mainBlock = block; } else if (block.Type == BlockType.Links) { _linksBlock = block; } else { _normalBlocks.Add(block); } _allBlocks.Add(block); block.LeftClick += BlockLeftClick; block.RightClick += BlockRightClick; }