Skip to content

Commit 3c7e7f3

Browse files
committed
Merge branch 'develop'
2 parents 316e234 + df41b36 commit 3c7e7f3

File tree

53 files changed

+146
-499
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+146
-499
lines changed

MobileWeather.xcodeproj/project.pbxproj

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
6E04EAC41CF4E55900115C2F /* Forecast.m in Sources */ = {isa = PBXBuildFile; fileRef = E48C4D9219FE7CAF00A90448 /* Forecast.m */; };
1919
6EF1FC581CF5EF3F009BE8E9 /* SmartDeviceLinkService.m in Sources */ = {isa = PBXBuildFile; fileRef = 6EF1FC571CF5EF3F009BE8E9 /* SmartDeviceLinkService.m */; };
2020
AA62726DBC705DF2AB93C537 /* Pods_MobileWeather.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E5FAE7A71ACD04B5A73D580C /* Pods_MobileWeather.framework */; };
21+
C9BE3596268A5B6D001D9EED /* ImageSize.m in Sources */ = {isa = PBXBuildFile; fileRef = C9BE3595268A5B6D001D9EED /* ImageSize.m */; };
2122
E4059D6219FF7D4800C9996D /* WeatherDataManager.m in Sources */ = {isa = PBXBuildFile; fileRef = E4059D6119FF7D4800C9996D /* WeatherDataManager.m */; };
2223
E4059D6519FF7DA900C9996D /* WeatherService.m in Sources */ = {isa = PBXBuildFile; fileRef = E4059D6419FF7DA900C9996D /* WeatherService.m */; };
2324
E4059D6819FF8AF500C9996D /* DarkSkyService.m in Sources */ = {isa = PBXBuildFile; fileRef = E4059D6719FF8AF500C9996D /* DarkSkyService.m */; };
@@ -76,6 +77,8 @@
7677
6EF1FC561CF5EF3F009BE8E9 /* SmartDeviceLinkService.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SmartDeviceLinkService.h; sourceTree = "<group>"; };
7778
6EF1FC571CF5EF3F009BE8E9 /* SmartDeviceLinkService.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SmartDeviceLinkService.m; sourceTree = "<group>"; };
7879
C407ED364EBBDDB306D541A8 /* Pods-MobileWeather.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MobileWeather.debug.xcconfig"; path = "Pods/Target Support Files/Pods-MobileWeather/Pods-MobileWeather.debug.xcconfig"; sourceTree = "<group>"; };
80+
C9BE3594268A5B6D001D9EED /* ImageSize.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ImageSize.h; sourceTree = "<group>"; };
81+
C9BE3595268A5B6D001D9EED /* ImageSize.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ImageSize.m; sourceTree = "<group>"; };
7982
E4059D6019FF7D4800C9996D /* WeatherDataManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WeatherDataManager.h; sourceTree = "<group>"; };
8083
E4059D6119FF7D4800C9996D /* WeatherDataManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WeatherDataManager.m; sourceTree = "<group>"; };
8184
E4059D6319FF7DA900C9996D /* WeatherService.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WeatherService.h; sourceTree = "<group>"; };
@@ -260,6 +263,8 @@
260263
E4059D6119FF7D4800C9996D /* WeatherDataManager.m */,
261264
E4C5B2DF1AEE24AC0056E934 /* WeatherLanguage.h */,
262265
E4C5B2E01AEE24AC0056E934 /* WeatherLanguage.m */,
266+
C9BE3594268A5B6D001D9EED /* ImageSize.h */,
267+
C9BE3595268A5B6D001D9EED /* ImageSize.m */,
263268
);
264269
name = Data;
265270
sourceTree = "<group>";
@@ -499,6 +504,7 @@
499504
6E04EAC31CF4E52A00115C2F /* Localization.m in Sources */,
500505
E4059D7A19FFC21500C9996D /* DarkSkyProcessor.m in Sources */,
501506
E4059D6219FF7D4800C9996D /* WeatherDataManager.m in Sources */,
507+
C9BE3596268A5B6D001D9EED /* ImageSize.m in Sources */,
502508
E477F2611A8B79020028B59C /* PercentageNumber.m in Sources */,
503509
E44F82451A7F86D20055AD77 /* RoadConditions.m in Sources */,
504510
E48C4DA719FE840800A90448 /* ImageProcessor.m in Sources */,
@@ -609,7 +615,7 @@
609615
GCC_WARN_UNINITIALIZED_AUTOS = YES;
610616
GCC_WARN_UNUSED_FUNCTION = YES;
611617
GCC_WARN_UNUSED_VARIABLE = YES;
612-
IPHONEOS_DEPLOYMENT_TARGET = 10.0;
618+
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
613619
ONLY_ACTIVE_ARCH = YES;
614620
SDKROOT = iphoneos;
615621
VALIDATE_PRODUCT = YES;
@@ -652,7 +658,7 @@
652658
GCC_WARN_UNINITIALIZED_AUTOS = YES;
653659
GCC_WARN_UNUSED_FUNCTION = YES;
654660
GCC_WARN_UNUSED_VARIABLE = YES;
655-
IPHONEOS_DEPLOYMENT_TARGET = 10.0;
661+
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
656662
SDKROOT = iphoneos;
657663
VALIDATE_PRODUCT = YES;
658664
};
@@ -672,7 +678,7 @@
672678
DEVELOPMENT_TEAM = NCVC2MHU7M;
673679
GCC_PRECOMPILE_PREFIX_HEADER = YES;
674680
INFOPLIST_FILE = MobileWeather/Info.plist;
675-
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
681+
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
676682
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
677683
MARKETING_VERSION = 5.6.0;
678684
PRODUCT_BUNDLE_IDENTIFIER = com.sdl.sdlweather;
@@ -695,7 +701,7 @@
695701
DEVELOPMENT_TEAM = NCVC2MHU7M;
696702
GCC_PRECOMPILE_PREFIX_HEADER = YES;
697703
INFOPLIST_FILE = MobileWeather/Info.plist;
698-
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
704+
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
699705
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
700706
MARKETING_VERSION = 5.6.0;
701707
PRODUCT_BUNDLE_IDENTIFIER = com.sdl.sdlweather;

