コード例 #1
0
        protected override void OnMouseDown(MouseButtonEventArgs e)
        {
            Point position = e.GetPosition(this);

            if (_input.Contains(position))
            {
                _pressedFigure = _input;
                InputMouseDownEvent.Invoke(this, e);
            }
            else if (_output.Contains(position))
            {
                _pressedFigure = _output;
                OutputMouseDownEvent.Invoke(this, e);
            }
            else if (_header.Contains(position))
            {
                _pressedFigure = _header;
                HeaderMouseDownEvent.Invoke(this, e);
            }
            else if (_body.Contains(position))
            {
                _pressedFigure = _body;
                BodyMouseDownEvent.Invoke(this, e);
            }
        }
コード例 #2
0
        private void OnButtonEvent(object sender, MouseButtonEventArgs e)
        {
            MouseButtonEventHandler handler = (MouseButtonEventHandler)eventDestination.Target;

            if (handler != null)
            {
                handler.Invoke(sender, e);
            }
            else
            {
                Deregister();
            }
        }
コード例 #3
0
        protected override void OnMouseUp(MouseButtonEventArgs e)
        {
            if (_header == _pressedFigure)
            {
                HeaderMouseUpEvent.Invoke(this, e);
            }
            else if (_input == _pressedFigure)
            {
                InputMouseUpEvent.Invoke(this, e);
            }
            else if (_output == _pressedFigure)
            {
                OutputMouseUpEvent.Invoke(this, e);
            }
            else if (_body == _pressedFigure)
            {
                BodyMouseUpEvent.Invoke(this, e);
            }

            canMove        = false;
            _pressedFigure = null;
        }