public override void MouseDown(NSEvent theEvent) { // Console.WriteLine("Mouse Down: {0}", theEvent.ClickCount); CGPoint p = theEvent.LocationInWindow; mCurrentOval = new Oval(); mCurrentOval.StartPoint = this.ConvertPointFromView(p, null); mCurrentOval.Endpoint = mCurrentOval.StartPoint; Ovals.Add(mCurrentOval); NeedsDisplay = true; }
public void UndoRemove(NSObject o) { Oval oval = ((NSArray)o).GetItem <Oval>(0); Console.WriteLine("Undoing Remove oval"); // Undo add NSUndoManager undo = this.UndoManager; NSArray args = NSArray.FromObjects(new object[] { oval }); undo.RegisterUndoWithTarget(this, new Selector("undoAdd:"), args); Ovals.Add(oval); stretchView.Ovals = Ovals; stretchView.NeedsDisplay = true; }