mirror of
https://codeberg.org/comaps/comaps
synced 2026-01-20 18:23:51 +00:00
60 lines
1.6 KiB
Swift
60 lines
1.6 KiB
Swift
import SwiftUI
|
|
|
|
extension MapMode {
|
|
/// The description text
|
|
var description: String {
|
|
switch self {
|
|
case .default:
|
|
return String(localized: "disabled")
|
|
case .hiking:
|
|
return String(localized: "placepage_add_place_button")
|
|
case .cycling:
|
|
return String(localized: "start_track_recording")
|
|
case .driving:
|
|
return String(localized: "settings")
|
|
case .publicTransport:
|
|
return String(localized: "help")
|
|
@unknown default:
|
|
fatalError()
|
|
}
|
|
}
|
|
|
|
|
|
/// The color
|
|
var color: Color {
|
|
switch self {
|
|
case .default:
|
|
return .ModeColors.default
|
|
case .hiking:
|
|
return .ModeColors.hiking
|
|
case .cycling:
|
|
return .ModeColors.cycling
|
|
case .driving:
|
|
return .ModeColors.driving
|
|
case .publicTransport:
|
|
return .ModeColors.publicTransport
|
|
@unknown default:
|
|
fatalError()
|
|
}
|
|
}
|
|
|
|
|
|
/// The image
|
|
var image: Image {
|
|
switch self {
|
|
case .default:
|
|
return Image("map")
|
|
case .hiking:
|
|
return Image("hiking")
|
|
case .cycling:
|
|
return Image("cycling")
|
|
case .driving:
|
|
return Image("driving")
|
|
case .publicTransport:
|
|
return Image("publictransport")
|
|
@unknown default:
|
|
fatalError()
|
|
}
|
|
}
|
|
}
|