import { Palette } from "Palette.slint";
import { VText } from "Text.slint";

export component ToggleButton inherits Rectangle {

	in property text <=> text-component.text;
	in property text-color <=> text-component.color;
	in property text-alignment <=> text-component.horizontal-alignment;
	callback clicked;

	private property<bool> active: false;

	background: root.active ? Palette.control-background
		: ta.has-hover ? Palette.control-background.transparentize(0.5)
		: Colors.transparent;
	border-radius: 4px;

	ta := TouchArea {
		mouse-cursor: pointer;
		clicked => {
			active = !active;
			root.clicked();
		}
	}

	VerticalLayout {
		padding: 8px;
		padding-top: 4px;
		padding-bottom: 4px;
		text-component := VText {
			horizontal-alignment: center;
		}
	}
	
}
