public void RemoveSingleCanvasItem(CanvasItem item) { if (itemsList.Contains(itemsData[item])) { itemsList.Remove(itemsData[item]); } diagramRouter.RemoveItem(item); }
public bool ContainsLink(CanvasItem from, CanvasItem to) { foreach (Route route in diagramRouter.Routes) { if (route.From == from && route.To == to) { return(true); } } return(false); }
/// <summary> /// Retruns a copy of the the canvas items list as an array. /// </summary> public CanvasItem[] GetCanvasItems() { CanvasItem[] items = new CanvasItem[itemsList.Count]; int i = 0; foreach (CanvasItemData item in itemsList) { items[i++] = item.Item; } return(items); }
/// <summary> /// Do not call it directly /// </summary> public void AddSingleCanvasItem(CanvasItem item) { diagramRouter.AddItem(item); CanvasItemData itemData = new CanvasItemData(item, SizeGripMouseEntered, SizeGripMouseLeft); itemsData[item] = itemData; itemsList.Add(itemData); item.RedrawNeeded += HandleRedraw; item.LayoutChanged += HandleItemLayoutChange; item.PositionChanging += HandleItemPositionChange; item.SizeChanging += HandleItemSizeChange; LayoutChanged(this, EventArgs.Empty); }
public CanvasItemData(CanvasItem item, EventHandler <SizeGripEventArgs> SizeGripMouseEntered, EventHandler <SizeGripEventArgs> SizeGripMouseLeft) { this.item = item; focusDecorator = new FocusDecorator(item); sizeGripDecorator = new SizeGripDecorator(item); sizeGripDecorator.SizeGripMouseEnter += SizeGripMouseEntered; sizeGripDecorator.SizeGripMouseLeave += SizeGripMouseLeft; item.AddDecorator(focusDecorator); item.AddDecorator(sizeGripDecorator); }
public void RemoveCanvasItem(CanvasItem item) { item.RemovedFromCanvas(this); LayoutChanged(this, EventArgs.Empty); }
public void AddCanvasItem(CanvasItem item) { item.AddToCanvas(this); LayoutChanged(this, EventArgs.Empty); }