Add some more calculator-like layout

This commit is contained in:
TheAlgorithm476 2025-04-15 10:33:32 +02:00
parent 8811c923f4
commit b8b7e692cc
Signed by: TheAlgorithm476
GPG Key ID: 299D6733FD6C3032
1 changed files with 70 additions and 6 deletions

View File

@ -5,18 +5,82 @@ import Adwaita
@main @main
struct AdwaitaTemplate: App { struct AdwaitaTemplate: App {
let app = AdwaitaApp(id: "io.github.AparokshaUI.AdwaitaTemplate") let app = AdwaitaApp(id: "io.github.AparokshaUI.AdwaitaTemplate")
var scene: Scene { var scene: Scene {
Window(id: "main") { window in Window(id: "main") { window in
Text(Loc.helloWorld) VStack {
.padding() Text("Calculations here...")
.topToolbar { .selectable(false)
ToolbarView(app: app, window: window) VStack {
HStack {
Button("AC") {}
.keyboardShortcut("c", app: app)
Button("") {}
Button("%") {}
.keyboardShortcut("%", app: app)
Button("/") {}
.keyboardShortcut("/", app: app)
}
.modifyContent(VStack.self) { $0.spacing(8) }
.frame(maxWidth: .none)
HStack {
Button("7") {}
.keyboardShortcut("7", app: app)
Button("8") {}
.keyboardShortcut("8", app: app)
Button("9") {}
.keyboardShortcut("9", app: app)
Button("*") {}
.keyboardShortcut("*", app: app)
}
.modifyContent(VStack.self) { $0.spacing(8) }
.frame(maxWidth: .none)
HStack {
Button("4") {}
.keyboardShortcut("4", app: app)
Button("5") {}
.keyboardShortcut("5", app: app)
Button("6") {}
.keyboardShortcut("6", app: app)
Button("-") {}
.keyboardShortcut("-", app: app)
}
.modifyContent(VStack.self) { $0.spacing(8) }
.frame(maxWidth: .none)
HStack {
Button("1") {}
.keyboardShortcut("1", app: app)
Button("2") {}
.keyboardShortcut("2", app: app)
Button("3") {}
.keyboardShortcut("3", app: app)
Button("+") {}
.keyboardShortcut("+", app: app)
}
.modifyContent(VStack.self) { $0.spacing(8) }
.frame(maxWidth: .none)
HStack {
Button("0") {}
.keyboardShortcut("0", app: app)
Button("") {}
Button(",") {}
.keyboardShortcut(",", app: app)
Button("=") {}
.keyboardShortcut("=", app: app)
}
.modifyContent(VStack.self) { $0.spacing(8) }
.frame(maxWidth: .none)
} }
.spacing(8)
.frame(maxHeight: .none)
}
.spacing(8)
.padding()
.topToolbar {
ToolbarView(app: app, window: window)
}
} }
.defaultSize(width: 450, height: 300)
} }
} }