// Copyright © SixtyFPS GmbH // SPDX-License-Identifier: MIT import { Theme } from "../theme.slint"; export component RadioButton { in property checked; callback clicked <=> i-touch-area.clicked; states [ checked when checked : { i-container.border-color: Theme.palette.lemon-green; i-indicator.background: Theme.palette.lemon-green; } ] min-height: 18px; width: self.height; i-container := Rectangle { border-color: Theme.palette.slint-blue-300; border-width: 2px; border-radius: self.height / 2; animate border-color { duration: Theme.durations.fast; } i-indicator := Rectangle { height: parent.height - 4 * parent.border-width; width: self.height; border-radius: self.height / 2; animate background { duration: Theme.durations.fast; } } } i-touch-area := TouchArea {} }