From 31dcb954b1e58c9413225db6b216e46c2356952c Mon Sep 17 00:00:00 2001 From: Yannik Bloscheck Date: Sun, 19 Oct 2025 11:06:01 +0200 Subject: [PATCH] [ios] Added custom icons to routing options Signed-off-by: Yannik Bloscheck --- .../SettingsTemplateBuilder.swift | 37 ++++-- .../Contents.json | 2 +- .../ferries.circle.slash.svg | 121 ++++++++++++++++++ .../Contents.json | 2 +- .../ferries.circle.svg | 109 ++++++++++++++++ .../Contents.json | 2 +- .../ferries.slash.symbolset/ferries.slash.svg | 115 +++++++++++++++++ .../Contents.json | 2 +- .../Symbols/ferries.symbolset/ferries.svg | 103 +++++++++++++++ .../Contents.json | 2 +- .../motorways.circle.slash.svg | 121 ++++++++++++++++++ .../motorways.circle.symbolset/Contents.json | 12 ++ .../motorways.circle.svg} | 30 ++--- .../motorways.slash.symbolset/Contents.json | 12 ++ .../motorways.slash.svg | 115 +++++++++++++++++ .../Contents.json | 2 +- .../Symbols/motorways.symbolset/motorways.svg | 103 +++++++++++++++ .../options.ferries.slash.svg | 119 ----------------- .../options.ferries.svg | 107 ---------------- .../Contents.json | 12 -- .../Contents.json | 12 -- .../Contents.json | 12 -- .../options.tolls.slash.svg | 119 ----------------- .../options.tolls.symbolset/options.tolls.svg | 107 ---------------- .../Contents.json | 12 -- .../options.unpaved.symbolset/Contents.json | 12 -- .../Contents.json | 12 ++ .../paved.circle.slash.svg} | 55 ++++---- .../paved.circle.symbolset/Contents.json | 12 ++ .../paved.circle.svg} | 30 ++--- .../paved.slash.symbolset/Contents.json | 12 ++ .../paved.slash.symbolset/paved.slash.svg | 115 +++++++++++++++++ .../Symbols/paved.symbolset/Contents.json | 12 ++ .../Symbols/paved.symbolset/paved.svg | 103 +++++++++++++++ .../Contents.json | 12 ++ .../speedcamera.circle.slash.svg} | 60 ++++----- .../Contents.json | 12 ++ .../speedcamera.circle.svg} | 32 ++--- .../speedcamera.symbolset/speedcamera.svg | 20 +-- .../Contents.json | 12 ++ .../steps.circle.slash.svg} | 48 +++---- .../steps.circle.symbolset/Contents.json | 12 ++ .../steps.circle.svg} | 28 ++-- .../steps.slash.symbolset/Contents.json | 12 ++ .../steps.slash.symbolset/steps.slash.svg | 115 +++++++++++++++++ .../Symbols/steps.symbolset/Contents.json | 12 ++ .../Symbols/steps.symbolset/steps.svg | 103 +++++++++++++++ .../Contents.json | 12 ++ .../tolls.circle.slash.svg | 121 ++++++++++++++++++ .../tolls.circle.symbolset/Contents.json | 12 ++ .../tolls.circle.symbolset/tolls.circle.svg | 109 ++++++++++++++++ .../tolls.slash.symbolset/Contents.json | 12 ++ .../tolls.slash.symbolset/tolls.slash.svg | 115 +++++++++++++++++ .../Symbols/tolls.symbolset/Contents.json | 12 ++ .../Symbols/tolls.symbolset/tolls.svg | 103 +++++++++++++++ .../Contents.json | 2 +- .../unpaved.circle.slash.svg} | 55 ++++---- .../unpaved.circle.symbolset/Contents.json | 12 ++ .../unpaved.circle.svg | 109 ++++++++++++++++ .../unpaved.slash.symbolset/Contents.json | 12 ++ .../unpaved.slash.symbolset/unpaved.slash.svg | 115 +++++++++++++++++ .../Symbols/unpaved.symbolset/Contents.json | 12 ++ .../Symbols/unpaved.symbolset/unpaved.svg | 103 +++++++++++++++ .../Maps/UI/Routing/RoutingOptionsView.swift | 70 ++++++++-- .../UI/Settings/SettingsNavigationView.swift | 70 ++++++++-- 65 files changed, 2554 insertions(+), 733 deletions(-) rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.speedcamera.symbolset => ferries.circle.slash.symbolset}/Contents.json (72%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.slash.symbolset/ferries.circle.slash.svg rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.ferries.symbolset => ferries.circle.symbolset}/Contents.json (74%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.symbolset/ferries.circle.svg rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.steps.symbolset => ferries.slash.symbolset}/Contents.json (75%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/ferries.slash.symbolset/ferries.slash.svg rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.tolls.symbolset => ferries.symbolset}/Contents.json (75%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/ferries.symbolset/ferries.svg rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.ferries.slash.symbolset => motorways.circle.slash.symbolset}/Contents.json (71%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.slash.symbolset/motorways.circle.slash.svg create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.symbolset/Contents.json rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.unpaved.symbolset/options.unpaved.svg => motorways.circle.symbolset/motorways.circle.svg} (69%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/motorways.slash.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/motorways.slash.symbolset/motorways.slash.svg rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.paved.symbolset => motorways.symbolset}/Contents.json (75%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/motorways.symbolset/motorways.svg delete mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.slash.symbolset/options.ferries.slash.svg delete mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.symbolset/options.ferries.svg delete mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.slash.symbolset/Contents.json delete mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/options.steps.slash.symbolset/Contents.json delete mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.slash.symbolset/Contents.json delete mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.slash.symbolset/options.tolls.slash.svg delete mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.symbolset/options.tolls.svg delete mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/options.unpaved.slash.symbolset/Contents.json delete mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/options.unpaved.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.slash.symbolset/Contents.json rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.paved.slash.symbolset/options.paved.slash.svg => paved.circle.slash.symbolset/paved.circle.slash.svg} (68%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.symbolset/Contents.json rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.paved.symbolset/options.paved.svg => paved.circle.symbolset/paved.circle.svg} (77%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/paved.slash.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/paved.slash.symbolset/paved.slash.svg create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/paved.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/paved.symbolset/paved.svg create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.slash.symbolset/Contents.json rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.speedcamera.slash.symbolset/options.speedcamera.slash.svg => speedcamera.circle.slash.symbolset/speedcamera.circle.slash.svg} (74%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.symbolset/Contents.json rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.speedcamera.symbolset/options.speedcamera.svg => speedcamera.circle.symbolset/speedcamera.circle.svg} (75%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/steps.circle.slash.symbolset/Contents.json rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.steps.slash.symbolset/options.steps.slash.svg => steps.circle.slash.symbolset/steps.circle.slash.svg} (62%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/steps.circle.symbolset/Contents.json rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.steps.symbolset/options.steps.svg => steps.circle.symbolset/steps.circle.svg} (65%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/steps.slash.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/steps.slash.symbolset/steps.slash.svg create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/steps.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/steps.symbolset/steps.svg create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/tolls.circle.slash.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/tolls.circle.slash.symbolset/tolls.circle.slash.svg create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/tolls.circle.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/tolls.circle.symbolset/tolls.circle.svg create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/tolls.slash.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/tolls.slash.symbolset/tolls.slash.svg create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/tolls.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/tolls.symbolset/tolls.svg rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.paved.slash.symbolset => unpaved.circle.slash.symbolset}/Contents.json (72%) rename iphone/Maps/Images.xcassets/Interface/Symbols/{options.unpaved.slash.symbolset/options.unpaved.slash.svg => unpaved.circle.slash.symbolset/unpaved.circle.slash.svg} (61%) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.circle.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.circle.symbolset/unpaved.circle.svg create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.slash.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.slash.symbolset/unpaved.slash.svg create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.symbolset/unpaved.svg diff --git a/iphone/Maps/Classes/CarPlay/Template Builders/SettingsTemplateBuilder.swift b/iphone/Maps/Classes/CarPlay/Template Builders/SettingsTemplateBuilder.swift index d53c10a9e..e0f994eb6 100644 --- a/iphone/Maps/Classes/CarPlay/Template Builders/SettingsTemplateBuilder.swift +++ b/iphone/Maps/Classes/CarPlay/Template Builders/SettingsTemplateBuilder.swift @@ -12,17 +12,18 @@ final class SettingsTemplateBuilder { private class func buildGridButtons() -> [CPGridButton] { let options = RoutingOptions() - return [createUnpavedButton(options: options), - createTollButton(options: options), - createFerryButton(options: options), + return [createTollButton(options: options), + createUnpavedButton(options: options), createPavedButton(options: options), + createMotorwayButton(options: options), + createFerryButton(options: options), createStepsButton(options: options), createSpeedcamButton()] } // MARK: - CPGridButton builders private class func createTollButton(options: RoutingOptions) -> CPGridButton { - var tollIconName = "options.tolls" + var tollIconName = "tolls.circle" if options.avoidToll { tollIconName += ".slash" } let configuration = UIImage.SymbolConfiguration(textStyle: .title1) var image = UIImage(named: tollIconName, in: nil, with: configuration)! @@ -40,7 +41,7 @@ final class SettingsTemplateBuilder { } private class func createUnpavedButton(options: RoutingOptions) -> CPGridButton { - var unpavedIconName = "options.unpaved" + var unpavedIconName = "unpaved.circle" if options.avoidDirty && !options.avoidPaved { unpavedIconName += ".slash" } let configuration = UIImage.SymbolConfiguration(textStyle: .title1) var image = UIImage(named: unpavedIconName, in: nil, with: configuration)! @@ -62,7 +63,7 @@ final class SettingsTemplateBuilder { } private class func createPavedButton(options: RoutingOptions) -> CPGridButton { - var pavedIconName = "options.paved" + var pavedIconName = "paved.circle" if options.avoidPaved && !options.avoidDirty { pavedIconName += ".slash" } let configuration = UIImage.SymbolConfiguration(textStyle: .title1) var image = UIImage(named: pavedIconName, in: nil, with: configuration)! @@ -82,9 +83,27 @@ final class SettingsTemplateBuilder { pavedButton.isEnabled = !options.avoidDirty return pavedButton } + + private class func createMotorwayButton(options: RoutingOptions) -> CPGridButton { + var motorwayIconName = "motorways.circle" + if options.avoidMotorway { motorwayIconName += ".slash" } + let configuration = UIImage.SymbolConfiguration(textStyle: .title1) + var image = UIImage(named: motorwayIconName, in: nil, with: configuration)! + if #unavailable(iOS 26) { + image = image.withTintColor(.white, renderingMode: .alwaysTemplate) + image = UIImage(data: image.pngData()!)!.withRenderingMode(.alwaysTemplate) + } + let motorwayButton = CPGridButton(titleVariants: [L("avoid_motorways")], image: image) { _ in + options.avoidMotorway = !options.avoidMotorway + options.save() + CarPlayService.shared.updateRouteAfterChangingSettings() + CarPlayService.shared.popTemplate(animated: true) + } + return motorwayButton + } private class func createFerryButton(options: RoutingOptions) -> CPGridButton { - var ferryIconName = "options.ferries" + var ferryIconName = "ferries.circle" if options.avoidFerry { ferryIconName += ".slash" } let configuration = UIImage.SymbolConfiguration(textStyle: .title1) var image = UIImage(named: ferryIconName, in: nil, with: configuration)! @@ -102,7 +121,7 @@ final class SettingsTemplateBuilder { } private class func createStepsButton(options: RoutingOptions) -> CPGridButton { - var stepsIconName = "options.steps" + var stepsIconName = "steps.circle" if options.avoidSteps { stepsIconName += ".slash" } let configuration = UIImage.SymbolConfiguration(textStyle: .title1) var image = UIImage(named: stepsIconName, in: nil, with: configuration)! @@ -120,7 +139,7 @@ final class SettingsTemplateBuilder { } private class func createSpeedcamButton() -> CPGridButton { - var speedcamIconName = "options.speedcamera" + var speedcamIconName = "speedcamera" let isSpeedCamActivated = CarPlayService.shared.isSpeedCamActivated if !isSpeedCamActivated { speedcamIconName += ".slash" } let configuration = UIImage.SymbolConfiguration(textStyle: .title1) diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.slash.symbolset/Contents.json similarity index 72% rename from iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.symbolset/Contents.json rename to iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.slash.symbolset/Contents.json index f82351a08..665958db4 100644 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.symbolset/Contents.json +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.slash.symbolset/Contents.json @@ -5,7 +5,7 @@ }, "symbols" : [ { - "filename" : "options.speedcamera.svg", + "filename" : "ferries.circle.slash.svg", "idiom" : "universal" } ] diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.slash.symbolset/ferries.circle.slash.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.slash.symbolset/ferries.circle.slash.svg new file mode 100644 index 000000000..f9a291841 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.slash.symbolset/ferries.circle.slash.svg @@ -0,0 +1,121 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.symbolset/Contents.json similarity index 74% rename from iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.symbolset/Contents.json rename to iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.symbolset/Contents.json index 7089b43ea..b1ac2ec98 100644 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.symbolset/Contents.json +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.symbolset/Contents.json @@ -5,7 +5,7 @@ }, "symbols" : [ { - "filename" : "options.ferries.svg", + "filename" : "ferries.circle.svg", "idiom" : "universal" } ] diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.symbolset/ferries.circle.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.symbolset/ferries.circle.svg new file mode 100644 index 000000000..c3e581e5e --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.circle.symbolset/ferries.circle.svg @@ -0,0 +1,109 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from circle + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.steps.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.slash.symbolset/Contents.json similarity index 75% rename from iphone/Maps/Images.xcassets/Interface/Symbols/options.steps.symbolset/Contents.json rename to iphone/Maps/Images.xcassets/Interface/Symbols/ferries.slash.symbolset/Contents.json index 50bd67954..dad39a10e 100644 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.steps.symbolset/Contents.json +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.slash.symbolset/Contents.json @@ -5,7 +5,7 @@ }, "symbols" : [ { - "filename" : "options.steps.svg", + "filename" : "ferries.slash.svg", "idiom" : "universal" } ] diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.slash.symbolset/ferries.slash.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.slash.symbolset/ferries.slash.svg new file mode 100644 index 000000000..bf8fe6a16 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.slash.symbolset/ferries.slash.svg @@ -0,0 +1,115 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.symbolset/Contents.json similarity index 75% rename from iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.symbolset/Contents.json rename to iphone/Maps/Images.xcassets/Interface/Symbols/ferries.symbolset/Contents.json index 96e38a308..e5cbc420c 100644 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.symbolset/Contents.json +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.symbolset/Contents.json @@ -5,7 +5,7 @@ }, "symbols" : [ { - "filename" : "options.tolls.svg", + "filename" : "ferries.svg", "idiom" : "universal" } ] diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.symbolset/ferries.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.symbolset/ferries.svg new file mode 100644 index 000000000..89e988aa6 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/ferries.symbolset/ferries.svg @@ -0,0 +1,103 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from ferries + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.slash.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.slash.symbolset/Contents.json similarity index 71% rename from iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.slash.symbolset/Contents.json rename to iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.slash.symbolset/Contents.json index 1e1b4289e..712a5af04 100644 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.slash.symbolset/Contents.json +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.slash.symbolset/Contents.json @@ -5,7 +5,7 @@ }, "symbols" : [ { - "filename" : "options.ferries.slash.svg", + "filename" : "motorways.circle.slash.svg", "idiom" : "universal" } ] diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.slash.symbolset/motorways.circle.slash.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.slash.symbolset/motorways.circle.slash.svg new file mode 100644 index 000000000..b009bc5f1 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.slash.symbolset/motorways.circle.slash.svg @@ -0,0 +1,121 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.symbolset/Contents.json new file mode 100644 index 000000000..d32813535 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "motorways.circle.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.unpaved.symbolset/options.unpaved.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.symbolset/motorways.circle.svg similarity index 69% rename from iphone/Maps/Images.xcassets/Interface/Symbols/options.unpaved.symbolset/options.unpaved.svg rename to iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.symbolset/motorways.circle.svg index 58db41dfb..9f72ae1e5 100644 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.unpaved.symbolset/options.unpaved.svg +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.circle.symbolset/motorways.circle.svg @@ -7,16 +7,16 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN" @@ -61,8 +61,8 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN" Exporting Symbols should be outlined when exporting to ensure the design is preserved when submitting to Xcode. - Template v.4.0 - Requires Xcode 14 or greater + Template v.7.0 + Requires Xcode 17 or greater Generated from circle Typeset at 100.0 points Small @@ -94,16 +94,16 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN" - - + + - - + + - - + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.slash.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.slash.symbolset/Contents.json new file mode 100644 index 000000000..f59d7b28d --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.slash.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "motorways.slash.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.slash.symbolset/motorways.slash.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.slash.symbolset/motorways.slash.svg new file mode 100644 index 000000000..4967532ed --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.slash.symbolset/motorways.slash.svg @@ -0,0 +1,115 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.paved.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.symbolset/Contents.json similarity index 75% rename from iphone/Maps/Images.xcassets/Interface/Symbols/options.paved.symbolset/Contents.json rename to iphone/Maps/Images.xcassets/Interface/Symbols/motorways.symbolset/Contents.json index 7f607e64f..bb9ced009 100644 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.paved.symbolset/Contents.json +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.symbolset/Contents.json @@ -5,7 +5,7 @@ }, "symbols" : [ { - "filename" : "options.paved.svg", + "filename" : "motorways.svg", "idiom" : "universal" } ] diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.symbolset/motorways.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.symbolset/motorways.svg new file mode 100644 index 000000000..8434c6bf6 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/motorways.symbolset/motorways.svg @@ -0,0 +1,103 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from motorways + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.slash.symbolset/options.ferries.slash.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.slash.symbolset/options.ferries.slash.svg deleted file mode 100644 index 5213f5bd3..000000000 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.slash.symbolset/options.ferries.slash.svg +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - - - - - Weight/Scale Variations - Ultralight - Thin - Light - Regular - Medium - Semibold - Bold - Heavy - Black - - - - - - - - - - - Design Variations - Symbols are supported in up to nine weights and three scales. - For optimal layout with text and other symbols, vertically align - symbols with the adjacent text. - - - - - - Margins - Leading and trailing margins on the left and right side of each symbol - can be adjusted by modifying the x-location of the margin guidelines. - Modifications are automatically applied proportionally to all - scales and weights. - - - - Exporting - Symbols should be outlined when exporting to ensure the - design is preserved when submitting to Xcode. - Template v.6.0 - Requires Xcode 16 or greater - Generated from - Typeset at 100.0 points - Small - Medium - Large - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.symbolset/options.ferries.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.symbolset/options.ferries.svg deleted file mode 100644 index dcec8c8a8..000000000 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.ferries.symbolset/options.ferries.svg +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - - - - Weight/Scale Variations - Ultralight - Thin - Light - Regular - Medium - Semibold - Bold - Heavy - Black - - - - - - - - - - - Design Variations - Symbols are supported in up to nine weights and three scales. - For optimal layout with text and other symbols, vertically align - symbols with the adjacent text. - - - - - - Margins - Leading and trailing margins on the left and right side of each symbol - can be adjusted by modifying the x-location of the margin guidelines. - Modifications are automatically applied proportionally to all - scales and weights. - - - - Exporting - Symbols should be outlined when exporting to ensure the - design is preserved when submitting to Xcode. - Template v.6.0 - Requires Xcode 16 or greater - Generated from circle - Typeset at 100.0 points - Small - Medium - Large - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.slash.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.slash.symbolset/Contents.json deleted file mode 100644 index b127896c6..000000000 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.slash.symbolset/Contents.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - }, - "symbols" : [ - { - "filename" : "options.speedcamera.slash.svg", - "idiom" : "universal" - } - ] -} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.steps.slash.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/options.steps.slash.symbolset/Contents.json deleted file mode 100644 index 9053da09a..000000000 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.steps.slash.symbolset/Contents.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - }, - "symbols" : [ - { - "filename" : "options.steps.slash.svg", - "idiom" : "universal" - } - ] -} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.slash.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.slash.symbolset/Contents.json deleted file mode 100644 index da4fc8459..000000000 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.slash.symbolset/Contents.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - }, - "symbols" : [ - { - "filename" : "options.tolls.slash.svg", - "idiom" : "universal" - } - ] -} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.slash.symbolset/options.tolls.slash.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.slash.symbolset/options.tolls.slash.svg deleted file mode 100644 index 341a100d6..000000000 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.slash.symbolset/options.tolls.slash.svg +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - - - - - Weight/Scale Variations - Ultralight - Thin - Light - Regular - Medium - Semibold - Bold - Heavy - Black - - - - - - - - - - - Design Variations - Symbols are supported in up to nine weights and three scales. - For optimal layout with text and other symbols, vertically align - symbols with the adjacent text. - - - - - - Margins - Leading and trailing margins on the left and right side of each symbol - can be adjusted by modifying the x-location of the margin guidelines. - Modifications are automatically applied proportionally to all - scales and weights. - - - - Exporting - Symbols should be outlined when exporting to ensure the - design is preserved when submitting to Xcode. - Template v.6.0 - Requires Xcode 16 or greater - Generated from - Typeset at 100.0 points - Small - Medium - Large - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.symbolset/options.tolls.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.symbolset/options.tolls.svg deleted file mode 100644 index 76e907664..000000000 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.tolls.symbolset/options.tolls.svg +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - - - - Weight/Scale Variations - Ultralight - Thin - Light - Regular - Medium - Semibold - Bold - Heavy - Black - - - - - - - - - - - Design Variations - Symbols are supported in up to nine weights and three scales. - For optimal layout with text and other symbols, vertically align - symbols with the adjacent text. - - - - - - Margins - Leading and trailing margins on the left and right side of each symbol - can be adjusted by modifying the x-location of the margin guidelines. - Modifications are automatically applied proportionally to all - scales and weights. - - - - Exporting - Symbols should be outlined when exporting to ensure the - design is preserved when submitting to Xcode. - Template v.6.0 - Requires Xcode 16 or greater - Generated from options.tolls - Typeset at 100.0 points - Small - Medium - Large - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.unpaved.slash.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/options.unpaved.slash.symbolset/Contents.json deleted file mode 100644 index 7d635434e..000000000 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.unpaved.slash.symbolset/Contents.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - }, - "symbols" : [ - { - "filename" : "options.unpaved.slash.svg", - "idiom" : "universal" - } - ] -} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.unpaved.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/options.unpaved.symbolset/Contents.json deleted file mode 100644 index 5db8d3d41..000000000 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.unpaved.symbolset/Contents.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "info" : { - "author" : "xcode", - "version" : 1 - }, - "symbols" : [ - { - "filename" : "options.unpaved.svg", - "idiom" : "universal" - } - ] -} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.slash.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.slash.symbolset/Contents.json new file mode 100644 index 000000000..b35c43635 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.slash.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "paved.circle.slash.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.paved.slash.symbolset/options.paved.slash.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.slash.symbolset/paved.circle.slash.svg similarity index 68% rename from iphone/Maps/Images.xcassets/Interface/Symbols/options.paved.slash.symbolset/options.paved.slash.svg rename to iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.slash.symbolset/paved.circle.slash.svg index 627459117..be047ccb7 100644 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.paved.slash.symbolset/options.paved.slash.svg +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.slash.symbolset/paved.circle.slash.svg @@ -7,23 +7,22 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN" @@ -68,8 +67,8 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN" Exporting Symbols should be outlined when exporting to ensure the design is preserved when submitting to Xcode. - Template v.4.0 - Requires Xcode 14 or greater + Template v.7.0 + Requires Xcode 17 or greater Generated from Typeset at 100.0 points Small @@ -101,22 +100,22 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN" - - - - + + + + - - - - + + + + - - - - + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.symbolset/Contents.json new file mode 100644 index 000000000..40e239c42 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "paved.circle.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.paved.symbolset/options.paved.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.symbolset/paved.circle.svg similarity index 77% rename from iphone/Maps/Images.xcassets/Interface/Symbols/options.paved.symbolset/options.paved.svg rename to iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.symbolset/paved.circle.svg index 175f01cc9..2bb9905db 100644 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.paved.symbolset/options.paved.svg +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.circle.symbolset/paved.circle.svg @@ -7,16 +7,16 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN" @@ -61,8 +61,8 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN" Exporting Symbols should be outlined when exporting to ensure the design is preserved when submitting to Xcode. - Template v.4.0 - Requires Xcode 14 or greater + Template v.7.0 + Requires Xcode 17 or greater Generated from circle Typeset at 100.0 points Small @@ -94,16 +94,16 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN" - - + + - - + + - - + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/paved.slash.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.slash.symbolset/Contents.json new file mode 100644 index 000000000..a3f253667 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.slash.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "paved.slash.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/paved.slash.symbolset/paved.slash.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.slash.symbolset/paved.slash.svg new file mode 100644 index 000000000..3a749a1b2 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.slash.symbolset/paved.slash.svg @@ -0,0 +1,115 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/paved.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.symbolset/Contents.json new file mode 100644 index 000000000..c9664ee5e --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "paved.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/paved.symbolset/paved.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.symbolset/paved.svg new file mode 100644 index 000000000..6d73a2c53 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/paved.symbolset/paved.svg @@ -0,0 +1,103 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from paved + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.slash.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.slash.symbolset/Contents.json new file mode 100644 index 000000000..1ad8ef15b --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.slash.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "speedcamera.circle.slash.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.slash.symbolset/options.speedcamera.slash.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.slash.symbolset/speedcamera.circle.slash.svg similarity index 74% rename from iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.slash.symbolset/options.speedcamera.slash.svg rename to iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.slash.symbolset/speedcamera.circle.slash.svg index 9b9f07a31..c573096b2 100644 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.slash.symbolset/options.speedcamera.slash.svg +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.slash.symbolset/speedcamera.circle.slash.svg @@ -4,21 +4,23 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> - - diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.symbolset/Contents.json new file mode 100644 index 000000000..c76fb99ac --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "speedcamera.circle.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.symbolset/options.speedcamera.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.symbolset/speedcamera.circle.svg similarity index 75% rename from iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.symbolset/options.speedcamera.svg rename to iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.symbolset/speedcamera.circle.svg index 906b1e7e1..f116812df 100644 --- a/iphone/Maps/Images.xcassets/Interface/Symbols/options.speedcamera.symbolset/options.speedcamera.svg +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.circle.symbolset/speedcamera.circle.svg @@ -4,15 +4,17 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> - - diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.circle.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.circle.symbolset/Contents.json new file mode 100644 index 000000000..12848f942 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.circle.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "unpaved.circle.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.circle.symbolset/unpaved.circle.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.circle.symbolset/unpaved.circle.svg new file mode 100644 index 000000000..6014a3856 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.circle.symbolset/unpaved.circle.svg @@ -0,0 +1,109 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from circle + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.slash.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.slash.symbolset/Contents.json new file mode 100644 index 000000000..d99a746b1 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.slash.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "unpaved.slash.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.slash.symbolset/unpaved.slash.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.slash.symbolset/unpaved.slash.svg new file mode 100644 index 000000000..f09b604a8 --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.slash.symbolset/unpaved.slash.svg @@ -0,0 +1,115 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.symbolset/Contents.json new file mode 100644 index 000000000..e02a2993b --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "unpaved.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.symbolset/unpaved.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.symbolset/unpaved.svg new file mode 100644 index 000000000..e9e580d0b --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/unpaved.symbolset/unpaved.svg @@ -0,0 +1,103 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from unpaved + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iphone/Maps/UI/Routing/RoutingOptionsView.swift b/iphone/Maps/UI/Routing/RoutingOptionsView.swift index 2270f3a93..66c957794 100644 --- a/iphone/Maps/UI/Routing/RoutingOptionsView.swift +++ b/iphone/Maps/UI/Routing/RoutingOptionsView.swift @@ -37,25 +37,67 @@ struct RoutingOptionsView: View { NavigationView { List { Section { - Toggle("avoid_tolls", isOn: $shouldAvoidTollRoadsWhileRouting) - .tint(.accent) + Toggle(isOn: $shouldAvoidTollRoadsWhileRouting) { + Label { + Text("avoid_tolls") + } icon: { + Image(shouldAvoidTollRoadsWhileRouting ? "tolls.slash" : "tolls") + .foregroundStyle(.secondary) + } + } + .tint(.accent) - Toggle("avoid_unpaved", isOn: $shouldAvoidUnpavedRoadsWhileRouting) - .tint(.accent) - .disabled(shouldAvoidPavedRoadsWhileRouting) + Toggle(isOn: $shouldAvoidUnpavedRoadsWhileRouting) { + Label { + Text("avoid_unpaved") + } icon: { + Image(shouldAvoidUnpavedRoadsWhileRouting ? "unpaved.slash" : "unpaved") + .foregroundStyle(.secondary) + } + } + .tint(.accent) + .disabled(shouldAvoidPavedRoadsWhileRouting) - Toggle("avoid_ferry", isOn: $shouldAvoidFerriesWhileRouting) - .tint(.accent) + Toggle(isOn: $shouldAvoidPavedRoadsWhileRouting) { + Label { + Text("avoid_paved") + } icon: { + Image(shouldAvoidPavedRoadsWhileRouting ? "paved.slash" : "paved") + .foregroundStyle(.secondary) + } + } + .tint(.accent) + .disabled(shouldAvoidUnpavedRoadsWhileRouting) - Toggle("avoid_motorways", isOn: $shouldAvoidMotorwaysWhileRouting) - .tint(.accent) + Toggle(isOn: $shouldAvoidMotorwaysWhileRouting) { + Label { + Text("avoid_motorways") + } icon: { + Image(shouldAvoidMotorwaysWhileRouting ? "motorways.slash" : "motorways") + .foregroundStyle(.secondary) + } + } + .tint(.accent) - Toggle("avoid_steps", isOn: $shouldAvoidStepsWhileRouting) - .tint(.accent) + Toggle(isOn: $shouldAvoidFerriesWhileRouting) { + Label { + Text("avoid_ferry") + } icon: { + Image(shouldAvoidFerriesWhileRouting ? "ferries.slash" : "ferries") + .foregroundStyle(.secondary) + } + } + .tint(.accent) - Toggle("avoid_paved", isOn: $shouldAvoidPavedRoadsWhileRouting) - .tint(.accent) - .disabled(shouldAvoidUnpavedRoadsWhileRouting) + Toggle(isOn: $shouldAvoidStepsWhileRouting) { + Label { + Text("avoid_steps") + } icon: { + Image(shouldAvoidStepsWhileRouting ? "steps.slash" : "steps") + .foregroundStyle(.secondary) + } + } + .tint(.accent) } } .navigationTitle(String(localized: "driving_options_title")) diff --git a/iphone/Maps/UI/Settings/SettingsNavigationView.swift b/iphone/Maps/UI/Settings/SettingsNavigationView.swift index 98fe54f18..cba30f6fd 100644 --- a/iphone/Maps/UI/Settings/SettingsNavigationView.swift +++ b/iphone/Maps/UI/Settings/SettingsNavigationView.swift @@ -148,25 +148,67 @@ struct SettingsNavigationView: View { .id(forceRefreshDate) Section { - Toggle("avoid_tolls", isOn: $shouldAvoidTollRoadsWhileRouting) - .tint(.accent) + Toggle(isOn: $shouldAvoidTollRoadsWhileRouting) { + Label { + Text("avoid_tolls") + } icon: { + Image(shouldAvoidTollRoadsWhileRouting ? "tolls.slash" : "tolls") + .foregroundStyle(.secondary) + } + } + .tint(.accent) - Toggle("avoid_unpaved", isOn: $shouldAvoidUnpavedRoadsWhileRouting) - .tint(.accent) - .disabled(shouldAvoidPavedRoadsWhileRouting) + Toggle(isOn: $shouldAvoidUnpavedRoadsWhileRouting) { + Label { + Text("avoid_unpaved") + } icon: { + Image(shouldAvoidUnpavedRoadsWhileRouting ? "unpaved.slash" : "unpaved") + .foregroundStyle(.secondary) + } + } + .tint(.accent) + .disabled(shouldAvoidPavedRoadsWhileRouting) - Toggle("avoid_ferry", isOn: $shouldAvoidFerriesWhileRouting) - .tint(.accent) + Toggle(isOn: $shouldAvoidPavedRoadsWhileRouting) { + Label { + Text("avoid_paved") + } icon: { + Image(shouldAvoidPavedRoadsWhileRouting ? "paved.slash" : "paved") + .foregroundStyle(.secondary) + } + } + .tint(.accent) + .disabled(shouldAvoidUnpavedRoadsWhileRouting) - Toggle("avoid_motorways", isOn: $shouldAvoidMotorwaysWhileRouting) - .tint(.accent) + Toggle(isOn: $shouldAvoidMotorwaysWhileRouting) { + Label { + Text("avoid_motorways") + } icon: { + Image(shouldAvoidMotorwaysWhileRouting ? "motorways.slash" : "motorways") + .foregroundStyle(.secondary) + } + } + .tint(.accent) - Toggle("avoid_steps", isOn: $shouldAvoidStepsWhileRouting) - .tint(.accent) + Toggle(isOn: $shouldAvoidFerriesWhileRouting) { + Label { + Text("avoid_ferry") + } icon: { + Image(shouldAvoidFerriesWhileRouting ? "ferries.slash" : "ferries") + .foregroundStyle(.secondary) + } + } + .tint(.accent) - Toggle("avoid_paved", isOn: $shouldAvoidPavedRoadsWhileRouting) - .tint(.accent) - .disabled(shouldAvoidUnpavedRoadsWhileRouting) + Toggle(isOn: $shouldAvoidStepsWhileRouting) { + Label { + Text("avoid_steps") + } icon: { + Image(shouldAvoidStepsWhileRouting ? "steps.slash" : "steps") + .foregroundStyle(.secondary) + } + } + .tint(.accent) } header: { Text("driving_options_title") }