- DarkComboBox: PopupWindow dropdown with Dracula colors, replaces all std ComboBox - DarkTab: custom tab bar with purple underline, replaces std TabWidget - All 7 .slint files updated, zero std-widgets Button/ComboBox/TabWidget remaining Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
97 lines
2.8 KiB
Text
97 lines
2.8 KiB
Text
import { Theme } from "../theme.slint";
|
|
import { DarkComboBox } from "../components/dark_combo_box.slint";
|
|
import { SettingsBridge } from "../globals.slint";
|
|
|
|
export component TabSettings inherits Rectangle {
|
|
background: Theme.bg-primary;
|
|
|
|
VerticalLayout {
|
|
padding: 20px;
|
|
spacing: 16px;
|
|
alignment: start;
|
|
|
|
Text {
|
|
text: "Settings";
|
|
color: Theme.fg-primary;
|
|
font-size: 20px;
|
|
font-weight: 700;
|
|
}
|
|
|
|
// Keyboard layout section
|
|
Rectangle {
|
|
background: Theme.bg-secondary;
|
|
border-radius: 8px;
|
|
height: 80px;
|
|
|
|
HorizontalLayout {
|
|
padding: 16px;
|
|
spacing: 12px;
|
|
alignment: start;
|
|
|
|
VerticalLayout {
|
|
alignment: center;
|
|
Text {
|
|
text: "Keyboard Layout";
|
|
color: Theme.fg-primary;
|
|
font-size: 14px;
|
|
}
|
|
Text {
|
|
text: "Controls how keycodes are displayed (label remapping)";
|
|
color: Theme.fg-secondary;
|
|
font-size: 11px;
|
|
}
|
|
}
|
|
|
|
Rectangle { horizontal-stretch: 1; }
|
|
|
|
VerticalLayout {
|
|
alignment: center;
|
|
DarkComboBox {
|
|
width: 200px;
|
|
model: SettingsBridge.available-layouts;
|
|
current-index <=> SettingsBridge.selected-layout-index;
|
|
selected(value) => {
|
|
SettingsBridge.change-layout(self.current-index);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// About section
|
|
Rectangle {
|
|
background: Theme.bg-secondary;
|
|
border-radius: 8px;
|
|
|
|
VerticalLayout {
|
|
padding: 16px;
|
|
spacing: 8px;
|
|
|
|
Text {
|
|
text: "About";
|
|
color: Theme.fg-primary;
|
|
font-size: 14px;
|
|
font-weight: 600;
|
|
}
|
|
Text {
|
|
text: "KaSe Controller v0.6.0";
|
|
color: Theme.fg-secondary;
|
|
font-size: 12px;
|
|
}
|
|
Text {
|
|
text: "Split keyboard configurator — Slint UI port";
|
|
color: Theme.fg-secondary;
|
|
font-size: 12px;
|
|
}
|
|
Text {
|
|
text: "Made with Slint";
|
|
color: Theme.accent-purple;
|
|
font-size: 11px;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Spacer
|
|
Rectangle { vertical-stretch: 1; }
|
|
}
|
|
}
|