protected void onMouseClick(EMouseButton button) { MouseClickEvent(this, new MouseClickEventArgs(MouseX, MouseY, button)); }
protected virtual void MouseButtonDown(Point _pnt, EMouseButton _button) { }
private void BuildMouseEvent(MouseState state, EMouseButton button, ref MouseEventArgs e) { e.State = state; e.Button = button; e.Position = new Point(state.X, state.Y); AdjustPosition(ref e); e.Position = RecalcPosition(e.Position); e.State = new MouseState(e.Position.X, e.Position.Y, e.State.ScrollWheelValue, e.State.LeftButton, e.State.MiddleButton, e.State.RightButton, e.State.XButton1, e.State.XButton2); Point pos = RecalcPosition(new Point(mouseState.X, mouseState.Y)); e.Difference = new Point(e.Position.X - pos.X, e.Position.Y - pos.Y); }
private bool WasPressed(EMouseButton Btn) { ButtonState oldState = ButtonState.Released; ButtonState newState = ButtonState.Released; switch (Btn) { case EMouseButton.LeftButton: oldState = mOldMouseState.LeftButton; newState = mNewMouseState.LeftButton; break; case EMouseButton.MiddleButton: oldState = mOldMouseState.MiddleButton; newState = mNewMouseState.MiddleButton; break; case EMouseButton.RightButton: oldState = mOldMouseState.RightButton; newState = mNewMouseState.RightButton; break; } return oldState == ButtonState.Pressed && newState == ButtonState.Released; }
public virtual void MouseButtonUp(Point _pnt, EMouseButton _button) { }
public DurationDetector(EMouseButton button) : this(new MouseButtonProvider(button)) { }
public MouseEventArgs(MouseEventArgs e) { State = e.State; Button = e.Button; Position = e.Position; Difference = e.Difference; }
private bool WasPressed( EMouseButton Button ) { switch( Button ) { case EMouseButton.LeftButton: return ( oldMouseState.LeftButton == ButtonState.Pressed && curMouseState.LeftButton == ButtonState.Released ); case EMouseButton.MiddleButton: return ( oldMouseState.MiddleButton == ButtonState.Pressed && curMouseState.MiddleButton == ButtonState.Released ); case EMouseButton.RightButton: return ( oldMouseState.RightButton == ButtonState.Pressed && curMouseState.RightButton == ButtonState.Released ); } return false; }
public virtual void OnDoubleClick( EMouseButton button, Vector2 position ) { }
protected virtual void MouseButtonDown(Point _pnt, EMouseButton _button) { }
public EButtonState Get(EMouseButton button) { return(m_KeyStates[(int)button]); }
public InputMouseButton(EMouseButton button) { Button = button; }
public TriggerDetector(EMouseButton button) : this(new MouseButtonProvider(button)) { }
/// <summary> /// Is the given mouse button down /// </summary> /// <param name="button">the mouse button to check</param> public bool ButtonDown( EMouseButton button ) { if ( !PreInputCheck() ) return false; if ( !mStates.ContainsKey( button ) ) return false; return mStates[button].IsDown(); }
private void SetValue( EMouseButton button, bool value ) { if ( !mStates.ContainsKey( button ) ) { mStates.Add( button, new State<bool>() ); } var state = mStates[button]; state.Current = value; mStates[button] = state; }
protected override void MouseButtonUp(Point _pnt, EMouseButton _button) { m_game.MouseButtonUp(_pnt, _button); }
public bool ButtonUp( EMouseButton button ) { if ( !mStates.ContainsKey( button ) ) return false; return mStates[button].IsUp(); }
// 响应鼠标事件 void ProcessEvent() { mInterceptMouse = clipRect.Contains(Event.current.mousePosition); if (!mInterceptMouse) { return; } if (Event.current.type == EventType.KeyDown) { OnKeyDown(); } else if (Event.current.type == EventType.KeyUp) { OnKeyUp(); } if (Event.current.type == EventType.MouseDrag) { if (mouseAction == EMouseAction.none) { mouseButton = (EMouseButton)Event.current.button; mouseAction = EMouseAction.drag; OnDragBegin(); } if (mouseAction == EMouseAction.drag) { OnDrag(); } } else if (Event.current.type == EventType.MouseUp) { if (mouseAction == EMouseAction.none) { mouseButton = (EMouseButton)Event.current.button; mouseAction = EMouseAction.click; OnClick(); } else if (mouseAction == EMouseAction.drag) { OnDragEnd(); } mouseAction = EMouseAction.none; } if (Event.current.type == EventType.ScrollWheel) { Vector2 cen = Vector2.zero; if (!Event.current.control) { cen = GraphCanvas.Parent.CalculateLocalPosition(GlobalMousePosition); } float f = Mathf.Clamp(ScaledCanvas.LocalScale - Event.current.delta.y * ScaledCanvas.LocalScale * 0.05f, mMinScale, mMaxScale); if ((f < 1 && ScaledCanvas.LocalScale > 1) || (f > 1 && ScaledCanvas.LocalScale < 1)) { f = 1; } ScaledCanvas.LocalScale = f; if (!Event.current.control) { Vector2 p = GraphCanvas.Parent.CalculateLocalPosition(GlobalMousePosition); Vector2 delta = p - cen; Rect r = GraphCanvas.LocalRect; r.position += delta; GraphCanvas.LocalRect = r; } UpdateStateInfo(); } }
public MouseEventArgs(MouseState state, EMouseButton button, Point position) { State = state; Button = button; Position = position; }
public virtual void MouseButtonUp(Point _pnt, EMouseButton _button) { }
public void MouseButtonUp(Point _pnt, EMouseButton _button) { var uiBlock = UiBlocks.Peek(); if (uiBlock.Rct.Contains(_pnt)) { var pnt = _pnt - uiBlock.Rct.LeftTop; uiBlock.MouseButtonUp(pnt, _button); } }
public IntervalDetector(EMouseButton button, params double[] intervals) : this(new MouseButtonProvider(button), intervals) { }
private void ClickProcess(EventArgs e) { long timer = (long)TimeSpan.FromTicks(DateTime.Now.Ticks).TotalMilliseconds; MouseEventArgs ex = (e is MouseEventArgs) ? (MouseEventArgs)e : new MouseEventArgs(); if ((doubleClickTimer == 0 || (timer - doubleClickTimer > Manager.DoubleClickTime)) || !doubleClicks) { TimeSpan ts = new TimeSpan(DateTime.Now.Ticks); doubleClickTimer = (long)ts.TotalMilliseconds; doubleClickButton = ex.Button; if (!Suspended) OnClick(e); } else if (timer - doubleClickTimer <= Manager.DoubleClickTime && (ex.Button == doubleClickButton && ex.Button != EMouseButton.None)) { doubleClickTimer = 0; if (!Suspended) OnDoubleClick(e); } else { doubleClickButton = EMouseButton.None; } if (ex.Button == EMouseButton.Right && contextMenu != null && !e.Handled) { contextMenu.Show(this, ex.Position.X, ex.Position.Y); } }
protected virtual bool OnScrollClick(EMouseButton button, Vector2 mousePosition) { return(Visible); }
public MouseClickEventArgs(int x, int y, EMouseButton button) { this.x = x; this.y = y; this.button = button; }
protected virtual bool OnScrollDragBegin(EMouseButton button, Vector2 mousePosition) { mDrag = true; return(true); }
public InputMouseButton(EMouseButton button) { Button = button; }
public DelayedDetector(EMouseButton button, double delay) : this(new MouseButtonProvider(button), delay) { }
protected override void MouseButtonUp(Point _pnt, EMouseButton _button) { m_game.MouseButtonUp(_pnt, _button); }
public MouseEventArgs(MouseState state, EMouseButton button, Point position) { State = state; Button = button; Position = position; }
public override void MouseButtonUp(Point _pnt, EMouseButton _button) { if (_button != EMouseButton.LEFT) return; SetPoint(_pnt); KeysPressed(ConsoleKey.T, EKeyModifiers.NONE); }
public virtual bool InteractDrag(EMouseButton button, Vector2 mousePosition, Vector2 mouseDelta) { return(false); }
public bool ButtonReleased( EMouseButton button ) { if ( !mStates.ContainsKey( button ) ) return false; return mStates[button].IsReleased(); }
public virtual bool InteractMouseClick(EMouseButton button, Vector2 mousePosition) { return(false); }
public override void MouseButtonUp(Point _pnt, EMouseButton _button) { base.MouseButtonUp(_pnt, _button); foreach (var uiBlock in new[] {m_stats, m_messages, m_map}) { if (uiBlock.ContentRct.Contains(_pnt)) { uiBlock.MouseButtonUp(_pnt - uiBlock.ContentRct.LeftTop, _button); break; } } }
public override bool InteractMouseClick(EMouseButton button, Vector2 mousePosition) { if (!Visible) { return(false); } mFocusSearch = mRaycastSearch; if (mRaycastMeta != null && button == EMouseButton.left) { if (mRaycastMeta.IsTitle) { mRaycastMeta.Collaped = !mRaycastMeta.Collaped; } //mDropDownMeta = mRaycastMeta == mDropDownMeta ? null : mRaycastMeta; else { switch (mRaycastMeta.BTMeta.NodeType) { case EBTNodeType.task: case EBTNodeType.controller: mWindow.AddChild(Context, mRaycastMeta.BTMeta, new Vector2(LocalRect.center.x, LocalRect.yMin)); Hide(); return(true); case EBTNodeType.condition: case EBTNodeType.service: BehaviourNodeGUI node = Context as BehaviourNodeGUI; if (node != null) { BehaviourNodeGUI.Decorator decor = node.AddDecorator(mRaycastMeta.BTMeta); if (decor != null && decor.Properties.Length > 0) { //mFocusDecorator = decor; decor.UpdatePropertiesInfo(); } //Hide(); node.Resize(); if (decor == null) { EditorCanvasTip.NewTip("不能添加<color=yellow>" + mRaycastMeta.BTMeta.DisplayName + "</color>", 2) .Show(mWindow.RootCanvas, mWindow.RootCanvas.CalculateLocalPosition(mousePosition - Vector2.up * 20)); } } return(true); default: break; } } } bool act = mFocusProperty == null && mRaycastProperty == null; if (mFocusProperty != mRaycastProperty) { SubmitProperty(); } mFocusProperty = mRaycastProperty; mFocusDecorator = mRaycastDecorator; if (act && mRaycastDecorator != null && mRaycastDecorator.BTMeta.NodeType == EBTNodeType.condition) { mRaycastDecorator.NotFlag = !mRaycastDecorator.NotFlag; } //if (mRaycastDecorator != null && mRaycastDecorator.Properties.Length > 0) //{ // mFocusDecorator = mRaycastDecorator; //} return(Visible); }