Files
5GUIs-1/Sources/5GUIs/Views/Reusable/PropertiesView.swift
Helge Heß 3662fd3b1e Improve details popover
...
2020-10-05 16:54:33 +02:00

56 lines
962 B
Swift

//
// PropertiesView.swift
// 5GUIs
//
// Created by Helge Heß on 05.10.20.
//
import SwiftUI
struct PropertyLine: View {
let name : String
let value : Any?
var showMissing : Bool { false }
var body: some View {
Group {
if showMissing {
HStack {
Text(name + ": ")
Spacer()
if let value = value {
Text(verbatim: String(describing: value))
}
else {
Text("-")
}
}
}
else {
if let value = value {
HStack {
Text(name + ": ")
Spacer()
Text(verbatim: String(describing: value))
}
}
}
}
}
}
struct PropertiesView: View {
let properties : [ ( name: String, value: Any? ) ]
var body: some View {
Group {
ForEach(properties, id: \.name) { item in
PropertyLine(name: item.name, value: item.value)
}
}
}
}