Ejemplo n.º 1
0
        void GestureNativeWindow_MouseDown(object sender, CancelableMouseEventArgs e)
        {
            try
            {
                if (e.Clicks == 1 &&
                    e.Button == System.Windows.Forms.MouseButtons.Right)
                {
                    isMouseDown = true;
                    preX        = e.X;
                    preY        = e.Y;

                    e.Cancel = true;

                    preMsg = e.Message;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Ejemplo n.º 2
0
        void GestureNativeWindow_MouseUp(object sender, CancelableMouseEventArgs e)
        {
            if (isMouseDown == true)
            {
                NativeMethods.InvalidateRect(this.handler, IntPtr.Zero, true);
                Application.DoEvents();

                e.Cancel = analyzer.Count > 10;

                if (e.Cancel)
                {
                }
                else
                {
                    e.Cancel = false;
                    base.WndProc(ref preMsg);
                }

                analyzer.Analyzer();
            }
            isMouseDown = false;
        }
Ejemplo n.º 3
0
    protected override void WndProc(ref Message m)
    {
        switch (m.Msg)
        {
        case 7:
            if (this.Focus != null)
            {
                this.Focus(this, EventArgs.Empty);
            }
            break;

        case 8:
            if (this.LostFocus != null)
            {
                this.LostFocus(this, EventArgs.Empty);
            }
            break;

        case 15:
        {
            RECT rect   = new RECT();
            bool bErase = false;
            NativeMethods.GetUpdateRect(base.Handle, ref rect, ref bErase);
            base.WndProc(ref m);
            if (this.Paint != null)
            {
                PaintEventArgs e = new PaintEventArgs(this.Graphics, new Rectangle(rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top));
                this.Paint(this, e);
            }
            return;
        }

        case 0x10:
            this.OnClose();
            break;

        case 20:
            return;

        case 0x114:
        case 0x115:
        {
            ScrollEventArgs args = new ScrollEventArgs(ScrollEventType.First, 0, ScrollOrientation.HorizontalScroll);
            this.OnScroll(args);
            break;
        }

        case 0x200:
            if (this.MouseMove != null)
            {
                this.MouseMove(this, new MouseEventArgs(MouseButtons, 0, NativeMethods.SignedLOWORD(m.LParam), NativeMethods.SignedHIWORD(m.LParam), 0));
            }
            break;

        case WM_LBUTTONDOWN:
            if (this.MouseDown != null)
            {
                var args = new CancelableMouseEventArgs(MouseButtons, 1, NativeMethods.SignedLOWORD(m.LParam), NativeMethods.SignedHIWORD(m.LParam), 0);
                args.Message = m;

                this.MouseDown(this, args);

                if (args.Cancel)
                {
                    return;
                }
            }
            break;

        case WM_MBUTTONDOWN:
            if (this.MouseDown != null)
            {
                var args = new CancelableMouseEventArgs(MouseButtons, 1, NativeMethods.SignedLOWORD(m.LParam), NativeMethods.SignedHIWORD(m.LParam), 0);
                args.Message = m;

                this.MouseDown(this, args);

                if (args.Cancel)
                {
                    return;
                }
            }
            break;

        case WM_RBUTTONDOWN:
            if (this.MouseDown != null)
            {
                var args = new CancelableMouseEventArgs(MouseButtons, 1, NativeMethods.SignedLOWORD(m.LParam), NativeMethods.SignedHIWORD(m.LParam), 0);
                args.Message = m;

                this.MouseDown(this, args);

                if (args.Cancel)
                {
                    return;
                }
            }
            break;

        case WM_LBUTTONUP:
            if (this.MouseUp != null)
            {
                var args = new CancelableMouseEventArgs(MouseButtons, 0, NativeMethods.SignedLOWORD(m.LParam), NativeMethods.SignedHIWORD(m.LParam), 0);
                args.Message = m;

                this.MouseUp(this, args);

                if (args.Cancel)
                {
                    return;
                }
            }
            break;

        case WM_RBUTTONUP:
            if (this.MouseUp != null)
            {
                var args = new CancelableMouseEventArgs(MouseButtons, 0, NativeMethods.SignedLOWORD(m.LParam), NativeMethods.SignedHIWORD(m.LParam), 0);
                args.Message = m;

                this.MouseUp(this, args);

                if (args.Cancel)
                {
                    return;
                }
            }
            break;

        case WM_MBUTTONUP:
            if (this.MouseUp != null)
            {
                var args = new CancelableMouseEventArgs(MouseButtons, 0, NativeMethods.SignedLOWORD(m.LParam), NativeMethods.SignedHIWORD(m.LParam), 0);
                args.Message = m;

                this.MouseUp(this, args);

                if (args.Cancel)
                {
                    return;
                }
            }
            break;

        case 0x100:
        {
            base.WndProc(ref m);
            Keys keyData = ((Keys)((int)m.WParam)) | ModifierKeys;
            this.OnKeyDown(new KeyEventArgs(keyData));
            return;
        }

        case 0x101:
        {
            base.WndProc(ref m);
            Keys keys2 = ((Keys)((int)m.WParam)) | ModifierKeys;
            this.OnKeyUp(new KeyEventArgs(keys2));
            return;
        }

        case 0x102:
        case 0x106:
            this.OnKeyPress(new KeyPressEventArgs((char)((ushort)((long)m.WParam))));
            break;

        case 0x47:
            this.OnResize();
            break;
        }
        base.WndProc(ref m);
    }