Skip to main content
Version: 1.0.8

Switch

An on/off toggle exposing a boolean. Bound to a writable boolean tag it is the most direct control on a screen.

The Switch component as it renders with its default settings.The Switch component as it renders with its default settings.

Reach for it when you need:

  • Enable/disable a function
  • A boolean field inside a Form

Component name: Switch · Category: Input

In the palette: On/off toggle (exposes a boolean value)

Properties​

Any property can be bound to a tag, another component's property, or a query.

PropertyTypeDefaultDescription
valuebooleanfalseThe toggle state — reflects what the user sets, and bindable.
titlestringSwitch—
showTitlebooleantrue—
titleSizenumber0Title font size (px). 0 = follows the size. 1.0.8
sizeenuminheritField height, padding, text and title size. Project default = the project's Control size (Project settings → Theme). Use md or larger on touch panels. Options: inherit · xs · sm · md · lg · xl. 1.0.8
titlePositionenumtopWhere the title sits relative to the switch: above (top), or inline to its left / right. Options: top · left · right.
disabledbooleanfalse—
stylestyle{}Custom CSS properties

Events​

Attach event actions to these in the Event Manager.

EventLabelGroupPayload
clickClickMouseThe DOM event.
dblclickDouble clickMouseThe DOM event.
contextmenuRight clickMouseThe DOM event.
mouseenterMouse enterMouseThe DOM event.
mouseleaveMouse leaveMouseThe DOM event.
changeChangeInputThe DOM event.
submitSubmitInputThe DOM event.
focusFocusInputThe DOM event.
blurBlurInputThe DOM event.
Right-click behaves differently in the Designer

contextmenu fires your configured actions at runtime only — in LiveView and in preview. On the Designer canvas the right-click is captured to open the Event Manager, so testing it there will not run your actions. Test right-click in preview.

Notes​

A switch bound straight to a plant tag writes on every flick. For anything consequential, bind it to a client variable and write through a confirmed script action instead.

Size New in 1.0.8​

size sets the label and the title on one scale shared by every field widget:

sizexssmmdlgxl
Field height28 px36 px44 px52 px64 px
Text12 px13 px14 px16 px18 px

The default, Project default (inherit), follows the project's Control size (Project settings → Theme), so one setting resizes every field on every screen. Set size on a widget only where it has to differ. A field, a dropdown and a button at the same size line up exactly, side by side.

titleSize now defaults to 0, which follows the size. A number you set still wins.

Fields, buttons and menus draw smaller after upgrading to 1.0.8

Before 1.0.8 these widgets had one size, what is now md (a 44 px field). The project's Control size defaults to sm (36 px), sized for desktop dashboards, and every widget whose size is Project default follows it — which is every widget in an upgraded project. On a touch panel, set Project settings → Theme → Control size to md or larger: 44 px is the touch-target minimum.