Exemplo n.º 1
0
        void HandleMouseDoubleClick(object sender, swi.MouseButtonEventArgs e)
        {
            var args = e.ToEto(Control);

            Callback.OnMouseDoubleClick(Widget, args);
            e.Handled = args.Handled;
        }
Exemplo n.º 2
0
        void HandleMouseDown(object sender, swi.MouseButtonEventArgs e)
        {
            isMouseCaptured = false;
            var args = e.ToEto(Control);

            if (!(Control is swc.Control) && e.ClickCount == 2)
            {
                Callback.OnMouseDoubleClick(Widget, args);
            }
            if (!args.Handled)
            {
                WpfFrameworkElementHelper.ShouldCaptureMouse = true;
                Callback.OnMouseDown(Widget, args);
            }
            e.Handled = args.Handled || !WpfFrameworkElementHelper.ShouldCaptureMouse;
            if (WpfFrameworkElementHelper.ShouldCaptureMouse &&
                (
                    // capture mouse automatically so mouse moves outside control are captured until released
                    // but only if the control that was clicked is this control
                    (!UseMousePreview && (e.OriginalSource == ContainerControl || e.OriginalSource == Control)) ||
                    e.Handled
                ))
            {
                e.Handled       = true;
                isMouseCaptured = true;
                Control.CaptureMouse();
            }
        }
Exemplo n.º 3
0
        void HandleMouseUp(object sender, swi.MouseButtonEventArgs e)
        {
            var args = e.ToEto(Control, swi.MouseButtonState.Released);

            Callback.OnMouseUp(Widget, args);
            e.Handled = args.Handled;
            if (Control.IsMouseCaptured && isMouseCaptured)
            {
                Control.ReleaseMouseCapture();
                isMouseCaptured = false;
            }
        }
Exemplo n.º 4
0
        void HandleMouseDown(object sender, swi.MouseButtonEventArgs e)
        {
            isMouseCaptured = false;
            var args = e.ToEto(Control);

            if (!(Control is swc.Control) && e.ClickCount == 2)
            {
                Callback.OnMouseDoubleClick(Widget, args);
            }
            if (!args.Handled)
            {
                WpfFrameworkElementHelper.ShouldCaptureMouse = true;
                Callback.OnMouseDown(Widget, args);
            }
            e.Handled = args.Handled || !WpfFrameworkElementHelper.ShouldCaptureMouse;
            if (WpfFrameworkElementHelper.ShouldCaptureMouse && (!UseMousePreview || e.Handled))
            {
                e.Handled       = true;
                isMouseCaptured = true;
                Control.CaptureMouse();
            }
        }