> ## Documentation Index
> Fetch the complete documentation index at: https://xrlive.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Checkbox

> Boolean toggle that exposes a true/false state to Blueprint

A **Checkbox** exposes a boolean toggle to the operator. Each time the operator changes its state, Blueprint receives the new value through a bound event.

***

## Configuration

Checkboxes are declared inside `UICategories` on the `xrlive_UIpanel` component. Set **Type** to `Xrlive Checkbox` and fill in the fields below.

| Field             | Type   | Description                                                                                  |
| ----------------- | ------ | -------------------------------------------------------------------------------------------- |
| **Name**          | String | Unique ID of the control. Must match exactly (case and spaces) when referenced in Blueprint. |
| **Tooltip**       | String | Optional helper text shown to the operator on hover.                                         |
| **Default Value** | Bool   | The initial checked state when the visual loads.                                             |

***

## Blueprint API

Call `Find Control by Name` on the `xrlive_UIpanel` reference, passing the checkbox's **Name**. Feed the **Return Value** into `Bind Event to On Check Change`. Create a **Custom Event** and connect it to the **Event** pin.

<Frame caption="Checkbox wiring — Find Control by Name feeds Bind Event to On Check Change">
  <img src="https://mintcdn.com/xrlive/0lHBZ3qoAiwMfyj9/images/sdk/ui-components/checkbox-bind-event.png?fit=max&auto=format&n=0lHBZ3qoAiwMfyj9&q=85&s=c60e624214ba42d95afa8d0414ff8af7" alt="Blueprint graph showing Xrlive Ulpanel reference connected to Find Control by Name, whose Return Value feeds the Target pin of Bind Event to On Check Change. A Custom Event node named OnCheckChange_Event is connected to the Event pin and exposes two output pins: Control Name (string) and Checked (bool)." width="735" height="364" data-path="images/sdk/ui-components/checkbox-bind-event.png" />
</Frame>

The custom event exposes two output pins:

| Pin              | Type   | Description                                                                                       |
| ---------------- | ------ | ------------------------------------------------------------------------------------------------- |
| **Control Name** | String | The name of the checkbox that fired the event. Useful when one event handles multiple checkboxes. |
| **Checked**      | Bool   | The current state of the checkbox. `true` when checked, `false` when unchecked.                   |
