/// <summary>
		/// Initializes a new instance of the <see cref="MousePressWindowViewModel"/> class.
		/// </summary>
		public MousePressWindowViewModel(MousePress mousePress)
		{
			//TODO: 동일한 키를 사용하는 항목이 이미 추가되었습니다 에러를 해결해야 한다.  아마도 뭔가 

			Argument.IsNotNull(() => mousePress);

			this.MousePress = mousePress;
			FillKeyList();
		}
Esempio n. 2
0
        protected virtual void OnPress(MouseButtonActionInfo info)
        {
            State = ControlState.Pressed;

            if (MousePress != null)
            {
                MousePress.Invoke(this, info);
            }
        }
Esempio n. 3
0
    /// <summary>
    /// Called once-per-frame (invoked from other script)
    /// </summary>
    public void update()
    {
        if (Input.GetMouseButtonUp(1))
        {
            var mousePress = new MousePress();

            mousePress.button   = 1;
            mousePress.time     = Time.time;
            mousePress.position = Input.mousePosition;
            mousePressData.Add(mousePress);
        }
    }
Esempio n. 4
0
        /// <summary>
        /// Clicar com o mouse
        /// </summary>
        public void SetMouseClick(MouseButtons eMouseButtons, MousePress eMousePress, int iX, int iY, int iImgWidth, int iImgHeight)
        {
            try
            {
                CalcRelativePosition(ref iX, ref iY, iImgWidth, iImgHeight);

                if (eMouseButtons == MouseButtons.Left)
                {
                    switch (eMousePress)
                    {
                    case MousePress.DOWN: WindowsControlClass.mouse_event((uint)WindowsControlClass.MouseEventTFlags.LEFTDOWN, (uint)iX, (uint)iY, 0, UIntPtr.Zero);
                        break;

                    case MousePress.UP: WindowsControlClass.mouse_event((uint)WindowsControlClass.MouseEventTFlags.LEFTUP, (uint)iX, (uint)iY, 0, UIntPtr.Zero);
                        break;

                    case MousePress.CLICK:
                        WindowsControlClass.mouse_event((uint)WindowsControlClass.MouseEventTFlags.LEFTDOWN, (uint)iX, (uint)iY, 0, UIntPtr.Zero);
                        WindowsControlClass.mouse_event((uint)WindowsControlClass.MouseEventTFlags.LEFTUP, (uint)iX, (uint)iY, 0, UIntPtr.Zero);
                        break;
                    }
                }
                else
                if (eMouseButtons == MouseButtons.Right)
                {
                    switch (eMousePress)
                    {
                    case MousePress.DOWN: WindowsControlClass.mouse_event((uint)WindowsControlClass.MouseEventTFlags.RIGHTDOWN, (uint)iX, (uint)iY, 0, UIntPtr.Zero);
                        break;

                    case MousePress.UP: WindowsControlClass.mouse_event((uint)WindowsControlClass.MouseEventTFlags.RIGHTUP, (uint)iX, (uint)iY, 0, UIntPtr.Zero);
                        break;

                    case MousePress.CLICK:
                        WindowsControlClass.mouse_event((uint)WindowsControlClass.MouseEventTFlags.RIGHTDOWN, (uint)iX, (uint)iY, 0, UIntPtr.Zero);
                        WindowsControlClass.mouse_event((uint)WindowsControlClass.MouseEventTFlags.RIGHTUP, (uint)iX, (uint)iY, 0, UIntPtr.Zero);
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(ex.Message);
            }

            System.Console.WriteLine("Botão do mouse pressionado...");
        }
Esempio n. 5
0
        public virtual void Update(Game context)
        {
            #region Fire Mouse Events
            int mouseX = context.MouseX;
            int mouseY = context.MouseY;

            if ((mouseX != mouseLastX || mouseY != mouseLastY) && PointWithin(mouseX, mouseY, TopLeft, BottomRight))
            {
                MouseMove?.Invoke(mouseX, mouseY);
                if (context.GetMouse(Mouse.Any).Down)
                {
                    for (int i = 0; i < 3; i++)
                    {
                        Mouse current = (Mouse)i;
                        if (context.GetMouse(current).Down)
                        {
                            MouseDrag?.Invoke(mouseX, mouseY, current);
                        }
                    }
                }
            }
            mouseLastX = mouseX;
            mouseLastY = mouseY;

            for (int i = 0; i < 3; i++)
            {
                Mouse current = (Mouse)i;
                if (context.GetMouse(current).Down)
                {
                    MouseDown?.Invoke(mouseX, mouseY, current);
                }
                if (context.GetMouse(current).Up)
                {
                    MouseUp?.Invoke(mouseX, mouseY, current);
                }
                if (context.GetMouse(current).Pressed)
                {
                    MousePress?.Invoke(mouseX, mouseY, current);
                }
            }
            #endregion Fire Mouse Events
        }
Esempio n. 6
0
        } // UpdateMouse

        private void UpdateButtons()
        {

            MouseEventArgs e = new MouseEventArgs();

            foreach (InputMouseButton btn in mouseButtons)
            {
                ButtonState bs;

                if      (btn.Button == MouseButton.Left)     bs = Mouse.State.LeftButton;
                else if (btn.Button == MouseButton.Right)    bs = Mouse.State.RightButton;
                else if (btn.Button == MouseButton.Middle)   bs = Mouse.State.MiddleButton;
                else if (btn.Button == MouseButton.XButton1) bs = Mouse.State.XButton1;
                else if (btn.Button == MouseButton.XButton2) bs = Mouse.State.XButton2;
                else continue;

                bool pressed = (bs == ButtonState.Pressed); // The current state

                if (pressed && !btn.Pressed) // If is pressed and the last frame wasn't pressed.
                {
                    btn.Pressed = true;
                    BuildMouseEvent(btn.Button, ref e);

                    if (MouseDown != null) MouseDown.Invoke(this, e);
                    if (MousePress != null) MousePress.Invoke(this, e);
                }
                else if (!pressed && btn.Pressed) // If isn't pressed and the last frame was pressed.
                {
                    btn.Pressed = false;
                    BuildMouseEvent(btn.Button, ref e);

                    if (MouseUp != null) MouseUp.Invoke(this, e);
                }
                else if (pressed && btn.Pressed) // If is pressed and was pressed.
                {
                    e.Button = btn.Button;
                    BuildMouseEvent(btn.Button, ref e);
                    if (MousePress != null) MousePress.Invoke(this, e);
                }
            }
        } // UpdateButtons
        ////////////////////////////////////////////////////////////////////////////

        ////////////////////////////////////////////////////////////////////////////
        private void UpdateButtons(MouseState state, GameTime gameTime)
        {
#if (!XBOX && !XBOX_FAKE)
            MouseEventArgs e = new MouseEventArgs();

            foreach (InputMouseButton btn in mouseButtons)
            {
                ButtonState bs = ButtonState.Released;

                if (btn.Button == MouseButton.Left)
                {
                    bs = state.LeftButton;
                }
                else if (btn.Button == MouseButton.Right)
                {
                    bs = state.RightButton;
                }
                else if (btn.Button == MouseButton.Middle)
                {
                    bs = state.MiddleButton;
                }
                else if (btn.Button == MouseButton.XButton1)
                {
                    bs = state.XButton1;
                }
                else if (btn.Button == MouseButton.XButton2)
                {
                    bs = state.XButton2;
                }
                else
                {
                    continue;
                }

                bool pressed = (bs == ButtonState.Pressed);
                if (pressed)
                {
                    double ms = gameTime.ElapsedGameTime.TotalMilliseconds;
                    if (pressed)
                    {
                        btn.Countdown -= ms;
                    }
                }

                if ((pressed) && (!btn.Pressed))
                {
                    btn.Pressed = true;
                    BuildMouseEvent(state, btn.Button, ref e);

                    if (MouseDown != null)
                    {
                        MouseDown.Invoke(this, e);
                    }
                    if (MousePress != null)
                    {
                        MousePress.Invoke(this, e);
                    }
                }
                else if ((!pressed) && (btn.Pressed))
                {
                    btn.Pressed   = false;
                    btn.Countdown = RepeatDelay;
                    BuildMouseEvent(state, btn.Button, ref e);

                    if (MouseUp != null)
                    {
                        MouseUp.Invoke(this, e);
                    }
                }
                else if (btn.Pressed && btn.Countdown < 0)
                {
                    e.Button      = btn.Button;
                    btn.Countdown = RepeatRate;
                    BuildMouseEvent(state, btn.Button, ref e);

                    if (MousePress != null)
                    {
                        MousePress.Invoke(this, e);
                    }
                }
            }
#endif
        }
Esempio n. 8
0
 void IEventListener.ListenMousePress(UIMousePressEventArgs e)
 {
     MousePress?.Invoke(this, e);
 }
Esempio n. 9
0
        /// <summary>
        /// defines all of the actions
        /// </summary>
        public void DefineActions()
        {
            Click              click             = new Click();
            Clear              clear             = new Clear();
            Close              close             = new Close();
            Exit               exit              = new Exit();
            Next_Tab           next_tab          = new Next_Tab();
            Previous_Tab       previous_tab      = new Previous_Tab();
            WindowsCtrlTab     wtab              = new WindowsCtrlTab();
            Idle               idle              = new Idle();
            Next_Selection     nextSelection     = new Next_Selection();
            Previous_Selection previousSelection = new Previous_Selection();
            Scroll_Down        scrollDown        = new Scroll_Down();
            Scroll_Up          scrollUp          = new Scroll_Up();
            MousePress         mousePress        = new MousePress();
            MouseRelease       mouseRelease      = new MouseRelease();
            MultipleSelection  multipleSelection = new MultipleSelection();
            Maximize           maximize          = new Maximize();
            Minimize           minimize          = new Minimize();
            Lock               locking           = new Lock();
            Unlock             unlocking         = new Unlock();
            Undo               undo              = new Undo();
            Redo               redo              = new Redo();
            Open               open              = new Open();


            //defining the click actions
            QlikMove.StandardHelper.ActionCore.Action clickAction = new QlikMove.StandardHelper.ActionCore.Action(ActionName.SIMPLE_SELECTION, new ActionPart[1] {
                click
            });
            this.AddAction(clickAction);

            //defining the mouse press actions
            QlikMove.StandardHelper.ActionCore.Action mousePressedAction = new QlikMove.StandardHelper.ActionCore.Action(ActionName.MOUSE_PRESS, new ActionPart[1] {
                mousePress
            });
            this.AddAction(mousePressedAction);

            //defining the mouse release actions
            QlikMove.StandardHelper.ActionCore.Action mouseReleasedAction = new QlikMove.StandardHelper.ActionCore.Action(ActionName.MOUSE_RELEASE, new ActionPart[1] {
                mouseRelease
            });
            this.AddAction(mouseReleasedAction);


            //defining the exit action
            QlikMove.StandardHelper.ActionCore.Action exitAction = new StandardHelper.ActionCore.Action(ActionName.EXIT, new ActionPart[1] {
                exit
            });
            this.AddAction(exitAction);

            //defining the next action
            QlikMove.StandardHelper.ActionCore.Action nextAction = new StandardHelper.ActionCore.Action(ActionName.NEXT_TAB, new ActionPart[1] {
                next_tab
            });
            this.AddAction(nextAction);

            //defining the previous action
            QlikMove.StandardHelper.ActionCore.Action previousAction = new StandardHelper.ActionCore.Action(ActionName.PREVIOUS_TAB, new ActionPart[1] {
                previous_tab
            });
            this.AddAction(previousAction);

            //defining the menu action
            QlikMove.StandardHelper.ActionCore.Action tabsAction = new QlikMove.StandardHelper.ActionCore.Action(ActionName.MENU, new ActionPart[1] {
                wtab
            });
            this.AddAction(tabsAction);

            //defining the idle action
            QlikMove.StandardHelper.ActionCore.Action idleAction = new QlikMove.StandardHelper.ActionCore.Action(ActionName.IDLE, new ActionPart[1] {
                idle
            });
            this.AddAction(idleAction);

            //defining the next selection action
            QlikMove.StandardHelper.ActionCore.Action nextSelectionAction = new QlikMove.StandardHelper.ActionCore.Action(ActionName.NEXT_SELECTION, new ActionPart[1] {
                nextSelection
            });
            this.AddAction(nextSelectionAction);

            //defining the previous selection action
            QlikMove.StandardHelper.ActionCore.Action previousSelectionAction = new QlikMove.StandardHelper.ActionCore.Action(ActionName.PREVIOUS_SELECTION, new ActionPart[1] {
                previousSelection
            });
            this.AddAction(previousSelectionAction);

            //defining the scrolling down action
            QlikMove.StandardHelper.ActionCore.Action scrollDownAction = new StandardHelper.ActionCore.Action(ActionName.SCROLL_DOWN, new ActionPart[1] {
                scrollDown
            });
            this.AddAction(scrollDownAction);

            //defining the scrolling up action
            QlikMove.StandardHelper.ActionCore.Action scrollUpAction = new StandardHelper.ActionCore.Action(ActionName.SCROLL_UP, new ActionPart[1] {
                scrollUp
            });
            this.AddAction(scrollUpAction);

            //defining the multiple selection action
            QlikMove.StandardHelper.ActionCore.Action multipleSelectionAction = new StandardHelper.ActionCore.Action(ActionName.MULTIPLE_SELECTION, new ActionPart[1] {
                multipleSelection
            });
            this.AddAction(multipleSelectionAction);

            //defining the maximize action
            QlikMove.StandardHelper.ActionCore.Action maximizeAction = new StandardHelper.ActionCore.Action(ActionName.MAX, new ActionPart[1] {
                maximize
            });
            this.AddAction(maximizeAction);

            //defining the minimize action
            QlikMove.StandardHelper.ActionCore.Action minimizeAction = new StandardHelper.ActionCore.Action(ActionName.MIN, new ActionPart[1] {
                minimize
            });
            this.AddAction(minimizeAction);

            //defining the clear action
            QlikMove.StandardHelper.ActionCore.Action clearAction = new StandardHelper.ActionCore.Action(ActionName.CLEAR, new ActionPart[1] {
                clear
            });
            this.AddAction(clearAction);

            //defining the undo action
            QlikMove.StandardHelper.ActionCore.Action undoAction = new StandardHelper.ActionCore.Action(ActionName.UNDO, new ActionPart[1] {
                undo
            });
            this.AddAction(undoAction);

            //defining the redo action
            QlikMove.StandardHelper.ActionCore.Action redoAction = new StandardHelper.ActionCore.Action(ActionName.REDO, new ActionPart[1] {
                redo
            });
            this.AddAction(redoAction);

            //defining the locking action
            QlikMove.StandardHelper.ActionCore.Action lockingAction = new StandardHelper.ActionCore.Action(ActionName.LOCK, new ActionPart[1] {
                locking
            });
            this.AddAction(lockingAction);

            //defining the unlocking action
            QlikMove.StandardHelper.ActionCore.Action unlockingAction = new StandardHelper.ActionCore.Action(ActionName.UNLOCK, new ActionPart[1] {
                unlocking
            });
            this.AddAction(unlockingAction);

            //defining the close action
            QlikMove.StandardHelper.ActionCore.Action closeAction = new StandardHelper.ActionCore.Action(ActionName.CLOSE, new ActionPart[1] {
                close
            });
            this.AddAction(closeAction);

            //defining the open action
            QlikMove.StandardHelper.ActionCore.Action openAction = new StandardHelper.ActionCore.Action(ActionName.OPEN, new ActionPart[1] {
                open
            });
            this.AddAction(openAction);

            LogHelper.logInput("Actions defined", LogHelper.logType.INFO, this);
        }
Esempio n. 10
0
        /// <param name="gameTime">Snapshot of the application's timing values.</param>
        /// <param name="state">Current state of the mouse device.</param>
        /// <summary>
        /// Updates the state of the Mouse buttons.
        /// </summary>
        private void UpdateButtons(MouseState state, GameTime gameTime)
        {
#if (!XBOX && !XBOX_FAKE)
            var e = new MouseEventArgs();


// Update the state of the buttons in the mouse button list.
            foreach (var btn in mouseButtons)
            {
// Current button state of the current gamepad button.
                var bs = ButtonState.Released;

                if (btn.Button == MouseButton.Left)
                {
                    bs = state.LeftButton;
                }
                else if (btn.Button == MouseButton.Right)
                {
                    bs = state.RightButton;
                }
                else if (btn.Button == MouseButton.Middle)
                {
                    bs = state.MiddleButton;
                }
                else if (btn.Button == MouseButton.XButton1)
                {
                    bs = state.XButton1;
                }
                else if (btn.Button == MouseButton.XButton2)
                {
                    bs = state.XButton2;
                }
                else
                {
                    continue;
                }

// Current state button pressed?
                var pressed = (bs == ButtonState.Pressed);
                if (pressed)
                {
// Update the repeat delay timer for the associated button.
                    var ms = gameTime.ElapsedGameTime.TotalMilliseconds;
                    if (pressed)
                    {
                        btn.Countdown -= ms;
                    }
                }

// Button was just pressed?
                if ((pressed) && (!btn.Pressed))
                {
// "Press" the associated button.
                    btn.Pressed = true;
                    BuildMouseEvent(state, btn.Button, ref e);

// Fire the MouseDown and MousePress events.
                    if (MouseDown != null)
                    {
                        MouseDown.Invoke(this, e);
                    }
// Fire the repeat MousePress event.
                }
// Button was just released?
                else if ((!pressed) && (btn.Pressed))
                {
// "Release" the associated button and reset the repeat delay timer.
                    btn.Pressed   = false;
                    btn.Countdown = RepeatDelay;
                    BuildMouseEvent(state, btn.Button, ref e);
// Fire the MouseUp event.
                    if (MouseUp != null)
                    {
                        MouseUp.Invoke(this, e);
                    }
                }
// Button is held down and it's time to fire a repeat press event?
                else if (btn.Pressed && btn.Countdown < 0)
                {
// Update event args and reset timer.
                    e.Button      = btn.Button;
                    btn.Countdown = RepeatRate;
                    BuildMouseEvent(state, btn.Button, ref e);

// Fire the repeat MousePress event.
                    if (MousePress != null)
                    {
                        MousePress.Invoke(this, e);
                    }
                }
            }
#endif
        }
Esempio n. 11
0
 internal void InvokeMousePress(S sender, T state, UIMousePressEventArgs e) => MousePress.Invoke(new SenderInfo(sender, state), e);
Esempio n. 12
0
		void Save(object sender, RoutedEventArgs e)
		{
			MousePressActionType mousePressAction;
			PositionType positionType = (PositionType)MousePositionType.SelectedItem;
			int scroll = 0;
			Point point = new Point();

			//MousePressAction check
			if ((bool)Click.IsChecked)
				mousePressAction = MousePressActionType.Click;
			else if ((bool)DoubleClick.IsChecked)
				mousePressAction = MousePressActionType.DoubleClick;
			else if ((bool)Down.IsChecked)
				mousePressAction = MousePressActionType.Down;
			else if ((bool)Up.IsChecked)
				mousePressAction = MousePressActionType.Up;
			else throw new Exception();

			//TargetPosition Check
			if (TargetPosition.IsChecked??false)
			{
				bool parseSuccess = false;	//Don't like this..
				var positionText = TargetPositionTextBox.Text.Split(',');
				if (positionText.Length == 2)
				{
					double x, y;
					if (double.TryParse(positionText[0], out x) && double.TryParse(positionText[1], out y))
					{
						point = new Point(x, y);
						parseSuccess = true;
					}
				}
				if (!parseSuccess)
				{
					TargetPositionTextBox.Text = "Point parse error";
					return;
				}
			}
			else TargetPositionTextBox.Text = "";
			

			if(TargetScroll.IsChecked??false)
			{
				int.TryParse(TargetScrollDisplay.Text, out scroll);
			}
			else
			{
				TargetScroll.IsChecked = false;
				TargetScrollDisplay.Text = "";
				scroll = 0;
			}

			action = new MousePress((VirtualKeyCode)TargetMouseKey.SelectedItem, mousePressAction, positionType, point, scroll);

			Cache.mousePress = this.action;
			DialogResult = true;
			this.Close();
		}
Esempio n. 13
0
		/// <summary>
		/// Load EditMouse dialog with given MousePress macro.
		/// </summary>
		/// <param name="mousePress"></param>
		internal EditMouse(MousePress mousePress)
		{
			scroll = 5;
			this.action = mousePress;

			InitializeComponent();
			int index = 0;
			for (index = 0; index < TargetMouseKey.Items.Count; index++)
			{
				if ((VirtualKeyCode)TargetMouseKey.Items[index] == action.Key)
				{
					System.Diagnostics.Debug.Print("key matched at" + index.ToString());
					break;

				}
			}
			TargetMouseKey.SelectedIndex = index;
			//TODO : how to make TargetMouseKey have items property?

			//문제점 : TargetMouseKey 자체가 ComboBox이길 바랐는데, TargetMouseKey 안의 TargetMouseKey가 ComboBox로 나타남. -> MouseComboBox를 ComboBox로부터 상속받게 하여 해결.
			//mouse press action check

			//switch (mousePress.pressAction)
			//{
			//	case MousePressActionType.Click:
			//		Click.IsChecked = true;
			//		break;
			//	case MousePressActionType.DoubleClick:
			//		DoubleClick.IsChecked = true;
			//		break;
			//	case MousePressActionType.Down:
			//		Down.IsChecked = true;
			//		break;
			//	case MousePressActionType.Up:
			//		Up.IsChecked = true;
			//		break;
			//	default:
			//		break;
			//}

			switch (mousePress.PositionType)
			{

				case PositionType.ResolutionAbsolute:
					MousePositionType.SelectedIndex = 2;
					TargetPosition.IsChecked = true;
					break;
				case PositionType.Absolute:
					MousePositionType.SelectedIndex = 1;
					TargetPosition.IsChecked = true;
					break;
				case PositionType.Relative:
					MousePositionType.SelectedIndex = 0;
					TargetPosition.IsChecked = true;
					break;
				default:
					TargetPosition.IsChecked = false;
					break;
			}
			TargetPositionTextBox.Text = mousePress.Position.ToString();

			if (mousePress.Scroll != 0)
			{
				TargetScroll.IsChecked = true;
				TargetScrollDisplay.Value = mousePress.Scroll;
			}
			else TargetScroll.IsChecked = false;

		}