---
title: "ShelfWidgetControl, DroppyKit"
description: "One control of a ShelfWidgetControlRow (DroppyKit 1.23.0): a symbol on the wash disc, its title as the tooltip, the accessibility label and its line in the More menu."
canonical: "https://getdroppy.app/docs/droppykit/api/shelf-widget-control"
last-updated: "2026-09-09"
---

# ShelfWidgetControl

One control of a ShelfWidgetControlRow (DroppyKit 1.23.0): a symbol on the wash disc, its title as the tooltip, the accessibility label and its line in the More menu.

`struct ShelfWidgetControl`

Available from DroppyKit 1.23.0.

## Initializers

### init(_:systemImage:tone:id:dso:action:)

`init(_ title: String, systemImage: String, tone: DroppyWashTone = .neutral, id: String? = nil, dso: UnsafeRawPointer = #dsohandle, action: @escaping () -> Void)`

Creates a control. The title is looked up in your droplet's own String Catalog first, then Droppy's.

## Properties

### action

`let action: () -> Void`

What it does.

### id

`let id: String`

### systemImage

`let systemImage: String`

Its SF Symbol.

### title

`let title: String`

The control's name, sentence case.

### tone

`let tone: DroppyWashTone`

Neutral, or the accent for the one action the widget is for.
