comparison GeoQuiz/Components/PlayedGamesList.swift @ 21:b145c408f791

refactor code
author Dennis C. M. <dennis@denniscm.com>
date Tue, 25 Oct 2022 15:30:01 +0200
parents e281791e0494
children
comparison
equal deleted inserted replaced
20:e281791e0494 21:b145c408f791
6 // 6 //
7 7
8 import SwiftUI 8 import SwiftUI
9 9
10 struct PlayedGamesList: View { 10 struct PlayedGamesList: View {
11 var playedGames: FetchedResults<PlayedGame> 11 @FetchRequest(sortDescriptors: [
12 SortDescriptor(\.date, order: .reverse),
13 ]) var playedGames: FetchedResults<PlayedGame>
12 14
13 @Environment(\.managedObjectContext) var moc 15 @Environment(\.managedObjectContext) var moc
14 16
15 var body: some View { 17 var body: some View {
16 List { 18 List {
17 ForEach(playedGames, id: \.id) { game in 19 ForEach(playedGames, id: \.id) { game in
18 RecentGame(game: game) 20 RecentGame(game: game)
19 } 21 }
20 .onDelete { indexSet in 22 .onDelete{ indexSet in
21 CoreDataController.deleteGame(at: indexSet, from: playedGames, with: moc) 23 CoreDataController.deleteGame(at: indexSet, from: playedGames, with: moc)
22 } 24 }
23 } 25 }
24 .navigationTitle("Played games") 26 .navigationTitle("Played games")
25 .navigationBarTitleDisplayMode(.inline) 27 .navigationBarTitleDisplayMode(.inline)
26 .toolbar { 28 .toolbar {
27 EditButton() 29 EditButton()
28 } 30 }
29 } 31 }
30 } 32 }
33
34 struct PlayedGamesList_Previews: PreviewProvider {
35 static var previews: some View {
36 NavigationView {
37 PlayedGamesList()
38 .environment(\.managedObjectContext, PersistenceController.preview.container.viewContext)
39 }
40 }
41 }