mirror of
https://github.com/yattee/yattee.git
synced 2024-12-12 21:30:32 +05:30
29 lines
898 B
Swift
29 lines
898 B
Swift
import SwiftUI
|
|
|
|
struct ControlsOverlayButton<LabelView: View>: View {
|
|
var focusedField: FocusState<ControlsOverlay.Field?>.Binding
|
|
var field: ControlsOverlay.Field
|
|
let label: LabelView
|
|
|
|
init(
|
|
focusedField: FocusState<ControlsOverlay.Field?>.Binding,
|
|
field: ControlsOverlay.Field,
|
|
@ViewBuilder label: @escaping () -> LabelView
|
|
) {
|
|
self.focusedField = focusedField
|
|
self.field = field
|
|
self.label = label()
|
|
}
|
|
|
|
var body: some View {
|
|
label
|
|
.padding()
|
|
.frame(width: 400)
|
|
.focusable()
|
|
.focused(focusedField, equals: field)
|
|
.background(focusedField.wrappedValue == field ? Color.white : Color.secondary)
|
|
.foregroundColor(focusedField.wrappedValue == field ? Color.black : Color.white)
|
|
.clipShape(RoundedRectangle(cornerRadius: 4))
|
|
}
|
|
}
|