Add error handling for dictionary save operations
This commit is contained in:
parent
4e551926e7
commit
a631043167
@ -159,8 +159,13 @@ struct EditReplacementSheet: View {
|
||||
// Update the replacement
|
||||
replacement.originalText = newOriginal
|
||||
replacement.replacementText = newReplacement
|
||||
try? modelContext.save()
|
||||
|
||||
dismiss()
|
||||
do {
|
||||
try modelContext.save()
|
||||
dismiss()
|
||||
} catch {
|
||||
alertMessage = "Failed to save changes: \(error.localizedDescription)"
|
||||
showAlert = true
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -154,12 +154,24 @@ struct VocabularyView: View {
|
||||
|
||||
let newWord = VocabularyWord(word: normalizedWord)
|
||||
modelContext.insert(newWord)
|
||||
try? modelContext.save()
|
||||
|
||||
do {
|
||||
try modelContext.save()
|
||||
} catch {
|
||||
alertMessage = "Failed to add word: \(error.localizedDescription)"
|
||||
showAlert = true
|
||||
}
|
||||
}
|
||||
|
||||
private func removeWord(_ word: VocabularyWord) {
|
||||
modelContext.delete(word)
|
||||
try? modelContext.save()
|
||||
|
||||
do {
|
||||
try modelContext.save()
|
||||
} catch {
|
||||
alertMessage = "Failed to remove word: \(error.localizedDescription)"
|
||||
showAlert = true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -221,15 +221,26 @@ struct WordReplacementView: View {
|
||||
// Add new replacement
|
||||
let newReplacement = WordReplacement(originalText: original, replacementText: replacement)
|
||||
modelContext.insert(newReplacement)
|
||||
try? modelContext.save()
|
||||
|
||||
originalWord = ""
|
||||
replacementWord = ""
|
||||
do {
|
||||
try modelContext.save()
|
||||
originalWord = ""
|
||||
replacementWord = ""
|
||||
} catch {
|
||||
alertMessage = "Failed to add replacement: \(error.localizedDescription)"
|
||||
showAlert = true
|
||||
}
|
||||
}
|
||||
|
||||
private func removeReplacement(_ replacement: WordReplacement) {
|
||||
modelContext.delete(replacement)
|
||||
try? modelContext.save()
|
||||
|
||||
do {
|
||||
try modelContext.save()
|
||||
} catch {
|
||||
alertMessage = "Failed to remove replacement: \(error.localizedDescription)"
|
||||
showAlert = true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user