Add watchOS support

This commit is contained in:
2025-04-04 18:23:12 +02:00
parent 96b0466deb
commit 384ee97cb7
20 changed files with 857 additions and 48 deletions
@@ -0,0 +1,58 @@
//
// DrinkDetailView.swift
// meterios-watch
//
// (c) 2025 Martin "maride" Dessauer
//
import SwiftUI
struct DrinkDetailView: View {
private var wcMgr: WCManager
private var drink: Drink
@State var shouldShowTransactionSheet = false
@Environment(\.dismiss) private var dismiss
init(wcMgr: WCManager, drink: Drink) {
self.wcMgr = wcMgr
self.drink = drink
}
var body: some View {
VStack {
// Title
Text(drink.name).font(.title)
// Basic info
HStack {
VStack {
Text(String(format: "%img", drink.caffeine)).fontWeight(.bold)
Text("Caffeine").fontWeight(Font.Weight.thin)
}
Divider()
VStack {
Text(String(format: "%.2f€", drink.GetPrice())).fontWeight(.bold)
Text("Price").fontWeight(Font.Weight.thin)
}
}
// Pick button
Button(action: {
// Open the transaction sheet
shouldShowTransactionSheet = true
}) {
Text("Poison picked!")
}.tint(.green)
}
// Transaction sheet
.sheet(isPresented: $shouldShowTransactionSheet) {
// Sheet dismissed - dismiss detail perspective as well.
dismiss()
} content: {
TransactionView(wcMgr: wcMgr, drinkID: drink.id).interactiveDismissDisabled()
}
}
}