MobileWeather/ImageProcessor.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,15 @@
66
//
77

88
@import UIKit;
9+
@import SmartDeviceLink;
10+
#include "ImageSize.h"
911

1012
@interface ImageProcessor : NSObject
1113

1214
+ (ImageProcessor *)sharedProcessor;
1315

14-
- (UIImage *)imageFromConditionImage:(NSString *)conditionImage;
16+
- (UIImage *)imageFromConditionImage:(NSString *)conditionImage imageSize:(ImageSize)imageSize;
1517

16-
- (NSData *)dataFromConditionImage:(NSString *)conditionImage;
18+
- (SDLArtwork *)artworkFromConditionImage:(NSString *)conditionImage imageSize:(ImageSize)imageSize isPersistent:(BOOL)isPersistent;
1719

1820
@end

MobileWeather/ImageProcessor.m

Lines changed: 52 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,21 +31,64 @@ - (instancetype)init {
3131
return self;
3232
}
3333

34-
- (UIImage *)imageFromConditionImage:(NSString *)conditionImage {
35-
UIImage *image = [UIImage imageNamed:conditionImage];
36-
34+
- (UIImage *)imageFromConditionImage:(NSString *)conditionImage imageSize:(ImageSize)imageSize {
35+
UIImage *image = [UIImage systemImageNamed:[self mw_systemImageFromAssetsImage:conditionImage] withConfiguration:[UIImageSymbolConfiguration configurationWithPointSize:[ImageSizeHelper floatForImageSize:imageSize] weight:UIImageSymbolWeightMedium]];
36+
3737
if (image == nil) {
3838
image = [UIImage imageNamed:@"unknown"];
3939
}
40-
40+
4141
return image;
4242
}
4343

44-
- (NSData *)dataFromConditionImage:(NSString *)conditionImage {
45-
UIImage *image = [self imageFromConditionImage:conditionImage];
46-
NSData *data = UIImagePNGRepresentation(image);
47-
48-
return data;
44+
- (SDLArtwork *)artworkFromConditionImage:(NSString *)conditionImage imageSize:(ImageSize)imageSize isPersistent:(BOOL)isPersistent {
45+
return [[SDLArtwork alloc] initWithImage:[[self imageFromConditionImage:conditionImage imageSize:imageSize] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate] persistent:isPersistent asImageFormat:SDLArtworkImageFormatPNG];
46+
}
47+
48+
- (NSString *)mw_systemImageFromAssetsImage:(NSString *)imageName {
49+
NSString *newImageName = imageName;
50+
if ([imageName isEqualToString:@"chancerain"]) {
51+
newImageName = @"cloud.drizzle";
52+
} else if ([imageName isEqualToString:@"chancesnow"]) {
53+
newImageName = @"cloud.snow";
54+
} else if ([imageName isEqualToString:@"clear-day"]) {
55+
newImageName = @"sun.max";
56+
} else if ([imageName isEqualToString:@"clear-night"]) {
57+
newImageName = @"moon";
58+
} else if ([imageName isEqualToString:@"cloudy"]) {
59+
newImageName = @"smoke";
60+
} else if ([imageName isEqualToString:@"flurries"]) {
61+
newImageName = @"snow";
62+
} else if ([imageName isEqualToString:@"fog"]) {
63+
newImageName = @"cloud.fog";
64+
} else if ([imageName isEqualToString:@"hazy"]) {
65+
newImageName = @"sun.haze";
66+
} else if ([imageName isEqualToString:@"partly-cloudy-day"]) {
67+
newImageName = @"cloud.sun";
68+
} else if ([imageName isEqualToString:@"partly-cloudy-night"]) {
69+
newImageName = @"cloud.moon";
70+
} else if ([imageName isEqualToString:@"partlycloudy"]) {
71+
newImageName = @"cloud";
72+
} else if ([imageName isEqualToString:@"partlysunny"]) {
73+
newImageName = @"cloud.sun";
74+
} else if ([imageName isEqualToString:@"rain"]) {
75+
newImageName = @"cloud.rain";
76+
} else if ([imageName isEqualToString:@"sleet"]) {
77+
newImageName = @"cloud.sleet";
78+
} else if ([imageName isEqualToString:@"snow"]) {
79+
newImageName = @"cloud.snow";
80+
} else if ([imageName isEqualToString:@"sunny"]) {
81+
newImageName = @"sun.max";
82+
} else if ([imageName isEqualToString:@"tstorms"]) {
83+
newImageName = @"cloud.bolt";
84+
} else if ([imageName isEqualToString:@"menu-alert"]) {
85+
newImageName = @"exclamationmark.triangle";
86+
} else if ([imageName isEqualToString:@"menu-day"]) {
87+
newImageName = @"calendar";
88+
} else if ([imageName isEqualToString:@"menu-time"]) {
89+
newImageName = @"clock";
90+
}
91+
return newImageName;
4992
}
5093

5194
@end

MobileWeather/ImageSize.h

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
//
2+
// ImageSize.h
3+
// MobileWeather
4+
//
5+
// Created by Frank Elias on 6/28/21.
6+
// Copyright © 2021 Ford. All rights reserved.
7+
//
8+
9+
@import UIKit;
10+
11+
typedef NS_ENUM(NSUInteger, ImageSize) {
12+
ImageSizeLarge,
13+
ImageSizeSmall
14+
};
15+
16+
@interface ImageSizeHelper : NSObject
17+
18+
+ (CGFloat)floatForImageSize:(ImageSize)imageSize;
19+
20+
@end

MobileWeather/ImageSize.m

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
//
2+
// ImageSize.m
3+
// MobileWeather
4+
//
5+
// Created by Frank Elias on 6/28/21.
6+
// Copyright © 2021 Ford. All rights reserved.
7+
//
8+
9+
#import "ImageSize.h"
10+
11+
@implementation ImageSizeHelper
12+
13+
+ (CGFloat)floatForImageSize:(ImageSize)imageSize {
14+
if (imageSize == ImageSizeLarge) {
15+
return 256;
16+
} else {
17+
return 64;
18+
}
19+
}
20+
21+
@end
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"info" : {
3-
"version" : 1,
4-
"author" : "xcode"
3+
"author" : "xcode",
4+
"version" : 1
55
}
6-
}
6+
}

