47 lines
1.0 KiB
Swift
47 lines
1.0 KiB
Swift
//
|
|
// PaddingView.swift
|
|
// MacBackend
|
|
//
|
|
// Created by david-swift on 11.10.2024.
|
|
//
|
|
|
|
import SwiftUI
|
|
|
|
/// The padding view.
|
|
struct PaddingView: SwiftUIWidget {
|
|
|
|
/// The padding.
|
|
var padding: Double
|
|
/// The edges.
|
|
var edges: Set<Edge>
|
|
/// The wrapped view.
|
|
var child: Meta.AnyView
|
|
|
|
/// The wrapped views.
|
|
var wrappedViews: [String: Meta.AnyView] {
|
|
[.mainContent: child]
|
|
}
|
|
|
|
/// Get the SwiftUI view.
|
|
/// - Parameter properties: The widget data.
|
|
/// - Returns: The SwiftUI view.
|
|
static func view(properties: Self) -> some SwiftUI.View {
|
|
MacBackendView(.mainContent)
|
|
.padding(properties.edges.swiftUI, properties.padding)
|
|
}
|
|
|
|
}
|
|
|
|
extension Meta.AnyView {
|
|
|
|
/// Set the padding.
|
|
/// - Parameters:
|
|
/// - padding: The padding.
|
|
/// - edges: The edges.
|
|
/// - Returns: The view.
|
|
public func padding(_ padding: Double, edges: Set<Edge> = .all) -> Meta.AnyView {
|
|
PaddingView(padding: padding, edges: edges, child: self)
|
|
}
|
|
|
|
}
|