public DrawAdorner(Canvas itemsPanel, Point?selectionStartPoint, IDesignerViewModel designerPanel, IDrawableItem drawableItem) : base(itemsPanel) { _itemsPanel = itemsPanel; _drawableInstance = drawableItem; _selectionStartPoint = selectionStartPoint; _designerPanel = designerPanel; }
private static void OnDesignerStartDraw(object sender, MouseButtonEventArgs e) { _selectedItemType = _designerViewModel.ItemToDraw.SelectedItemType; if (_selectedItemType != SelectedItemType.DrawItem) { return; } _drawableInstance = Activator.CreateInstance(_designerViewModel.ItemToDraw.GetType()) as IDrawableItem; if (_drawableInstance == null) { return; } _selectionStartPoint = e.GetPosition(_itemsPanel); _drawableInstance.X1 = _selectionStartPoint.Value.X; _drawableInstance.Y1 = _selectionStartPoint.Value.Y; e.Handled = true; }
public void Remove(IDrawableItem item) { renderItems.Remove(item); }
//public abstract void Render(SpriteBatch sb, Matrix proj); public void Add(IDrawableItem item) { renderItems.Add(item); }
public IItemDrawer Create(IDrawableItem drawableItem) { return _itemDrawers.First(i => i.CanDraw(drawableItem)); }