Skip to content

Commit 212ff17

Browse files
committed
Working folder editor view
1 parent 1028908 commit 212ff17

File tree

1 file changed

+36
-12
lines changed

1 file changed

+36
-12
lines changed

Sources/Views/SettingGroup.swift

Lines changed: 36 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,17 +48,41 @@ public struct SettingGroup: Setting {
4848
}
4949
}
5050

51-
struct SettingGroupView<Content: View>: View {
52-
var icon: SettingIcon?
53-
var header: String?
54-
var footer: String?
55-
var horizontalPadding = CGFloat(16)
56-
var backgroundColor = SettingTheme.backgroundColor
57-
var backgroundCornerRadius = CGFloat(12)
58-
var dividerLeadingMargin = CGFloat(16)
59-
var dividerTrailingMargin = CGFloat(0)
60-
var dividerColor: Color?
61-
@ViewBuilder var content: Content
51+
public struct SettingGroupView<Content: View>: View {
52+
public var icon: SettingIcon?
53+
public var header: String?
54+
public var footer: String?
55+
public var horizontalPadding = CGFloat(16)
56+
public var backgroundColor = SettingTheme.backgroundColor
57+
public var backgroundCornerRadius = CGFloat(12)
58+
public var dividerLeadingMargin = CGFloat(16)
59+
public var dividerTrailingMargin = CGFloat(0)
60+
public var dividerColor: Color?
61+
@ViewBuilder public var content: () -> Content
62+
63+
public init(
64+
icon: SettingIcon? = nil,
65+
header: String? = nil,
66+
footer: String? = nil,
67+
horizontalPadding: CGFloat = CGFloat(16),
68+
backgroundColor: Color = SettingTheme.backgroundColor,
69+
backgroundCornerRadius: CGFloat = CGFloat(12),
70+
dividerLeadingMargin: CGFloat = CGFloat(16),
71+
dividerTrailingMargin: CGFloat = CGFloat(0),
72+
dividerColor: Color? = nil,
73+
@ViewBuilder content: @escaping () -> Content
74+
) {
75+
self.icon = icon
76+
self.header = header
77+
self.footer = footer
78+
self.horizontalPadding = horizontalPadding
79+
self.backgroundColor = backgroundColor
80+
self.backgroundCornerRadius = backgroundCornerRadius
81+
self.dividerLeadingMargin = dividerLeadingMargin
82+
self.dividerTrailingMargin = dividerTrailingMargin
83+
self.dividerColor = dividerColor
84+
self.content = content
85+
}
6286

6387
public var body: some View {
6488
VStack(alignment: .leading, spacing: 0) {
@@ -85,7 +109,7 @@ struct SettingGroupView<Content: View>: View {
85109
trailingMargin: dividerTrailingMargin,
86110
dividerColor: dividerColor
87111
) {
88-
content
112+
content()
89113
}
90114
.background(backgroundColor)
91115
.cornerRadius(backgroundCornerRadius)

0 commit comments

Comments
 (0)