MobileWeather/Images.xcassets/Images/chancerain.imageset/Contents.json

Lines changed: 0 additions & 21 deletions
This file was deleted.
Binary file not shown.

MobileWeather/Images.xcassets/Images/chancesnow.imageset/Contents.json

Lines changed: 0 additions & 21 deletions
This file was deleted.
Binary file not shown.

MobileWeather/Images.xcassets/Images/clear-day.imageset/Contents.json

Lines changed: 0 additions & 21 deletions
This file was deleted.
Binary file not shown.

MobileWeather/Images.xcassets/Images/clear-night.imageset/Contents.json

Lines changed: 0 additions & 21 deletions
This file was deleted.
Binary file not shown.

MobileWeather/Images.xcassets/Images/cloudy.imageset/Contents.json

Lines changed: 0 additions & 21 deletions
This file was deleted.
Binary file not shown.

MobileWeather/Images.xcassets/Images/flurries.imageset/Contents.json

Lines changed: 0 additions & 21 deletions
This file was deleted.
Binary file not shown.

MobileWeather/Images.xcassets/Images/fog.imageset/Contents.json

Lines changed: 0 additions & 21 deletions
This file was deleted.
Binary file not shown.

MobileWeather/Images.xcassets/Images/hazy.imageset/Contents.json

Lines changed: 0 additions & 21 deletions
This file was deleted.
Binary file not shown.

0 commit comments

Comments
 (0)