Files
MapLibreParticleLab/platform/macos/app/StyleLayerIconTransformer.m
mwilsnd 20d9e1028c Platform flattening overhaul (#1393)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Bart Louwers <bart@emeel.net>
2023-07-26 17:50:34 +02:00

48 lines
1.4 KiB
Objective-C

#import "StyleLayerIconTransformer.h"
#import <Mapbox/Mapbox.h>
@implementation StyleLayerIconTransformer
+ (Class)transformedValueClass {
return [NSString class];
}
+ (BOOL)allowsReverseTransformation {
return NO;
}
- (id)transformedValue:(MLNStyleLayer *)layer {
if ([layer isKindOfClass:[MLNBackgroundStyleLayer class]]) {
return [NSImage imageNamed:@"background"];
}
if ([layer isKindOfClass:[MLNCircleStyleLayer class]]) {
return [NSImage imageNamed:@"circle"];
}
if ([layer isKindOfClass:[MLNFillStyleLayer class]]) {
return [NSImage imageNamed:@"fill"];
}
if ([layer isKindOfClass:[MLNFillExtrusionStyleLayer class]]) {
return [NSImage imageNamed:@"fill-extrusion"];
}
if ([layer isKindOfClass:[MLNLineStyleLayer class]]) {
return [NSImage imageNamed:@"NSListViewTemplate"];
}
if ([layer isKindOfClass:[MLNRasterStyleLayer class]]) {
return [[NSWorkspace sharedWorkspace] iconForFileType:@"jpg"];
}
if ([layer isKindOfClass:[MLNSymbolStyleLayer class]]) {
return [NSImage imageNamed:@"symbol"];
}
if ([layer isKindOfClass:[MLNHeatmapStyleLayer class]]) {
return [NSImage imageNamed:@"heatmap"];
}
if ([layer isKindOfClass:[MLNHillshadeStyleLayer class]]) {
return [NSImage imageNamed:@"hillshade"];
}
return nil;
}
@end