コード例 #1
0
ファイル: StretchView.cs プロジェクト: vijeshrpillai/BNR
        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;
        }
コード例 #2
0
        public void UndoAdd(NSObject o)
        {
            Oval oval = ((NSArray)o).GetItem <Oval>(0);

            Console.WriteLine("Undoing Add Oval");

            // Add the inverse of this operation to the undo stack
            NSUndoManager undo = this.UndoManager;
            NSArray       args = NSArray.FromObjects(new object[] { oval });

            undo.RegisterUndoWithTarget(this, new Selector("undoRemove:"), args);

            Ovals.Remove(oval);
            stretchView.Ovals        = Ovals;
            stretchView.NeedsDisplay = true;
        }
コード例 #3
0
        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;
        }