private void Canvas_PreviewMouseRightButtonUp(object sender, MouseButtonEventArgs e) { Point point = e.GetPosition((IInputElement)sender); CustomStroke clicked = null; Canvas.Strokes.ToList().ForEach(stroke => { CustomStroke customStroke = (CustomStroke)stroke; if (!customStroke.isSelectable()) { return; } if (!customStroke.HitTest(point)) { return; } clicked = customStroke; }); if (clicked != null) { ((VueModele)this.DataContext).Edit.Execute(clicked); } }
private void Canvas_PreviewMouseWheel(object sender, MouseWheelEventArgs e) { Point point = e.GetPosition((IInputElement)sender); CustomStroke scrolled = null; Canvas.Strokes.ToList().ForEach(stroke => { CustomStroke customStroke = (CustomStroke)stroke; if (!customStroke.isSelected()) { return; } if (!customStroke.HitTest(point)) { return; } scrolled = customStroke; }); /* UNCOMMENT TO ENABLE ROTATING */ //if (scrolled is ShapeStroke) // ((ShapeStroke)scrolled).Rotation = ((ShapeStroke)scrolled).Rotation += e.Delta / 8.0; }