diff options
Diffstat (limited to 'Map/Presentation')
| -rw-r--r-- | Map/Presentation/Commands/UpdateCommands.swift | 39 | ||||
| -rw-r--r-- | Map/Presentation/MapEditor.swift | 1 |
2 files changed, 39 insertions, 1 deletions
diff --git a/Map/Presentation/Commands/UpdateCommands.swift b/Map/Presentation/Commands/UpdateCommands.swift new file mode 100644 index 0000000..44a4610 --- /dev/null +++ b/Map/Presentation/Commands/UpdateCommands.swift @@ -0,0 +1,39 @@ +import SwiftUI +import Sparkle + +struct UpdateCommands: Commands { + let updaterController: SPUStandardUpdaterController + + var body: some Commands { + CommandGroup(after: .appInfo) { + CheckForUpdatesView(updater: updaterController.updater) + } + } +} + + +struct CheckForUpdatesView: View { + @ObservedObject private var checkForUpdatesViewModel: CheckForUpdatesViewModel + private let updater: SPUUpdater + + init(updater: SPUUpdater) { + self.updater = updater + + // Create our view model for our CheckForUpdatesView + self.checkForUpdatesViewModel = CheckForUpdatesViewModel(updater: updater) + } + + var body: some View { + Button("Check for Updates…", action: updater.checkForUpdates) + .disabled(!checkForUpdatesViewModel.canCheckForUpdates) + } +} + +final class CheckForUpdatesViewModel: ObservableObject { + @Published var canCheckForUpdates = false + + init(updater: SPUUpdater) { + updater.publisher(for: \.canCheckForUpdates) + .assign(to: &$canCheckForUpdates) + } +} diff --git a/Map/Presentation/MapEditor.swift b/Map/Presentation/MapEditor.swift index bf33f75..f9415d3 100644 --- a/Map/Presentation/MapEditor.swift +++ b/Map/Presentation/MapEditor.swift @@ -97,7 +97,6 @@ struct MapEditor: View { } private func onDragVertex(vertex: Vertex, x: CGFloat, y: CGFloat) { - print("Dragging: \(vertex), \(x), \(y)") } private func saveImage() { |