Esempio n. 1
0
        private CGMouseButton GetPressedCGButtons()
        {
            CGMouseButton pressedButtons = 0;

            if (GetMouseButtonState(MouseButton.Left))
            {
                pressedButtons |= CGMouseButton.kCGMouseButtonLeft;
            }
            if (GetMouseButtonState(MouseButton.Middle))
            {
                pressedButtons |= CGMouseButton.kCGMouseButtonCenter;
            }
            if (GetMouseButtonState(MouseButton.Right))
            {
                pressedButtons |= CGMouseButton.kCGMouseButtonRight;
            }
            if (GetMouseButtonState(MouseButton.Forward))
            {
                pressedButtons |= CGMouseButton.kCGMouseButtonForward;
            }
            if (GetMouseButtonState(MouseButton.Backward))
            {
                pressedButtons |= CGMouseButton.kCGMouseButtonBackward;
            }

            return(pressedButtons);
        }
Esempio n. 2
0
        private void PostMouseEvent(CGEventType type, CGMouseButton cgButton)
        {
            var curPos        = GetPosition();
            var cgPos         = new CGPoint(curPos.X, curPos.Y) - offset;
            var mouseEventRef = CGEventCreateMouseEvent(IntPtr.Zero, type, cgPos, cgButton);

            CGEventPost(CGEventTapLocation.kCGHIDEventTap, mouseEventRef);
            CFRelease(mouseEventRef);
        }
Esempio n. 3
0
        private void PostMouseEvent(CGEventType type, CGMouseButton cgButton)
        {
            var eventRef      = CGEventCreate();
            var curPos        = GetCursorPosition();
            var cgPos         = new CGPoint(curPos.X, curPos.Y);
            var mouseEventRef = CGEventCreateMouseEvent(ref eventRef, type, cgPos, cgButton);

            CGEventPost(ref mouseEventRef, type, cgPos, cgButton);
            CFRelease(eventRef);
            CFRelease(mouseEventRef);
        }
Esempio n. 4
0
 public extern static bool GetButtonState(CGEventSourceStateID stateID, CGMouseButton button);
Esempio n. 5
0
 public CGEvent(CGEventSource source, CGEventType mouseType, CGPoint mouseCursorPosition, CGMouseButton mouseButton)
 {
     handle = CGEventCreateMouseEvent(source == null ? IntPtr.Zero : source.Handle, mouseType, mouseCursorPosition, mouseButton);
 }
Esempio n. 6
0
 extern static IntPtr CGEventCreateMouseEvent(IntPtr source, CGEventType mouseType, CGPoint mouseCursorPosition, CGMouseButton mouseButton);
Esempio n. 7
0
 public extern static CGEventRef CGEventCreateMouseEvent(CGEventSourceRef source, CGEventType mouseType,
                                                         CGPoint mouseCursorPosition, CGMouseButton mouseButton);
Esempio n. 8
0
 private void SetMouseButtonState(MouseButton button, bool newState)
 {
     inputDictionary.UpdateState(button, newState);
     moveEvent      = GetMoveEventType();
     pressedButtons = GetPressedCGButtons();
 }
Esempio n. 9
0
		public CGEvent (CGEventSource source, CGEventType mouseType, CGPoint mouseCursorPosition, CGMouseButton mouseButton)
		{
			handle = CGEventCreateMouseEvent (source == null ? IntPtr.Zero : source.Handle, mouseType, mouseCursorPosition, mouseButton);
		}
Esempio n. 10
0
		extern static IntPtr CGEventCreateMouseEvent(IntPtr source, CGEventType mouseType, CGPoint mouseCursorPosition, CGMouseButton mouseButton);
Esempio n. 11
0
 public extern static CGEvent CGEventPost(ref CGEvent source, CGEventType mouseType, CGPoint mouseCursorPosition, CGMouseButton mouseButton);
Esempio n. 12
0
 public CGEvent(CGEventSource?source, CGEventType mouseType, CGPoint mouseCursorPosition, CGMouseButton mouseButton)
     : base(CGEventCreateMouseEvent(source.GetHandle(), mouseType, mouseCursorPosition, mouseButton), true)
 {
 }
Esempio n. 13
0
        internal static void ToTypeAndButton(MOUSEEVENTF flags, out CGEventType type, out CGMouseButton button)
        {
            EventEntry e;

            if (EventTypes.TryGetValue((MOUSEEVENTF)((uint)flags & 0x1FFFF), out e))
            {
                type   = e.type;
                button = e.button;
            }
            else
            {
                type   = CGEventType.Null;
                button = 0;
            }
        }
Esempio n. 14
0
 public static extern bool GetButtonState(CGEventSourceStateID stateID, CGMouseButton button);