public void AddRemoveBreakPoint(IUINodeControl ctrl) { var breakPoint = this._breakPoints.FirstOrDefault(b => b.UINode == ctrl); if (null != breakPoint) { breakPoint.Dispose(); this._breakPoints.Remove(breakPoint); } else { breakPoint = new ActiveNodePicture(ctrl, this.parent, true); this._breakPoints.Add(breakPoint); } }
private void drawActiveNodes(IList <IUINodeControl> nodes) { var currentPics = new List <ActiveNodePicture>(); foreach (var node in nodes) { var prevImage = this.prevPics.FirstOrDefault(pic => pic.UINode == node); if (null == prevImage) { prevImage = new ActiveNodePicture(node, this.parent); prevImage.MouseClick += ActiveNode_MouseClick; } currentPics.Add(prevImage); this.prevPics.Remove(prevImage); } dispozePreviousNodeImages(); this.prevPics = currentPics; }