# On-Screen Keyboard Move Selection

## Overview

![The On-Screen Keyboard Move Selection Node.](https://1553081948-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FU990HLHWA30dTfELtDUK%2Fuploads%2Fgit-blob-e5ea590a1a1f6bdeb34c996bb0d855f5988a982a%2Fonscreenkeyboardclearinputnode20241.png?alt=media)

The **On-Screen Keyboard Move Selection Node** moves the selection from a previous one using the `Direction` **Attribute**, which is a **Vector2**.

This **Node** moves the selected **On-Screen Keyboard Button** in the `Direction` across the X axis, the Y axis, or both. If the first element of the **Vector2** (X-coordinate) is positive then it moves to the right, if it is 0 it doesn't move horizontally, and if it is negative it moves to the left. If the second element of the **Vector2** (Y-coordinate) is positive then it moves down, if it is 0 it doesn't move vertically, and if it is negative it moves up.

[**Scope**](https://docs.incari.com/incari-studio/overview#scopes): **Scene**, **Function**, **Prefab**.

## Attributes

![The On-Screen Keyboard Move Selection Node Attributes.](https://1553081948-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FU990HLHWA30dTfELtDUK%2Fuploads%2Fgit-blob-0d6c46b2248cfad62f0865ef4ab3f46f43fc8d49%2Fnode-onscreen-keyboard-move-selection-attr.png?alt=media)

| Attribute   | Type         | Description                                     |
| ----------- | ------------ | ----------------------------------------------- |
| `Object`    | **ObjectID** | The target **Object**.                          |
| `Direction` | **Vector2**  | The XY-coordinates for the desired `Direction`. |

## Inputs

| Input             | Type         | Description                                                           |
| ----------------- | ------------ | --------------------------------------------------------------------- |
| *Pulse Input* (►) | **Pulse**    | A standard **Input Pulse**, to trigger the execution of the **Node**. |
| `Object ID`       | **ObjectID** | The ID of the target **Object**.                                      |
| `Direction`       | **Vector2**  | A **Vector2** that assigns XY-coordinates as input.                   |

## Outputs

| Output             | Type      | Description                                                                                                                            |
| ------------------ | --------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| *Pulse Output* (►) | **Pulse** | A standard **Output Pulse**, to move onto the next **Node** along the **Logic Branch**, once this **Node** has finished its execution. |

## See Also

* [**On-Screen Keyboard Clear Input**](https://docs.incari.com/incari-studio/toolbox/incari/on-screenkeyboard/onscreenkeyboardclearinput)
* [**On-Screen Keyboard Get Input**](https://docs.incari.com/incari-studio/toolbox/incari/on-screenkeyboard/onscreenkeyboardgetinput)
* [**On-Screen Keyboard Press Button**](https://docs.incari.com/incari-studio/toolbox/incari/on-screenkeyboard/onscreenkeyboardpressbutton)
