public void OnMouseUp(MouseEventInfo e) { if (_context.Scene.ActiveAction != null) { _context.Scene.ActiveAction.OnMouseUp(_context, e); } }
public void OnMouseWheel(MouseEventInfo e) { float delta = -(e.WheelPrecise - mouseWheelPrevious); Camera.Zoom = Math.Max(7.0f, Camera.Zoom - delta * 3.5f); mouseWheelPrevious = e.WheelPrecise; }
public void PickScene(MouseEventInfo e, bool selectAction) { if (!_context.ColorPicker.EnablePicking) { return; } if (selectAction && !Keyboard.GetState().IsKeyDown(Key.ControlLeft)) { _context.Scene.ResetSelected(); } OpenTK.Vector2 position = new OpenTK.Vector2(e.Position.X, _context.Height - e.Position.Y); var pickable = _context.Scene.FindPickableAtPosition(_context, position); if (pickable != null) { pickable.IsHovered = true; if (selectAction) { pickable.IsSelected = true; } } GL.BindFramebuffer(FramebufferTarget.Framebuffer, 0); GL.Viewport(0, 0, Width, Height); if (_context.Scene.GetSelected().Count == 0) { _context.Scene.ActiveAction = null; } }
void IMouseEventListener.OnMouseEvent(MouseEventInfo eventInfo) { if (eventInfo.EventKind == MouseEventKind.Button && eventInfo.AreaKind == MouseEventAreaKind.NonClient) { QueryCloseCoreImmediate(); } }
public void OnMouseMove(MouseEventInfo e) { if (e.LeftButton == ButtonState.Pressed) { var pos = new Vector2(e.X - originMouse.X, e.Y - originMouse.Y); Camera.Position.X += pos.X; Camera.Position.Y += pos.Y; originMouse = e.Position; } }
public void OnMouseWheel(MouseEventInfo e, KeyEventInfo k) { if (previousMouseWheel == 0) { previousMouseWheel = e.WheelPrecise; } e.Delta = e.WheelPrecise - previousMouseWheel; _context.Camera.Controller.MouseWheel(e, k); previousMouseWheel = e.WheelPrecise; }
private MouseEventInfo CreateMouseState() { var mouseInfo = new MouseEventInfo(); //Prepare info if (ImGui.IsMouseDown(ImGuiMouseButton.Right)) { mouseInfo.RightButton = ButtonState.Pressed; } if (ImGui.IsMouseDown(ImGuiMouseButton.Left)) { mouseInfo.LeftButton = ButtonState.Pressed; } if (ImGui.IsMouseReleased(ImGuiMouseButton.Right)) { mouseInfo.RightButton = ButtonState.Released; } if (ImGui.IsMouseReleased(ImGuiMouseButton.Left)) { mouseInfo.LeftButton = ButtonState.Released; } MouseState mouseState = Mouse.GetState(); mouseInfo.WheelPrecise = mouseState.WheelPrecise; //Construct relative position var windowPos = ImGui.GetWindowPos(); var pos = ImGui.GetIO().MousePos; pos = new System.Numerics.Vector2(pos.X - windowPos.X, pos.Y - windowPos.Y); if (ImGui.IsMousePosValid()) { mouseInfo.Position = new System.Drawing.Point((int)pos.X, (int)pos.Y); } else { mouseInfo.HasValue = false; } mouseInfo.FullPosition = new System.Drawing.Point(Mouse.GetCursorState().X, Mouse.GetCursorState().Y); return(mouseInfo); }
public void OnMouseMove(MouseEventInfo e, KeyEventInfo k, OpenTK.Vector2 refPos) { _context.OnMouseMove(e); int transformState = 0; if (_context.Scene.ActiveAction != null) { transformState = _context.Scene.ActiveAction.OnMouseMove(_context, e); } if (transformState != 0) { return; } _context.Camera.Controller.MouseMove(e, k, refPos); e.FullPosition = new Point((int)refPos.X, (int)refPos.Y); }
public void OnMouseDown(MouseEventInfo e, KeyEventInfo k) { _context.OnMouseDown(e); if (_context.Scene.ActiveAction != null) { var state = _context.Scene.ActiveAction.OnMouseDown(_context, e); if (state != 0) { return; } } if (e.LeftButton == ButtonState.Pressed) { PickScene(e, true); } _context.Camera.Controller.MouseClick(e, k); }
private void ApplyMouseState(MouseEventInfo mouseInfo) { this.CursorVisible = mouseInfo.CursorVisible; Mouse.SetPosition(mouseInfo.FullPosition.X, mouseInfo.FullPosition.Y); }
public bool TryDequeueEvent(out MouseEventInfo eventInfo) { if (events.Count > 0) { eventInfo = events.Dequeue(); return true; } eventInfo = new MouseEventInfo(); return false; }
internal void OnMouseEvent(MouseEventInfo e) { if (!focused || !CursorInside) return; events.Enqueue(e); }
public override void OnMouseEvent(MouseEventInfo e) { switch (e.ButtonPressed) { case MouseButtons.None: { if (tempPixels.Count > 0) { if (!clearTempPaint) { for (int i = paintPixels.Count - 1; i >= 0; i--) { foreach (var coords in tempPixels) { if (paintPixels[i].Position.SameAs(coords.Position)) { paintPixels.RemoveAt(i); break; } } } if (!brush.Erase) { paintPixels.AddRange(tempPixels); } } else { clearTempPaint = false; } tempPixels.Clear(); } } break; case MouseButtons.RightMouseButton: { if (brush.SecondColor.BackColor == ConsoleColor.Black) { brush.Erase = true; } else { brush.Erase = false; } DrawColor(brush.SecondColor, e.Position); } break; case MouseButtons.LeftMouseButton: { brush.Erase = false; DrawColor(brush.FirstColor, e.Position); } break; case MouseButtons.MiddleMouseButton: { paintPixels.Clear(); } break; case MouseButtons.LeftAndRightMouseButton: { tempPixels.Clear(); clearTempPaint = true; } break; } }
public void OnMouseUp(MouseEventInfo e) { }
public void OnMouseDown(MouseEventInfo e) { originMouse = e.Position; }
public IPickable GetPickedObject(MouseEventInfo e) { OpenTK.Vector2 position = new OpenTK.Vector2(e.Position.X, _context.Height - e.Position.Y); return(_context.Scene.FindPickableAtPosition(_context, position)); }