// // PaletteManager.swift // EmojiArt // // Created by ching on 2023/2/25. // import SwiftUI struct PaletteManager: View { @EnvironmentObject var store: PaletteStore @Environment(\.colorScheme) var colorScheme @State private var editMode: EditMode = .inactive var body: some View { NavigationView { List { ForEach(store.palettes) { palette in NavigationLink(destination: PaletteEditor(palette: $store.palettes[palette])) { VStack(alignment: .leading) { Text(palette.name) Text(palette.emojis) } } } .onDelete { indexSet in store.palettes.remove(atOffsets: indexSet) } .onMove { indexSet, newOffset in store.palettes.move(fromOffsets: indexSet, toOffset: newOffset) } } .navigationTitle("Manage Palettes") .navigationBarTitleDisplayMode(.inline) .toolbar { EditButton() } .environment(\.editMode, $editMode) } } } struct PaletteManager_Previews: PreviewProvider { static var previews: some View { PaletteManager() .previewDevice("iPhone 14 Pro Max") .environmentObject(PaletteStore(named: "preview")) } }