@@ -75,13 +75,12 @@ private struct ScoreboardStartStopClockButtonView: View {
7575 }
7676}
7777
78- private struct ScoreboardUndoButtonView : View {
79- let model : Model
80- let widget : SettingsWidget
78+ struct ScoreboardUndoButtonView : View {
79+ let action : ( ) -> Void
8180
8281 var body : some View {
8382 Button {
84- model . handleUpdateGenericScoreboard ( action: . init ( id : widget . id , action : . undo ) )
83+ action ( )
8584 } label: {
8685 Image ( systemName: " arrow.uturn.backward " )
8786 . font ( . title)
@@ -90,13 +89,12 @@ private struct ScoreboardUndoButtonView: View {
9089 }
9190}
9291
93- private struct ScoreboardIncrementHomeButtonView : View {
94- let model : Model
95- let widget : SettingsWidget
92+ struct ScoreboardIncrementButtonView : View {
93+ let action : ( ) -> Void
9694
9795 var body : some View {
9896 Button {
99- model . handleUpdateGenericScoreboard ( action: . init ( id : widget . id , action : . incrementHome ) )
97+ action ( )
10098 } label: {
10199 Image ( systemName: " plus " )
102100 . font ( . title)
@@ -105,24 +103,8 @@ private struct ScoreboardIncrementHomeButtonView: View {
105103 }
106104}
107105
108- private struct ScoreboardIncrementAwayButtonView : View {
109- let model : Model
110- let widget : SettingsWidget
111-
112- var body : some View {
113- Button {
114- model. handleUpdateGenericScoreboard ( action: . init( id: widget. id, action: . incrementAway) )
115- } label: {
116- Image ( systemName: " plus " )
117- . font ( . title)
118- }
119- . buttonStyle ( . borderless)
120- }
121- }
122-
123- private struct ScoreboardResetScoreButtonView : View {
124- let model : Model
125- let widget : SettingsWidget
106+ struct ScoreboardResetScoreButtonView : View {
107+ let action : ( ) -> Void
126108 @State private var presentingResetConfirimation = false
127109
128110 var body : some View {
@@ -136,7 +118,7 @@ private struct ScoreboardResetScoreButtonView: View {
136118 . tint ( . red)
137119 . confirmationDialog ( " " , isPresented: $presentingResetConfirimation) {
138120 Button ( " Reset score " , role: . destructive) {
139- model . handleUpdateGenericScoreboard ( action: . init ( id : widget . id , action : . reset ) )
121+ action ( )
140122 }
141123 }
142124 }
@@ -157,12 +139,20 @@ struct WidgetScoreboardGenericQuickButtonControlsView: View {
157139 }
158140 Divider ( )
159141 VStack ( spacing: 13 ) {
160- ScoreboardUndoButtonView ( model: model, widget: widget)
161- ScoreboardResetScoreButtonView ( model: model, widget: widget)
142+ ScoreboardUndoButtonView {
143+ model. handleUpdateGenericScoreboard ( action: . init( id: widget. id, action: . undo) )
144+ }
145+ ScoreboardResetScoreButtonView {
146+ model. handleUpdateGenericScoreboard ( action: . init( id: widget. id, action: . reset) )
147+ }
162148 }
163149 VStack ( spacing: 13 ) {
164- ScoreboardIncrementHomeButtonView ( model: model, widget: widget)
165- ScoreboardIncrementAwayButtonView ( model: model, widget: widget)
150+ ScoreboardIncrementButtonView {
151+ model. handleUpdateGenericScoreboard ( action: . init( id: widget. id, action: . incrementHome) )
152+ }
153+ ScoreboardIncrementButtonView {
154+ model. handleUpdateGenericScoreboard ( action: . init( id: widget. id, action: . incrementAway) )
155+ }
166156 }
167157 }
168158 }
0 commit comments