62 lines
1.6 KiB
Swift
62 lines
1.6 KiB
Swift
//
|
|
// VocabularyEntry+Extensions.swift
|
|
// WorterBuch
|
|
//
|
|
// Created by Oliver Hnát on 01.12.2025.
|
|
//
|
|
|
|
import Foundation
|
|
import PencilKit
|
|
import CoreData
|
|
|
|
extension VocabularyEntry {
|
|
|
|
// MARK: - German Word Drawing
|
|
|
|
var germanWordPKDrawing: PKDrawing {
|
|
get {
|
|
guard let data = germanWordDrawing else { return PKDrawing() }
|
|
return (try? PKDrawing(data: data)) ?? PKDrawing()
|
|
}
|
|
set {
|
|
germanWordDrawing = newValue.dataRepresentation()
|
|
}
|
|
}
|
|
|
|
// MARK: - German Explanation Drawing
|
|
|
|
var germanExplanationPKDrawing: PKDrawing {
|
|
get {
|
|
guard let data = germanExplanationDrawing else { return PKDrawing() }
|
|
return (try? PKDrawing(data: data)) ?? PKDrawing()
|
|
}
|
|
set {
|
|
germanExplanationDrawing = newValue.dataRepresentation()
|
|
}
|
|
}
|
|
|
|
// MARK: - English Translation Drawing
|
|
|
|
var englishTranslationPKDrawing: PKDrawing {
|
|
get {
|
|
guard let data = englishTranslationDrawing else { return PKDrawing() }
|
|
return (try? PKDrawing(data: data)) ?? PKDrawing()
|
|
}
|
|
set {
|
|
englishTranslationDrawing = newValue.dataRepresentation()
|
|
}
|
|
}
|
|
|
|
// MARK: - Convenience Initializer
|
|
|
|
static func create(in context: NSManagedObjectContext) -> VocabularyEntry {
|
|
let entry = VocabularyEntry(context: context)
|
|
entry.id = UUID()
|
|
entry.timestamp = Date()
|
|
entry.germanWordText = ""
|
|
entry.germanExplanationText = ""
|
|
entry.englishTranslationText = ""
|
|
return entry
|
|
}
|
|
}
|