mirror of
https://github.com/dscyrescotti/Memola.git
synced 2026-05-16 20:57:15 +02:00
refactor: clean up
This commit is contained in:
@@ -42,9 +42,12 @@ final class Canvas: NSManagedObject, Identifiable {
|
|||||||
// MARK: - Actions
|
// MARK: - Actions
|
||||||
extension Canvas {
|
extension Canvas {
|
||||||
func load() {
|
func load() {
|
||||||
state = .loading
|
|
||||||
let start = Date().formatted(.dateTime.minute().second().secondFraction(.fractional(5)))
|
let start = Date().formatted(.dateTime.minute().second().secondFraction(.fractional(5)))
|
||||||
Task(priority: .high) { [start] in
|
Task(priority: .high) { [start] in
|
||||||
|
await MainActor.run {
|
||||||
|
state = .loading
|
||||||
|
objectWillChange.send()
|
||||||
|
}
|
||||||
await withTaskGroup(of: Void.self) { taskGroup in
|
await withTaskGroup(of: Void.self) { taskGroup in
|
||||||
for stroke in graphicContext.strokes {
|
for stroke in graphicContext.strokes {
|
||||||
guard let stroke = stroke as? Stroke else { continue }
|
guard let stroke = stroke as? Stroke else { continue }
|
||||||
@@ -53,11 +56,11 @@ extension Canvas {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let end = Date().formatted(.dateTime.minute().second().secondFraction(.fractional(5)))
|
let end = Date().formatted(.dateTime.minute().second().secondFraction(.fractional(5)))
|
||||||
NSLog("[Memola] - Loaded from \(start) to \(end)")
|
NSLog("[Memola] - Loaded from \(start) to \(end)")
|
||||||
await MainActor.run {
|
await MainActor.run {
|
||||||
state = .loaded
|
state = .loaded
|
||||||
|
objectWillChange.send()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,7 +56,6 @@ final class Stroke: NSManagedObject {
|
|||||||
func finish(at point: CGPoint) {
|
func finish(at point: CGPoint) {
|
||||||
penStyle.anyPenStyle.generator.finish(at: point, on: self)
|
penStyle.anyPenStyle.generator.finish(at: point, on: self)
|
||||||
keyPoints.removeAll()
|
keyPoints.removeAll()
|
||||||
NSLog("[Memola] - \(_quads.count) quads")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func loadVertices() {
|
func loadVertices() {
|
||||||
|
|||||||
@@ -8,8 +8,8 @@
|
|||||||
import SwiftUI
|
import SwiftUI
|
||||||
|
|
||||||
struct CanvasView: UIViewControllerRepresentable {
|
struct CanvasView: UIViewControllerRepresentable {
|
||||||
let canvas: Canvas
|
|
||||||
@EnvironmentObject var tool: Tool
|
@EnvironmentObject var tool: Tool
|
||||||
|
@EnvironmentObject var canvas: Canvas
|
||||||
@EnvironmentObject var history: History
|
@EnvironmentObject var history: History
|
||||||
|
|
||||||
func makeUIViewController(context: Context) -> CanvasViewController {
|
func makeUIViewController(context: Context) -> CanvasViewController {
|
||||||
|
|||||||
@@ -14,10 +14,10 @@ struct MemoView: View {
|
|||||||
@StateObject var tool = Tool()
|
@StateObject var tool = Tool()
|
||||||
@StateObject var history = History()
|
@StateObject var history = History()
|
||||||
|
|
||||||
let canvas: Canvas
|
@EnvironmentObject var canvas: Canvas
|
||||||
|
|
||||||
var body: some View {
|
var body: some View {
|
||||||
CanvasView(canvas: canvas)
|
CanvasView()
|
||||||
.ignoresSafeArea()
|
.ignoresSafeArea()
|
||||||
.overlay(alignment: .bottomTrailing) {
|
.overlay(alignment: .bottomTrailing) {
|
||||||
PenToolView()
|
PenToolView()
|
||||||
|
|||||||
@@ -30,7 +30,8 @@ struct MemosView: View {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
.fullScreenCover(item: $memo) { memo in
|
.fullScreenCover(item: $memo) { memo in
|
||||||
MemoView(canvas: memo.canvas)
|
MemoView()
|
||||||
|
.environmentObject(memo.canvas)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user