# Editor.Application

- Kind: class
- Namespace: `Editor`
- Assembly: `Sandbox.Tools`
- Modifiers: static, abstract, sealed

## Properties

- [`CursorDelta`](/api/Editor.Application/CursorDelta): The cursor delta between this and previous frame.
- [`CursorPosition`](/api/Editor.Application/CursorPosition): Get/Set cursor position.
- [`DpiScale`](/api/Editor.Application/DpiScale)
- [`Editor`](/api/Editor.Application/Editor): Get the current editor if any. Will return null if we're not in the editor, or there is no active editor session.
- [`FocusWidget`](/api/Editor.Application/FocusWidget): The [Editor.Widget](/api/Editor.Widget) that has the keyboard input focus, or `null`if no widget in this application has the focus.
- [`HoveredWidget`](/api/Editor.Application/HoveredWidget): The Widget that is currently hovered
- [`KeyboardModifiers`](/api/Editor.Application/KeyboardModifiers): Returns which keyboard modified keys are held down right at this point.
- [`MouseButtons`](/api/Editor.Application/MouseButtons): Returns the current state of the mouse buttons.
- [`MouseWheelDelta`](/api/Editor.Application/MouseWheelDelta): The mouse wheel delta between this and previous frame
- [`OnWidgetClicked`](/api/Editor.Application/OnWidgetClicked): Called when any widget is clicked. Can set MouseEvent.Accepted to true to prevent the Widget's OnMouseClick from firing.
- [`UnscaledCursorPosition`](/api/Editor.Application/UnscaledCursorPosition): The cursor position, not scaled for DPI

## Methods

- [`IsKeyDown`](/api/Editor.Application/IsKeyDown): Returns whether or not a key is currently being held down.
- [`KeyCodeToString`](/api/Editor.Application/KeyCodeToString): Converts an editor keycode to a string used by the game Qt::Key -> WindowsVirtualKey -> ButtonCode_t -> string
- [`SetStyles`](/api/Editor.Application/SetStyles)
- [`Spin`](/api/Editor.Application/Spin): Will process all of the UI events - allowing the UI to stay responsive during a blocking call.
