commit 4fb00bd5819f077ca046638a6d62d9075f698b22
parent a77335bc7cbd49a4495e8ed0b17796a92bba12dc
Author: Marc Stibane <marc@taler.net>
Date: Sat, 31 Oct 2026 17:29:40 +0100
AliasPicker
Diffstat:
1 file changed, 27 insertions(+), 0 deletions(-)
diff --git a/TalerWallet1/Views/HelperViews/ScopePicker.swift b/TalerWallet1/Views/HelperViews/ScopePicker.swift
@@ -31,7 +31,33 @@ fileprivate func pickerRow(_ balance: Balance, _ currencyInfo: CurrencyInfo) ->
return (String("\(urlOrCurrency):\t\(formatted.0.nbs)"),
String("\(urlOrCurrency): \(formatted.1)"))
}
+// MARK: -
+struct AliasPicker: View {
+ let stack: CallStack
+ let title: String
+ @Binding var value: Int
+ let types: [TaldirAliasType]
+ let action: (Int) -> Void
+
+ @State private var selected = 0
+ var body: some View {
+ Picker(title, selection: $selected) {
+ ForEachWithIndex(array: types) { index, aliasType in
+ Text(aliasType.localized)
+ .tag(index)
+ }
+ }
+ .talerFont(.title3)
+ .task() {
+ withAnimation { selected = value }
+ }
+ .onChange(of: selected) { newValue in
+ action(newValue)
+ }
+ }
+}
+// MARK: -
struct CurrencyPicker: View {
let stack: CallStack
@Binding var value: Int
@@ -62,6 +88,7 @@ struct CurrencyPicker: View {
}
}
}
+// MARK: -
struct ScopePicker: View {
// private let symLog = SymLogV(0)
let stack: CallStack