Ejemplo n.º 1
0
        public void StopOperation(bool commit)
        {
            if (!_done)
            {
                _done = true;
                _pad.Canvas.MouseMove -= HandleMouseMove;
                _pad.Canvas.MouseDown -= HandleMouseDown;
                _pad.Canvas.KeyDown   -= HandleKeyDown;

                _pad.Canvas.Children.Remove(_selector);

                _pad.SetSketchItemEnable(true);

                _pad.Canvas.ContextMenu = _oldContextMenue;
            }
        }
Ejemplo n.º 2
0
        public AddConnectorOperation(ISketchItemDisplay pad, ConnectableBase from, Point p)
        {
            _from = from;
            _pad  = pad;
            //
            // at this point it is not sufficient to consider only the bounds
            // in case of a lengthy object, we would like to place that start point close to where
            // the user pressed the button!
            // hence we should query the from object for a decent start point
            //
            var start = p;// ConnectorUtilities.ComputeCenter(from.Bounds);

            _selector = new ConnectablePairSelector(start, p);

            _pad.Canvas.Children.Add(_selector);
            _selector.Visibility = Visibility.Visible;
            _pad.SetSketchItemEnable(false);

            _oldContextMenue       = _pad.Canvas.ContextMenu;
            _pad.Canvas.MouseMove += HandleMouseMove;
            _pad.Canvas.MouseDown += HandleMouseDown;
            _pad.Canvas.KeyDown   += HandleKeyDown;
            _pad.TakeSnapshot();
        }