transformer to enable/disable control based on string length.

This commit is contained in:
Kelvin Sherlock 2021-06-03 23:02:58 -04:00
parent e14336a009
commit d348c15dc5
2 changed files with 22 additions and 0 deletions

View File

@ -21,5 +21,8 @@ NS_ASSUME_NONNULL_BEGIN
@interface ValidColorTransformer : NSValueTransformer
@end
@interface StringNotEmptyTransformer : NSValueTransformer
@end
NS_ASSUME_NONNULL_END

View File

@ -73,6 +73,21 @@
@end
@implementation StringNotEmptyTransformer
+ (BOOL)allowsReverseTransformation {
return NO;
}
+ (Class)transformedValueClass {
return [NSNumber class];
}
- (id)transformedValue:(id)value {
NSUInteger length = [(NSString *)value length];
return [NSNumber numberWithBool: length ? YES : NO];
}
@end
void RegisterTransformers(void) {
@ -85,4 +100,8 @@ void RegisterTransformers(void) {
t = [ValidColorTransformer new];
[NSValueTransformer setValueTransformer: t forName: @"ValidColorTransformer"];
t = [StringNotEmptyTransformer new];
[NSValueTransformer setValueTransformer: t forName: @"StringNotEmptyTransformer"];
}