// Copyright © SixtyFPS GmbH // SPDX-License-Identifier: MIT import { Measurements, Palette } from "../../common.slint"; import { AboutSlint } from "std-widgets.slint"; import { HaText } from "../general/haText.slint"; export component Sidebar inherits Rectangle { width: Measurements.sidebar-width; height: 100%; callback lockDemo(); Rectangle { x: root.width - self.width / 2; border-radius: self.width / 4; width: 15px; height: 50px; background: Palette.tab; drop-shadow-blur: 2px; drop-shadow-color: black.transparentize(0.5); drop-shadow-offset-x: 1px; drop-shadow-offset-y: 1px; Rectangle { height: 85%; width: 1.5px; x: parent.width - 3.5px; background: Palette.tab-highlight; } } Rectangle { background: Palette.background-gradient; Rectangle { opacity: root.x / Measurements.sidebar-width; background: Palette.background; } VerticalLayout { alignment: space-between; padding-top: Measurements.sidebar-padding; spacing: Measurements.sidebar-spacing; VerticalLayout { alignment: start; spacing: Measurements.sidebar-spacing; padding: Measurements.sidebar-padding; Rectangle { width: 100%; height: 25px; border-radius: self.height / 2; background: Palette.alternate-background; HorizontalLayout { alignment: space-around; HaText { vertical-alignment: center; text: "Lock Controls "; color: Palette.foreground; font-size: 1rem; } VerticalLayout { alignment: center; Image { source: @image-url("../../images/lock.svg"); width: 15px; height: self.width; colorize: Palette.foreground; } } } TouchArea { clicked => { root.lockDemo(); } } } Rectangle { width: 100%; height: 25px; border-radius: self.height / 2; background: ta2.pressed ? Palette.background : Palette.alternate-background; ta2 := TouchArea { } HaText { text: "setting 2"; color: Palette.foreground; font-size: 1rem; TouchArea { } } } Rectangle { width: 100%; height: 25px; border-radius: self.height / 2; background: ta3.pressed ? Palette.background : Palette.alternate-background; ta3 := TouchArea { } HaText { text: "setting 3"; color: Palette.foreground; font-size: 1rem; TouchArea { } } } Rectangle { width: 100%; height: 25px; border-radius: self.height / 2; background: ta4.pressed ? Palette.background : Palette.alternate-background; ta4 := TouchArea { } HaText { text: "setting 4"; color: Palette.foreground; font-size: 1rem; TouchArea { } } } } AboutSlint { width: root.width * 0.8; x: root.width * 0.1; } } } }